The Development Environment

Basic Requirements for the Development Environment:

  1. Debian-based OS (preferrably Debian itself).
  2. Python 2.7
  3. Firefox, Midori, and Rekonq (cross-browser testing is important, but you can forget IE).
  4. Offline OpenStreetMaps (and required dependencies).  More information available here: http://wiki.openstreetmap.org/wiki/Offline_Openstreetmap
  5. APRX and/or APRSD (if you are working on an additional challenge).
  6. CherryPy is a lightweight python-centric alternative to Apache (the main thing here is lightweight): http://lincolnloop.com/blog/2008/mar/25/serving-django-cherrypy/
  7. As few dependencies as possible.
We also have some recommendations:
  • Python Web Frameworks (you want to use something lightweight and powerful): http://wiki.python.org/moin/WebFrameworks
  • Leaflet is a good, lightweight slippy map interface: http://wiki.openstreetmap.org/wiki/Leaflet
  • We recommend using HTML5, CSS3, and jQuery to build the interface.
  • Optimize the graphics for high-contrast or even black-and-white displays (extra credit for "night mode" and "day mode").
  • Optimize the UI for touch input, but expect a physical keyboard.
  • Optimize the DB for synching over APRS messenges (this is detailed in the Starter Kit).
  • Optimize the entire system for running on a low-powered device.