wiki:Event/2010/GHC

Version 42 (modified by Fran Boon, 14 years ago) ( diff )

--

Grace Hopper Celebration

The Codeathon at GHC2010 is intended to introduce participants to rapid development of FOSS applications in a collective coding setting. We expect participants with any level of familiarity with coding and with the specific tools used in Sahana Eden, so want to provide a range of options for projects. We also want to send out material that participants can review in advance, as there will be little time for training during the codeathon. Facilitators can receive more direct training and practice in advance.

Agenda for August 25

  • Pre-Codeathon Training for Facilitators
  • Day of - Facilitator Logistics
  • Pre-codeathon outreach
  • Codeathon Project

Pre-Codeathon Training for Facilitators - Content and Logistics

  • Python intro
  • Eden / Web2py intro
  • Facilitating at a barcamp
  • Simplified agile (incremental development, short cycles, partner programming,...)
  • Teamwork
    • Watching out for people getting "left behind"
  • How many sessions? When?

Pre-Codeathon Preparation for Participants

  • Python intro
  • Eden / Web2py intro
  • Download / install Dev environment
  • Documents, flash drives, vdi?
  • What to expect at a barcamp, crisiscamp, etc.
  • Remote participation in FOSS development
  • Survey participants software development experience

Codeathon Agenda

Lecture

  • Overview of Sahana (10 minutes) (Louiqa)
  • Introduction of code and frameworks and libraries for Eden (20 minutes) (Fran)
    • with printed guides
  • End to end bug fix walkthrough

In advance or at the table

http://eden.sahanafoundation.org/wiki/DeveloperGuidelines

  • Walkthrough of fixing a bug and committing it
  • Projects (60 minutes)

Codeathon Projects

(I'm not convinced that the distinction for tasks should be between Python coders and non-Python coders. Perhaps between people familiar with web services and not? --Pat)

Fran thinks that the distinction is between Advanced Programmers & Basic ones - everyone can learn

Improving and polishing useful modules is more valuable than developing small standalone modules. Emphasize that these will be of actual use.

Projects for non-coders

  • Use testing
  • Reporting bugs
  • Bug fixing
  • Entering data on live Pakistan site
  • Researching info for Pakistan site

Projects for non-Python (or non-web services) coders

  • Bug fixing
  • Small-scale projects
  • Projects that don't require lots of reading of S3 docs ;-)

Projects for Python (or web services) coders

  • Something needed for Pakistan (depends on what's left to do)

Projects not yet rated for difficulty

  • Job Jar
    • UI for assigning data entry or similar tasks to users
    • Track who does what, mark completed
    • Admin UI for defining tasks
    • Cross-check / verify task, or compare result of 2 users on same task
  • Extend Sahana to support Maitri - a nonprofit organization based in the San Francisco Bay Area, that primarily helps women & families from South Asia facing domestic violence, emotional abuse, cultural alienation, human trafficking or family conflict.

Fran: This could be very useful, especially with user stories.

  • Digitizing region boundaries on maps
    • UI that allows user to digitize boundaries on map images
      • Zoom in on map image
      • Mark points with known latitude, longitude as references
      • Mark points along boundaries
    • Compute polygons for regions from digitized boundary points

This one is too hard...

Tasks

  • Launchpad cookbook (Jen, Pat)
  • Python training wiki (Jen, Pat, Avni)
  • Eden training wiki (Pat, Avni, Fran)
  • Downloadable vdi (Pat, Fran)
  • Flash drives for vdi distribution
  • Materials for facilitators (Avni)
  • Remote participation / irc info (Jen)
  • Participant experience survey (Avni, Jen)
  • Mailing list, irc channel for participants
  • Identify bugs and cleanup items appropriate for beginners (Fran, Pat)
  • Test install before facilitator training (Jen, Avni)
Note: See TracWiki for help on using the wiki.