Goals/Consistency: Difference between revisions

From KDE Community Wiki
(Created consistency page with basic links)
 
No edit summary
Line 3: Line 3:
KDE community has [https://phabricator.kde.org/T11093 elected] to put Consistency as a main goal for the coming years.
KDE community has [https://phabricator.kde.org/T11093 elected] to put Consistency as a main goal for the coming years.


Consistency here is meant as code redundancy, implementing the same tool multiple times. This fragmentation happens in the design of visual elements of different applications (such as sidebar/tabs/pages behaviour), in the applications ecosystem itself due to reduntant applications or in the KDE website pages and look.
Consistency here is meant as avoiding code redundancy and implementing the same tool multiple times. This fragmentation happens in the design of visual elements, in the applications ecosystem or in the KDE website pages and look.


Benefits of consistency include:
Benefits of consistency include:
* Applications usability: the user will recognize patterns in multiple KDE applications and they will be able to use consistent elements with higher productivity and confidence.
* Applications usability: the user will recognize patterns in multiple KDE applications.
* Using consistent visual element throughout the KDE Applications ecosystem will strongly improve KDE branding, as the users will be able to quickly recognize KDE Apps and they will feel like they follow the same guidelines.
* Using consistent visual element throughout the KDE Applications ecosystem will strongly improve KDE branding, as the users will be able to quickly recognize KDE Apps.
* Consistency improves applications quality and ease of maintenance, for it's easier to change a single class that's used in multiple places rather than changing multiple different implementations.
* Consistency improves applications quality and ease of maintenance.
* Increase of quality of applications thank to reducing fragmentation of implementations of a particular usecase. New good ideas can be generalized and used throughout all applications instead of just benefiting a single application.
* Increase of quality of applications thank to reducing fragmentation of implementations of a particular usecase. New good ideas can be generalized and used throughout all applications instead of just benefiting a single application.


Line 30: Line 30:


Finally, it's now time to implement the new design in all KDE Applications. This requires some development skills, but in the process you'll learn portable, industry-standard skills like C++, Qt, and CMake, and collaborate with people from all around the world. It's a challenging and fun experience. [https://community.kde.org/Get_Involved/development Find out more about becoming a KDE developer].
Finally, it's now time to implement the new design in all KDE Applications. This requires some development skills, but in the process you'll learn portable, industry-standard skills like C++, Qt, and CMake, and collaborate with people from all around the world. It's a challenging and fun experience. [https://community.kde.org/Get_Involved/development Find out more about becoming a KDE developer].
=== Consistency group ===
There's a [https://webchat.kde.org/#/room/%23consistency:kde.org specific channel] for consistency-related topics on Matrix in which everybody can join and help. Furthermore, it's also possible to follow consistency improvements and tasks in its [https://phabricator.kde.org/project/view/312/ phabricator project].

Revision as of 09:20, 14 September 2019

Intro

KDE community has elected to put Consistency as a main goal for the coming years.

Consistency here is meant as avoiding code redundancy and implementing the same tool multiple times. This fragmentation happens in the design of visual elements, in the applications ecosystem or in the KDE website pages and look.

Benefits of consistency include:

  • Applications usability: the user will recognize patterns in multiple KDE applications.
  • Using consistent visual element throughout the KDE Applications ecosystem will strongly improve KDE branding, as the users will be able to quickly recognize KDE Apps.
  • Consistency improves applications quality and ease of maintenance.
  • Increase of quality of applications thank to reducing fragmentation of implementations of a particular usecase. New good ideas can be generalized and used throughout all applications instead of just benefiting a single application.

Improving Consistency

There are various ways to help to improve consistency, regardless of anybody's level of technical expertise.

Reporting Inconsistencies

A very important task is to actually find the inconsistencies to fix in KDE Applications. This can be done by any user, even with limited or no knowledge about coding. Helping with this task is as easy as using multiple KDE Applications and trying to find visual elements that are implemented in different ways. When an inconsistency is found, it can be reported to the bugtracker or a task can be created on the Consistency phabricator workboard.

Designing consistent elements

When an inconsistency is found, it's the Visual Design Group's (VDG) job to design an element that can be used consistently throughout all KDE Applications. It's really easy to join the VDG to help with this task! Find out more about joining the KDE documentation team.

Defining a clear Human Interface Guideline

When there is consensus over the new design, this should be documented clearly in the Human Interface Guidelines (HIG) in order for future developers to know how they should implement their applications. Again, it's not necessary to have coding skills! It's possible to read the current HIG in its webpage and propose changes in its repository.

Implementing changes

Finally, it's now time to implement the new design in all KDE Applications. This requires some development skills, but in the process you'll learn portable, industry-standard skills like C++, Qt, and CMake, and collaborate with people from all around the world. It's a challenging and fun experience. Find out more about becoming a KDE developer.

Consistency group

There's a specific channel for consistency-related topics on Matrix in which everybody can join and help. Furthermore, it's also possible to follow consistency improvements and tasks in its phabricator project.