• Jeff Moden (3/2/2015) I told her that I'd do that right away and that I'd never touch front end code ever again after doing it. And, I haven't.

    Now that's conviction!

    For me the problem wasn't actually nitpicky designers (most shops I've worked at haven't had real designers, so the programmers also do the design. This has positives and negatives...)

    It was the request-response, asynchronous, stateless nature of the application, combined with the vastly reduced GUI power of a browser compared to regular old windows forms. Sure, there are times when asynchronous is the way to go, but the fact that you're forced into it no matter what sometimes creates ridiculously inefficient and unnecessary hurdles. As someone who started with games programming, where you have absolute control over the interface and performance is always one of the priorities of code, this was absolutely ghastly.

    I'm not sure garbage collection has ever solved the problems it was meant to solve, either. The leading exception I have seen in application code since .net took over, leading by dozens of times over the next closest, is "object reference not set to an instance of an object". Memory leaks might be slightly less frequent, but the problem simply shifted over to object initialization because nobody knows what a pointer is anymore!

    Yeah, I'm a grumpy old coder.