I want the chance to do things right. So I guess "autonomy", but it's more than that. Dare I call it "revenge"?
My career started with six years in a legacy development ghetto. I started looking for work in the tail end of the dot-com crash, and the only thing I found after months of searching was a position doing Pick database development. It was a mistake to take that job, but I really wanted to get out of my parents' house. Pick developers are an interesting breed, like a cross between mainframe die-hards and ravenous DBAs. And here I was, using things like "functions" and "templates" in my code like some young thing who just wants to jump on the latest trends.
One shop had an middleware app that put a web-based GUI on top of the Pick database. I got called into my boss's office and told to stop putting in my pages because it confused the other developers. At another job, the sysadmin refused to install risky open source things like CURL or wget on the server, and Pick had sockets by then but no HTTP library, so had to write my own HTTP client in PickBASIC so we could talk to a partner's API. It was like being stuck in the 60s, only without the drugs. I was writing green-screen apps...in 2005!
Anyway, the point of all this is that my resume was tainted at that point. I could quote Stroustrup with my eyes closed, but nobody would bring me in for an interview for anything other than Pick because that's all my "professional experience" entailed. That changed when I put $1000 of my own money on the line and got Java certified.
My first Java job quickly morphed into a PHP job, and now I've been in that world for seven years. There's lots of cowboy coders slinging PHP, you know. Don't know if anyone's ever pointed that out on HN at all. Version control, classes, prepared queries, frameworks...I've been fighting uphill battles over those for years. Yes, prepared queries were controversial because they're "slow"!
Now that my wife is out of school, I finally have the chance to go & do things my way. I'm giving freelancing a try. I set up my own Git server the other day. I do commits every time I'm done implementing a feature, and it's so damn satisfying -- almost orgasmic after nagging my co-workers for years. I develop on my laptop, not on the production server. I write clean, well-documented code. I use templates to keep HTML out of my code. I'm branching out into Ruby on Rails for a side project and probably some of my client work.
It's stressful as hell, but at least I'm making things I can be proud of, and the product of my work reflects well on me as a developer. I'm actually enjoying programming again.