Today phones running Windows Mobile 6.5, aka Windows Phones, are out (almost) all over the world. Together comes the new Microsoft Marketplace for Mobile, plus my first try on a mobile application: TubeRun! EDIT: Here is the link.
TubeRun, as you can see in the embedded video, is a simple application that offers TfL’s Departure Boards functionality in the handy form of a Windows Mobile application. It is written in C#, uses the .Net Compact Framework 3.5 and apart from WM 6.5, it will also be available in WM 6.0 and 6.1 once the Marketplace becomes live for these platforms.
Writing an application for a mobile platform that simply “does something” was always a dream of mine. I have looked on J2ME development some time ago, but devices were so limited back then that there was no fun in the process. Then the iPhone v2 appeared and enabled both easy application downloading and affordable mobile broadband packages. Shortly after we arrived in the UK last year, I discovered the Departure Boards in TfL’s website. Impressive! But that kind of information is only useful in a mobile form and since I learned that an iPhone app was already available, I was full of envy. Hey, why can’t my WM mobile have something similar? Why should I have to wait for so long for that damned Circle line every weekend? After a little while, the decision was taken: I will program it myself! One way or another, I wasn’t about to buy a new fancy iPhone any time soon… And WM development is not that active in the moment.
The thing that I enjoyed most in WM development was that it was actually free. I could get licences for both Windows, Visual Studio and the WM SDK from MSDNAA. On the other side of the pond, Apple required me to buy a new mac, it was simply a no go. Additionally, C# seemed very promising. Since I feel most comfortable in Java, C# was definitely familiar. Without actually learning the language, I installed Visual Studio and the rest were only a few google searches away. After all, TubeRun is basically a Windows Forms application so I didn’t need anything too fancy. Still though, the .Net Compact framework experience soon became something to laugh at. In the Java world, the VM is the place were you live the vast majority of time. And it it a very nice place to be. In .Net though, I soon learned that pinvoke (platform invoke) is something that you can’t really avoid. Hey MS, I only want to add multiple lines of text in a single button. Why isn’t there a multiline property? Why should I become familiar with WinAPI in order to do so trivial stuff? Then there was the MSDN approach of documentation. One of the reasons why Java use is so pleasant is the excellent javadoc. MSDN’s approach was again pathetic. Not only VS is slow, the actual documentation data that it generates are minimal. And the best part of the MS experience: the WM emulator! After a few hours of development, running a VMware Vista image seemed lightweight compared to the WM 6.5 emulator…
Then, there was the WM Marketplace, aka MS’s reply to the ridiculously successful AppStore. It became available to WM developers at some point in May and only started accepting applications in the end of July. Do you remember the usual complaints about MS shipping beta-quality software only to fix it afterwards? Well, MS actually redefined this with the Marketplace experience. They had me visiting the Greek embassy in London just to notarize a copy of my passport. Then they couldn’t understand than an EU citizen may live in another EU country without having any documentation issued from the country of his residency. Then they stopped requiring notarized copies. Then they started being specific (and crazy) about the application requirements. At some point and in order to get the shortcut of the application in the main menu, the recommended process was to write a second native application to read the screen DPI at installation time and then copy the right png in memory. Read again, just to get the shortcut of the application in place! Similarly, they still require that you submit screenshots for your application in a resolution that no actual device uses. And each failed submission costs $10. Thank god I got it right the first time.
Now let’s get to the hype, the actual WM6.5. I have been using the final in my old HTC Touch for about 3 months now. The first thing that your can say about them is that they are a significant improvement, yet not something that changes the experience tremendously. In fact, they are exactly what WM6.0 should have been over 5.0 in the first place. They finally provide some basic support for finger gestures; after so many years you can finally navigate a list using your finger. But don’t get too excited, you still can’t scroll text without a scrollbar… The other major improvement is the new start menu that is now more of a classic phone menu that ever. Gestures are enabled there but still, the ability to rearrange shortcuts only appeared in later builds that may not hit the market with the majority of WM phones out now. The other major target for advertisement is the new today screen plugin. Finger friendly it may be, it is completely useless imho. Most of WM manufacturers have already invested in similar solutions so that the platform has remained competitive to the iPhone over the years. And almost all of them are superior to Microsoft’s solution. As a result, I expect that most people buying real devices won’t even get to see it. As for other changes, IE is still crap, most WM built-in apps are still crap, etc. You get the picture. And to make things ever worse, MS failed to provide two very important API’s to developers. The first one is the accelerometer, WM don’t support them at all and you have to use a vendor-specific API if this is available. The second is the inexistence of a Gestures API for .Net. But remember, you can still pinvoke your brains out! :-p
Finally, the elephant in the room. Yes, TubeRun costs 1.19 precious quids. From them, 19p are tax, 30p MS’s commission and if i get lucky (and manage to avoid double taxation), the rest 70p will be mine. Well, not mine exactly. TubeRun was a side project. And the title of this blog is Two Greeks In London. Did you expect that I could have gone away with this without promising the other Greek a fancy bag from Knightbridge?! Well, lets hope that she will get one, sooner or laaaaater!
PS. If you get curious about this blog, google translate is your best friend (as always)
Good luck mate! Keep us posted!
By: Manolis Platakis on 6 Οκτωβρίου, 2009
at 3:12 μμ
ade elpizo na pigainei kala k na tis pareis tin tsada :p
By: mylo on 24 Νοεμβρίου, 2009
at 2:39 πμ