A Gnome 3.x UI for Getting Things Gnome!
Since the project start in 2008, GTG UI has mostly known some minor changes. GTG was imagined and conceived in the Gnome 2.x era, and therefore looks like and feels like a Gnome 2.x application.
Gnome 3.x having entered its second year of existence now, GTG's UI is slowly getting old. It is therefore time to think about reviewing GTG's UI and start its integration in the Gnome 3.x desktop.
The project proposal:
The objective of this GSoC proposal is actually twofold:
- Design and prototype a new UI for GTG task browser that fits in the Gnome 3.x desktop experience;
- Create a working environment for UI-focused matters in the current GTG ecosystem.
The student will therefore be asked to design a new Gnome 3.x UI for the task browser, and implement a working prototype. To accomplish this task, the student will be asked to work on a design proposal, and to motivate and document it. This can be accomplished for instance on basis of existing designs and solutions, personas, etc. Simultaneously, he/she will have to implement a (hopefully working) prototype of its design, allowing to test it and to provide code that could eventually be used to replace the existing UI or at least act as a base for the actual implementation.
Since the GTG community currently lacks it, the student will also have to bootstrap a space in the GTG development ecosystem dedicated to UI development (e.g.: create wiki pages, dedicated launchpad tools and resources, propose a discussion and decision process for UI-related discussions in the project, etc.) A successful GSoC would therefore provide the student with a very interesting role in the GTG community, as it would become an important interlocutor regarding GTG's UI decisions.
Objective #1 is the main one, which will provide the core work and coding. Objective #2 is secondary but not be overlooked since it will be an important aspect regarding the evaluation of the student's integration in the project.
The work could be extended/followed by work on other UI parts (e.g.: the task editor), but this is optional as this project is more focused on work quality than quantity.
About the mentor and mentoring:
I (BertrandRousseau) will be mentoring this project. I have been part of the GTG project since its very beginning. Historically, I have been focused on UI stuff regarding GTG. During the last years, I have not been able to invest much time in the project, and I'd LOVE to see someone jump in and take the lead in UI-related stuffs! I am highly motivated to make this GSoC successful!
I don't want to prescribe any specific solution in order to keep the creative (and fun ) part to the student! I will be, however, very attentive on the quality of the work being done: I want things to be done seriously, and I'm expecting the student to strongly commit to the project.
If you're interested, please write a project proposal an submit it! Don't hesitate to email it me if you want my advice or if you have questions. My address is bertrand.rousseau AT gmail DOT com!
About UI design:
UI design is a really hard task, even more for an existing application. Indeed, a good UI:
- feels intuitive;
- empowers users;
- feels naturally integrated in its environment, to provide a sense of cohesion and comfort;
- provides a feeling of modernness;
but, most importantly:
it doesn't get in the way and just do the damn thing!
But this is not all. Even though designs can generally be objectively motivated, they also have a strong subjective component. Therefore design is not only about the design itself, but also about communication, since it requires to convince people that it will work. This latter task heavily depends on the design leadership and process.
Indeed, a good design leadership and process:
- federate the users around UI decisions (get approval by old users, seduce new ones);
- federate the developers (convince technically- and functionally-oriented people);
- create and maintain a working space for UI-oriented discussions, with the necessary dedicated tools and resources;
- create and maintain a community of people focusing on UI that *effectively and efficiently* work in synergy/symbiosis with the
technical community and thrives to do so;
Being responsible of UI design is thus serious work, and should treated like it.
- Highly motivated
- Good leadership and communication skills (design require a strong capability to federate about one's idea)
- Works in a structured way
- Capable of dealing with more technically and functionally-oriented people
- Is interested in UI design and wants to apply some design techniques (personas, etc.)
Capabilities in graphic designs, etc. is a plus, but I prefer good ideas based on pencil sketches than weak ideas drawn with highly realistic mockups ;-).
Look at https://live.gnome.org/Design/Apps/ to get a good idea of what Gnome 3.x UI looks like
Someone started to work on a 'ToDoList" app for Gnome 3.x based on GTG, this thus might be a really interesting resource: https://live.gnome.org/Design/Apps/Potential/TodoList
GTG gnome wiki: https://live.gnome.org/gtg/
Read the discussion on this bug: https://bugs.launchpad.net/gtg/+bug/885320 and have a look the great proposals/mockups that rAX and vovkkk have made (look at the bug attachments).
- Look at ui-related launchpad bugs, a good start for this project will be to filter out interesting discussions (and probably, introduce UI-specific traiging) to UI-related bugs.