Adam M's Wish List
Another name for this page might be: "we've got a long road ahead, but check out what we've done along the way!".
TODO
These are problems keeping Mifos from being truly awesome. Some of them have corresponding issues in our issue tracker. If you agree that they need to be fixed, please vote for them!
Build Mifos in under 10 minutes on reasonable hardware
A fast compile/fix cycle is essential for making code changes in a timely manner.
Assist user with database connection
Fast, useful feedback.
Stuck on Struts 1.x
Migration to Spring MVC and Freemarker in progress!
Mifos does too much
We need to cull or pull out non-core functionality into plugins/extensions
Normalize all PPI source data
PPI source data is currently in many separate Word documents and Excel spreadsheets. Store it in a standard format that can be used to generate printed surveys as well as reports used by Mifos BI software.
24x7 availability
Eliminate exclusivity of batch jobs and OLTP activities
Use out-of-the-box i18n/L10n
Fix MIFOS-2018, others.
Improve startup
- Fail faster. If we can't connect to a MySQL backend, we can't do anything. Do a quick check that we can connect to the database before anything else.
- Fail nicer. If the first db connection check fails, alert the user with a clear message.
- Help the user fix their MySQL connection.
Dynamic logger configuration
- Provide UI to allow a Mifos admin to change log level(s) on the fly.
- Persist (make these changes stick) in loggerconfiguration.xml or elsewhere.
Session abuse
The HTTP session is used much more than is really necessary.
DONE
These are issues I was particularly concerned about that have since been resolved. Yay!
Get off Plone ZWiki
Done! Thank you, Michael Vorburger!
See MIFOSADMIN-54.
Non-sequential database upgrades
Done by Kojo during the Google Summer of Code 2010. Yay!!
See MIFOS-2896.
Use a single issue tracker
Done June 2010. Yay!!
We currently use both JIRA and Mingle.
- data in JIRA originated from the issue tracker at java.net, hence, contains historical data about all issues (bugs, enhancements, features, etc.) ever filed in Mifos
- our JIRA instance is fast, and we get awesome support from Atlassian
- Mingle provides hierarchical views of stories
- Mingle provides us a way to track story points added and deleted from iterations--we haven't yet figured out how to do all this in JIRA
- we manually enter and maintain issues in both systems
Distributed version control
Done mid-May, 2010. Thank you, Git!
Run Mifos web application from IDE
This is a huge win during development. Thank you to Adam Feuer and others for making it so that Mifos can be run without first building and deploying a war
Reliable system monitoring
Thank you, OpenNMS!
Decent Backups
Thank you, BackupPC!
Better build system
We realized many benefits after moving from Ant to Maven
- better dependency management
- we know what versions of software are used by Mifos, their licenses
Also, we moved from Bamboo to Hudson for our continuous integration server. Awesome!
Better version control
Moving our Subversion repository to SourceForge.net was a huge win after months of abuse from an unreliable repository at java.net. The next step is moving to distributed version control.
With sf.net, we gained
- read-only access without a login
- rare outages
- usable source code browser
Better issue tracker
Thank you, Atlassian!
- it's fast
- awesome support
- easy to mine information about issues
Make Mifos work in Firefox
Done! See FixFirefoxBugs.
Reliable release schedule
Almost every Mifos release is now on schedule or early.
Use a known and up-to-date version of Hibernate
Done! See UpgradeHibernate.
Automated pseudolocalization
Done! See AutomatePseudolocalization or MIFOS-2445.
Fix MySQL table name case problem
Marked "wont fix". It seems acceptable that Mifos requires table/column name case insensitivity.
See MIFOS-1513.
The original development platform was likely one where filenames are case-insensitive. On these platforms, MySQL allows referring to tables (and columns?!) in a case-insensitive way. This is a gotcha for Linux and OS X deployments, see issue 1513 for details.
Update: we ran into a problem using EC2: their RDS service only supports case-sensitive databases! Thanks to Udai, MIFOS-1513 is now fixed!
Make Mifos work in Tomcat
Mifos used to require JBoss. We've found Tomcat
- faster
- easier to develop with
- reliable and stable in production
Awesome, useful live chat
Thank you, Freenode!
Customers are running known code
All customers now operate on known, frozen versions of released software that we have tested.