Back in the early days of my experience with IT I wasn’t much of a programmer. For the most part my experience was limited to tinkering with various bits of hardware and doing house calls for my local IT group Grade A Students (who unfortunately seem to have removed themselves from Canberra and re-branded). However this all changed when I started my university degree with my first course being an introduction into programming with C in Linux. It was an odd affair for me as I of course knew about programming but hadn’t paid much attention to it. Since then I’ve dabbled in many other languages with varying results, the latest of which is Geon.
Recently though it became clear to me that the end goals I had for Geon and the language I was using (ASP.NET) were probably a bit too ambitious. The work required in order to get that “Web 2.0″ look and feel to the application that most users online have come to expect was prohibitive for a single person only working on it on weekends, so I started looking around for something else. I was tempted by the lures of Flash however I haven’t had any experience with the tools or design work of that particular language with most of my skills lying in the Microsoft/C# space. So in essence there was only one choice, Microsoft’s Silverlight.
From a business perspective anything you can do to lower the barrier to entry for consumers is a big thing for business and this was the first mental hurdle I had to overcome when deciding to develop using Silverlight. Flash is fairly ubiquitous amongst Internet users however Silverlight, even though it is at version 3.0 now, is still uncommon. When it first came out I installed it as a mere curiosity to see how Microsoft intended to dethrone Flash as the rich web application provider and there are few big name sites out there that have adopted it as their development framework. However after weighing up the time it would take me to develop in Flash vs my current target audience (which, let’s be honest here, isn’t huge) I conceded that anyone who wanted to see Geon in all its new sparkly wonder would give Silverlight an install. Plus its a small download and from memory doesn’t require admin privileges to install.
I then spent the weekend learning the ins and outs of developing for Silverlight. It’s an interesting blend of desktop application development with UI design that’s heavily based on the flow model. Initially this took a bit of getting used to as making sure the elements were generated properly took a bit of wrangling but the reward was an interface that scales very well with any browser size. This was one of my bugbears with ASP, since they had no easy way to accomplish this. I did run into some roadblocks with Silverlight only being a subset of the .NET and WPF frameworks but there wasn’t anything I couldn’t work around. Although there were a few moments of me yelling incoherently at the monitor when things refused to work the way I wanted them to.
And thus the end result is this, Geon in Silverlight. If you don’t yet have Silverlight I’d urge you to install it and have a look at what it’s capable of. This version is somewhere between 1.0 and 1.1 in terms of functionality (live updating for Twitter, News and Blogs works) however the main stay of Geon, which is Geologically based information, is currently not in. I only just got around to getting the base framework in last night to handle the IP based look-ups before I decided that was it for the weekend so I believe I can have it up to 1.1 level of functionality fairly quickly.
Overall I’m happy with the results and I believe that the future of Geon will lie within Silverlight. It’s a very powerful framework for developing rich web applications and the tools available are growing by the day. Who knows, maybe Geon will one day be that killer app that gets Silverlight everywhere!
A man can dream…..