Back in 1997, when I began my career as a professional web developer, I started working with
Classic ASP. After a brief training period in a few different programming languages such as C++
and Java, I was thrown in at the deep end and assigned to a project to build an Intranet application
for a large consultancy firm in the Netherlands using Classic ASP. Despite the complexity of
the project and my lack of experience at the time, I was still able to make valuable contributions to
the code base. This was partly due to the great support I received from my more experienced colleagues,
but also because of how approachable Classic ASP was. Although it’s considered outdated
now, Classic ASP had a few great features that made it the technology of choice for many developers
for a long period of time. One of the things I really liked about it was how approachable it was. You
didn’t need complex and overwhelming tools, but instead you could use a simple text editor that had
features such as color coding and multiple tabs. Deployment was also very easy: You just uploaded
the file to the server and the changes would be applied immediately. For features not supported outof-
the-box (such as image scaling and uploading of files), one of my colleagues would write a DLL
in Visual Basic 6 to get the job done. I had great respect for those that possessed these skills as it
seemed pretty complicated at that time.
Then in early 2000, ASP.NET was released. It marked a radical change in web development as it
approached things from a completely different angle. Rather than having you work with the underlying
technologies that make up the Web (such as HTTP , HTML, CSS and more) directly, ASP.NET
shields the developer from many of these concepts, and lets you work with a web application in a
similar way to how you write desktop applications. As a result, ASP.NET made the hard things easy
and the easy things hard. Things that used to take hours or days to develop in Classic ASP — such
as building data-driven web pages — could now be done in minutes, simply by dragging and dropping
a few controls. But things that were dead-easy before — such as adding an in-line CSS class to
a table cell displaying records from a database — all of a sudden turned out to be very difficult.
I clearly recall how the first books on ASP.NET I read stated how unbelievably cool it all was,
how it was so much better than Classic ASP, and how it solved so many problems. Although these
claims have proven to be true over the past ten years, back then I already started wondering what
people would write the day a successor or competitor for ASP.NET would be released, and how all
the benefits of ASP.NET would be turned upside down as disadvantages to better promote the new
technology.