As part of my CAS goals for DP1 I wanted to attempt the Harvard CS50 course sponsored by EDX. With the DP workload I haven’t really found time to do the course hence I used this winter break to start it. The lectures are quite long being an hour and a half long to two and a half hours long. At first to understand the concept of code, the instructor David J. Malan, used Scratch. Scratch is a basic programming language that helps beginners start thinking like a programmer and to understand the thought process of what to do when coding.

3 Things To Know About Scratch 3.0 | by The Scratch Team | The Scratch Team Blog | Medium

As you can see the reason why Scratch is so simple and quick to adapt to is due to the use of the blocks in order to tell the cat on the right what to do. In code instead of the blocks we use lines of codes as a replacement in order to personalize all of the code we write.

The Harvard CS50 course is split into to Lectures 0-8 and at the end there is a project that must be done. As well with every lecture comes a mini project to complete. For Lecture 0 it was a scratch based lecture in which we learned how code works on a basic level. For Lecture 1 we were introduced to the c++ coding language which is a very old coding language however it is a part of the course. The mini task for lesson 1 was to create a code in which when you run the code, the code will ask “What’s your name?”, and then once you type in a name, the code will respond with “Hello, ___!(the name you put in)”

The above picture is what I was describing my first code to be. However I wouldn’t consider this my first code as it is extremely simple and the instructor had gone over this exact code earlier in the lecture

This code here is from the task for Lecture 1 (this was one of the two main tasks). The goal was to create a code in which when starting the code, you state a number from 1-8 and then a pyramid of hashtags will form in increasing order from 1 hashtag on the first row, and then 2 in the second row, then 3, etc, up until the number stated when the code asks for a number.

So far this has been a good mix of relatively easy and challenging and it really is a head scratcher sometimes because there aren’t any teachers you can contact for help. There is a discord server you could go to to ask for help from others who have completed the course or who are doing it however that is quite different from having a teacher to help you. I have enjoyed coding so far but it is hard to keep up with the course with the DP workload.


Learning Outcomes Achieved:

LO2 – I took on the challenge of learning how to code. It may seem simple, however learning the language of code itself is really hard to do. This is because it is so different to what we are used to and we are not used to think that methodically. I learned the C++ language, or at least the basics of it.

LO4 – The Harvard CS50 course was one of my goals from the start of DP 1 and hence I took this opportunity to show commitment to my goals and to follow through with what I have set for myself.