wtorek, 8 września 2009

Dare to Dream Different

It was almost a year ago when Microsoft announced a programming challenge called Dare to Dream Different (website). It was because Microsoft had just released a new version of .Net Micro Framework - a subset of .Net Framework which main advantage was ability to run on embedded units, within very strict hardware limits.

We - me and my colleagues - decided to take part in this challenge. We had an idea. And it was not just an abstract idea - it was something our company found helpful, but there had been no time and resources to develop it.

The idea is quite simple. We have three training rooms located on three different floors. Of course, when we set up a meeting, we book a room, but later we often forget. Sometimes we just want to go into the nearest room without launching Outlook and verifing whether it is occupied or not. So we wanted to develop a device, which would have a big screen (touchscreen would be the best), would be located near the door, and which would display the room's agenda.

Of course we added some extra features - ability to view agendas of other rooms and for different days. We decided to connect the device with an RFID reader and let people to edit and remove their own meetings and to add some new ones.

It was everything in Microsoft's world - we already had running Exchange server and everyone had a badge with RFID antenna and there was connection between those badges and Active Directory accounts.

So we sent an application. And our idea was appreciated and we were chosen to take part in Round 2. We were provided with a fancy developer kit - ARM9 (100 MHz) with 8 MB RAM, accelerometer, keypad and - last but not least - 3,5 inch touch screen.

And the real fun began. If you have ever written an application for such a device, you know what I mean. But we had to write almost everything from scratch. It is great that there is .Net Micro Framework, but this framework does not have even String.IsNullOrEmpty function!

However, we managed to write an entire application, based on (written just then) MVC pattern framework. We managed to implement some kind of RPC protocol and to communicate with webservices. We managed to get through this weird WPF implementation and to provide an interesting and working GUI. And we managed to put it all together, with AD, with Exchange, with RFID reader - and made a movie.

(Remember - this is our first movie production ever.)

And we sent this movie and started waiting.

Unfortunately, there were many misunderstandings and delays and we were furious that the results still were not announced. We felt neglected because we had to wait for almost three months to get the results. Unfortunately, our team was not chosen to be in the Final Five.

We know we have done a lot of work and we are much smarter now. Yes, sure, we would have done some things in different way, but this is called an experience. We only feel sorry that Microsoft did not run this contest smoothly and that participants felt that they were forgotten.

For the end - this is a movie of a project that won in the Professional category. Feel free to compare.

Brak komentarzy: