Skip to main content

Command Palette

Search for a command to run...

CS50 #Week 0 — Understanding Scratch and Logic

Published
3 min read
CS50 #Week 0 — Understanding Scratch and Logic
A
I’m a curious learner and aspiring software developer who enjoys building real-world systems, exploring new technologies, and learning in public. I write about coding, personal growth, and turning ideas into practical systems—while simplifying complex concepts for others.

“From basics to a mind-blowing visual logic experience.”


This week marks the beginning of my CS50 journey, and it’s safe to say — even as someone from a computer background, I didn’t expect Week 0 to be this interesting.

At first, it felt like a repetition of things I already knew: binary, ASCII, algorithms, and basic computational thinking.
Honestly, the first half of the lecture felt like a recap of my old computer classes… until David Malan introduced Scratch.

That’s when everything changed.


💡 Discovering Scratch — Simplicity That Teaches Deep Logic

Scratch looked simple — drag and drop blocks, connect some colors, and boom, it runs. But when I actually started working with it, I realized how deep it really is.

It visualizes logic in such a way that you can see how computers think.
It’s not just coding; it’s logic brought to life.
For me, it was a moment of rethinking everything I knew about how programs flow.


🎯 The Problem Set — A Different Kind of Education

After finishing the lecture, I moved on to Problem Set 0.
That’s when I truly saw the difference in CS50’s teaching approach.

Where I come from, teachers usually tell us that 2 + 2 = 4, and that’s it — we rarely question why or what happens if we change something.

But here, the assignment forced me to think, to experiment, and to fail until I understood.
It’s not about getting the right answer; it’s about understanding how you get there.

That mindset shift — that curiosity — is what makes CS50 so powerful.


🎮 My Scratch Project — The Overengineered Game

For my project, I built a small game in Scratch.
It looked simple, but I ended up turning it into a massive logic web because of how much fun I was having experimenting.

As someone with prior coding experience, I realized I was overengineering things — adding unnecessary layers of logic just because I could.
It took me almost two weeks to finish something that should’ve been simple.

But that’s when I learned an important lesson:

Freedom with boundaries creates creativity.

The constraints of the problem set were not limitations — they were the framework that helped me discover how far I could push my own logic.

🗂️ Project Source:
You can check out my source files and Problem set materials here —

CS50 Week 0 Project Folder (Google Drive)


🌱 Reflection — Why You Should Try It Too

If you’ve made it this far, you probably understand the kind of “productive struggle” I went through.
And if you’re planning to take CS50 — I highly recommend it.

Week 0 isn’t just about Scratch or simple logic.
It’s about relearning how to think, question, and explore like a beginner again — no matter how much you already know.

Stay tuned for my next post
This is just the beginning of my CS50 adventure 🚀

More from this blog

Weekly update

7 posts

A quiet record of weekly growth, learning, and making. Simple notes from a continuous journey of improvement