This is going to be a post on my gear and approach to studying for OMSCS.
When I first started OMSCS, and had to open a textbook and take lecture notes for the first time in a long time, I was at a bit of a loss of the best way to organise myself. Back in my undergrad degree, I was strictly a notebook+pencil+highlighter kind of person. These days with my daily commute and frequent work space hopping, carrying around 10lbs of textbooks and notebooks and pencils is not really ideal. I also didn’t really want to accumulate dozens of notebooks and textbooks – physical space is a premium for me.
Updated 2019-06-27: Gear
It took a lot of experimentation, but 4 courses in I’ve finally settled on a setup and study approach that work for me. First the gear!
- iPad Pro 12.9″ and Apple Pencil – This is my main note taking and lecture watching device. The older iPad Pro is also perfectly acceptable if you want to save some money. I also suggest an ergonomic silicone case for long note taking sessions if you use a first generation pencil. I find the second generation pencil comfortable without anything extra.
- Thinkpad T480s 2018 – Linux laptop for doing all my projects.
- An old desktop with Windows for Proctortrack. I originally tried using a pendrive with Windows loaded on it, but found it very slow and it would often hang. Not what you want when trying to take a timed exam! I suggest finding a Windows machine somewhere to do your exams on. If necessary, consider dual booting if you want to use Linux on the same machine.
This is a somewhat expensive setup. But I figure it’s worth it for the time and hassle it saves me. It’s easy to find anything I need for class. And the affordable price of OMSCS makes it an easier pill to swallow.
Note Taking – iPad Pro 12.9″
Update: I’ve since switched to GoodNotes 5, which maintains the same workflow as described below. I highly recommend the vertical scrolling mode.
I use GoodNotes 4 to take and organise my notes. I create a category for each class, and inside the class I create a couple notebooks:
- Lecture Notes – Single notebook for all my lecture notes. I bookmark pages with the lecture number and title.
- Project Notes – For jotting down ideas and design for projects.
In addition, I also copy any supporting documents into the category:
- All papers and textbooks. I read and highlight them directly in GoodNotes.
- Syllabus and schedule.
Here’s what one of my classes look like:
When I finish a class, I move it into an “Archive” master category. I also manually archive all the papers into my Dropbox.
Note Taking Approach
- I watch lectures in a 25/75 split landscape screen, with nPlayer alongside GoodNotes. I download all the videos from Udacity (there is a link with a zip of them all somewhere) and load them into nPlayer via iTunes. (You can also use the Udacity app, but it randomly hangs on me)
- Lectures are watched at 1.25-1.5 speed depending on lecturer.
- Bookmark start of each set of notes with the lecture number and name.
- Use bulletpoint telegraphic sentences for notes.
- For textbooks and papers, highlight as I active read.
Here’s what the bookmarks look like for one of my classes:
And the lecture notes themselves (excuse the chicken scratch):
You can clip the lecture slide if needed like I did here by pressing home+power, then crop the slide and copy / paste it into GoodNotes. A little clunky but it works.
I originally tried using the Cornell note taking style, but I found it to be far too tedious for my needs. Simple bullet points have been effective for me.
For textbooks, I also tried taking notes separately but found this overkill. So I just highlight in support of active reading.
Projects – Thinkpad x1c
With a gatech email, you can get educational licenses for all of the Jetbrain IDEs. I use the various IDEs (PyCharm, IntelliJ, etc.) on my laptop, loaded with Linux.
Using Linux makes a lot of the computing systems class projects easier in my experience. For example, there was an AOS project which used libvirt that was easier to do on bare metal Linux. However, most people use either a Mac or Windows laptop, and get by with VMs. So you should be fine with those as well. If you are going to do the ML track, then it probably doesn’t matter much at all what you use.
Linux works great for everything except for Proctortrack – the software that takes over your computer during an exam to ensure you don’t cheat. It requires Windows. I have an older desktop with Windows that I use for exams.
What Didn’t Work
I tried a few other approaches that didn’t work for me:
- Notebooks and pencil case. I tried it, but it was way too much stuff to carry around with me. And not practical on the train or subway. But definitely a lot cheaper!
- SurfacePro 4 – Really great concept – combined tablet and Windows PC – but I had a lot of hardware and software bugs with it. It was my frustration with the quality of the SP4 that led me to go with the slightly more cumbersome combination of an iPad Pro and Thinkpad – both of which have been bulletproof after a year. The Apple Pencil + iPP is also much nicer to write with than the SP4 was.
- Notability – Pretty subjective, but I found GoodNotes4 nicer to use overall, and I didn’t need lecture recording.
- Pendrive with Windows – I tried using this for Proctortrack originally, but it often froze and was very slow. Not the best for taking exams. I recommend a machine with Windows installed on it.