A fun part of the Mendix World conference was a student software competition, called “App Battle,” pitting two teams from the University of Eindhoven (Green and Red) and two from the University of Twente (Purple and Yellow). I am a big fan of student competitions, having been a judge this past summer at the Microsoft Imagine Cup finals in Sydney, Australia. So I spent some time with the four teams, along with the Mendix and CapGemini staffers who were supervising the contest.
Ruud de Gast is one of the managers from CapGemini that was mentoring the student contest. He thought up the challenge, based on a real-world problem from one of his customers who runs a car dealership in Holland. Six years ago, they came to him to write some Java code to manage the various car loan situations that the dealership faces. As anyone who has ever bought a car knows, the dealers can mark up the cost of these loans and make a tidy profit. The Java app figured out what the different loan applications were needed for the specific auto maker’s banking systems.
Notice I said Java. Turns out the real customer is now experiencing some maintenance pains and wants to revisit the app and see if CapGemini can build it using Mendix. Are you not surprised?
de Gast gave each team the basics of the app, along with the data structures and nine different use cases that the teams would employ to test out their apps. They were set loose on Thursday morning, and told to stop work at 8 pm to give them time to enjoy the parties at the show.
The students aren’t Mendix experts by any means. Each has some training in the app platform, but has to learn on site for the most part. The students come from a wide variety of backgrounds, and one is even from Greece. “We wanted to see how far they would get in a limited amount of time,” said de Gast.
Team Yellow immediately ran into problems because one team member had some exposure to Mendix a year ago, but the other one was relatively new. And Team Purple gave up early on to try to build the entire functional spec, leaning towards having a better-looking app that could deliver a subset of features.
According to the judges who observed the process, the biggest issue was that the students didn’t have any experience with considering any security aspects of their classroom projects, and when push came to shove during the two days of the contest they weren’t able to quickly incorporate the necessary security features into their apps.
All the students had to demo their app in English to the judges, too. “It was quite a lot of work,” said one of the students. Each app had to develop three different user profiles and be used for the entire process for financing a typical car.
The four teams’ apps weren’t all that distinguishable to my eyes, with mostly vanilla forms and reports. Team Green had a nice dashboard, Team Red had put together a quotation document that could be signed by the customer to begin the loan process and created its accounts automatically. Team Yellow also had some interesting reports too and designed their app for handling multiple managers. Team Purple had the prettiest UI and reports and had some impressive error checking to avoid common mistakes every hour. It was interesting to see how each team approached the problem set and what extras they included too.
After the team presentations, the audience was asked to vote in real time using the Mendix World mobile app. The winner was Team Green and received two tablet computers as a result. The judges felt that they had the best approach. All eight of the participants received internship positions at CapGemini, where hopefully they will improve on their Mendix App Platform skills. Congrats to all of the students and their mentors for being such good sports during the competition.