Virtually all development that I undertake is destined for the Web and HTML. The trouble with the Web and HTML is that to get a great Graphical User Interface (GUI), it takes a lot of design and development effort. This is also coupled by the usual user download requirements being very high. That is, unless you use something like Flash. However, for me, using Flash is really a designers tool and not a developers tool. It is also restricted in that it's only really available from the desktop. Thus it is not usable if you are on a Mobile browser or other 'limited' browsing platform.
As such, I have been following with some interest what people are calling Web 2.0. It is perceived as the second generation Web. Whilst this is true in some respects it really only means that there is a change in the way that developers are utilising the Web platform. The main way that I feel this going is in the field of GUI design.
To make a real difference to the user experience of the GUI, we need to radically rework how this Web and HTML thing works together with other technologies. I was really excited then when I read about the release of SilverLight.
"Microsoft® Silverlight™ is a cross-browser, cross-platform plug-in for delivering the next generation of .NET based media experiences and rich interactive applications for the Web. Silverlight offers a flexible programming model that supports AJAX, VB, C#, Python, and Ruby, and integrates with existing Web applications. Silverlight supports fast, cost-effective delivery of high-quality video to all major browsers running on the Mac OS or Windows."
For me if SilverLight takes off, I think that this will deliver what is expected from Web 2.0. No longer would the Web GUI be limited to large blocs of text, interspersed with some static images, but it will take on a whole new organic life. The reason I believe this is simply in the implementation of the graphics. The way that Web 1.0 currently works is that a graphics is in either GIF/JPG/PNG format, and is of a fixed size and resolution. These graphics do not scale well. To provide a GUI in Web 1.0 to a different scale, almost certainly is there a need to provide a unique set of graphics per size and resolution. This is expensive not only for development and maintenance, but also for the end download user. However, the interesting thing about the way that SilverLight can implement graphics, is that it can be done through the use of Raster graphics. These graphics are dynamically scalable on different devices and resolutions. Have a look at some of the video lessons on the subject here, or have a look at "Building rich Web experience with SilverLight".
I honestly can't wait until I can get involved with a project that will allow me to utilise SilverLight. I already have a personal project in mind, but that is a couple months away before I can really start working on it. Keep tuned, as I intend to blog my experiences on this development (hopefully with SilverLight).