How a blacksmith learned to code
joshuakemp.blogspot.com
joshuakemp.blogspot.com
It's still fascinating (and maybe a little sad, re: the state of programming) that you could end up earning 70k after a year of part-time(?) (hard!) self-study. Maybe even more sad that you (as I understand it) made less as a (presumably) proficient blacksmith.
All that said, we've got few blacksmiths in Norway, so if you want to switch back, consider migrating here ;-)
Coding will remain a hobby so that I may focus on what I love about it, and stay true to my principles & avoid making any compromises due to commercial pressure.
It wasn't an easy decision to make and I still feel horribly uncertain about my life and all tha. On the other hand, learning something completely different is very very refreshing, and inspiring.
Now the maker inside me must've realized that making physical objects we use and rely on all the time isn't impossible, and can indeed be quite accessible once you learn a few things and make some investments (or find a good hackerspace?).
I would recommend any coders out there who code out of the love of creation and the freedom that comes with it, to at least consider expanding their horizon and learning to manipulate more than just bits. It doesn't have to be metal, in fact with 3D printing and diy electronics you could end up with something really awesome. (But don't forget 3d-fad isn't the only way to deal with plastics; it can be machined too, for instance). Combined with your software knowledge, who knows what great new ideas a new skill might bring with it? It'll deepen the experience of making for sure.
Now that I'm a bit older though, I am enjoying the physicality of working with my hands, producing something tangible and having something that can outlast me, instead of code that most likely will just last some years.
After I'm done with my welding training, I'd like to do at least some introductory machining classes. Perhaps even a furniture making course. I have to good fortune of living very close my community college, and as long as I can work part time as a developer (albeit at odd hours) I want to keep learning how to build things with my hands.
I do all, and many more such engineering/mechanical/creative type things, and I know many developers who are as adept at hacking in the real as in the aether.
Anyway, my point I guess is that it's all the same domain, and the skills are eminently transferable, and the internet fills in the knowledge blanks to a large extent.
I lived in California, and found Ardenwood Forge nearby. The blacksmith there (who you've likely seen before if you watch Mythbusters) was willing to teach people for what felt like a tiny amount of money, and Scott was a great teacher.
The biggest thing that I had to learn was "how to know when its done" - which can range from when it's functional to when it's functional and form is beautiful as well, or anywhere in between. There's some of that in programming as well, but "it works" and "the tests pass" are hard and fast stopping points compared to "Do I add another twist to this, or should I add a scroll instead?"
The biggest thing I miss from smithing is creating something physical. Watching a program form and execute perfectly is fun, but there's something simply magical about taking a letter punch and turning it into a elegant scribe.
Sadly, I have not continued beyond learning the basics, but I still look on the craft with a smile, and hope that some day I can spend the time to do it again.
(I think my recently finished Redshift self-experiment will show this effect dramatically.)
As someone who's a similar skill level to Josh and applied to tons of jobs here in the Valley, I've found that this is an isolated story on the other coast. In SV/SF you have 5/6 developer bootcamps cranking out developers each month applying for a handful of junior jobs. I'm sure the blogging helped, but I doubt any companies would have offered the same salary here (60-80k) when they could have had their pick of developers that just worked 80 hours a week for 12 weeks.
That said, it is a little disheartening to learn than I chose to learn technical skills (I love just learning about the differences between all the syntactically-similar C-based languages) only to be in the same stupid predicament of needing to rely on marketing and gimmicks to get a job.
Maybe if I did not live in the Hollywood of the programming world, that might not be the case but I do. It was a nice story nonetheless. I see he benefited from having friends who code to tell him exactly how to get the most out of his code 9 months. I spent three months doing a @"Code Year" += 2 at Codecademy --before --I formally even learned how to type (big mistake) and 6 months before I started commits to Github (bigger mistake?)... and I still have not been to a JS event. Not even Hacker Dojo.
Anyway, good for you for getting there. I will put down the text books and text editor and start networking...right after I finish this Objective C app.
This guy sounds like a self-help guru, he doesn't sound like a programmer. Oh look, there's a book he has written which is available on Amazon.
He also suggests Zed Shaw's Ruby tutorial a couple of paragraphs after mentioning Rails. What the hell is this guy smoking?
The road to success he describes is linear, with no branching points. A complete lack of flexibility or discovery, the exact opposite of learning programming.
A point to note - The one-month rails course is now 99$, as opposed to $49 you had paid.
I only saw two sites he made in his resume(two including the blog itself) and I'm surprised that's all it takes for $70k job. A lot of it is probably due to strong self-promotion and initiative rather than raw programming prowess.
Not that CS problems aren't out there, but your architects should be decomposing those for more junior people.
Just a different perspective on the same topic ;)
Then you have the constantly-shifting nature of the field, forcing you to continuously study to stay on top. It's much more difficult than it looks to an insider who already put in the hours learning.
Once these problems are considered as solved and as frameworks/tools evolve further to get the CRUD out of the way really quickly, we'll see more people learning to solve complex problems.
That is awesome. Well done!
This could have easily been a story about someone who spent a year learning to code and reporting how it was a waste of time because no one wanted to hire them. I bet a lot of folks run into that and just don't bother to write about it or make it to the top of Hacker News. Marketing matters, and if you're going to put in 20 hours a week as an investment in yourself you better be thinking about how to get a return.
In the UK, there's a fairly complex framework as to where you can shoot, how much you can shoot, and when you can do it. To this end, he's developed, single-handedly, iOS and Android apps for hunters to manage such and record their kills, principally for compliance purposes but also for their own edification.
Either way, it's been fascinating watching him learn - his approach has been to learn on the go, and iterate. He's gone from hacked-together PHP obscenity to android/iOS APIs and frameworks in about two years.