My Harvard’s CS50 Experience

CS50!

For those who haven’t heard this before, it sounds like some codeword, Right?

Don’t worry! It’s not some codeword using which you can hijack a plane!
It’s a course.

I recently completed CS50’s Computer Science of Business Professionals course. It is a course designed to teach computer science basics to business people. The vanilla CS50 or the core CS50 course is different from this.

Recently, CS50 has launched several variants of CS50 to teach targeted subjects like Python, AI, Web Development, etc.

I will talk about the various variants as we go along. But to begin with, let me give you an overview of what exactly is CS50, who can attend it, and some basics that you need to know.

So if you are thinking of taking up CS50 or are new to CS50, then continue reading attentively.

Remember, Computer Science is changing the world for good and will continue to do so. And in order to survive in this digital age, you need to have basic computer science skills irrespective of the field you are in.

CS50 helps you get those basic foundational skills!

What is CS50?

CS50 is a course offered by Harvard. It is an entry-level computer science course that can be pursued on-campus as well as online.

The lead instructor CS50 course is Professor David J. Malan.

The on-campus version of CS50 is Harvard’s largest course. The online version of the course can be accessed at several places including Youtube and edX.

Who can attend CS50?

Anyone would want to learn computer science can attend. But, as per Harvard, the course is best suited for ages 13 and above.

Some of the tools needed in the course require a minimum age of 13 and hence, younger students will require the helping hand of a parent to set up things for them.

How can one enroll for CS50?

If you are a Harvard University or Yale University student then you can take the CS50 course on-campus.

You can enroll for the course online at edX. It is free to audit.
In case, you require the edX verified certificate, you need to pay a nominal fee for it.

You can also access the course material here – https://cs50.harvard.edu/

When you go to edX and search for CS50, you will find several CS50 courses. The base program (vanilla CS50) course is CS50’s Introduction to Computer Science

This course covers the basics of computer science, concepts like algorithms, data structures, web development, etc. It also makes the students familiar with several languages like C, Python, SQL, JavaScript, HTML, and CSS.

The other follow-up courses (or variants) of CS50 are listed below:

CS50’s Introduction to Programming with Python
CS50’s Web Programming with Python and JavaScript
CS50’s Introduction to Artificial Intelligence with Python
CS50’s Understanding Technology
CS50’s Introduction to Game Development
CS50’s Computer Science for Business Professionals
CS50’s Introduction to Programming with Scratch
CS50’s Computer Science for Lawyers

Well, that’s enough of the introduction.

Now, as I completed the CS50’s Computer Science for Business Professionals, let me share my overall experience and the course content.

My experience of CS50 for Business Professionals

When I completed this course, I was not new to CS50.

What do I mean? Not new to CS50!

I mean that I came across CS50 long back when I was a developer. I also started the course (the regular one). Follow-up courses (specialized courses) didn’t exist then.

I completed lecture 1, assignment 1, and lecture 2.
But unfortunately, couldn’t proceed ahead.

I kept following CS50 resources on social media and at times, kept watching the videos on Youtube too.

Recently, I was just exploring the CS50 course on edX after quite a long and discovered the follow-up courses.

When I came across CS50’s Computer Science for Business Professionals, I couldn’t stop myself. I enrolled for it immediately. And I started my CS50 journey again.

This course is especially for business professionals. In this digital era, business professionals across various domains are needed to have basic computer science skills.

Almost every business has a digital presence in some or the other way. And in order to survive in this digital ecosystem, irrespective of your profession, you must have a basic understanding of how this digital world work.

CS50’s computer science for business professionals equips one with these basics of the digital world.

The course consists of 6 lectures, each followed by an assignment.

The 6 lectures are on the topics:

  1. Computational Thinking
  2. Programming Languages
  3. Internet Technologies
  4. Web Development
  5. Technology Stacks
  6. Cloud Computing

Now let me drill down a bit and share the lecture wise experience.

Lecture 1: Computational Thinking

The very first lecture of this course begins with the very basics of the digital world. That’s Binary! To understand computers, the understanding of binary number systems is essential.

The purpose of this lecture is to build the base and make the students understand “how computers think!”

The lecture begins from the very basics and goes up to Linked Lists and Hash Tables.

Don’t worry if you’re completely new to computers. Prof. David makes it fun for all. I personally love the way he tears phonebook to teach!

Lecture 2: Programming Languages

Having understood the basics and way computers think, it is necessary to know the basics of programming languages. You might not be in a role where you have to code.

You might be a product manager or a project manager or something else. Knowing programming languages can help you communicate with programmers easily. Imagine a call or meeting with some software developers who are working in your organization.

They are speaking about some jargon that you are not understanding. That would be tough. Right?

Learning the basics of programming can help you.

This lecture equips you with the basics of programming, programming constructs like loops, conditional statements, variables, etc.

This lecture teaches about Scratch – a fantastic tool for beginners to learn programming.

You can check my Scratch assignment here.

I know this is quite basic. But when you actually get your hands dirty on Scratch, it’s real fun! I used 2 sprites, loops, conditions and even audio!

You learn all this in CS50. Crazy! Right?

Lecture 3: Internet Technologies

The 3rd lecture is on Internet Technologies. Having understood computers and programming, it becomes essential to know the internet too.

You’re accessing this blog with the internet. I did this CS50 course that is offered by Harvard University, which is miles away from India – Just because of the internet.

In this lecture, you will learn about how the internet works, protocols like DHCP, DNS, TCP, etc. You will also learn the basics of HTML.

If you’re a business professional, then I would recommend you to give special attention to lecture 3 and lecture 4.

Almost all businesses are using websites, web apps, or mobile apps and the knowledge provided here will definitely help you.

Lecture 4: Web Development

This lecture on web development covers the basics of HTML in detail along with CSS and JavaScript.

Again, the teaching methodology is too good. Even if you’re completely new to it, you will be able to understand the class.

The assignment for this module involved creation of a website. I tried creating my resume for it.

You can check out the website I quickly created within an hour here – https://cs50xcoursewebsite.thejainishshah.repl.co/

Lecture 5: Technology Stacks

This class helps you understand the various terminologies that you would hear by IT people. You get to know about what is front end, back end, databases, SQL, NoSQL and so on.

If you’re a budding product manager, then you must understand all these technology stacks very nicely.

You might not directly work on these technology stacks, but the teams you manage or interact with would be working on these stacks day-in and day-out.

Lecture 6: Cloud Computing

The last lecture is on cloud computing. With the increasing use of internet, cloud is becoming more popular. Almost everyone wants to switch to cloud.

We keep on hearing the phrases “We are moving to cloud” “Our solution is hosted on cloud” “We offer a cloud product”

But what exactly is cloud?

This lecture answers that question. It gives you the foundational understanding of cloud, cloud computing, virtual machines and much more.

Final Review

This is CS50!

And it is amazing. I highly recommend this course for any business professional who wants to learn the basics of computer science. Specially and highly recommended for product managers, business analysts and project managers.

It took less time for me to complete this course due to my previous experience and education in computer science. It might take a little longer for someone who is very fresh to computer science but it is manageable.

You get a lot of value for FREE!

And if you submit assignments on time and clear them then you get a certificate from Harvard too. Sharing my CS50 certificate below 🙂

CS50 Certificate - Jainish Shah

If you would like to talk more about this course or anything else, feel free to reach out on my Instagram or LinkedIn.

Thanks for reading! Hope the information provided by helps you in deciding whether you should do this course or not.

Happy Learning!

Leave a Comment