Glad that I have an actual tablet instead of a VM
Last night I continue my journey of messing with developing for Windows 8 Metro, and found that having an actual device (mine is EeePC Slate) gave me way better development experience comparing with using Windows 8 Developer Preview on VMWare Workstation 8. I tried the VMWare apporach last weekend and the performance was so sluggish that eventually I gave up. With EeePC Slate, the turn around time between testing the real touch UI and coding becomes way faster.
Now all I need is to be persistence and continue working on my little Metro app.
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.
Reorganize Ethernet Cables
There was a pile of Ethernet cables with several routers and switches underneath the right side of my desk at home. That mess constantly annoyed me, but I was too lazy to do something about it ... until today. I went to Walmart and got a 3 drawer plastic cabinet for $15, and then spent 3+ hours reconnecting cables, cleaned up the area, properly label all the ports and so on. The end result was the mess got totally cleaned up, and I gained 2 drawers of space to store stuff. I would say that's time well spent, and gave me a great sense of accomplishment.