== [http://eden.sahanafoundation.org/wiki/GHC2010 GHC2010 Sahana-Eden Home] == '''''Caution! Page being edited! Trac wiki does not support multiple editors. If you have something to add, please start a Google Doc and post to codeathon-for-humanity@googlegroups.com.''''' == Codeathon Projects == Since we expect GHC2010 Codeathon participants to reflect diverse skills and expertise, we have identified a range of projects. Regardless of the amount of coding needed, all of these are useful! == Projects that do not involve programming == ==== ''Provide feedback on an existing Eden module'' ==== * Try it out: * You can use: * your locally-installed site * [http://demo.eden.sahanafoundation.org/eden/ demo site] * [http://test.eden.sahanafoundation.org/eden/ user test site for Pakistan floods response] * Role-play being a user. * What do you expect it to do? * What features would you want? * What do you think the workflow should be? * Improve it: * Find bugs: * Try to break it. * [BugReportingGuidelines Report bugs]. * Document it: * Explore it and document the existing workflow. * Develop a how-to guide for users. * Write tooltips (help info) for fields on forms. * What's missing? * What did you want to do that wasn't available? * Where is the workflow inconvenient? * [BugReportingGuidelines Request features and suggest improvements]. * Modules that could use some usability improvement: * All of them. Well, ok, try these: * [http://demo.eden.sahanafoundation.org/eden/gis Mapping] * [http://demo.eden.sahanafoundation.org/eden/cr Shelter registry] * [http://demo.eden.sahanafoundation.org/eden/hms Hospital registry] * [http://demo.eden.sahanafoundation.org/eden/pr Person registry] * New or unfinished modules that would benefit from feature and workflow suggestions: * [http://demo.eden.sahanafoundation.org/eden/inventory Logistics] * [http://demo.eden.sahanafoundation.org/eden/vol Volunteer management] * [http://demo.eden.sahanafoundation.org/eden/msg Messaging] * [http://demo.eden.sahanafoundation.org/eden/rat Rapid assessment tool] ==== ''Help out with a current relief effort'' ==== * Pakistan floods * Research missing map and location data for PakistanUnionCouncils, part of the [/PakistanUserGuide#LocationsHierarchy GIS location hierarchy]. * Do you speak Urdu? Help with [PakistanTranslation translation]. * [Pakistan Background information]. ==== ''Improve installation procedures'' ==== * Step-by-step documentation -- we have been concentrating on Windows & Debian/Ubuntu so other distros are poorly-documented. == Projects for beginning coders, or those just starting with Python or web services == ==== ''Fix bugs'' ==== * Pick from these [/report/18 easy bugs for new Eden developers]. ==== ''Polish existing modules'' ==== * Fix UI issues * Add features ==== ''!SysAdmin'' tasks ==== * DeveloperGuidelinesReleaseProcess#ExportApplication * PakistanDeploymentCycle#SysadminToDo * Installation scripts or packages for operating systems and distributions that aren't already available (i.e. other than Windows or Debian/Ubuntu). == Projects for more experienced coders == Some things to keep in mind when planning new modules or major features: * Consider what other FOSS tools exist, that could be installed alongside Eden. * Look at tools and libraries already in use in Eden, e.g. jQuery and ExtJS for UI work. * Test automation * Figure out how to do unit tests against a web application. * Write unit and functional tests. * DeveloperGuidelinesTesting#FunctionalTests * Tweet or SMS parsing -- allow users to provide info via tweets or SMS messages * Parse formatted SMS messages or tweets (e.g. key value pairs). * Detect when message interpretation isn't certain and dispatch to a human reader (use existing "task" database, or Job Jar, below!). * Create database records from parsed messages. * BluePrintMessagingModule#Twitter * BluePrintMessagingModule#Micro-Syntax * Job Jar -- manage tasks performed on the site, e.g. data entry * Assign tasks to users or let users select tasks. * Track who does what, mark completed. * Provide administrator UI for defining tasks. * Cross-check / verify task, or compare result of two users on same task. * Administer tests and training for new workers. * Suggestion Box * http://groups.google.com/group/sahana-eden/browse_thread/thread/bbda1e98b73e1437 * Upload photos or video from a smart phone * Design a widget (to be included in an Eden form) that can be used to select images or video, with any needed detection of the type of phone. * Run Eden on a smart phone: BluePrintMobileClient * Alternate Layout for web view: [wiki:BluePrintCSS#MobileView] * Android Application: MobileAndroid * Note this [GHC session on Android development http://gracehopper.org/2010/conference/open-source-track/#session3]!