GRASS SoC Ideas 2010
About
February 2010: This page is open to contributions - please edit!
This is the GRASS page for Google Summer of Code 2010. Here we will list project ideas and and other information related to the GRASS GSoC projects.
- Note that at this point accepted mentoring organizations have not yet been announced.
Promotion:
OSGeo Flyer at http://svn.osgeo.org/osgeo/marketing/flyer/google_summer_of_code/OSGeo_GSoC_2010.pdf Videos at http://code.google.com/p/google-summer-of-code/wiki/Videos More Flyers at http://code.google.com/p/google-summer-of-code/wiki/GsocFlyers
Timeline
- Mentoring organization applications open (March 8-12)
- Accepted mentoring organizations announced (March 18)
- Interested students should initiate preliminary discussions with projects (March 18-29)
- Student applications open (March 29)
- Deadline for student's applications (April 9)
- Registering your application early (before the deadline) allows us to give you feedback for revisions before the final deadline, enhancing your proposal and thus giving you a better chance of success.
- Mentor assignments and application reviews deadline (April 21)
- Accepted proposals announced (April 26)
- Community bonding time (getting to know the students)
- Work Begins (May 24)
- Midterm evaluation (July 12-16)
- Pencils down! (August 9)
- Final evaluations submitted to Google (August 16)
Required Steps
- List ideas
- Assign Mentors to Ideas
- Notify OSGeo
- Mentors evaluate student applications
- Accepted students announced
- Students subscribe to the grass-dev mailing list and introduce themselves
- Create directory structure in the GRASS add-ons SVN for projects and setup access for students
- Students must read and post agreement to RFC2 to the grass-psc mailing list to gain SVN access
- Create a Wiki page for each accepted project, to be used as a progress reporting tool
- Coding begins...
- Students and mentors: Complete the Mid-term survey
- Final commit and packaging for Google
Ideas
- Also review ideas from 2008 and 2009 which are still open.
- Project ideas of your own are also most welcome.
wxGUI
Willing to Mentor: (Helena Mitasova, your name here)
- wxGUI layout customization - reorganize the wxGUI layout to be more similar to QGIS and likeminded with all-in-one-frame interface (see figures below). Essentially follow the Human interface guidelines and mind your users (and where they come from - think newcomers to the GRASS world - "Don't Limit Your User Base" by being too different from others). If at all possible, this should be implemented as a skin to give users the choice to also use wxGUI as Multiple Document Interface (MDI, i.e, the wxGUI windows reside under a single parent window). More here.
- Continue wxNviz development for enhanced 3-4D visualization and analysis.
- Develop a graphical cartographic module GUI front-end for ps.map
- Willing to co-mentor: H.Bowman for ps.map advice but need to find a lead mentor who knows wxGRASS
- Develop a GUI module in wxPython for creating animations from multiple maps and saving animation outputs to animated GIF, MOV, or MPEG files. See existing modules xganim, r.out.mpeg, and nviz's animation tools.
- Implement graphical modeller.
Raster
- Your idea here'
- Implement OpenMP (multithreading) as much as possible
- It is important to understand which modules are processor bound, and concentrate on them. i.e. do not needlessly complicate the code of non-long running processor bound modules
Willing to Mentor: (your name here)
Vector
Willing to Mentor: (your name here)
- idea 1
- idea 2
Imagery
- GRASS's imagery modules (for satellite, scanned maps, and orthophotos) act as enhanced raster modules. In GRASS 5 and 6 they were mostly implimented using interactive X-monitors which are not available in MS Windows and so are removed in the new cross-platform code of GRASS 7.
- We need someone willing to port the old modules to work with GRASS 7, including writing new wxPython GUI frontends to a number of existing tools and updating the imagery libraries to current raster library standards.
- In addition, there are a number of improved/automated georectification tools which have not been merged into GRASS 5/6 which it would be nice to have updated and merged into the main code.
- Implement OpenMP (multithreading) as much as possible
See the Ideas for imagery improvement and GRASS 7 ideas wiki pages for more details.
Willing to Mentor: (your name here)
Other
- Design system for building manual pages based on DocBook system
- Design and implement modern metadata management system for GRASS to support OGC CSW and INSPIRE discovery a view services
- Design and implement text displaying and styling in OGSF library and it's front-ends (NVIZ, wxNVIZ). Solution should be user configurable (fonts, colors, effects etc.) and multilanguage friendly.
- Design and implement user-provided symbol support in OGSF library and it's front-ends (NVIZ, wxNVIZ). Solution should support GRASS symbols and/or SVG symbols.
Guidelines for Students
How do you maximize your chances of getting picked? First read the Google SoC FAQ. Then talk to us about your idea. Try emailing our dev-mailing list, or come and talk to us in IRC (#grass). You can also reach the mentors directly by emailing:
- The OSGeo SoC mailing list
- Wolf Bergenheim (wolf+grass@bergenheim.net)
Getting started with GRASS coding
- The source code is maintained in a SVN server which is easy to browse
- Please review the SUBMITTING files there for our coding standards.
- There is lots of good info at the GRASS Developer's wiki
- See also the development section of the GRASS user's wiki
Accepted Ideas
- TBD