2010-02-18 Developers Conference Call

Date: 18 February 2010

In Attendance

  • Wyclif Luyima
  • Jeremy Keiper
  • Sy Haas
  • Darius Jazayeri
  • Justin Miranda
  • Pascal Brandt
  • Ben Wolfe
  • Stephen Lorenz
  • Joaquin Blaya
  • Hamish Fraser
  • Paul Biondich
  • David Eaves
  • Zeshan Rajput
  • Michael Downey


  • Road Map Review
    • After action review on 1.6 release. How can we do even better with 1.7?
  • Rapid Prototyping / Agile Development (how can we improve speed of development on top of OpenMRS platform)
    • Tomcat hot deployment / ad-hoc classloader swapping (need someone to research this to see if we can integrate Eclipse and Tomcat to hot swap classes – re: Tomcat context.xml reloadable attribute)
      • I just configured JRebel – class hotswapping for trunk is now working in my dev environment!
      • Going to test modules next.
    • Allow for modules that include Grails apps (Darius and I have used grails to prototype new ideas very quickly)
    • Flesh out more of our REST API to allow for rapid development using other technologies like PHP and Ruby (SOAP might be too heavy and cumbersome for rapid development)
  • Darius to roll out message to dev community about UI


1.6 Beta 2 and 3 update

  • Darius couldn't release the beta before training...was distracted
  • Found a show-stopper bug only when the serialization module was installed. So pulled out some code from beta 2 and released beta 3
  • Darius is not confident with logic module code and the state of 1.6
  • Darius: Sy, please send what you have to do to the logic module to get it to work with Tammy to the list
  • Darius: Ben, please hand off any knowledge of the classloading stuff to someone before you're 'distracted' with the Ben 2.0 release
  • Paul: Will this be beta 4 or RC 1?
  • Darius: If we can fix this and it works for Tammy, then we can go to RC. If there are other bugs, then we want beta 4
  • Darius: Lowerbound of a week for beta 3 testing. Hopefully the bug is fixed before that
  • Paul: Kenya had 4 reported issues...but none we related to 1.6
  • Wyclif: What about proposed concept
  • Ben: Not needed for 1.6.x


  • Sounds like Barry White
  • Sat two seats away from Larry Bird at last night's Pacers game

Road map review

  • This is meant to be an after action review on the 1.6 release
  • ...so punted to until we release.

Rapid prototyping & agile development

  • Justin did most of this.
  • Paul: Thanks for doing this and for putting that on your blog
  • Justin: We need to do rapid prototyping in a more timely fashion at PIH, so I looked into it
  • Justin: In 2007 we talked about openmrs being more of a dev platform. People said that php/ruby were easier to learn and quick dev cycles because of lack of compiling. One way to open up to other devs is for support for php and ruby via REST api.
  • Justin: Got jrebel working to not have to recompile. still trying to get modules to not have to recompile
  • Paul: What are the implications of this?
  • Justin: Jrebel lets us not have to re-deploy the war...saves 1-2 minutes of recompilation and tomcat restarting.
  • Zeshan: Is this a dev tool or impl tool?
  • Paul: costs?
  • Justin: Configuration setup is about an hour.
  • Justin: If we were using maven it would be easier to integrate
  • Paul: If it doesn't work for modules, then its limited
  • Justin: It will work for modules, but its difficult to set up
  • Justin: We need a wiki page for it for how to set it up.


  • He's back now.

REST module buildup

  • We need to define some DTO objects to use in both soap and the rest module
  • We need this on the roadmap to get some other devs involved easily

Scripting Languages

  • Would be nice to have a module that provides php scripting possibilities

Conference Call Alternatives

  • Darius: We need to look into a tool for direct skype callins
  • Paul: Michael Downey started today as the openmrs IT admin. this can be on his plate

Darius's talk about UI refactoring

  • David Eaves mentioned jetpack to allow a firefox plugin to let a user change what a page looks like
  • David: Some people have been using jetpack to fix some webapps and prototype what something looks like
  • Paul: Darius will embark on an expedition on redoing the UI. Please preview that with us
  • Darius: I'll be shifting from 100% PIH to 100% openmrs on April 1st. My focus will be the application user facing UI side of things.
  • Darius: Planning for openmrs 2.0...
    • Complete rewrite of user interface
    • Proper analysis of users and roles and their tasks. Then identify what the ui should look like.
    • Prototyping ui and getting them out to users
    • User-centric design process
  • Darius: I want it to be easier to write openmrs interface code than it is currently.
    • All options are on the table...which includes changing platform potentially
    • Data driven ui framework?
    • Repackaging api into grails framework?
    • Changing spring mvc setup
    • Get a list of possible technologies and looking for volunteers to test out individual frameworks
  • Darius: What to have a style guide and common widgets so that its easy for people to do the "right" thing
  • Sy: style guidelines are a must for consistent user interface
  • Darius: will send out email to dev list
  • David: pushing back on styleguide. impedes flexibility. are clients concerned about common style?
  • Justin: flexibility is key. css ids/classes aide with that.
  • Darius: styleguide is a must...but its not enforced for modules. we want consistency in the webapp as far as widgets, etc
  • Paul: Not sure there is a "user interface" because in a hospital setting every user and installation wants something different
  • Hamish: Its important that we have a good interface to refer to (a reference application)
  • Paul: Agrees, but we shouldn't constrain to that ref application (aka, allow flexibility)
  • Darius: reference impl probably will not expose 100% of the openmrs platform
  • David: Make it clear that modules will need to adapt at some point because openmrs will change
  • Paul: We should involve people that have rejected openmrs for this very reason
  • Paul: Darius will be the lead on these and should refer all queries to him for this
  • Paul: If we get the iu right the community will grow massively


  • Welcome Michael Downey as the OpenMRS IT admin / portal maintainer
  • Michael: I've looked into options already and might have something for next week even
    • Darius: We use "hi def conferencing" at pih
  • How to re-do our public presence ?

Code Review

  • Stephen: Should I join in on that ?
  • Justin: Yes, we just need to plan better
  • Ben: Yes, we love to have the original developers on the call
  • Stephen: Great, I would love to hear feedback
  • Darius: The larger the ticket the more likely we will have questions
  • Paul: Code Review is not a "boy's club"...we welcome everyone
  • Justin: Typically we do code reviews on the "squeaky wheel" principle, so if you want something reviewed, just ask