Task:100Days

(Roadmap for the maemo platform)
(Developer documentation)
Line 70: Line 70:
:''Ok to the idea but as for today we cannot commit publicly to a specific date, nor guarantee that this will be done within 100 days. It won't be 2010 either, most probably at some point during the second half of this year. What should we do? Add it with a disclaimer? Leave it out? --[[User:qgil|qgil]] 20:21, 4 June 2008 (UTC)
:''Ok to the idea but as for today we cannot commit publicly to a specific date, nor guarantee that this will be done within 100 days. It won't be 2010 either, most probably at some point during the second half of this year. What should we do? Add it with a disclaimer? Leave it out? --[[User:qgil|qgil]] 20:21, 4 June 2008 (UTC)
-
== Developer documentation ==
+
== Content cleanup ==
-
=== Clean out the cobwebs, remove the cruft ===
+
{{main|Task:Content Cleanup}}
-
* Get what's still useful and mostly relevant completely up to speed for maemo 4.x.
+
-
* Archive the outdated information away from the maemo 4.x stuff.
+
-
* Mark the outdated stuff clearly.
+
-
:''Agreed. What about a new wiki page listing what is '''really''' essential and should be put upfront? One approach could be to have the essential bits well written and presented in static-ish CMS pages and stable PDFs and then move all the rest to this wiki ecosystem. As soon as new wiki content gets really good we could productize it and promote it.--[[User:qgil|qgil]] 07:34, 2 June 2008 (UTC)''
+
-
::''Don't create new wiki pages. The more pages you create, the more difficult it becomes to find and navigate stuff. Delete unused wiki pages instead. For documentation, you only need to have 1 (one) wiki page with a list of all references, how-tos, and tutorials that apply to the current OS (4.x). If a document does not 100% apply but is still useful, mark it as "partly deprecated". Create the same kind of pages for older OSes and link to them from the top of 4.x page, but make links small because this stuff is outdated and less important. [[User:fms|fms]] 16:16, 2 June 2008 (UTC)''
+
-
:::''I meant a new wiki page just for working purposes, like the other ones being created to work on the 100 days objectives". In this working-wiki-page we would propose and agree on the very essential pages and diocs that need to be promoted and stand alone, while all the rest would be moved wither to really secondary pages (i.e. "Disclaimers") or wiki pages easy to be edited and improved.--[[User:qgil|qgil]] 08:57, 4 June 2008 (UTC)
+
-
=== Get organized ===
+
Dress up the most important content, dump what is not relevant, handle via wiki the rest.
-
* Put together an easy-to-navigate, sensible index for the documentation content.
+
-
** Place references/howtos/tutorials onto one page so that developer does not need to click through several menus.
+
-
* Improve the search (google?).
+
-
:''The plan is to have all the official HowTos and docs under a well structured ''Maemo Reference Guide''. Deadline: Diablo release. This reference guide would sit between the Quickstart Guide and the Training Materials. There were some fixes in the search and should be working much better now.--[[User:qgil|qgil]] 07:34, 2 June 2008 (UTC)''
+
-
::''The website search has already been improved, will add this wiki to the search too. --[[User:xfade|xfade]] 13:37, 2 June 2008 (UTC)''
+
-
 
+
-
=== Get focused ===
+
-
* Add porting FAQ wiki page detailing common problems developers will run into (i.e. application is killed 3 seconds after launch) and how to deal with them. Provide examples of typical GTK/Motif/etc. application changes needed to properly Hildonize the application. List ways to deal with porting of toolkit-specific functionality whether it be internationalization or mouse/keyboard input.
+
-
* Make it possible for logged-in developers to annotate any place in the documentation. Link to annotations from documentation.
+
-
* Provide an example of simple build environment *not* relying on AutoConf and its friends. A single includable makefile should suffice, when used with SB2.
+
-
* Clearly *say* in the SB readme that it is not possible to debug every application on the desktop, show how to test applications on the target device using SSH/SCP or some other means.
+
-
* Clearly define what changes is made by default on gtk : like GtkTreeView with hidden header columns by default, or image-button off ...
+
-
:''The idea is to have the sources of the official documentation here in this wiki. Users could add comments in the discussion pages, perhaps some users could get edit rights too. To be decided. The Nokia teams would updated their part of the documentation here and then all would be revised and conveniently package in PDF when a new stable release comes. So yes, we can put this in the 100 Days and then let's see how far we go in this timeframe.--[[User:qgil|qgil]] 07:34, 2 June 2008 (UTC)''
+
-
 
+
-
=== Look towards the future ===
+
-
* Define types of applications that will be useful on the Internet Tablet
+
-
* Stress the fact that the Internet Tablet is not a PC and apps should be created/ported with the tablet form in mind. Don't just do a direct port of an existing app. Aim for quality and Internet Tablet usability.
+
-
* Focused discussion/guide on User Interface so apps will have a consistent look as well as provide a similar way to interface with the user
+
-
* Maybe provide a few simple stylesheets and JavaScript libs for creating quick iPhone-like web apps running in MicroB. This should be very light, very easy to use, and targeted to casual users.
+
-
:''Good ideas, they can be pushed by Nokia and the community. The point about Javascript libs is imho more of a 2010 Agenda thing, though. I don't mean we wouldn't have anything before 2010, but 100 Days is just too tight. Besides, the work to be done goes beyond maemo.org.--[[User:qgil|qgil]] 07:34, 2 June 2008 (UTC)''
+
== maemo.org ==
== maemo.org ==

Revision as of 20:27, 4 June 2008

This page is meant to brainstorm the 100 Days Action Plan for maemo.org. Please remember that it's about the maemo.org community, not the Nokia Internet Tablets.

  • Please login before making any changes. Thank you.
  • Please keep things on-topic.
  • Hardware requests are entirely out-of-scope and will be removed by community members trying to keep this page focused and on-topic.
  • Software requests which would be trivial for a third party to provide — or are already on the roadmap — are out-of-scope and will be removed by community members trying to keep this page focused and on-topic.
  • Don't put things which aren't feasible in 3 months. For long term suggestions, consider adding them at maemo.org 2010.
  • Discussion of the 100 Days agenda should be held in the discussion page.


Contents

Community-led action plan process

The result of this brainstorm, once ideas start firming up in the sections below, should be:

  • A set of mediawiki templates for creating consistency in...
  • A page for each of the sections below (e.g. Increasing transparency) containing:
    • a detailed step-by-step plan for what will be delivered within 100 days
    • a list of community members committed to providing it (say 2-6?)
    • a community member as notional leader, responsible for overall delivery of that stream
    • sign-off by qgil as community manager that he views it as constructive

Then, once the brainstorm has completed:

  1. Every 20 days, there should be:
    1. a status report wiki document coalescing all the streams' progress
    2. an IRC meeting of the stream leaders/qgil/anyone else to co-ordinate overall progress.

It would then be up to each mini-team to communicate and flesh-out their commitment within the first period, and then deliver it over the remaining period.

Defining maemo

Main article: Task:Defining maemo


Cristal clear definitions of maemo, maemo.org, OS2008 and so on.

Fast server

Main article: Task:Fast Server


Browsing and downloading from maemo.org should be simply fast. No excuses.

Increasing transparency

Main article: Increasing transparency

Openness is a significant part of what makes maemo so strong, putting together a plan for addressing closed-source components, particularly those directly controlled by Nokia (e.g. low-level stuff like mce and dsme, and user-space stuff like tablet-browser and the task/statusbar applets), would be both a good way to work towards making things that (the community believes, and that Nokia will be convinced of ;)) should be open open and, more generally, addressing the community's concerns over openness in general, particularly the "Why?" of it.

Software distribution

The website

  • Implement some sort of automated single-click push-to-Downloads for Garage projects.
Interesting idea. What about the feasibility? Niels? Ferenc? In any case integrating Garage with Downloads make a lot of sense, and the question is whether this would fit in the 100 Days or later.--qgil 06:59, 2 June 2008 (UTC)
I think we need to prevent (the need for) single file download as much as possible, but rather provide a way of uploading those packages into the extras repository directly from garage. This way people can also download the applications from the Application Manager. --xfade 13:20, 2 June 2008 (UTC)
More generally speaking, maybe something like single-click (or two, or three, or a dozen, but you get the picture) project management from Garage for everything? —generalantilles 16:09, 2 June 2008 (UTC)"
What I had understood (without reading and thinking much, I reckon) was a single click thingy for developers to upload updated packages in Garage and in a single click get the packages in extras and the update reflected in the Downloads section. Now I see that the request is probably about something different and what I'm thinking of is perhaps a bit too much for the next 100 Days. Should we move this then to 2010 Agenda under a generic "Garage-extras-Downloads integration"?--qgil 20:11, 4 June 2008 (UTC)

Internet Tablet Talk Collaboration

Main article: Task:ITt Collaboration


maemo.org and ITt services should integrate much better i.e. maemo.org Downloads syndicated in ITt and ITt users getting maemo.org karma.


Consolidation of extras

Main article: Task:Consolidation of extras


The extras repository needs to become the single reference for developers willing to reach end users at large.


Roadmap for the maemo platform

  • Get a clear public roadmap of what the plans are for the maemo platform for Fremantle. (Note: this doesn't mean a roadmap for ITOS20XX or disclosing new hardware features etc.) --xfade 12:57, 4 June 2008 (UTC)
  • Give developers a clear list of what library versions are targetted for Fremantle. E.g. glib, gtk+, hildon. --xfade 12:57, 4 June 2008 (UTC)
  • Weekly releases of updated SDK packages. SSU for SDK. So developers can start to develop for the new platform right away and not have to wait until the new SDK/OS version is released. This 'beta' SDK releases will help developers with application porting and compatibility checks. So they can release their software the day a new OS is released. --xfade 12:57, 4 June 2008 (UTC)
Ok to the idea but as for today we cannot commit publicly to a specific date, nor guarantee that this will be done within 100 days. It won't be 2010 either, most probably at some point during the second half of this year. What should we do? Add it with a disclaimer? Leave it out? --qgil 20:21, 4 June 2008 (UTC)

Content cleanup

Main article: Task:Content Cleanup


Dress up the most important content, dump what is not relevant, handle via wiki the rest.

maemo.org

Main article: Improving maemo.org

maemo.org needs improvements in usability, content, format and style.

Communication

  • Develop a recommended usage policy for garage.maemo projects, taking into account turning off GForge modules not needed (perhaps defaulting in a subset rather than all, for new projects). Further discussions on whether non-core bugs should be in central Bugzilla and garage trackers merged/closed.
  • Close misnamed (and now misused) maemo2midgard-discuss mailing list and create maemo-web alongside existing mailing lists for overall discussions about maemo.org sites.
Both points agreed.--qgil 07:45, 2 June 2008 (UTC)
  • Today we have too many channels (ITT, maemo.org...). Maybe have some more focus like: maemo.org for developers and ITT for end users and something that links them so software releases can be announced automatically on ITT and users from ITT can easily post bugs on garage bugzilla for example.
Perhaps develop a plan, but this isn't specific enough to achieve in 3 months, IMHO --jaffa 22:10, 29 May 2008 (UTC)
I'm not convinced that two channels is too many, either. —generalantilles 20:04, 31 May 2008 (UTC)
  • It's unclear where to report problems about packages found in the application catalog. A single bug tracker is needed, or at least a catalog that would redirect the user to the appropriate tracker from a common start page. Or we could set up a "maemo" distribution on launchpad.net, which would let us integrate with the bug trackers of individual packages.
Nokia is open to discuss any possibility of integration of maemo.org with third parties i.e. ITt and also using any external service i.e. launchpad.net. We can commit to overall plans for the 100 Days exercise but not on execution. Having a better and common understabnding of how this steps would fall in the 2010 Agenda would definitely help to see what are the right first steps.--qgil 07:45, 2 June 2008 (UTC)

What the community needs to do

  • Put together a plan of action for moving forward with a community-maintained Hacker Edition (based on what Quim said here)
Having a specific proposal agreed by the community would definitely help.--qgil 07:50, 2 June 2008 (UTC)
  • Put the pressure on developers:
    • Encourage developers not using a repository to package their applications and push them to Extras(-devel), and get developers with 3rd-party repositories to close them down and push their stuff into Extras(-devel).
    • Encourage developers to follow proper packaging guidelines (based on the draft here).
    • Encourage developers launching applications on Downloads to include as much information about the application as possible (screenshots, good descriptions, good changelogs).
The aim is good and we support these ideas. It would be good to define the specific actions to be done in these 100 Days, though.--qgil 07:50, 2 June 2008 (UTC)

Update developer libraries

  • gcc-4.x, glib, powervr, it's important to give developers much more time to play with newer tools than short before a major upgrade takes place (of course with disclaimer that nothing is guaranteed to be shipped in a certain way)
  • Update the vmware appliance with sb2 and python2.5 setted. And more publicity on the vmware appliance, as there is already one on garage, but many don't know it.
This is out of scope in this maemo.org exercise. About giving more publicity to https://garage.maemo.org/projects/maemo-sdk/ and http://maemo-sdk.garage.maemo.org/ - it's currently an alpha and the developers don't feel like advertising it much more. But anybody can follow the Garage project and, well, nobody is stopping you from advertise it more.  :) --qgil 07:53, 2 June 2008 (UTC)
Alpha status doesn't mean that it is unusable, I use this VM regularly and it works very well. I really think this one should be promoted on maemo.org. --xfade 13:55, 2 June 2008 (UTC)
Official x86_64 support will be great or at least i386 on top of x86_64. Other distributions too - some of them only need an alien. bundyo 20:47, 2 June 2008 (UTC)

Community Council

qgil is responsible for managing the maemo community on behalf of Nokia. But who is the community? Getting consensus of hundreds of disparate people through mailing lists and wiki-edits means the person who shouts loudest wins.

Therefore - inspired by Debian's Project Leader concept - during the next 100Days, a process for electing a triumverate (i.e. 3 person) "Community Council" should be created and elections held.

Mmm... It is probably benefitial for the maemo community and for the dialog with Nokia to have some structure. We are doing effective steps towards this: some people get admin rights, some people might become QA evaluators in the extras repositories, some people receive are more visible and push for certain things in a structured way... However, also with my community shirt I think that 10 days of brainstorm is not enough to define a proposal, and probably 100 days are not enough to implement it either. So, what about 100 Days for the community to discuss and agree on the way to be formally structured?--qgil 08:54, 4 June 2008 (UTC)
Possibly true - however I'd want to avoid us getting into too long talking about a process which can be enhanced/refined at a later date, and get some of the structure in-place sooner. Perfectly happy to go with the consensus on this (since it's necessary for it to work ;-)) --jaffa 10:39, 4 June 2008 (UTC)

Roles of the council

  • Monthly IRC meeting with qgil. Open to all, but moderated so only the three council members and Quim can talk.
  • Distill maemo community issues, from maemo-* mailing lists, ITT, etc. and raise with Nokia.
  • Understand, and help explain, Nokia's decisions and processes to the rest of the community.
  • Advocate maemo, and involvement in its community, to end-users.
  • Help manage community involvement, for example Maemowiki Action Group, 100Days and 2010 Agenda.

For example, if it already existed, the Council would take responsibility for defining the outcome of the brainstorm, i.e. the format and structure of the individual streams' plans.

Elections

The full process would be defined during the first 30 days, however here's an outline:

  • Council positions open to anyone with karma above a certain threshold - say, 150.
  • Community votes open to anyone with karma above another threshold - say, 75.
  • One member, one vote.
  • 3 nominees with highest number of votes elected.
  • The chairperson will be the nominee with the highest number of votes.
  • Elections held every 6 months.
  • Nominations accepted 2 weeks before election.
  • Votes tallied after 1 week of elections.