Tuesday, December 06, 2011

Metro style app: silver light dev experience all over again?

I have a EeeSlate sitting at the corner of my desk for so long, but I decided that I need to do something to it.  The windows 7 tablet was brought so that I can do windows 8 metro development when I have spare time.  The problem, though, is that I rarely have free time, and when I do it will be only 2 to 3 hours.  That means I need to find something that interest myself, and possible to turn the idea into a little nifty Metro app in 3 hours.

I thought I came up with that kind of idea.  It's gonna be just a simple app that reads in a audio file (most probably an mp3 file), analyze the frequency using an open source C# library, and then display some graphic on the screen.  I found the library and it came with a little WPF demo application.  I was like, great, let me just spent 3 hours to port this demo to Metro.

That's when I realized that you CANNOT use regular .Net Framework library with Metro apps.  It turns out that Metro app development experience is like Sliverlight development experience: Metro application can only take Metro class libraries.  That means you need to port your regular .Net Framework library into the Metro world, changing a lot of dot net framework reference to WinRT reference.

I have a gut feeling that WinRT will be capable enough to cover all the functionality that I need.  Unfortunately, I don't have time and patient to do the conversion.  After all, that's the whole idea of using third party library: to leverage existing code and focus only on your problem domain.  So at the end I didn't finish the app.  That means next weekend I may need to come up something even smaller in scale in order finish within 3 hours.

No wonder those Metro apps that Microsoft Intern finished during the last summer was that primitive.  Without rich third party libraries, you can only accomplish so much when starting from scratch.

0 Comments:

Post a Comment

<< Home