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.
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.
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.
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?