2013 Mifos Graduating Class for Google Summer of Code

I'm proud to now call our interns, affectionately known as A Team - Here's Ygraduates of the 2013 Google Summer of Code program. The three months of coding flew by in an instant so I marvel at the amazing work our interns made across all areas of the platform. Hats off to our students and a huge thank you to Google for inviting us to be a part of Summer of Code once again. Apart from the dedicated efforts of our students themselves, the biggest gratitude must go to our team of mentors, Gurpreet, Michael, Udai, and Kojo who selflessly guided our interns on their journey throughout the summer. Michael Vorburger put this summer in perspective in the most beautiful and perfect of ways: 

"How amazing is it that GSoC gets four students - from Germany, from China, from Sri Lanka and from India, coached by mentors from India, Ghana, and, Switzerland - to collaborate purely in cyberspace together on adding features to a microfinance platform... the world truly is flat"

Looking back on this summer, we knew from the get go that we had an awesome group of interns that would be joining our community. Never did they disappoint and I'm pleased to see how much they've been able to grow personally under the leadership of our mentors. Our community is already enjoying the benefits of their contributions and our interns have already continued on as active members of the community. Most importantly this is only just the beginning of their time in the Mifos community and we look forward to years of contributions and transforming them into future mentors for GSoC, just as Kojo and Udai have done. 

This post is long overdue and comes nearly two months since the program wrapped up so our mentors have already gone to the Mentor Summit in Mountain View on October 19 and 20 which Kojo and Michael will recap in a later post. For now, I wanted to provide one more thank you to our students, shine the light on their contributions and allow you to hear from them personally on how this summer helped to shape them.

  • Annuruddha completed two projects in fact - both server-side pagination and distributed caching, both of which have been shipped in our public releases with the caching being delivered in our 1.10.0 Release.
  • Yanna's XBRL integration work is merged into the master branch and can be tried out on our demo server under the reports menu. You can follow her documentation as a guide.  This can be used straightaway for integration with MIX Market and also sets us on the right path for integratin with other centralized reporting tools. 
  • Andreas' user-generated document module with mail-merge and WYSIWYG functionality has also been merged into the master branch; final documentation is on the wiki.. Once a few more sample templates are complete, this will be shipped as our admin documents module; we'll also be re-using the templating engine as a major component of our SMS notifications module.
  • We are packaging up Avik's Excel-based import tool for an upcoming release; this tool is already being used for a live migration of data for Grameen Koota's individual lending operations. 

What was your most rewarding experience contributing to Mifos this summer?

YannaBeing a part of Mifos community is amazing. I learned a lot from the code of Mifos X and from my mentor. For example, my mentor taught me how to write unit tests with the help of some good tools and how test-driven development could make a difference on my code design. The final code review is also rewarding. I learned the importance of following code conventions, especially for open source projects. Besides that, experiencing how open source projects operate with contributors across the world is very interesting.

Anuruddha:  It was truly an amazing opportunity for me to become part of the Mifos X community and it's pretty exciting to see my contributions live on the Mifos X distribution. I've learnt many new technologies, cache implementation project taught me new concepts like application scalability , application performance improvement concerns. And I also got the opportunity to work with many industry leading cache management frameworks like ehcache and memcached.

The most important and the most rewarding from all this summer work is the ultimate satisfaction and the feeling being a contributor for a global movement helping to fight poverty through technological innovation.

Andreas: Just to get to know the very kind Mifos community was a great experience. I would never have imagined, that an opensource project has that big and important aims regarding the social environment.

Also Michael Vorburger my mentor was a great partner in my GSoC project and i look forward to meet him on this years Devoxx conference in antwerp

Avik: A lean and powerful RESTful web service like Mifos X is a treasure trove of code. Gradually, over the summer as I got to see how the different parts of the platform are designed to fit together, I could finally connect some very important dots and get a general complete understanding regarding a lot of concepts which are just mere flashy words in theoretical classes. I feel this kind of exposure can lead to the exponential growth when combined with hard work which Elon Musk talks about.


What was your biggest challenge you overcame this summer?

Anuruddha: Managing the academic schedule with SOC schedule; Given the tough university schedule, it was  challenging to keep-up with SOC work in-phase however the daily email check-ins and weekly Skype check-ins helped me a lot to get the project moving at the correct speed.

AndreasDive into an unknown environment, meaning technical as well as organizational structure. Also it was a new experience to contribute to an open source project, where everybody is able to see and judge what you are doing. Beside that my old OS and  hardware were very annoying :) Not only as blocker for demonstrating progress, also running test, starting the server takes a lot of time.

Yanna: My summer schedule is little intense for me, but I managed to keep the work on track. The daily and weekly routines help me make progress everyday and eliminate procrastination.
Avik: Coming to terms with myself regarding the small things which one wants to leave for later is better done the very moment it comes up.


What advice would give to other students/GSoC interns on working with Mifos?

AnuruddhaMifos X is a great platform for you to learn quickly about many many enterprise level technologies, it's a rapidly evolving platform and there is plenty of space to try new things. In a developer point of view; code contribution process is easy and community will help you in getting to the correct track very quickly. Everything needed to get started is well documented and code base is well organized and well maintained, so get inspired and start contributing early.

Yanna: The community is quick in response and willing to help. It also gives you a lot of freedom in doing your project. You will have the opportunity to present your work to a large group of Mifos users. Take ownership of your project and you will feel rewarded and accomplished in the end.
Andreas: Do not hesitate to ask the community if you face some issues.
Avik: You don’t need to trouble your mentor for everything. Some queries can be responded to by other members of the community who are online at that time as well.

If you could visit the country of one of our Mifos users, where would it be and why?

Anuruddha: Peru; Culture is very much different form Sri Lanka and it's relatively a richer country. So I would like to meet few users in-person and share their thought ; what really excites them to use Mifos among other alternatives. Why microfinance matters to them?
Yanna: If possible, I would love to visit my mentor’s home country, Ghana. There’s something interesting: when we had Skype meetings, I could always hear the sounds of various animals, which interested me a lot. I think it is a great place to visit.
Andreas: I don't know every country of the mifos users but I have been to India last year, so i would choose a country in Africa this time.
Avik: Kenya. After India, the most number of MFIs using Mifos are based in Kenya. I would like to see and compare the level of microfinance support required by different categories of clients of MFIs (belonging to countries with different GDP ranges) to feel empowered in their endeavors

If you have time, how do you hope to contribute to Mifos in the future?

AvikI have random cravings. The best part about open-source is that you are not locked into a task forced on to your plate. You can choose your own. I am planning to take on some AngularJS tasks for now and then move on to analytics based features in the future.

Anuruddha: I would love to work on Mifos X mobile platform. And would love to participate in architectural design calls (if any there in future). Further if there is any work particularly related to data science I'm more than happy to get involved; I might be able to grab the attention of  Moratuwa university students to work on such projects as well. Further I'll involved in fixing jira issues in my free time.
Yanna: I would be glad to continue contribute to Mifos as a developer in the future.
Andreas: I would like to participate as volunteer and enhance the UGD feature. We have ideas for further versions of that feature. At the same time it would be great to get feedback of users using our feature and change it according to their feedback.


What will you be doing now that Summer of Code is complete?

One thing that Avik did was travel to our annual Mifos Summit in Jaipur. Here he is being introduced by Semba from Kongalend.

Anuruddha: I'm working on a research project once it's published I have few alternatives to choose, one which I'm really passionate is the entrepreneurial path and secondly the most safest 'industrial'  path and thirdly higher studies. Hope remaining couple of weeks/months will help me to sort-out the best suitable.



Yanna: Focus on coursework. (Yanna is now based in the US, attending Carnegie Mellon University!)
Andreas: First of all i will go on vacation to Indonesia for 4 weeks. Then I start to work at a software development company which uses only open source tools.
AvikTry to write a web-service completely from scratch as a final year university project.