Summer Of Code 2008


OpenMRS is proud of our second year as a mentoring organization for Google Summer of Code™. We had many excellent applications for 2008 and received 11 slots from Google. Take a look at our /wiki/spaces/AR/pages/18515682 and the Developer How-To Guide. For more information about the Summer of Code, see Google's Student FAQ.


See the /wiki/spaces/AR/pages/18515682 page for available projects and their descriptions.


The following projects were chosen for OpenMRS Google Summer of Code 2008.


Expectations of students working with OpenMRS this summer:

  • Students should become familiar with OpenMRS and their project prior to the start date
  • Weekly Blog entry
  • Commit early, commit often — a common mistake in open source is to feel like you can share your code too soon or "it's not quite ready yet"
  • Join the interns mailing list (we'll help you with this)
  • Technical discussions should occur in IRC or within the developers mailing list (email|dev|

What students should expect of OpenMRS during the summer:

  • You will have fun!
  • You will learn how to work within an open-source project
  • You will have a clearly defined mentor along with a backup mentor
  • Your mentor will be able to spend at least 4-5 hours per week working with you
  • The program administrators will be available for any issues that arise between students and mentors

Next Steps

  1. Get in touch with your mentor
  2. Get openmrs installed and running — see /wiki/spaces/AR/pages/18514002 page and use the community if you have questions
  3. Get coding environment installed and running
  4. Review our conventions page
  5. Request a trac account
  6. Register your blog RSS (or ATOM) URL with OpenMRS — Ben, Brian, Burke, or Paul can help with this
  7. Browse the current OpenMRS code specific to your project
  8. Create your User Page (see how to create a user profile page)
  9. Browse other GSoC projects and the pages they have for their students. We want to A) make sure we "keep up with the Jones'" and then B) be better than the Jones'.
  10. Review the requirements for your project (see Projects Page)
  11. Submit formal proposal to your mentor
  12. Agree on final requirements with your mentor
  13. Develop project schedule with your mentor

Program Timeline

See the Official Google Timeline.

  • Prior to May 26 — Community Bonding Period
    • This is the time to get to know your fellow interns and your mentor(s)
    • Download and install OpenMRS on your machine, install Eclipse (see our /wiki/spaces/AR/pages/18514002 page for getting started tips and don't forget to use the community if you have questions)
  • May 26 — Coding Begins
    • Ideally, we'd like all projects to have a project plan in place by this time. If not done, then the first week should be used to do it.
    • Don't forget: commit early and often!
  • July 14 — midterm evaluations due
  • August 18 — pencils down (end of projects)

Community Resources

  • The OpenMRS Development Site — we use Trac as a tool for issue tracking and project management
  • Email
    • Personal e-mail — for discussing larger design ideas and good for asynchronous communication. We always encourage technical discussions to use the dev list (email|dev|
    • Mailing Lists
      • email|interns| — for administrative issues. This list should NOT be used for technical discussions
      • email|dev| — for technical discussions
  • IRC — discussions in the #openmrs channel of freenode are always fun! Useful for lower bandwidth discussions or for larger group discussions
  • Skype or Phone — sometimes a short discussion can get ideas across much more efficiently
  • Google Docs — an excellent tool for sharing and collaborating in real time on documents or spreadsheets
  • Wiki
    • Everyone is encouraged to make a user profile page
    • Every project should have a OpenMRS wiki page where you document your project, progress, technical details, show mock ups, etc.
  • OpenMRS Forum — when you want to get feedback on an idea or mockup, the forum can be very handy. Sometimes it helps to create a forum topic and then send a note to the dev list and/or putting a link on your project's wiki page directing people to the forum entry
  • Scheduling
    • — to clarify/coordinate times around the world
    • — to coordinate meeting times for larger groups


Contact Burke and/or Paul