Enrolled at Harvard! (sort of)
Posted April 14, 2019
I am a big fan of coding bootcamps — particularly the one I graduated from, at the Flatiron School. They provide opportunities for students who don’t have the financial or academic or logistical wherewithal to enroll in a conventional degree-granting college or university. Some of them give their students substantial flexibility in terms of when and how and over what time period they learn the material, which can make them a great option for many career-changers. The best ones provide an intensive experience that gives their students a foundation from which they can grow and develop as a developer. They teach students how to code, but even more importantly, they teach them how to learn how to code.
While there are certain languages, technologies, frameworks, etc. that are in demand at any given time, it is not unusual for any of those things to pass in and out of vogue. And those that stay popular over the long term aren’t static: they continually expand and improve. What this means is that any software engineer who wants to remain employable has to keep her toolkit current. In other words, she can never stop learning. One could argue, therefore, that it is far less important which languages or frameworks an aspiring engineer learns than it is that she understands the programming principles that apply across languages, and understands what it is that goes on under the hood of a framework. A good bootcamp program can do that.
What a bootcamp can’t do, however, is replace a conventional four-year computer science degree. CS majors get much more thorough instruction on computer science principles and concepts such as, for example, data structures and algorithms. This expertise makes CS graduates highly sought after to potential employers, and for good reason. Fortunately, there are resources available to those of us who don’t complete a CS degree to help address some of those deficits. One of them is Harvard’s CS50 class, which is available to anyone for free through edX’s online platform.
CS50 has actually been on my to-do list for quite a while but certain recent events prompted me to finally start the class this week. The first lecture (i.e., Week 0, because computer scientists start counting at zero) was a revelation. Probably the most important thing I learned this week was that this is the most popular emoji: 11111011000000010.
- binary, ASCII, and unicode,
- abstraction,
- efficiency of search algorithms,
- pseudocode,
- functions,
- conditions,
- booleans,
- loops,
- variables,
- threads,
- events, and
- how to program with Scratch
Rumor has it that, in the second lecture (i.e., Week 1), we’re going to learn C…
Also see my Flatiron student blog entries