Bridget99 here... seems my original account got nuked in the 2014 upgrade.
Anyway, I've noticed a really disturbing pattern lately: say whatever good things you want to about C# or .NET, but most of the .NET code out there is really terrible. Some antipatterns I keep seeing:
-
"The new stuff is ASP.NET MVC but there's some old WebForms stuff too. There's a lot of React but some Knockout, too. Oh yeah... the admin tool is WPF."
-
"Yeah, we use SOAP services pretty heavily. The old boss was big on WCF. Here's a 14-page guide on how to debug the SOAP stuff locally. What? Reused? No, nothing else uses it. WCF is just, like, an abstraction layer."
-
"Nobody here really understands a lot of this stuff. The people who wrote it all got better jobs / retired / got fired when the CEO asked for something simple and it took 3 years."
-
"To debug, just jam this stuff into your hosts file, browse to this URL, and attach to w3wp.exe. No, not that w3wp.exe... must be the other one."
-
"Yeah, building is really slow. Don't forget to double-click this NPM Task Runner job after you build... Clojure can do what? Oh, we don't have time to learn Clojure with all the rebuilding and NPMing and attaching to w3wp.exe going on."
-
"So this project is 'code-first,' but the other ones are 'database-first.' Oh, and the old stuff is just ADO.NET with a database project You know how to do all three, right?"
-
"We've built so many interfaces into this system over the years that it's really just impossible to change anything. Just avoid the CEO, he doesn't like hearing that."
Pretty depressing, all in all.