2 min read

The Odin Project: Learning Log #2

Lesson/Topic: Back After 10 Months


It's been almost a year since I wrote Learning Log #1. Between my regular work and CS courses, The Odin Project became an afterthought.

I always imagined it as a grueling endeavor, much like my coding bootcamp. Something that needed to be scheduled under perfect conditions. Well, here we are, 10 months later, and I haven't started a single project through TOP.

Before diving into code, TOP starts with something harder: mindset.


The Big Ideas

Growth mindset over fixed. "I can't do this" becomes "I can't do this yet." Struggling isn't failing. It's the actual learning happening.

Focus mode and diffuse mode. Your brain learns in two states: actively grinding, and passively connecting dots while you rest. Both matter. Taking breaks isn't slacking. It's part of the process.

A few years ago, I visited the Salvador Dalí Museum in Florida. I learned that Dalí would sit in a chair holding a key over a metal plate, then let himself drift off to sleep. The moment he fell asleep, the key would drop, clang against the plate, and wake him up. He'd then capture whatever ideas had surfaced in that twilight state. That was his diffuse mode. That's when this concept first clicked for me.

When stuck: Google it, take a break, then ask for help. In that order.

No AI shortcuts. Tools like ChatGPT can build things for you, but they can't build you. If the goal is fluency, I have to do the reps myself.

No deadlines, no comparisons. Only compare myself to where I was last week. Stress kills learning.


What I'm Taking Forward

I've built apps with AI. They work. But I couldn't rebuild them from scratch if I had to. That's the gap I'm here to close.

I don't want to be someone who can only use AI to build things. I want to be someone who can build things from scratch and also use AI to go faster.

I have a broad understanding of the concepts and architecture behind what I'm building. The designs of the apps I've created are built through my own logic. AI was just the carpenter. But I'll be honest: when I read through my code, I notice inconsistencies. Sometimes an async/await pattern in one section doesn't match how it was written elsewhere. I can recognize when the syntax isn't uniform, but I can't always fix it confidently.

Still, I don't want to deny what I do know: security-first thinking, understanding cookies vs. JWT vs. local storage, and mobile-first design. These are real lessons from my bootcamp and CS courses that have stuck with me.

This time, though, I'm doing it the hard way. On purpose.


Next up: Asking for Help