I don’t have a competent understanding of how my computer works, but I’ve become dependent on its operation, and I find that alarming. Not quite alarming enough to get a degree in computer science — I don’t have the time or the money for that. And that’s the trouble with interests. You have to decide how much time and money you want to invest in them. But today, an interest may only cost you time, and with the right perspective, that may not be much of a cost.
My interest in computer science led me to download a couple of free classes from MIT’s OpenCourseWare website, but when it got too difficult and there was no access to anyone who could help me over the obstacle, I ended up quitting. I started taking courses on CodeAcademy, which provided forums and prompts to write your code, but I stopped when CodeAcademy stopped uploading lessons. I began Udacity’s CS 101: Building a Search Engine course because I had tried most other free opportunities, and building a search engine sounded appealing. I use search engines, but I don’t know how they work
Unit 2, Video 7 of Udacity’s Computer Science 101 course: Google Fellow and former Stanford professor Sebastian Thrun lean against a Standford-decaled Volkswagen. Standing nearby is University of Virginia and CS101 professor David Evans. Evans introduce “Junior,” one of the self-driving cars designed by Thrun, which then led Thrun to summarize how he managed to make a car drive itself, which in turn related to the idea of elementary input and output curriculum presented in the previous videos all of my fellow Udacity students had to watch. Afterwards, the video showed Thrun sitting in the back seat of the VW, pointing to a monitor that displayed the rough computer-generated depiction of what the two cameras and GPS are picking up from the roof of the car. In other words, I got the impression that Udacity encourages some very ambitious — and let’s admit it, unrealistic — ambition for your future career as a programmer.
Udacity and several other computer coding start-ups were recently featured in a New York Times article titled, “A Surge in Learning the Language of the Internet. It seems Treehouse, CodeAcademy, and dozens of other computer courses each share a common goal, as stated by the New York Times: to “[prepare] for a future in which the Internet is the foundation for entertainment, education and nearly everything else.” In other words, they’re promoting code literacy, or the ability to understand the way in which the Web, computers, and other programmable technology function. Some of the most valuable companies in the United States include Apple, Microsoft, IBM, Google, and Facebook. Facebook alone is closing in on one billion users. With apps being developed daily, and with the increasing importance of Web presence, the call for accessible education in computer science is increasing, too.
Udacity’s approach has, thus far, been the most appealing. Whereas CodeAcademy’s lessons are conducted through a code prompt, step-by-step instructions, and exercises, and MIT’s OpenCourseware videos are lectures only (they had supplemented homework in a separate PDF document), Udacity’s courses consist of 20 to 30 videos with pauses for multiple question quizzes or related programming prompts to test your knowledge throughout a unit. Homework assignments follow weekly course lectures. Most lessons are supplemented with a comprehensive PDF transcript of the lesson and a glossary of terms up to that point. Each course spans six weeks with a final examination at the end. While CodeAcademy and OpenCourseware lectures seem like hobbies, Udacity feels like an actual class, one you can complete on your own time.
But Udacity quickly becomes overwhelming. The first CS101 unit opened with Google co-founder Sergey Brin briefly summarizing what a search engine requires, an overview which (you learn throughout the course) is profoundly oversimplified. Ambitions were tempered with lectures explaining the larger problems that face coding a Web crawler (in Unit 3, Google Director Anna Patterson’s explanation of web politeness is very sobering). The struggle of learning something new in general starts to become a burden. Interests cost time, and when I imagined myself five years in and still trying to solve bandwidth and latency issues in a search engine that started as a brief curiosity about how search engines work, I wondered if all the time I was investing in Udacity was worth it.
Thrun’s self-driving car course (CS373) launched the same date as CS101, and I imagine that it made an appearance in my CS101 lecture as inspiration to sign up. But I found it daunting. But Udacity still excels at setting up for its students. After hours of outlining and replaying lectures and testing code, when there are no longer error codes or incorrect outputs and the procedure finally works, that feels like proof of learning and accomplishment.
A large part of computer science is analytical thinking: learning how to whittle down a problem to a more manageable size. New computer science students should concern themselves with how to code before worrying about what they will code. Self-driving cars and innovative start-ups shouldn’t even enter the conversation at first. Instead, as Director of Research at Google Inc. and CS212 professor Peter Norvig said, you have to learn the tools before you can apply them. Udacity does provide you with the tools to become computer literate if you can resist feeling intimidated by the vast scope of knowledge needed for complete computer science proficiency.
I hadn’t created my own search engine to crawl the Internet. But I do know how that would work.
– Stephen Jablonski, CMN Staff Writer