I'm not arguing against writing integration tests, they are as important if not more important, as you've said. Maybe I've only seen badly written ones, but my issue was against integration tests that check for example if this ever so important, but hidden, flag is being set properly after an API call when that can be checked at the service level. Someone eventually decides that flag is unneeded, and a whole host of tests fail and someone has to dig several levels deep to figure it out.
I guess I shouldn't have used the word 'brittle', but this is what I was thinking of.
And of course, I think unit testing anything and everything is absurd and not a good use of developer time.
In my experience, it's usually not the existence of unit tests themselves that's causing an issue, but that most of them are badly written. One telltale sign is when writing the unit test becomes overly painful (like too much code setting up mocks), it usually means that your class is not simple enough or has too many dependencies.
Proper unit testing also complements integration testing in that corner cases can be handled at the unit test level, therefore reducing the amount of integration test code which arguably is much more brittle, runs slower and more complicated to write.
I'm doing the exact same thing! (quitting end of this month too). While I haven't decided to completely leave tech, I'm planning to do a couple of 3-month furniture intensive classes for my sabbatical this year. I'm also going to apply to the College of the Redwoods. It's kind of a moonshot though, given my limited woodworking experience, but I figured it's worth a try. What's the duration of your entire course?
I'd suggest finding a hands-on online course that gives you a tiny portfolio in the end. A lot of the fun with programming is seeing your work come alive and seeing all the projects you've completed. Assuming you haven't programmed before, I wouldn't go with buying a programming language-specific book to start since those can be pretty boring to go through. Books will start to be useful as you develop a lot more curiosity and want to fill in your knowledge gaps.
My friend's learning from the ground-up and he's using Code Academy (https://www.codecademy.com). If you're a little more serious about this, you could also look into Udacity's Nanodegree program.
Wow. You've described exactly what goes in my head during parties. I've been better at faking it / being able to emit short bursts of real gregariousness, but I've never been able to completely get rid of the anxiety.
Even so, the GWT creators ended up recognizing the value of presentation markup and introduced the UIBinder system (HTML markup + XML for custom widgets), which arguably made my life a whole lot easier when I was working on a moderate-sized GWT codebase. It's definitely better compared to mucking around with Swing-looking code soup.
That looks narrow-minded for those particular employers though. The leadership might have made a lot of questionable decisions, but I don't think that should affect the quality of the engineers from that company.
For games, Chris Granger and his team have coded up a prototype game in Clojurescript using the Entity-Component-System architecture, which seems to be a good fit for functional languages. It might be worth checking out: http://www.chris-granger.com/2012/12/11/anatomy-of-a-knockou...
One thing I've learned from trying to learn drawing is that there's value in creating rough sketches in order to capture a certain form or gesture. It feels like coding small-scoped side projects is the coding equivalent of this.
It depends on the company. The company I work for right now had a software architect that worked 3 days a week only for a couple of months or so before going full-time (I think he was building a multi-monitor helicopter flight sim setup if I remember it right). From my talks with our CEO it seemed like he was open to that idea.
I'm definitely going to do something like this in the future though, but I'm still contemplating whether the 20-hour, 50% salary cut idea is better than working full time and taking a sabbatical afterwards.