Task:100Days

(Get the server and bandwidth infrastructure up to speed)
(Get the server and bandwidth infrastructure up to speed)
Line 15: Line 15:
==Get the server and bandwidth infrastructure up to speed==
==Get the server and bandwidth infrastructure up to speed==
Although things have improved some (particularly after the OS2008 release), they don't seem to be keeping up well with the ever increasing numbers of tablet users, and downtime or slowness from the critical services offered by maemo.org is unacceptable.  
Although things have improved some (particularly after the OS2008 release), they don't seem to be keeping up well with the ever increasing numbers of tablet users, and downtime or slowness from the critical services offered by maemo.org is unacceptable.  
-
** Mirror repository.maemo.org to ensure good uptime and fast response.
+
* Mirror repository.maemo.org to ensure good uptime and fast response.
-
** Mirror tablets-dev.nokia.com to ensure good uptime and fast response.
+
* Mirror tablets-dev.nokia.com to ensure good uptime and fast response.
-
** Improve the hardware and bandwidth availability behind *.maemo.org to ensure good uptime and fast response—maemo.org is too slow!
+
* Improve the hardware and bandwidth availability behind *.maemo.org to ensure good uptime and fast response—maemo.org is too slow!
== Increase openness ==
== Increase openness ==

Revision as of 20:28, 31 May 2008

The maemo.org 100 Days Action Plan

  • 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

Get the server and bandwidth infrastructure up to speed

Although things have improved some (particularly after the OS2008 release), they don't seem to be keeping up well with the ever increasing numbers of tablet users, and downtime or slowness from the critical services offered by maemo.org is unacceptable.

  • Mirror repository.maemo.org to ensure good uptime and fast response.
  • Mirror tablets-dev.nokia.com to ensure good uptime and fast response.
  • Improve the hardware and bandwidth availability behind *.maemo.org to ensure good uptime and fast response—maemo.org is too slow!

Increase openness

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).

The plan

  • Identify all closed components in the OS at each layer:
    • Initfs/direct hardware access
    • Firmware used by kernel modules (Wifi, Bluetooth)
    • Low-level system daemons (mce, dsme)
    • User-space applications (tablet-browser, applets)
  • For each package:
    • Outline purpose in a dedicated wiki page.
    • Describe the closed-source rationale.
      • Will need some form of mediawiki template for such pages --jaffa 22:26, 29 May 2008 (UTC)
  • Document the process for working towards opening the component, or its specification.
  • Ensuring any new closed packages get a wiki page containing their rationale.

Software distribution

The website

  • Implement some sort of automated single-click push-to-Downloads for Garage projects.

Internet Tablet Talk Syndication

  • Provide an automatic way to syndicate applications to the Internet Tablet Talk Software Section (itTSS).
  • Each application (version) that is syndicated on Internet Tablet Talk, starts a new thread in the forums so end-users get notified of new apps as well as provide a way to give feedback to the developers. Developers themselves can also join in the discussion. This, hopefully, will help to better the quality of applications.
  • Provide a way for developers to easily add a bug at the application's Garage page for confirmed bugs reported in the discussion thread.

maemo "Application Store"

  • Actively hunt on the Net for maemo apps not yet added to Maemo Extras, talk to developers, ask and help them to commit applications to Maemo Extras. This especially applies to app porters currently active at iTT.
  • Use gronmayer's scripts to create a web site that merges applications from all known repositories into a single list and lets you browse them with MicroB using HTML UI similar to N-Gage, Apple Store, etc. While it sounds ambitious, it is not difficult to do, as we always have app descriptions and icons (form .deb files) and we also have screenshots for apps hosted at Garage. Reformatting this data in a format that can be nicely presented in tablet browser is not difficult.
  • Effectively replace "itTSS" with this website.

The repositories

  • Again, because this can't be stressed enough, get the infrastructure behind the repositories up to speed—we need servers, we need bandwidth and we need mirrors.
  • Streamline the acceptance system for Extras(-devel), (not necessarily easier or less stringent, but more straightforward and clear).
  • Lay out the groundwork for a peer-review system for Extras acceptance (or devel to Extras promotion) to help ensure good quality assurance on its packages.

Developer documentation

Clean out the cobwebs, remove the cruft

  • 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.

Get organized

  • 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?).

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 ...

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.

maemo.org

  • Re-write and expand Introduction to better serve as a useful introduction for newcomers to the platform.
    • Intro section should include "Who is the maemo community?, What is the maemo platform? The maemo software architecture, How does maemo.org work? Quick start guide to develop on maemo software, and presentations".
  • Single sign on for maemo.org/garage.maemo.org/wiki/bugzilla -> would make community participation easier and the 'karma' calculation (if needed) too.

Style and format

  • Maemo.org can benefit from some face lifting - right now on 1280x1024 (this resolution seems to be very common to developers) only half of the real screen estate is used. With some loose block positioning both 800x480 and bigger resolutions can be supported. Maybe even specialized tablet finger-friendly look for those preferring it.
    • Resolution seems fine to me at the moment, and it works fine on the tablet without requiring the extra effort of maintaining a separate tablet style. Perhaps reducing the min-width to not require horizontal scrolling with the tablet browser windowed would be useful, though. generalantilles 21:02, 29 May 2008 (UTC)
      • There won't be any extra effort on the resolution maintainment - this can be done with minor CSS modifications. As for the separate tablet style - this really requires extra effort and if done should be entirely optional. bundyo 21:26, 29 May 2008 (UTC)
  • More relevant information displayed on front page, preferably customizable blocks like Netvibes and iGoogle. Since the content is gzipped, that won't be too harming to the traffic. Blocks can be optionally auto updated for those that like to keep their browser pages open (and if Prizm is ported - even in the tray). For instance, a "new bugs" section with voting on the fly will boost bugzilla usage.
  • Make links more standardized. New users often expect links would be underlined, even subtly, or appear to be a button of some kind. Don't rely on hover effects because the tablet can't practically use them. See Wikipedia on 'Mystery Meat Navigation'
    • This is much less of an issue for a lot of people —generalantilles 19:49, 31 May 2008 (UTC)
  • Format and style need to be unified across as much of the site as possible (excluding things like Garage and Bugzilla). Take, for instance Planet and News, two pages that should be very similar, if not the same. Perhaps take News' style and format and apply it to Planet (add the contributor's avatar to the upper right of each article? Much like slashdot does with their article category images.), as the News style seems to offer a cleaner look that better utilizes the available space.
  • For the outliers like Garage and Bugzilla, at least the style should largely be unified with the main site—using the same fonts, same colors, etc.

Communication

  • 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)
  • 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.
  • 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.

What the community needs to do

  • Put together an plan of action for moving forward with a community-maintained Hacker Edition (based on what Quim said here)
  • 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).

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.