The star-studded Harvard computer science online class truly transformed my life. I started doing it quite randomly, but it brought me to legal tech, legal design, data, and so much more. And now programming is one of my favourite hobbies! So it is right about time I give you a lawyer review of CS50.
If you are curious if CS50 is the right way for you to start coding as a lawyer or just understanding technology a little better, read on!
Looking for review of CS50 for Lawyers instead? Read it here.
1. What is CS50?
CS50 is Introduction to the intellectual enterprises of computer science and the art of programming, a computer science course by the Harvard University. It is designed to be the first introduction to algorithmical thinking – think legal theory classes:
- There are lectures and short intros into some of the concepts that are super easy to understand, using a lot of metaphors, and fun to watch.
- The course is accompanied with labs and problem sets (hereinafter referred to as the PSETs), which are project you are to tackle on your own.
- You finish by completing your own final project – see mine here!
- It is self-paced and available completely for free.
- As you submit the PSETs, CS50 keeps track of your score in an online gradebook
- At the end you get a certificate (and if you are me, you get yourself a tshirt).
2. How do I start CS50?
CS50 has its own OpenCourseWare here. You can choose different tracks based on whether you want a verified certificate from edX or a free certificate from CS50. The content is absolutely identical regardless of your choice in certificate.
From there, you just watch the lectures, shorts, and tackle the problems and labs one by one.
3. Why the hype?
CS50 is in my humble opinion the most amazing intro online CS course out there.
A computer science class so good that I, a wardrobe minimalist, got their merch.
If you want an outside opinion, read New Yorker on How Harvard’s Star Computer-Science Professor Built a Distance-Learning Empire.
Really – it is so good that Yale streams CS50 live from Harvard (which, according to my understanding of their rivalry from US teenage soap operas, is a big deal!).
The main reasons why I think it is so awesome?
- the lectures are fun and engaging,
- the PSETs help you actually use what you have learned,
- the content of the course is what you need to create a solid foundation for more coding fun to come,
- the course is Netflix-like high-def quality, hence no bad sound or grainy video,
- it’s for free, which is borderline unbelievable.
4. Should lawyers took CS50?
Absolutely, the course is beginner friendly – so you will be at the same position as all the other classmates.
There is a special CS50 for Lawyers, too. I am watching it right now (Week 2), and will report, but it is so far done in much more lawyerish top-bottom style (David Malan even sports a tie while lecturing!).
5. Can a lawyer finish CS50?
This is the hard part.
You really need to have some degree of discipline in order to be able to finish CS50. That can get quite challenging to do with a Big Law gig and a billable hours target.
What helped me to not give up?
- It really helps to develop some routine (maybe code every day for 100 days or have coding Thursdays),
- Take your time to do the PSETs. They are designed to be challenging, but you got this.
- Track your progress (=your own coding time recording). Looking back, you’ll be proud of yourself.
- Bring a buddy on board. Maybe start a coding unit at your law firm?
- Create yourself a bigger goal than just finishing a class. I had a goal in mind (to create a zero waste store shopping app for myself), and wouldn’t stop until I got there.
6. What will I learn in CS50?
Programming languages included in the course are:
- C (painful but important),
- Python (great for everything),
- SQL/SQLite (important for being able to harvest data)
- basics of web development (CSS, HTML, JavaScript).
But beneath the syntactical surface and the {} ; [], there is so much more that you will grasp. You will understand how variables work and what are pointers, and the world out there (including past couple of sentences) will make a little more sense.
DISCLAIMER: CS50 is an intro course. So you will touch on some of the stuff out there. But in order to actually build something on your own outside class, you’re going to have to dig a little deeper later on.
7. How difficult is CS50?
It can get pretty hard, and frustrating, especially if you are doing it alone like I did. But as CS50 staff put it themselves: it is challenging yet doable.
Key thing is to persist and never give up.
8. Do I have to do the homework/PSETs in CS50?
Yes! I think it is a little pointless to take the course and not do the PSETs. Mostly because when I would be listening to the lectures, I’d be like yes, yes, of course, m-hm, got it and when doing the PSET, I would be like ummmmmmm, what?
Programming without practice is the equivalent of reading on family law at law school versus actually representing someone in a complicated divorce proceedings. Get my point?
9. What are the alternatives to CS50?
If CS50 is for whatever reason not your cup of tea, I recommend checking out the Open Source Society University, who put together a completely free CS bachelor-level curriculum made out of online courses of world’s best universities (as I noted in my Feb Finds).
10. How long does CS50 take?
The time spent on the course is really individual and varies on the level of comprehension and intensity of the study at the time.
Take your time. Study the concepts carefully. You are building the foundation for your whole coding journey.
Tl;dr It took me technically a very long time to finish it (actually 20 months in total!).
- I did the first four weeks in a couple months,
- then it was 2020 summer holiday (=the first time I could leave the house since March, so you bet I did),
- then I did the rest of the main course in one month,
- then two months of the mobile development track (which was very hard and is now discontinued),
- then I realised that my final project idea was kinda complicated,
- then I took the Bar Exam,
- then I did a pause with iOS bootcamp from Udemy to make my final project awesome, and
- only then I finished my final project and got the certificate (and the obligatory LinkedIn post).
And it is ok. It is ok to take as much time as you need to. I would watch a whole lot of YouTube tutorials around the concepts and picking them apart, and thanks to all of this, I have really strong foundation. And that is why you do this.
Final Provisions
If you want to learn to code and have no idea where to start, CS50 is the perfect stepping stone. It is structured, informative, and well produced. On top of that – the community is awesome!
So – did I inspire you to start?
Let me know down below please, I’d love to hear all about it 👇

Thank you. I enrolled the course today (as a law student). I am scared and inspired. haha
Good luck, I am sure you are going to have a blast 🤞🏻