Looking Back; Looking Forward


I’m going to be showing my age here a bit but I remember when Visual Basic (VB) was born. To this day I still recall memories of using v3.0 (circa 1993) to add an icon to a bland gray beveled button whose action was to retrieve data from an Access v1.0 DB (thank you JET drivers) and thinking "this is a big deal." There was something to be said for the good ol’ days (DLL Hell anyone?) but I think the quote of “it was the best of times, it was the worst of times” sums it up quite nicely.

A few gray hairs later and the industry for software development couldn’t be brighter. Whether your passion revolves around mobile, web or rich client side development, the tools available to create an application/system are simply phenomenal.

The Tools

Starting with the foundation that truly everything is built from, let’s discuss the evolution of Visual Studio (VS). Long gone are the days of incompatible integrated development environments (IDE) and now are replaced with one cohesive place to develop basically any project, in any language that you choose. A truly remarkable accomplishment given such an enormous task.

Using VS for mobile development with the SDK for the recently released WP7 couldn’t be easier. Phone emulator, XAML editor and all the goodness that VS offers is just a click away. Having to do multiple installs and change configuration files in the hopes that everything works when the planets align just right are a distant memory. Add in a sprinkling of Windows Communication Foundation (WCF) services, bake at high for a pre-determined time frame and what should come out are some nice juicy bits that will be deliciously consumed by end users.

While mobile and native development have expanded tremendously, the web has grown to such an extent that its presence is intertwined with our very existence. Having an application/system that’s not web-enabled is almost unheard of. To that end, organizations who used to invest heavily (and still do to some degree) in complex data centers with intricate redundancies can now focus on the bigger picture by leaving the infrastructure to someone else. Enter: Azure.

Windows Azure, or cloud computing as a whole for that matter is just the tip of the iceberg when it comes to high performance computing. This topic is mammoth and I certainly couldn’t do it justice in a one paragraph synopsis but having scalability, flexibility and a myriad of other options at one’s fingertips (i.e. AppFabric, Content Delivery Network [CDN], Storage, etc.) will propel a vision into reality.

Although mobile and web development are garnering the greatest attention as of late there’s something to be said for software that gets installed via a setup package or by some other means (e.g. Click-Once). Windows Presentation Foundation (WPF) applications are the steroid using big brother to the old Windows forms applications. Building applications that have stunning visual effects (e.g. UI for a media player) and incorporating high resolution images/videos has never been easy; that is until now.

Summary

There’s no denying the fact that in such a short period of time software development (and hardware as well) have made great strides by empowering those who are responsible for creating such tantalizing products and devices. I can only imagine what the next few years or decades will bring regarding the tools and technologies available but one thing is for certain: it’s a great time to be a part of the software industry.

Comments (1)

  1. First of all, taking about remembering when VB was born as if that made you old just makes you sound foolish. Having used Microsoft BASIC for an Altair, IMSAI or Northstar would qualify you as an "old-timer" in the microcomputer area for sure. Being able to speak intelligently about the massive improvements in QuickBASIC 4.0 might qualify for something (not exactly old-timer, but at least not still wet behind the ears). But VB? Sorry, but no, not even close.

    Your comment on Visual Studio sounds just as silly. Long ago, developers of office applications had the vision of "integrated applications". Based on your earlier comments, you were probably born long after they were all dead and gone — the office developers were smart enough to figure out that it's better to make Word do word processing well, and Excel do spreadsheets well, than to try to combine the two into something that does both poorly.

    You need to get a clue from them and realize that Visual Studio does C++/CLI really badly, native C++ only a tiny bit better, VB.NET pretty poorly, and is really only even close to good for C#. This does not help developers. Based on the promises so far, vs.next will remain solidly inferior to VS 5 for native development. Integration is important primarily because Microsoft has crippled development in any single language. While integration isn't necessarily bad in itself, it's also not necessarily of any great benefit either. An environment that works about equally badly in five languages isn't nearly as useful as one that works well in one.

    As far as WPF goes, let me give you one simple piece of advice: start from the basics, and only when you get them right, move on to other things. After years of development, you’re right: WPF can do some pretty cool effects. Unfortunately, it still doesn't render text well — even the font smoothing in Windows 95 worked better. Yes, the upgrade in WPF 4 was massive — but that only took it from worse than Windows 1.0 to almost even with Windows 3.1.

    Summary

    There's no denying the fact that for quite a long time now, Microsoft has made at least at many steps backwards as forward in development tools. Most of the forward steps have done nothing more than partially mitigate (but never actually fix) problems that Microsoft created in the first place. I can only imagine what disasters Microsoft is going to foist off on developers next, but one thing is for certain: it's a great time for Microsoft to completely overhaul its development tool strategy.

Skip to main content