It’s cool having a sound lecturer, especially the one that knows how to teach hard stuff and make it extremely simple and well digested for you.
I will be sharing my summary and what I learned from Week 0 of cs50, introduction to Computer Science.
With the first week of Cs50 (week 0), Prof. David J. Malan was friendly, taking us through what’s computer science in simple words, how computers represent stuff, Binaries, Algorithms, Pseudocode and Scratch, a block-based visual programming language and website targeted primarily at children.
Let’s dive in as I summarized in simple words.
What’s Computer Science?
Basically, Computer science refers to an act of solving problems.
Computer science is the study of computation and information. Computer science deals with theory of computation, algorithms, computational problems and the design of computer systems hardware, software and applications.
When we talk about computer science, We can think of problem-solving as the process of taking some input (details about our problem) and generate some output (the solution to our problem).
From the Lecture, I learned that computers don’t understand words and numbers the way humans do, instead, they understand only binary, a numeral system in which there are just two digits, 0 and 1.
he further explained that our first way of learning how to count with fingers is called Unary, then counting through 1 – 9 makes us learn Decimal.
I learn about counting in Binary by representing numbers in base 2. For example, 1 0 0 1 in binary is 9 in decimal.
explain here : 1001 = 1 * 23 + 0 * 22 + 0 * 21 + 1 * 20 = 8 + 0 + 0 + 1 = 9
- With enough bits, or binary digits, computers can count to any number.
- 8 bits make up one byte.
The algorithm is a step by steps instructions given to a computer to perform a specific task, you can think of it as a process followed in making food recipes, we follow particular instructions or steps to make the food ready to eat, likewise, Algorithm is a step-based process for a computer to complete a task.
Pseudocode is an informal syntax that is just a more specific version of English (or other human language) that represents our algorithm.
for example to make cake you can write down some text based steps you want follow:
- Choose a Recipe. …
- Prep the Pans. …
- Stir Together Dry Ingredients. …
- Combine the Butter and Sugar. …
- Add Eggs One at a Time. …
- Alternate Adding Dry and Wet Ingredients. …
- Pour Batter Into Pans and Bake. …and so on
above is an example of pseudocode.
Professor David introduce us to the world of scratch, a block-based visual programming language and website targeted primarily at children. he teaches about how to write some basic programs with scratch like saying Hello World, performing some basic calculation.
With scratch, I learn about Functions, Conditions, Boolean Expression,and loop
While week 0 of cs50 comprises of some basic foundation to students just exploring in the world of computer science, David J Malan, introduce a lot of essential keys in Computer fundamentals like Binary, Algorithm, Pseudocode, Boolean expressions, Variable, Function, loop and finally Scratch.
note: you can check full note here
Thanks for reading, if you’ve taken Week 0 of cs50 Harvard introductory course, do share your thoughts on it here.
I will love to hear from.