'''[http://eden.sahanafoundation.org/wiki/GHC2010 GHC2010 Sahana-Eden Home]''' '''''Caution! Page being edited! Trac wiki does not support multiple editors.''''' [[TOC]] = 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 == ==== ''Investigate usability'' ==== #Usability * Role-play being a user: * 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] * What do you expect it to do? * What features would you want? * What do you think the workflow should be? * Improve usability: * 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 if new to 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, provide user-requested enhancements. * You can pick from these [/report/21 feature requests]. * Or talk to the folks at the Codeathon who are [#Usability cataloging issues]. * The landing page for each module is different -- some have descriptive text, others have statistics (a "dashboard"). Each has a different layout of menus. * Are any of these landing pages useful? What would be better? Maybe go straight to a list page? Make appropriate changes. * Is there a common sort of menu that would be useful? ==== ''Geocode addresses'' ==== * A favorite missing feature: Geocoding addresses. There is already a geocoding service supported in Eden, but it's not used when a user adds a location. Your job: * Find the geocoding function. * When the user adds a location and enters an address, use the geocoding function to get latitude and longitude. ==== ''Suggestion Box'' ==== * http://groups.google.com/group/sahana-eden/browse_thread/thread/bbda1e98b73e1437 ==== ''!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. ==== ''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'' ==== * See BluePrintMobileClient. * Alternate Layout for web view: [wiki:BluePrintCSS#MobileView] * Android Application: MobileAndroid * Note this [http://gracehopper.org/2010/conference/open-source-track/#session3 GHC session on Android development]! ==== ''Chat with other logged in users'' ==== ==== ''Refactor and complete the Survey module'' ====