= 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 == Abhishek Mishra == === Skills === * Python (loving it) * HTML (is the body) * CSS (is the clothing) * JS === Available === Mostly on weekends[[BR]] Availability in April depends on college schedules :([[BR]] Exams in May's 1st two weeks[[BR]] 13th May onwards. [[BR]] Working UTC: TBD === Interested in... === * Spring clean tasks * UI Improvements * Research theming support * Learning more web2py, sahana-eden * any Ext/jQuery tasks == Praneeth Bodduluri == === Skills === * Python () * HTML (hack through) * CSS (hack through) * JS (hack through) * Sysadmin (Beginner) === Available === Not available during the last 2 weeks of April[[BR]] 5th May onwards. [[BR]] Working UTC: TBD === Interested in... === * Spring clean tasks * Benchmarking different deployment options * Unit Tests * Documentation == Robert O'Connor == === Skills === * Python(willing to learn?) * HTML (can get by!) * JS (can get by!) * CSS (can get by!) === Availability === Weekends[[BR]] Classes still in session, spring break just concluded... classes end 3rd week of may..[[BR]] So I'd say sporadic[[BR]] Working UTC: TBD === Interested in... === * Learning web2py and sahana-eden * Getting my skills up to par for Google Summer of Code 2010 * Making an impact :) == '''Shikhar Kohli''' == '''Skills'''[[BR]] * Python(gotta love it)[[BR]] * HTML[[BR]] * CSS(can hack through)[[BR]] * JS(jQuery)[[BR]] * SQL (basic)[[BR]] '''Availability'''[[BR]] Available in April[[BR]] Exams from 5th to 22nd May, freedom after that[[BR]] Working UTC:TBD '''Interested in'''[[BR]] * Sahana Eden source(still learning :) )[[BR]] * Integrating Python libraries to facilitate importing of spreadsheets to database(spread sheet importer project)[[BR]] * Core component improvement[[BR]] * Documentation