.NET turns 20 years old today and it is just kind of ... wow!
Yes, the 20-year celebration was was announced for a couple of weeks now, but I didn't really care until I started to think about it.
I didn't really plan to write about it but the more I think about the last 20 years... you know... And you are completely free to read it. :-D
Because 20 years of .NET also means to me writing software and getting paid for it for more than 20 years, it also means to me spending almost half of that time as a Software Engineer at the YOO. This is amazing, surprising, and a little bit scary as well. I already spent almost half of my life turning coffee into code.
I started coding using ASP written in VBScript, which also uses server-side ActiveX libraries written in VB6. At that time I tackled the Microsoft developer community the first time, by asking questions about how to solve my coding problems.
At the time of the second half of 2001, there already was lot of news about ASP+, NET Fx, and other weird stuff. And I started to play around and created the first ASP-like applications that actually compile and execute awesomely fast. I was impressed by .NET 1.0 and writing the first ASP.NET Code using VB.NET.
I took some time to convince my boss to write the very first project using ASP.NET 1.0 but finally I got the opportunity to rewrite a news module for an existing CMS using the new technology.
At that time a pretty cool blog was the primary source to learn about new things about .NET and ASP.NET. It was Scott Guthrie's blog. The cool thing: That blog is still online. You'll find posts from 2003. Awesome! Scott was the person who invented ASP.NET. Just yesterday, he posted a tweet that shows his notebook that contains the first specks about ASP.NET.
Now, I'm wondering what this book would look like if it would have been written using interactive notebooks :-D
The release of .NET 1.1 wasn't that good: Project types change and a lot more breaking changes happened and we had doubts about using .NET at all. Luckily Microsoft released a patch that fixes the issues we and a lot more developers had at that time.
Some years before that, I already worked on a project for Siemens that loads XML-based data via client scripting from the server and displays the data on the client. Also, user input got sent to the server that way. The term Ajax wasn't introduced at that time. We created a single-page application years before the SPAs were a thing at all. Maybe this is the reason why ASP.NET AJAX felt completely wrong to us.
It was .NET 3.5 that changes ASP.NET and .NET a lot. ASP.NET MVC was awesome. It felt a lot more like a real web framework. It doesn't use a ViewState to hack around the stateless nature of the web. Using ASP.NET MVC felt more natural as we knew it from the days when we worked with classic ASP. I started to like .NET again. Even LINQ got introduced and made the handling of data a lot more productive.
Also around that time, I started blogging. I wrote my first blog post in 2007. I already was kinda involved in the German-speaking .NET developer community by contributing what I learned to people that started working with the technology. The feedback was amazing and pushes me forward to continue with the community work. Because of my blog, I got asked to write for technical magazines, and because of this, I got asked to talk at conferences, and so on...
Getting things done using a well-known framework means you can start hacking around issues, customizing stuff to remove blocking things. Actually, I did work on a pretty fast ASP.NET Webforms application that doesn't use any Webforms UI technology at all. No Webforms Components, no ViewState. It generates XML that got transformed on the server using XSL-Templates and writes the result directly to the output stream.
My personal 20 journey is like a marriage with heights and lows. And some unexpected happenings change a marriage a lot. .NET Core happened and I fell in love with .NET again. It was completely rewritten, lightweight and customizable. You all know that already. The best thing from my perspective is the lightweight and console first approach. It almost feels like NodeJS and works similar to all the other web tools and frameworks that already exist at that time. .NET wasn't only a framework to build stuff and earn money for that work anymore. With the new .NET, it started to make fun again.
What's coming next? We'll see.
Writing a book was eating my time to write blog posts. I'm now starting to have a look at the next version of .NET and ASP.NET Core and I will write about that.
There will be no .NET 7.0 update for my book since I decided to write a new edition for every LTS version only. The next LTS will be .NET 8.0 which should be released around November 2023. So I'll have enough time to write blog posts.
🎉 Happy 20th Anniversary .NET! 🎉