This is my 2025 collection of educational resources that I’ve found invaluable throughout my career in software engineering. Some of these I used when I was just starting, others I still return to today. The list will change over time as new tools and books come along, but these are the ones I’d recommend right now.

Getting Started with Programming Link to heading

If you’re new to programming, here’s a structured path to get you started efficiently:

  1. Choose a Language: I strongly recommend starting with Go, but JavaScript via Free Code Camp is another solid starting point.
  2. Learn Fundamentals:
  3. Practice Regularly:
    • Complete coding challenges regularly (Coding Challenges GitHub Repo).
    • Always rewrite your solution at least once from scratch to solidify your understanding.
  4. Strengthen Problem-Solving:
  5. Sharpen Math Skills (Optional):

Most of the resources listed here are free, ideal for getting started and mastering fundamentals without financial investment. Paid resources suggested are for deeper study and mastery.

Free Online Resources Link to heading

Go Programming Link to heading

General Programming Courses Link to heading

  • Free Code Camp - High-quality interactive courses for web development and JavaScript programming.
  • MDN Web Docs - Detailed and authoritative documentation.

These are essential books that can significantly deepen your understanding of software development and architecture:


Coding Challenges Link to heading

Practice coding by completing challenges regularly. Pick challenges that interest you, and try solving them multiple ways to build your skills:


Articles Worth Reading Link to heading

These are shorter reads that have strongly influenced how I think about software development: