Video summary
How I'd learn to code if I had to start over
Main summary
Key takeaways
Main ideas and concepts (lesson summary)
- The video presents a step-by-step “roadmap” for learning to code from scratch, emphasizing that coding can feel scary at first—but becomes easier with practice and structure.
- It uses a cooking analogy: learning to code is like learning to cook. It’s confusing at first, but becomes clearer when you have guidance and start doing.
- The core methodology is 70-25-5 time allocation:
- 70% build
- 25% consume
- 5% AI experimentation
- Over time, the approach calls for progressively more real projects and stronger tooling/skills.
The overall goal: move from passive learning to active building with consistent feedback loops.
Methodology / instructions (detailed)
Step 1: Pick a programming language (foundation choice)
- Choose a beginner-friendly language that won’t overwhelm you.
- Recommended (if starting over): Python
- Why: simple, clean, readable, widely used
- Also relevant for AI/ML because many AI libraries use Python
- Optional early path: Scratch (Harvard CS50)
- Purpose: builds basic computing foundations
- Guidance: don’t spend more than 2–3 weeks on Scratch
- Transition: move to Python afterward for meaningful progress
Notes on other languages (alternatives)
- JavaScript: can be easier for some, but may confuse others due to “weird behaviors.”
- Java: likened to slow cooking—verbose and patience-requiring, but builds discipline.
- C: very challenging like making a soufflé from scratch; hard, but builds strong expertise if you persist.
Step 2: Find the right resources + avoid the “illusion of competence”
Key pitfall: “illusion of competence”
- Watching tutorials can make you feel capable.
- The moment you try on your own, you realize you don’t know how to solve problems.
Fix: apply the 70-25-5 rule
- 70% build
- Build coding projects (this breaks the illusion quickly because it reveals your gaps)
- Benefits:
- concrete examples for abstract concepts
- real accomplishment
- 25% consume
- Learn new information via resources
- The goal: upgrade what you’re building (not just collecting knowledge)
- 5% experiment with AI tools
- Do this sparingly because fundamentals come first
- Beginners probably should not rely on AI heavily
- Over time, this share could increase (potentially 20–30% depending on comfort)
Tool/resource recommendation
- cody.tech
- Bite-size lessons with: lesson + quiz + project per module
- Includes an AI assistant to help when you’re stuck
- Mentions free access and a discount code (as shown in the video)
Step 3: Build end-to-end, real-world projects
- Move beyond small exercises into legit full projects that connect:
- front end
- back end
- integration/glue code
- Emphasis on relevance/opportunity:
- AI security is growing because companies adopt AI quickly while security training lags
Example project idea: full-stack weather dashboard
- Front end: user enters a city; UI displays results
- Back end: Python with Flask to fetch weather data
- Database: MongoDB to store favorite cities
- Front end framework: React to present data cleanly
- Learning outcome: repeated reps with full-stack integration (front end + back end + glue code)
Additional project ideation support
- Use a GitHub repository called “app ideas”
- Contains many real project ideas grouped by beginner/intermediate/advanced tiers
- Helps you keep moving to “new dishes” as you level up
Step 4: Master coding tools (be “top 1%”-style proficient)
- Uses a “chef” analogy:
- Pros aren’t just better because of secret recipes—they have superior tool mastery (“knife skills”).
Advice from an ex-Google software engineer (quoted)
They focused on:
- API architecture
- life cycle and version control
- a proper tech stack
Acronym: ALT (three skills)
- A = API architecture
- An API is structured communication between systems.
- Analogy: a waiter takes your order and brings back the dish.
- In software, the front end doesn’t directly access the database—it requests via an API.
- Examples mentioned:
- Google Maps (location data)
- Amazon (customer data)
- L = life cycle + version control
- Specifically: Git and GitHub
- Important for collaboration with other engineers
- T = tech stack
- Database (e.g., MongoDB) = pantry (ingredients storage)
- Back end frameworks (e.g., Flask or Node) = stove (core logic execution)
- Front end frameworks (e.g., React, Angular, Vue) = plating (presentation)
Step 5: Learn coding using AI (but only after learning fundamentals)
Strong warning
- Don’t use AI as a beginner to generate entire code files for you.
- Instruction: learn coding properly first, then use AI to augment learning.
Three levels of approaching AI tools
- Level 1: Autocomplete (tool: GitHub Copilot)
- For small tasks (e.g., completing function logic, finding specific utilities)
- Goal: speed up work you already understand, not replace learning
- Level 2: Generation (tools: Cursor or Windsurf)
- Prompt in plain English to generate entire functions/files
- AI can edit across your code base
- You remain responsible for steering, reviewing, and verifying correctness
- Analogy: AI acts like a sous chef for bigger chunks
- Level 3: Delegation (tool: Claude Code)
- Hand off entire features/projects
- AI runs tasks autonomously: writes across multiple files and runs commands
- Mentions “agents” splitting work (e.g., front-end agent, back-end agent, tests agent)
Final caution
- Keep fundamentals and judgment.
- Real-world shipping requires expertise and strategic decision-making even with AI assistance.
Featured speakers / sources (identified at the end)
- Sacha (main presenter; “My name is Sacha”)
- An ex-Google software engineer (quoted advice: API architecture, version control/life cycle, tech stack)
- TryHackMe (referenced as a hands-on AI security/cybersecurity training platform; includes an example “AI security learning path”)
- cody.tech (Python learning platform with mini lessons/quizzes/projects + AI assistant)
- GitHub Copilot (recommended for AI autocomplete)
- Cursor and Windsurf (recommended for AI code generation)
- Claude Code (recommended for AI delegation)
- Harvard CS50 (referenced for Scratch learning option)
- GitHub repository “app ideas” (collection of project ideas)
- Gordon Ramsay (used as an analogy source in the “illusion of competence” example)