The Network, Inc. DevLabs

C♯, I still love you, Dearest

Oh C♯, we’ve been together for about 8 years now, but I’m still very much in love with you. You know it was your reifiable generics that attracted me to you in the first place, but once I moved into Visual Studio I was there to stay, even though your awesome pad is in Windowsland. ReSharper was an expensive addition, totally worth it, its absymal test runner notwithstanding. This environment makes it such a joy to edit and debug code: thanks to your static semantics, the refactoring are a breeze, edge cases handled shockingly well; stack traces for any reasonable library give me readable exceptions (unlike that incoherrent DudeBro, Ruby); watches and inspections are easy and intuitive. With git version control and my comfortable IDE I am absolutely fearless. Maybe I should buy you that overpriced TestDriven plugin you’ve been hankering for for so long, might iron out the last wrinkle…

Because I truly appreciate everything you do for me. You’ve consistently found ways to make my work easier and every new language version has taken an idiom that I use and turned it into a language construct: implicitly typed local variables, object/collection initializers, autoproperties, lambda property/method definitions, and now the nameof operator. I didn’t even know that I wanted LINQ until you surprised me with it for my 29th birthday! When I told you I was into functional programming, you were willing to experiment, and I don’t care that you’re medium-terrible at it. Unlike some other lingue I could mention…

That’s right; I can’t pretend that I haven’t examined my options: Clojure has persistent data structures and a wonderful concurrency model, JavaScript has the better object model, CoffeeScript is easy on the eyes (not as good-looking as you, of course), Swift is the perfect solution to the Objective-C problem, Haskell is so good at math, and Prolog is simply a wizard. But none of my dailances with these languages has resulted in any viable, 10000+ line programs. Only you bring such projects into my capacity (and long ago, Java did too, but we’ve already talked about how you are just superior in practically every way).

It’s a good routine we’ve built together and we’ve compromised on each other’s habits exactly as much as a healthy couple should. You are my best creative partner and we will build many more great projects together. And as far as I’m concerned, your special son PowerShell can live with us for as long as he needs, even indefinitely. Everyone around the shop loves him and knows he gets a lot done, in his own peculiar way; we just ask him to sit on a towel.

To another 8 years together, My Love!