I've been on this path for six months. Well, much longer than that if you think holistically. But we'll say six months.
Six months ago, I decided to learn about software development and start building things. I also figured on spending the least amount of money possible to do it.
Not because I'm cheap.
Well, maybe I'm a little cheap. But why make a hard thing harder by wasting time trying to find open source software and free books to answer my questions when I could much more easily pay money and have someone spoon-feed me all the basics?
Because it's an engineering challenge.
All the knowledge, tools, and methods I need are out there somewhere on the web, the very thing I hope to be able to help develop. I already know the answer is 42. So all I need to know now is the right questions to ask, and I'll understand the great answer to life, the internet, and everything.
Also it's good practice getting used to solving problems.
So I spent some time on codecademy, github, read a bunch about hardware because I was in desperate need of context for the languages I was learning. I got myself a raspberry pi and learned the command line. I tweaked this blog to my liking using vim. There are probably still a few tweaks left. It stubbornly never wants to be completely finished.
I am all about keeping things as lean as possible. Only the essentials. That attitude comes from hiking in the woods, along with a strong desire to master the fundamentals before I start getting distracted by pretty bells and whistles. So no fancy IDE. No shiny new Mac with everything working perfectly. I got an old ThinkPad, swapped the HDD for an SDD, installed Linux and away I went. I like it better without the frills. Less distractions, less load on the CPU. The machine runs cleanly and quietly. and if something does go wrong, its probably something I use and know how it works.
At least in theory. In reality I have no idea which end is up. But if I fight with this beast long enough, I will.
So where was I going with all this?
Oh, yeah. The story so far is that I've spent the last six months in a stupor of utter bewilderment at the complexity and alien reality of the software world. It's like learning how to talk all over again. And I've fought to make sense of what I'm hearing and make the sounds come out the same. Language is hard!
And I've got four I need to gain proficiency in. HTML and CSS don't count, but I'll need them too. I need:
One more thing. I've only got 'til August to do it. That's the artificial deadline I've made up for myself.
Think it can be done?
I don't know, but I'm going for it anyway.
I'll certainly keep you posted.