What I Love Best About .NET
Monday, 8/6/01
DevelopMentor has long attracted smart folks. Really smart folks. These are the caliber of people that forces you to look up every once and a while and question your own worthiness. With this many high-caliber people together, you’d think they’d be able to look objectively at the world and avoid such religious arguments as “What’s the best language?”, “What’s the best platform?” and “What’s the best editor?”
Nope.
We get into arguments like this (and even more esoteric) stuff all the time. Oh, open debate is healthy and we eventually come to a reasoned, balanced decision, blah, blah, blah, but these kinds of arguments made me realize that the thing I love most about .NET is that one of the most contentious arguments has just gone away: “What’s the best language?” In the old days, this boiled down to VB vs. C++, otherwise known as practical vs. theoretical, simple vs. complicated or even, my personal favorite, journalism major vs. computer scientist. The argument was a real one, though, because VB6 and below put a real straight jacket on you when it came to real object-oriented features (the lack of implementation inheritance springs to mind), whereas C++ was so hard for so many people, it was almost impossible to build correct code with it. Much mud was thrown during these debates and no progress was ever made.
Until now.
Now, we have the same “What’s the best language” arguments over VB.NET vs. C#, but they always peter out very quickly. While it’s true that VB.NET makes it much easier to build late binding component clients and C# allows unsafe code sections, neither of these features is enough for us to avoid agreeing that, modulo syntax, the two languages overlap by about 90%. Which means, and now I’m coming to the part that really makes me love .NET, I get to work with lots more smart people at DevelopMentor. Before, it was about the star-bellied Sneetches and the plain-bellied Sneetches. Since I felt I was one with a star on his belly (doesn’t everyone feel that way?), I couldn’t work with those without stars upon thars! Well, Sylvester McMonkey McBean, you can teach a Sneetch! [1]
I just got off the phone with a good friend of mine who I’ve never been able to work with before, because we’ve always had a great divide between us caused by my C++ bias. Now, for the first time, we get to work together! He can do his stuff in VB and I can either work with it directly, or I can easily port it to C#, because all the classes and functions that he’s going use in VB are going to be identical to what I would do in C#. So, while 90% of the language features overlap, there’s 99.999% overlap in the framework and how to use it between the two languages. To answer Rodney King’s immortal question, “Yes. Finally, thank .NET, we can all just get along.”
[1] Those of you with kids will understand…