D'Arcy from Winnipeg
Solution Architecture, Business & Entrepreneurship, Microsoft, and Adoption

It Was 2001, and I Had a Decision To Make

Wednesday, February 19, 2014 7:56 AM

Rob Conery wrote a blog post today waxing philosophically about how his choice of technology in 2001 impacted his career. It’s an interesting read and one that I found mirrored my own journey through the 2000’s in many ways. There’s some things that Rob mentions that I don’t totally agree with but I’d rather have discussion than debate, so I’m going to offer my view of the .NET decade as I remember it.

It was almost 2001 and I had a decision to make.

Having realized that my teenage dream of being a McDonald’s manager was not conducive to a healthy or financially fulfilling life I began college in 2000. I was part of the second intake of the Information Systems Technology (IST) program at Red River College here in Winnipeg. We all learned Java, VB, OO analysis/design, and basic database theory. Then we had to pick a stream – Networking, Programming (C++, PowerBuilder), or E-Commerce; I picked E-Commerce.

Heading down the web path introduced me to basic HTML, CSS, and JavaScript. Classic ASP, and Java Applets followed. For my co-op term I worked on a VB 6 desktop application but still worked with Classic ASP at home and at work when I could. I embraced the web.

After graduation I got my first gig working for a guy who had the IT contract for a local construction company. He was hiring to staff a project to build an intranet web portal and it would be built using a new technology from Microsoft – ASP.NET. It was December of 2001.

Over the next year I fell in love with ASP.NET. It felt familiar due to my VB 6 course in college and co-op term. Drag and dropping the controls and the code-behind paradigm made “web” development incredibly easy compared to Classic ASP. We came up with some pretty crazy solutions on that project for things like almost-real-time chat/notifications, navigation, and (my big accomplishment) a system for filling out various forms in online web forms leveraging a rich text box for formatting and then passing it through an XSL-FO parser before finally rendering it as a PDF. In some ways we were building SharePoint before there was SharePoint…heady times!

Over the next few years I worked on a number of projects for a number of companies; some web based, some not, but ASP.NET stayed as a constant whether at work or relegated to home learning.

It was Microsoft’s World

Microsoft threw obscene amounts of money at the community in the early-to-mid 2000’s in a bid to drive developer adoption. .NET User Groups popped up everywhere, Code Camps and conferences sprouted up, and Microsoft’s own events were big deals. I got involved with our local user group, eventually leading it for a while and then branching out to run our code camp. I embraced this amazing Microsoft community that I was now a part of – through INETA (International .NET Association) I got to attend TechEd 2005 for free and its there that I met so many others who were active in the Microsoft community.

I became a Microsoft Most Valuable Professional (MVP) for ASP.NET, I spoke at numerous events on ASP.NET related topics, and continued building my personal network of friends/colleagues. Another TechEd, PDC, and numerous MVP Summits were added to my list of attended conferences.

Rob mentioned in his blog about how in his peer group the “MVP was everything”. For me getting into the program was a huge win both professionally and personally. More than the free MSDN license or swag or the summit, the friendships I’ve made and experiences I’ve had through the program are priceless.

And Then This Happened

Well, “This” happened early on in my MVP/Community days (2007ish). Microsoft hired some non-traditional devs to head up something in the ASP.NET group. Phil Haack, Scott Hanselman, Rob Conery all came on board and launched ASP.NET MVC which BLEW. ASP.NET. UP.

No really…as a developer on the outside of Microsoft, MVC was one of the biggest un-Microsoft things to come out of Redmond. Lead by Scott Gu, that team ushered in a new era of transparency and interaction that before had been unheard of from Microsoft (unless maybe you were into FoxPro). It also thrust ideas of unit testing, design patterns (and anti-patterns), and development best practices to the forefront as opposed to the “I did it without writing any code, wire up your code to your database in markup” marketecture we typically saw.

At first people were a little taken aback at first with the changes:

- What do you mean there’s no drag and drop?

- We code directly *in* the client-side markup? Isn’t this like Classic ASP?!

- Wait…so we don’t navigate to a page, but to a route?

So this is where I will call out something in Rob’s post. He said:

From 2002 up to 2008 or so the Microsoft web world was (and to a large degree still is) all about "Visual Component Development". What that means is you basically do a lot of drag and drop and let the components do the work for you (write HTML, hookup server code, CSS, etc).

Now I agree with that entire paragraph except “and to a large degree still is”. Yes, there are lots of Web Form code and projects that are still in production and still supported, but from what I’ve seen I would suggest that the ASP.NET developer community has shunned Web Forms in favour of MVC (just count how many Web Forms sessions get booked at any major conference). Not only did the advent of MVC change how developers saw ASP.NET, it changed how they saw web development and architecture. It caused developers to re-assess their prior notions of how web dev worked.

Rob mentioned how HMTL and CSS weren’t scary as they were to ASP.NET developers. This is an important point: ASP.NET Developers weren’t web developers, they were ASP.NET WebForm developers who happened to run their apps on the web. MVC forced ASP.NET devs to embrace HTML, JavaScript, and CSS – and those that did have been reaping the benefits ever since.

What If I Didn’t?

I’ve never questioned my choice of picking the E-Commerce stream in college. My friends that took the Programming stream ended up being colleagues and co-workers over the years anyway and they had to endure advanced PowerBuilder.

I’ve also never questioned my choice of Microsoft technologies. The 2000’s were a fantastic time to be a Microsoft developer, especially in ASP.NET. Even when I was still deep into Web Forms development, there was never a lack of projects or interesting work; MVC just made it that much more fun. The community I was fortunate enough to be a part of because of my involvement with Microsoft continues to be an incredibly valuable part of the 2000’s that I carry with me to this day.

But now its 2014 and those days of .NET glory are behind us. Microsoft has evolved, creating a new company with a new vision and new goals. It’s no longer about whether developers use .NET, its about whether they host their apps on Azure. The old lines drawn in the sand are gone, old enemies becoming strange bedfellows (example: Microsoft announced recently that Oracle products can be run on Azure). The flow of money to the developer community has slowed to a trickle and more focus is being put on virtual training opportunities. The consumer space with Windows 8 and Windows Phone are front and center, and the enterprise messaging is less about custom development and more about packaged solutions (read: SharePoint, Exchange, BizTalk, Lync), and hosted solutions on Microsoft’s cloud.

Yet web development has stayed consistent and is the most relevant today. WPF, Silverlight, and other desktop technologies have tried to supplant the browser and all have failed, with organizations favouring web-based clients that easily port between desktop, tablet, and mobile experiences. Microsoft’s messaging has shifted from winning the client with a proprietary technology to winning the middleware and backend services with cloud-based solutions, which given the speed of development in the JavaScript community makes perfect sense.

But for me, and for many other fantastic developers that I know, ASP.NET was the foundation that we all built ourselves on. For us putting years into ASP.NET didn’t stunt their growth learning CSS or JavaScript, it didn’t keep us from looking at design patterns or considering new/better ways to architect a web application, and it didn’t keep us from exploring competing technologies. Yes ASP.NET Web Forms had many faults, but its easier to see those now 13 years later and with so many other great technology options available.

Every journey begins with a single step, and I’m glad my first steps were within the Microsoft dev community and specifically with ASP.NET.

On the Other Hand…

Cold drinks, hot drinks, salads, sandwhiches, pizza, cookies, pies, fries, sundaes, cones. That was the McDonald’s order of assembly back in the 90’s. I still remember it – maybe I’d be head clown by now?


# re: It Was 2001, and I Had a Decision To Make

I guess I must be in the minority here then. I've been working in ASP.Net since 2003. And I think I looked at the visual designers for maybe a couple of weeks before deciding to ignore them.

So I've been an ASP.Net dev working with HTML, JS, CSS, etc the whole time. MVC has become popular, but it felt like more of an evolutionary step for me, rather than a sudden shift. 2/20/2014 4:13 AM | Damien

# re: It Was 2001, and I Had a Decision To Make

I have been working on the MS stack for over 15 years now and still remember the decision I made to invest in learning the .NET platform. I certainly don’t regret my decision and maybe in hindsight I would have made some different choices along the way but being a .NET developer pays my bills and gives me plenty of satisfaction. Today I’m starting to do more with the big three (JS, CSS3, HTML5) and I’m keeping my eyes on SignalR, Web and Mobile Development, AngularJS, and many other "cool" technologies, but .NET is still paying my bills and I have no problem with that. 2/20/2014 9:00 AM | Abel

# re: It Was 2001, and I Had a Decision To Make

I too looked at the visual designers and very quickly left them behind in the WebForms world. WebForms was great at the time for a VB3-6 guy.
Although I still ran from JS when I was in the WebForms World I was not an HTML/CSS rookie either. However, once MVC came out I switched over as soon as I could and have never looked back. I'm happy with the stack. No stack is perfect & MS over the last few years certainly has changed to embracing more than it's own products. That's a good thing. 2/20/2014 2:46 PM | Kevin

# re: It Was 2001, and I Had a Decision To Make

I also started with classic ASP and VB6 and tried the .NET 1.1 Framework but found it painful. I really did not switch over to the .NET world until 2006 when I started using VS2005. That IDE was, for me at least, a wonderful thing that caused me to really like what Microsoft was doing. When it came to ASP.NET as it existed at the time, I loved with the drag & drop features but, as someone working against an Oracle backend, I ended up not being able to use the awesome drag & drop features that I saw in the demos. When MVC and Razor were released, it felt like an extremely natural progression for me. WebForms and all that...I can see them being a selling point once upon a time but now? Nope. And no one, Microsoft included, really pretends otherwise. 2/20/2014 11:12 PM | Gregg

Post a comment