Pangram verdict · v3.3
We believe that this document is fully human-written
AI likelihood · overall
HumanArticle text · 1,800 words · 5 segments analyzed
In September 2022, I impulsively signed up for a Bachelor's Degree in Computer Science after seeing an ad for it on Coursera. Getting a degree had been on my mind for quite some time, after a long career without one, but I wasn't sure how to go about it. And now, about 3 years and 9 months later (with the last 3 of those months spent waiting for my results), I've finally completed my degree.
This article is a brief write-up of my experience. My Background My degree-less tech career spans nearly 21 years, with about 14 of those as a software developer and MLE. I left high school early as a teenager; I was ready to enter the workforce and become independent as early as possible. I got into tech through certifications like MCP, MCSA, and A+ (they were all the rage back then), which was enough to land a helpdesk job at 18. From there, I followed my interests, which eventually led to software engineering and, later, a focus on machine learning. So far, my lack of a degree hasn't been a barrier to my career. I've heard from colleagues that Australia tends to value experience and attitude over formal education, whereas the opposite can be true overseas, so maybe I got lucky in that respect. I'd go as far as to say that being "self-taught" is typically seen as a positive by employers, provided you appear to have actually taught yourself the skills needed to do the job. That said, I'm not really "self-taught" - I think "self-educated" is a better term. I've collected the skills I've needed for the jobs I wanted via MOOCs (shouts to David J. Malan's CS50, Andrew Ng's ML courses and Jeremy Howard's fastai), certificates, books, and Kaggle. I've always had something to put in the Education section of my resume. I've written before about my opinion that Software Development is a Trade, and that education makes sense interspersed with work experience. Of course, I acknowledge that my journey makes me quite biased here. However, a lack of a degree has impacted my ability to work overseas.
In my younger years, I made it to the final rounds of an interview with a US company I was interested in, only to learn that the E-3 visa, an Australia-US-specific agreement, requires at least a Bachelor's Degree. Though I have no intention of working overseas at the moment, it's nice to have the option. I also genuinely love learning, and I was interested in identifying my knowledge gaps. And it's also an excuse to test out the Zettelkasten Method on a real study problem. Finally, I'm not getting any younger. I sometimes wonder if I should have got my degree in my 20s. Now, as I approach my 40s, I don't want to be saying the same thing about my 30s. About The Degree The degree is done 100% remotely. It's hosted on Coursera - that's where you watch the lectures, and where they host the class resources, such as lab notebooks and quizzes. Coursera also provides forums to chat with teaching staff (which are rarely used), and this is how you upload your assignments. The program is run by the University of London Worldwide, its distance-learning arm. And Goldsmiths, University of London, marks the assignments and exams.
The exams themselves are done remotely using Inspera proctoring software. I've heard from other students that before COVID, people actually went to local teaching centres for their exams. There was also a short window in 2022, where the exams were unproctored - you just had 4 hours to complete them once started, open web/book. But I guess the success of LLMs forced their hand to add proctoring.
I'm sure there are similar programs out there. I didn't shop around for alternatives, I'll be honest. But I was already familiar with the Coursera platform, and the offering suited my lifestyle nicely. Prerequisites and Performance-Based Admission The course prerequisites stipulate a high school diploma. However, they offer an alternate route called Performance-Based Admission (PBA). Basically, you sit two modules (Introduction to Programming I, plus one of the math modules), and if you pass them both, you're allowed to enter the full degree. The modules are counted towards your final grades, so it's not wasted time, but you get a good sense of whether the program is for you.
Cost Another thing that worked for me is that you pay for the modules as you go. For me in Australia, a module currently costs £823 (about A$1,600), and the final project counts as a double module, with some small extras. The University publishes the total programme cost as between £14,666 and £21,829, depending on your country of residence and pace of study. My total comes to roughly £17,000, or around A$33,000, spread over 3.5 years. I was able to replace 3 modules with Coursera courses that require only a subscription, further saving money (see the Recognition of Prior Learning section below). Since this is education that's directly applicable to my career, it's also tax-deductible in my country. The ATO allows you to claim self-education expenses when the study "maintains or improves the specific skills or knowledge you require for your current work activities". A Computer Science degree while working as a software engineer clears that bar, at least according to my accountant. Workload Just because it's online doesn't mean it's easy. Even if you're a software veteran, like myself and many of the other students, familiarity with the corpus helps, but you still have to do the work. Each module has mandatory midterm assignments, followed by either a final exam or a final assignment. The assignments are often long and challenging, and the exams are pretty tough too. They allow you to take up to 4 modules per session (or 2 plus the final project), plus a retake, and you have to complete them in 6 years, which requires about 2 modules per session. After completing the PBA, I took an average of about 3 modules per session, getting the RPL certificates (see below) in between sessions. In the final sessions, I took on 4 modules, which was a lot. However, many students opt to complete 4 modules straight through, and I think the fastest possible time to complete the course is 3 years flat. Generally, I found that during the weeks leading up to midterms and exams, the degree would consume most of my free time. The workload ramped up significantly from the earlier to the later modules, with the last 2 sessions easily the hardest.
There were some really intense periods of my life where I would wake up at 4am, complete a four-hour exam, work through the day, then work on an assignment at night. Recognition of Prior Learning The university does offer Recognition of Prior Learning substitutes if you've studied equivalent modules elsewhere. They also have a few Coursera certificates that can replace entire modules, which only require a Coursera subscription. I replaced three modules this way:
How Computers Work, with the Google IT Support Professional Certificate Data Science, with the IBM Data Science Professional Certificate Machine Learning and Neural Networks, with the IBM AI Engineering Professional Certificate
I interspersed these with my regular modules. I finished the Google certificate (about 3 months at 10 hours a week) in April 2023, just as my first session wrapped up. The two IBM certificates I completed back-to-back in July 2024, in the lull after midterms, while also taking three regular modules. Together, they shaved a whole session off my degree. Note that the list of recognised qualifications has changed since I did it, so check the current page. Course Breakdown The topics are pretty typical of a Bachelor's Degree in Computer Science, no surprises. Some math, although less than an engineering degree, and most things are quite hands-on. There were quite a few interesting projects as coursework. Some highlights include some audio visualisers, a couple of JavaScript games (including a pool simulation which you were encouraged to put a twist on), a DJ simulator built with JUCE, an evolutionary algorithms project inspired by Karl Sims' 1994 Evolving Virtual Creatures, an interesting collection of signal processing exercises, plus a few different research projects based around scraping and analysing web data; and, finally, the open-ended final project, where I built a breast-cancer detection mammography classifier that trains and runs end-to-end on Apple Silicon (see cm3070-final-project). Here's my JUCE DJ simulator in action:
And the pool table game with rodents that could be killed for bonus points (not something I endorse in the real world):
Here's the full path I took:
Session Modules RPL certificates (on the side)
Oct 2022 Introduction to Programming I, Discrete Mathematics Google IT Support
(replaced How Computers Work)
Apr 2023 Introduction to Programming II, Computational Mathematics, Web Development
Oct 2023 Fundamentals of Computer Science, Algorithms and Data Structures I, Software Design and Development
Apr 2024 Object-Oriented Programming, Programming with Data, Graphics Programming IBM Data Science (replaced Data Science), IBM AI Engineering (replaced Machine Learning and Neural Networks)
Oct 2024 Computer Security, Algorithms and Data Structures II, Databases, Networks and the Web
Apr 2025 Professional Practice for Computer Scientists, Databases and Advanced Data Techniques, Artificial Intelligence, Intelligent Signal Processing
Oct 2025 Natural Language Processing, Final Project
If you want to dig deeper into the modules, the student community maintains a couple of great resources: world-class/notes, a student-run repo where people post their course notes, and world-class/REPL, a collection of course material and resources. There's also a spreadsheet someone made that breaks down each module's difficulty and other metrics, as ranked by former students. The Best Parts One of my favourite parts of the course was working with the other students. Coursera invites you into a student Slack workspace, which is basically a Lord of the Flies-style free-for-all, with no apparent official representation of any kind. Some students took it upon themselves to run the Slack with an iron fist, reprimanding people for posting in the wrong channel. Some alumni hang out on Slack, helping students and answering questions. Other former students haunt the Slack channels, posting intermittent trolls. It's all pretty chaotic and hilarious. On top of that, there's a culture of high-achieving students sharing videos and screenshots of their assignments, some of which were really impressive, which would motivate me to do my best work. There are really fascinating people from all over the world, with interesting, roundabout career stories like mine. One fellow student completed her degree during the war in Ukraine. Another student taught herself web development and ran her own studio to self-fund her education. Another student gave birth twice during the degree, managed to complete the BSc while working a full-time job as a teacher, and somehow also completed a master's.