Learning Coding

Learning coding is not easy, but here are some steps we can follow to boost our efficiency.

Steps

  1. Learn to learn. - Feynman technique
    • Steps in general
      1. Choose a topic.
      2. Explain it to a 12 year old.
      3. Reflect, refine, and simplify.
      4. Organize and review.
    • Steps for coding
      1. Choose a product.
      2. Explain the tech to someone or in a blog post/video.
      3. Build a MVP fast.
      4. Refactor and share. - Learn and retain problem solving patterns over programming language syntax.
  2. Go and build something. - Code with the mindset of prioritizing correctness, and then readability, and then performance. - Code with AI.
    • Start new AI chat for each distinct task to keep context focused and minimal.
    • Let AI generate a basic implementation.
    • Question architectural decisions and refactor the generated code into smaller, focused modules.
    • Strengthen type definitions and interfaces.
    • Document architectural decision and module boundary.
      • Use AI-generated description as supplement but not replacement of handwritten ones.
      • Add comments to clarify the reason why this piece of code exists.
    • Add edge case and error handling. - Dependency management - Modular design - Feature flag - Code data separation
    • Database schema compatibility - Gradual depreciation (mark feature as deprecated in earlier versions before removal)

See also

←Previous Next→