I haven’t mentioned this to many people, but since September 2020, I’ve been studying part-time (alongside work) for an online master’s in computer science at the University of Texas at Austin, aka an MSCSO. There aren’t many blog posts about the MSCSO (but you can find a lot of threads at this subreddit, so I thought I’d write about my own experience in case it helps anyone thinking of doing a remote computer science degree. I think a lot of people apply to study computer science online at both UT Austin and Georgia Tech (and other unis), so I hope this can be of use if you’re trying to decide which is for you.
Taking online courses
I am a big fan of online courses, because they’re affordable and you can take them from anywhere. I’ve previously spent time outside of work studying various programming and maths courses through platforms like Coursera, edX and Udacity. Some of the courses I’ve managed to complete so far are:
- Mathematics for Machine Learning Specialization, on Coursera (This was a good introduction to linear algebra.)
- 6.431x: Probability - The Science of Uncertainty and Data, on edX (A really excellent course, but very tough…)
- About five nanodegrees with Udacity (I was a bit of a Udacity fan for a while.)
I’ve also just audited a few courses, without getting any credits or certificates. The good thing about online courses like those above is that you can study what you like, when you like. But the downsides are:
Because I did the courses alongside work, it was difficult to stay motivated enough to finish them. I took lots of other CS courses, but, as you know, humans are basically lazy, and I gave up on plenty of courses that I wanted to finish.
Anyone can take the online courses, even with no computer science or mathematics background, so a lot of the content is simplified (I think otherwise lots of people would simply drop out). CS courses in particular often focus on programming, and my feeling is that if you want to study maths in depth, you might find a lot of courses don’t go into it as deeply as if you studied at university. (Of course, there are some courses like MIT’s Probability where you really do get right into the nitty gritty.) A lot of new advanced online courses have been made available recently though, so I feel like this is changing over time.
With regard to staying motivated — I was just thinking about whether I could knuckle down and study a bit more when, in 2019, UT Austin announced their online master’s in computer science. The courses on offer looked really interesting and I had quite a lot of spare time after work. I already did a CS master’s at Imperial College London, so I did wonder whether there was any point in doing another master’s (probably not, to be honest). In the end though, I decided I just wanted to keep motivated and keep studying computer science for fun, so I went for it.
In around February 2020, I applied just to Georgia Tech and UT Austin, and was accepted by both. I ultimately decided to go with UT Austin, because the courses looked interesting.
Here, I’ve written about how the UT Austin programme is different from Georgia Tech in particular. They’re similar in many ways, so in the end, I think it’s about choosing which programme will better suit your goals. I’ve also never taken any classes at Georgia Tech, so this is based on information I’ve seen on places like Reddit, and may not all be accurate.
All online, low tuition fees
Both unis’ programmes are entirely online (both classes and assessments) and you can watch the lectures whenever you like, so they allow you to get a computer science degree in a relatively flexible way. Both require you to complete ten courses in all. The total fee is $5400 for Georgia Tech and $10,000 for UT Austin. If you study at a uni in the US it normally costs about $3000–6000 for just one course, so being able to take ten courses for $10,000 or less makes it pretty affordable. Plus, the degrees you get from both programmes are the same whether you’re remote or on campus, so you don’t have to worry that you’re getting a different degree because it’s online.
There’s almost no difference in the quality of the degree whether you study online or on campus (at least in my experience ), so if you really want to study computer science in depth, this is one way to do it. I actually studied in person at Imperial College London, and even in comparison to that, the level of the content I’ve studied at UT Austin has been almost the same — it certainly hasn’t been easier because it’s online. One other feature of these programmes is that it feels like there’s more of a focus on coursework than written exams. I suppose written exams are tricky when the course is remote, and a lot of the classes have take-home exams instead (for example, where you’re given a weekend for a written exam, maybe a midterm or final, and you start a timer for two hours and sit it within that time).
You might be worried that online courses just involve listening to pre-recorded lectures and that you won’t get any other support. But in the case of UT Austin:
- There are office-hour sessions four or five times a week to suit all time zones, so you can get support from teaching assistants and professors and ask questions.
- There’s also a Piazza Q&A forum for each class, where you can post questions and get answers.
- There’s a Slack channel for each course, so students can communicate with each other.
- A lot of students form their own study groups in Slack, so you can study in smaller groups and teach each other. Of course, you need to take the initiative to get involved with these.
There’s also a thesis option course where you actually carry out research, though I’m not planning to take that one. So if you want to do proper research too, not just coursework, then you can.
The things that aren’t so good about studying the MSCSO are:
It’s difficult to make friends with other students. I think a lot of people have experienced this with the pandemic — when everything’s remote, it becomes much harder to get to know other people than when you are on campus. I got to know students through small study groups and group projects, met up in person and went for dinner with some of those who’re also in the UK, so I now know a few people on the programme. But I do think it’s far easier to make lots of friends when actually studying on campus.
It’s difficult to get to know the teachers. For the same reasons as above, you won’t get to know them well just by taking the classes. So if you’re thinking of doing a PhD and want a recommendation letter, for example, you’ll need to make a bit more effort to get in touch with them.
There can be a bit of variation in the way coursework is marked. The courses are quite low-cost and the class sizes are usually bigger than those on campus, so they often use peer review and automatic marking software for things like proofs and programming coursework. I’m not too bothered about this because I don’t really care about the grades anymore, but I’ve seen a few complaints about it from other students. A lot of the time they use the peer review system, where multiple students mark your work and then you get the average score — so it’s designed so that if one marker marks quite differently from their peers, it won’t have too much effect.
As you can see, studying online has its own advantages and disadvantages, so keep those in mind when choosing your programme.
The MSCSO is a new programme
The MSCSO started in 2019, so is relatively new. The good thing about this is that the number of students on the programme is still quite low, so at the moment you can enroll any of the courses they offer without having to join a waiting list. Right now there are just over 1000 people on the programme’s Slack channel. (There are a lot of students on the Georgia Tech course, and apparently there are waiting lists.)
The disadvantages of the programme being new are:
- There are only a few courses on offer compared to Georgia Tech. However, they’re adding one or two new courses a year, so this will improve over time.
- There are sometimes bugs/errors in the assignment questions when the course is brand new, or the classes don’t run as smoothly as they should, which can be stressful. I think this will also be resolved over time.
- There’s still not much information online from actual students about things like which courses are good, or what the students’ careers are like after graduation. Information is gradually being added to Reddit and information-sharing sites made by graduates, so this will get better too.
A good choice of ML courses
Whether this is a pro or con depends on your personal preference, but if you want to study fields like machine learning in greater depth, UT Austin has a lot of related courses. At the moment, you can take the following machine-learning-related courses:
- Machine Learning
- Reinforcement Learning
- Deep Learning
- Advanced Linear Algebra
- Optimization and Online Learning
- Natural Language Processing
- Case Studies in Machine Learning
So I think the programme is well suited to those who want to learn the foundations of CS while studying machine learning.
To graduate, you have to take at least one module from each of application, theory and systems, as listed on the uni’s site, and get a B- or higher (and C or higher for elective courses). You also need to take ten courses in total and get an average GPA of 3.0 or above. You can check the list of currently available courses on the university’s site. So far, I’ve taken the following:
- Autumn 2020: Advanced Linear Algebra; Machine Learning
- Spring 2021: Natural Language Processing; Online Learning and Optimization
- Summer 2021: Deep Learning
- Autumn 2021: Virtualization
At first, I was really motivated. I was spending almost all my time at home due to Covid-19, so I was taking two classes per semester. However, taking two courses while working full time meant I had no free time, and it was quite hard to make time for other things like family and hobbies. (On the plus side, you’ll graduate quicker this way!) This spring and summer I’ve been busy with my startup and haven’t taken any courses…
Preparing your application
The application process is the same as on-campus graduate programmes. You basically need the following. (For more details, check the uni’s official site.)
I wrote two pages of A4 and included the following three main points:
My past computer science projects and research, etc. I made sure I mentioned any good grades I had, to show that I’d be able to keep up in UT Austin’s academic computer science classes.
The fact that the programme appealed to me because I could study machine learning while continuing work.
The fact that I worked as a software engineer, so would be able to keep up with the courses.
You need to write succinctly about your past achievements and your future goals, and tell the story of why MSCSO is the best choice for you.
My CV was two A4 pages and included my academic history, relevant work experiences, voluntary work and the online CS courses I’d taken. As the CV was aimed at a uni rather than an employer, I tried to keep the focus solidly on academic achievements rather than work ones.
I had studied at UK universities so I didn’t need to take TOEFL.
I started seriously studying for the GRE in December 2019, and I sat the test only once 3 months later. I only had a very short time to prepare. In the end I sent it off with the slightly doubtful scores of 153 for verbal, 163 for quantitative, and 3.5 for analytical writing. It takes a while to properly prepare for GRE too, so as with TOEFL, I’d recommend starting early.
Since the pandemic, it looks like GRE is no longer a mandatory requirement for the application, so I’d just recommend checking the requirements when you’re preparing your application.
I requested letters of recommendation from my dissertation supervisor from the University of Edinburgh, and two professors who assisted me during my research and group project at Imperial College London. Professors are always busy, so you should make sure you ask well in advance. If you didn’t know them well or it was a long time ago that they helped you, it’s a good idea to talk to them via email or Zoom or something beforehand and let them know what kind of thing you’d like them to focus on in the letter — this makes it easier for them, and also means they’ll be able to write the letter for you sooner.
You usually get in touch with the university where you did your undergrad or masters and ask them to send the grades directly to UT Austin. The entry requirements call for a GPA of 3.0 or higher, so the higher your grades the better. You don’t need a CS undergraduate degree to get in. In fact, a lot of students who actually got onto the programme hadn’t done computer science during their undergrad degree. If you don’t have a relevant CS background, you can take online courses and submit evidence of course completion.
So is the MSCSO worth it?
I started the UT Austin programme without thinking too much about how hard it would be to get through, but it’s a lot tougher than online courses like Coursera and edX and requires far more time spent studying — so I probably wouldn’t actually recommend starting it just because it looks interesting (like I did)…! In my case, I started shifting my career from purely programming to starting my own tech startup in April this year, which also meant it perhaps wasn’t so important to be getting a degree anymore. This has made it a little bit challenging to stay motivated (though I’ve finished six courses now and only have four left, so it would feel like a bit of a waste to give up now). In any case, I’ve been really satisfied with the quality of the course. So if you want…
- To get a degree from a US university
- To get a CS degree and switch career to technical fields like software engineering or data science
- To study CS remotely while working
then I think it’s worth considering this programme. If you do decide to go ahead and apply, I wish you all the best!