(NOTE: This post will be updated occasionally when I have additional tips, experiences worth relating, etc.)
For the first step in my quest to become a real computer programmer, I decided to go with MIT‘s OpenCourseWare – Introduction to Computer Science and Programming.
This course may lean a bit toward the elementary side for someone who has worked in various areas of computing for well over a decade, but that’s fine; I guess I’d rather it be on the simple side – for now, at least.
Download the video lectures
I found it better to download the video lectures instead of watching them as they streamed across the web. For some reason, my first lecture stopped playing at around the 16-minute mark. Reloading the page did not help. When I set aside the time to listen to a lecture, I need for it to work properly. Although I could not use my streaming video downloader to grab the video from the main lecture page, I did find an alternate page at videolectures.net that was created to facilitate the downloading of these lectures.
The FLV files are the ones you want if you’re watching them via computer: these files are only half as large (around 250MB) as the other formats (closer to 600MB). Use a flexible video player that can handle FLVs such as VLC Media Player.
There’s another excellent reason to download these video lectures rather than watching them as they stream across the Internet, and it revolves around productivity, efficiency, and the best use of your time. When you watch the video lectures using top-shelf video freeware like VLC Media Player, you can speed up the video during the slow parts – or portions of the material you already know, and so on. Changing the playback speed of any video on VLC is as easy as clicking your mouse button.
About the course
The course covers some computing basics apart from actual Python computer programming. For example, in the first sitting, basic terms like input and output were defined; however, other basic computer programming terms I didn’t know were also explained; an example that comes to mind is the word token. (Tokens are the basic elements of both natural and formal languages, such as words, numbers, and chemical elements… News to me!)
A brief description of MIT’s beginning computer science course from the main course webpage:
This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language.
Reading material for the course
The reading material for this course consists entirely of free ebooks. The first book I acquired was How to Think Like a Computer Scientist: Learning with Python – a very well-written text that’s easy to read, even enjoyable.
The second book mentioned: Python Programming, available online at no cost as part of WikiBooks.
Third is a popular Python resource I’d already planned to follow: the official Python tutorial.
Those are the three primary texts for this course. A handful of other online documents and related resources are used as the course progresses, and they too are free and simple to access. These include an introduction to dynamic programming, several Wikipedia articles, and a few other assorted applets and references. All are listed and linked on the course’s Readings page.
NOTE: A significant amount of time and effort went into my research on the best computer programming language(s) for beginners. The fact that M.I.T. (THE Massachusetts Institute of Technology) now uses Python to introduce computer programming is, I believe, an interesting factor with some weight behind it.
Updates to this post
Tuesday, September 13, 2011