Aspiring software developers have more avenues than ever to learn to code without going back to school. From free, self-paced online learning environments to not-so-free, structured, immersive experiences, a number of services have cropped up within the past few years offering to help total newbies become full-fledged coders (or maybe just pick up a new hobby). As someone with an interest in both the coding side and the instructional side of this phenomenon, Ive spent some time reflecting on how these services compare to my own experience as a developer whose career choice and schooling diverged.
The bootstrap model
Like many people Ive met in this field, I didnt plan to become a software developer. I went to journalism school, with the intent to write advertising copy in trade magazines. But as a student, I had a student job taking care of Macintosh labs at the campus computer center. For about three weeks each year, between semesters, I installed software updates and printer drivers. The other 49, I got to hang out with brilliant people doing very early work on something called the Web. It was fascinating, and I wanted in! I learned from them and read the books they recommended. I learned markup and programming, and that markup is not programming. I made my own websites. I learned the basics of relational databases and how to compile an HTTP server and run it on a high port on the universitys research servers, so I could run my own CGI scripts. We didnt have virtualization back then, you see.
It was a case of being in the right place at the right time. I knew smart people doing cool things, and I had access to expensive, sophisticated resources because of my day job. I knew this Web thing was worth sticking with, but knew that effectively starting over to pursue a computer science or engineering degree would derail me. I figured such a degree would drive me into mainframe programming, deep conversations about computational theory, or any number of distractions that would keep me from working on the Web.
So I didnt start over. I also didnt get into copywriting for trade magazinesI finished school but parlayed my experience into a nearly 20-year career now in web development. Along the way, Ive followed a similar path to keep my tools as honed as possible. Lots of books. Lots of conferences and user groups, online and off. Ive also checked out some of the resources on the low-cost, low-commitment end of the spectrum when I needed a crash course in a new language. Some are better than others, of course. Fortunately, its easy to ditch those that arent so great. This by-the-bootstraps mode of learning has worked well for me.
Its certainly no less possible today for a would-be developer to leave a non-coding career path for the life of a professional programmer. I know people who started out as journalists, filmmakers, and cartographers but now make fine livings in software development. They are as knowledgeable and passionate about the art and craft of our industry as any degree-holding software engineer. In fact, with the resources I listed earlier, one could say its even easier. On the other hand, the stack of requirements keeps getting taller. Consider the technologies that make up the Ruby on Rails framework. Now consider those technologies from a beginners perspective. Where does a self-directed learner even begin?
The bootcamp model
Theres another route, for those who want a little more direction without going back to school in the traditional sense. In just the past couple of years, a number of full-time, intensive, high-risk, apprenticeship-style programs have cropped up: Dev Bootcamp, gSchool, the Flatiron School, and Hackbright Academy. There are others, and their numbers increase by the semester. They teach the basics of the web programming toolchain in weeks, not months or years. They provide structured learning of sought-after skills like Rails, iOS, and JavaScript. Many offer to connect students with potential employers. These programs also come with a price tag, and require much more of a commitment than their self-paced counterparts to complete.
Last week I spoke with Mark Morris, a junior web developer who graduated from one of these programs earlier this year, about his experience. I met Mark last spring at Ruby Midwest, as he was preparing to start his apprenticeship and change from a career in supply chain management into that of a software developer. While hed done some coding in the past, he sought the more structured approach of the bootcamp model.
The nine-week sequence Mark completed focuses on Ruby on Rails development, and teaches it in three stages. Students begin with basic Ruby, progressing through Sinatra, jQuery, and markup, on their way to the full Rails stack. There are no lecturesinstructors assign projects; students work in pairs to complete them. Help is granted on request, but only after students show evidence that theyve done some initial legwork of their own to solve the problem (read: Google/Stack Overflow queries).
Read more from the original source:
The Self-made Developer: Bootstrap or Bootcamp?