Something strange happened over the past 10 weeks at Launch Academy. Invisibly, imperceptibly, I’ve turned from a software hobbyist into a software developer. This fact only came to light a few days ago, and I’d like to share the story of how that happened.
It has been a challenging week. I’ve been working extremely hard to bring my project to a point where it is presentable. As a result, working on the project had become more of a chore than the pleasant exploration it usually is. Arriving home after another long day, I found that a friend had sent me a postcard with a Ruby cellular automaton algorithm written on the back. (Yes, I have awesome friends). Of course, I implemented it right away as a command line application, but I was immediately struck by the ways it could be adapted to function in a web app. Users could save and view lists of cellular automata, sorted by the initial conditions.
Building and deploying the app took under an hour. It is nothing special, but the capability to casually toss out such a thing is, to me, magical. I certainly couldn’t, or at least wouldn’t, have done it prior to Launch Academy. Even though it might have been in my technical capabilities to do so, the activation level was too high. That is, the amount of initial effort required to implement would have been too great.
The change from a hobbyist to a developer is more subtle, though. For example, I probably would have used a scaffold if I had attempted the app 10 weeks ago (Rails scaffolds are generally a sign of inexperience). I wouldn’t have known when a private method was appropriate. All these little pieces of knowledge converge into the capability to write not just functional software, but robust software,
As someone who loves to build things, I cannot adequately express the value of what I’ve learned over the past 10 weeks. Not just in terms of what I can build, but what I will build.