By Jonathan Goodyear
Forging new ground in any field is a tough thing to do. Doing it with technology can prove even tougher. Aside from building whatever world-changing technology you ve dreamed up, you need to convince the world that it wants or needs to be changed. Once you ve done that, you need to hold off the also-rans who seek to take your market share away at much less expense than it took you to create the market in the first place.
Here s an example that is near and dear to me. As you can probably imagine, my schedule is pretty jam-packed. Between running a consulting company and a product/service company and juggling a family of six, I keep very irregular hours. That is why I love my TiVo (http://www.tivo.com/). It lets me record my favorite shows and watch them when I eventually get some down time (Sunday afternoon?). Of course, I don t really own a TiVo. Instead, I have one of the generic Digital Video Recorder (DVR) devices that my cable provider offers. I used to own a TiVo, and, because of its vast superiority in feature set, I often wish I still did. I need seven of them, though (I mentioned my big family, right?), and paying $3 extra per month per device is much more palatable than shelling out $200 per device, plus the higher monthly service fees.
No, my generic DVRs have just enough functionality to keep me mostly satisfied. I still call it a TiVo, though, and when I set it to record something, I TiVo the show . When you invent something great, your company name often works well as both a noun and a verb. I Google things on http://www.live.com all the time (sorry, Microsoft). The actual TiVo company may not exist 10 years from now as it is slowly gobbled up by commodity alternatives, but its name will be etched into technology parlance for all time.
The same sort of trailblazer phenomenon happens in software, as well. An example from the Microsoft files from a few years ago is Windows Forms versus ASP.NET. By almost all accounts, Windows Forms is a better platform for building corporate intranet applications. Features that you must jump through hoops to implement in ASP.NET are trivial to accomplish in Windows Forms. So why are most corporate intranet applications built with ASP.NET? Ease of deployment. ASP.NET applications can be deployed with ease, because it is all server-based. I respectfully waive my dismissive hand at those of you who are now jumping up and down and yelling ClickOnce . In my opinion, ClickOnce was dead on arrival, tangled with complications and incompatibilities with certain infrastructure configurations. Most of that has been worked out by now, but does anybody care anymore? Incidentally, ASP.NET applications also share the advantage that they can be repurposed for extranet and external Web site usage, where tight control over the deployment platform is not possible. At the end of the day, ASP.NET is just good enough to make it the clear choice for corporate software development. Windows Forms and all of its great features has had to take a back seat.
Fast-forward a few years and it s d j vu all over again. Microsoft released Windows Presentation Foundation (WPF) as part of Windows Vista back in 2006. I won t go into the specifics of WPF, but suffice it to say that it represents a quantum leap forward in both visual and functional capabilities for software applications and pretty much nobody used it. The technical skill barriers to entry are fairly high, and even two and a half years later, there really isn t a seamless visual designer that gives developers the same easy experience that the Windows Forms designer offers (sorry Expression Blend).
The guidance is supposed to be that applications built for behind the firewall should be done in WPF, while applications built for outside the firewall should be done in Silverlight (to leverage its multi-platform support). Deployment shouldn t be a factor anymore, because even WPF applications can be hosted in a Web browser (it requires the .NET Framework 3.5 be installed on the host machine, which shouldn t be a problem in controlled corporate environments). However, that doesn t appear to be what is happening. Silverlight development is dominating the landscape for both inside and outside the firewall (where ASP.NET with AJAX doesn t suffice). Why? Probably because Silverlight is just good enough to accomplish what developers need in their applications while allowing them to maintain platform independence.
As you can see, the first rendition of a particular technology or concept often isn t the one that eventually earns the largest market adoption. Often there s a single factor (price, deployment, platform independence) that is so important that it trumps the other factors and forces a decision to go with a technology that is not preferred. It is important, however, to evaluate each situation separately and choose the technology that fits your current set of requirements, rather than simply using the technology you used last time or that your friends and colleagues are using.
I ve got to run I just remembered I need to TiVo the premiere of Survivor.
Jonathan Goodyear is president of ASPSOFT (http://www.aspsoft.com), an Internet consulting firm based in Orlando, FL. Jonathan is Microsoft Regional Director for Florida, an ASP.NET MVP, a Microsoft Certified Solution Developer (MCSD), and co-author of ASP.NET 2.0 MVP Hacks (Wrox). Jonathan also is a contributing editor for asp.netPRO. E-mail him at mailto:[email protected] or through his angryCoder eZine at http://www.angryCoder.com.