= Introduction = A "Work Out" is an intense period of work either focused around specific tasks or a specific event where a number of Sahanians are together (eg. a FOSS Conference). Perhaps we can call them "Sahanathons". [[BR]] (Feel free to modify this definition) = Format = They could either be held in a physical location with a group of Sahanian, or virtually (perhaps over the period of a week), or a combination of both. == Proposed Virtual Schedule == 7 days '''Pre-Sahanathon:''' * Prepare a task list * Gather a list of interested people '''Day 1''' * IRC Chat. Introductions, Q&A and Task Allocation '''Daily''' * Have a roster for providing help on IRC * Report back on Achievements, Commits, Problems by email * Scheduled IRC meeting * Daily Prize for best achievement(virtual/physical?) '''Wrap Up''' * Summarize Achievements * Prize Giving * Most task completely * Best New Sahanian * Comminuty Spirit Award * Longest Continual Coding (no to encourage sleep deprivation) * Overall * Lessons Learnt * Task for next time = Proposed Work Outs = Any of these could potentially be merged... == Spring Clean == There seem to be a number of things which we could do to make the code more "beautiful", easier to read and easier to work with. This could be a good opportunity for people new to the code to get a deeper understanding of how it all works, while the more experienced can offer advise + checking). [[BR]] These ideas are just proposals... * Getting rid of the database reserved keyword warnings * Replaced repeated code with functions (or document existing code) * A pop-up wrapper * Auto-complete widget * Easily generated tables to insert into pages * shn_get_db_field_value * ~~shn_crud_strings~~ * Function for generating Graphs * Standardized coding conventions: * header information to all code files (docstrings rather than comments) * variable/field/function naming * Coding style conventions: [http://www.python.org/dev/peps/pep-0008 PEP 8] resp. [http://docs.python.org/tutorial/controlflow.html#intermezzo-coding-style Intermezzo] * " vs ' * Documenting functions and response.s3 variables (insert docstrings and epydoc fields for automated API documentation) * Moving imported data out of code and into csv/xml files * moving standard variable definitions (truncate = 16) into a configuration file, using #defs? * Ensure that all cross module functionality (SMS, GIS, Email) have easily accessible, easily integrated functions, API even? * "Organisation" vs "Organization" - OK, I speak the Queen's English too, but after working for an American "Organization", I now get confused - can we just change it to "Org" in the code? * Standardize the location of code (what code should go into M,V and C..). This could include embedding JS in the controllers to pass it to the View. * Extend the Restful Controller to automatically generate: Search Reports, Printable Forms, Printable Reports. * Avoid necessity of numeric prefixes for models by using #include in the correct order (is this possible?) * Graceful degrading of JS * "tooltip" class shouldn't be specific to help. Perhaps we need a more specific help_tooltip class? What is the distinction between tooltip and ajaxtip * create a CSS master document , describing the various classes, and where they are used == Learning the Framework == Especially for GSOC Students and Mentors * Using BZR * [wiki:RESTController REST Controller], [wiki:S3XRC XML Interface] * GIS This could also be a good opportunity to improve some of the documentation. Doing it while teaching the framework, identifying gaps and filling them. == GSOC Student Selection == * Some sort of workout to gauge the skills and interests of students * Could be combined with either of the top 2 workouts * Student applications must be completed by 9 April, the organization must select students by 21st April. A good time for the workout could be the week of the 12th - 18th of April * Developing a volunteer management module = Interested Sahanians = == Michael Howden == === Skills === * Python (Intermediate) * HTML(Intermediate) * JS (Intermediate) * CSS (Beginner) * SQL (Intermediate) * Cooking Dal (advanced) * Mixing Cocktails (entirely subjective!) === Available === 13th - 18th April[[BR]] Limited availability during the rest of April.[[BR]] 8th May onwards. [[BR]] Working UTC: 0100 - 1700 === Interested in... === * Coordination * Anything which no one else wants to do == Dominic König == === Skills === * Python (Beginner) * HTML(Beginner) * JS (Beginner) * CSS (Beginner) * SQL (Beginner) === Available === 1st - 20th April[[BR]] Limited availability during the rest of April.[[BR]] 8th May onwards. [[BR]] Working UTC: 1900 - 0200 === Interested in... === * Core Component Enhancements * Coding Conventions * UI Improvements