Version 27 (modified by 15 years ago) ( diff ) | ,
---|
SahanaPy Workout @ FOSS.in/2009
SahanaPy is having a week-long workout at FOSS.in 2009
Description
SahanaPy is an example of HFOSS (Humanitarian FOSS). It is a RAD framework for developing Emergency Management applications. Sahana has been used to help support most major disasters since the Indian Ocean Tsunami including localised versions for floods in India (Bihar 2008 & Andhra Pradesh/Karnataka 2009). You can check Sahana's History here & here.
The core team will all be physically together in in one place for the week to really push our framework to the next level. We'll be extending a warm welcome to any Python/JavaScript programmers who wish to join in throughout the week. We will be polishing up our back-end REST/XSLT-driven XML/JSON controller & developing new front-end UI tools - flexible layouts with advanced widgets (based on ExtJS &/or jQuery dataTables/jEditable) & Growl-like notifications generated programmatically by the easy to use, lightweight & powerful Web2Py. We'll also be looking at improving our GIS functionality using Javascript toolkits like OpenLayers & GeoExt/MapFish. We'll also be fixing our Testing framework, based on Selenium.
How will people benefit from attending?
- Get acquainted with a new python web framework Web2Py
- Use advanced JavaScript functionality
- Get a sense of fulfilment from contributing to HFOSS
Audience, Pre-requisites
- Installation, Developer & Framework Guidelines
- Participants should be familiar with Web technologies such as JavaScript & Python Frameworks. Web2Py, OpenLayers/GeoExt/MapFish &/or Selenium experience a plus.
- If people can get time to familiarise with the codebase before the session then this would be extremely helpful, but isn't required.
- If there are people with skills in Usability they are welcome even without programming skills.
How to Communicate?
- Developer Mailing list can be used prior to & after the event.
- IRC allows real-time group & 1-1 communication using low-bandwidth text
- Pastebin allows people to share code snippets
- For jQuery/HTML: http://pastebin.me/
- For Python: http://paste.pocoo.org/
- GoogleDocs can be used for collaborative document authoring before copying results to this Wiki
- Dabbleboard provides an Online Whiteboard for sketches
- An audio channel can be added, if necessary, using GTalk or Skype
- Log tickets here in Trac
- Alternate options: Dimdim or CoPilot
NB If you have problems accessing wiki.sahana.lk, then add this to your hosts file:
222.165.133.43 wiki.sahana.lk
What are we going to do?
Fran
- We're starting by hand-crafting Ext pages which interact properly with the back-end.
- Later we are looking to generate these programmatically to restore RAD.
- Trying different approaches:
- Add a new
format=ext
representation to the REST controller which uses ext versions of the default layouts which inherit fromlayout_ext.html
- This seems very slow to load the different components (header, footer, content) into the Ext Viewport
- Have optimised the model to reduce overheads here, but it still doesn't seem to be an optimal approach
- Ext forms embedded inside the standard layout
- Done: Start with the login form (downside is that browser can't save login/password)
- Done: Need to get the Web2Py form.custom to integrate with Ext
- EditorGridPanel to replace dataTables
- Growl-like notifications:
App.js
- Menus
- Popups
- Hyperlink buttons converted to Ext style
- Could add the Ext.ux.PasswordMeter to the register form :)
- Add a new
- Display Feature Details in Popups
- Upload Photos - with GPX Track & use timestamps to place associated features onto the map
- Make Features Editable from the Map
- Export Features as GeoJSON (using S3XRC with an XSLT)
Ajay & Michael
Lifeeth
- Done: Autoprobing of Modem added to PyGSM
- Get Sahana to make use of AutoProbing
- Add SMS Gateway API providers
Ideamonk
- Done: Finish integrating the GPS coordinate converter into the GIS Location input form
Surya
Newcomers
Whilst any BluePrint is fine, suggestions for areas suitable for a newcomer:
- Provide a layout which allows tables to be scrolled when they exceed the width of the display
- Less important with an Ext Grid with horizontal scrollbar
- Provide an Ext theme