The Self-Taught Pathway

Stage 0: A Stage Unstructured
Every resource in this stage is independent and can be completed at any time.
Study Skills
- A Mind for Numbers: How to Excel at Math and Science Book
- How to Improve your Critical Thinking & Reflective Skills Book
- How to Write Essays & Assignments Book
Personal Development
- Atomic Habits Book
- As a Man Thinketh Book
- The 7 Habits Of Highly Effective People Book
- Maximum Achievement: Strategies and Skills That Will Unlock Your Hidden Powers to Succeed Book
- The Pathless Path: Imagining a New Story For Work and Life Book
- Thinking, Fast and Slow Book
- How to Win Friends and Influence People Book
Motivation
- The Obstacle is the Way: The Ancient Art of Turning Adversity to Advantage Book
- The 10X Rule: The Only Difference Between Success and Failure Book
- The War of Art Book
- How to Fail at Almost Everything and Still Win Big Book
- Bounce: The of Myth of Talent and the Power of Practice Book
- The Chimp Paradox Book
Agile
- Scrum: The Art of Doing Twice the Work in Half the Time Book
- Accelerate: The Science of Lean Software and DevOps Book
Leadership
- High Output Management Book
- Turn The Ship Around!: A True Story of Turning Followers Into Leaders Book
- Start With Why Book
- Leaders Eat Last: Why Some Teams Pull Together and Others Don't Book
Finance
- Money: Know More, Make More, Give More Book
- Money: A User’s Guide Book
- The Psychology of Money: Timeless lessons on wealth, greed, and happiness Book
Business
- GCSE Business Book
- The E-Myth Contractor Book
- The E-Myth Revisited Book
- Million Dollar Consulting Book
- Sell or Be Sold: How to Get Your Way in Business and in Life Book
- Rich Dad Poor Dad Book
- Never Split The Difference Book
- The Personal MBA Book
- Zero to One Book
Misc
- Lectures (MIT) The Missing Semester YouTube
- Soft Skills: The Software Developer's Life Manual Book
- Touch Typing (keybr)
- Give Vim a chance
- Joel on Software Book
- The Mythical Man-Month: Essays on Software Engineering Book
- How to Improve your Maths Skills Book
Stage 1: Primarily Applied Skills
Introduction to Computing
- CS50's Introduction to Computer Science Online
- Think Like a Programmer: An Introduction to Creative Problem Solving Book
- Code: The Hidden Language of Computer Hardware and Software Book
Programming
- Automate the Boring Stuff with Python Book
- Practices of the Python Pro Book
- Publishing Python Packages Book
- Fluent Python Book
DevOps
- Docker Deep Dive Book
- The Phoenix Project Book
- Understanding Distributed Systems Book
Software Design
- A Philosophy of Software Design Book
- The Pragmatic Programmer: Your Journey to Mastery Book
- The Software Craftsman: Professionalism, Pragmatism, Pride Book
- Modern Software Engineering: Doing What Works to Build Better Software Faster Book
- Designing Data-Intensive Applications Book
Optional (Classics)
- Clean Code: A Handbook of Agile Software Craftsmanship Book
- Code Complete: A Practical Handbook of Software Construction Book
Software Testing
- Python Testing with pytest: Simple, Rapid, Effective, and Scalable Book
- Unit Testing Principles, Practices, and Patterns Book
Stage 2
Algorithms & Data Structures
- A Common-Sense Guide to Data Structures and Algorithms in Python, Volume 1 Book
- A Common-Sense Guide to Data Structures and Algorithms in Python, Volume 2 Book
- Problem Solving with Algorithms and Data Structures Using Python 2nd Edition Book
- Grokking Algorithms: An Illustrated Guide for Programmers and Other Curious People Book
- Cracking the Coding Interview Book
- LeetCode: Top Interview 150 Online
Security
- CS50's Introduction to Cybersecurity Online
- Web Application Security: Exploitation and Countermeasures for Modern Web Applications Book
Further Software Skills
- Head First Design Patterns Book
- Refactoring: Improving the Design of Existing Code Book
- Working Effectively with Legacy Code Book
Distributed Systems
- Lectures (MIT 6.824): Distributed Systems YouTube
Databases
- Lectures (CMU) Intro to Database Systems YouTube