Cover of The Self-Taught Programmer by Cory Althoff showing a programmer at a computer with code on screen
Read
432 pages
English
PDF
4.8

The Self-taught Programmer: The Definitive Guide to Programming Professionally

The Definitive Guide to Programming Professionally

Author: Cory Althoff

Year: 2015

Summary:

Intro

One of the best software design books of all timeBookAuthority

Cory Althoff is a self-taught programmer who, after one year of independent study, landed a software engineering II role at eBay. However, once on the job, he realized how much he hadn’t learned — a gap between what he knew and what was required in the real world. This personal journey forms the foundation of The Self-Taught Programmer.

This book is not just about learning to code. If you want to become a professional programmer, you need more than syntax and programming languages. The Self-Taught Programmer provides a comprehensive roadmap to take you from writing your first Python program to passing your first technical interview. It’s structured into five key sections designed to build real, practical skills.

1. Learn to Program in Python 3

Begin with the fundamentals of Python 3 and build your first working program. This section introduces syntax, variables, loops, and functions in a friendly, hands-on way, helping you get comfortable with code from day one.

2. Master Object-Oriented Programming

Move beyond basic programming to learn object-oriented concepts like classes, objects, inheritance, and encapsulation. You’ll create a powerful, reusable Python program that keeps you engaged and confident in your skills.

3. Learn Essential Tools and Build a Web Scraper

Get familiar with essential developer tools including Git, Bash, and regular expressions. Then, apply your knowledge to build a real-world web scraper — a valuable project that demonstrates practical software development skills.

4. Study Computer Science Fundamentals

Delve into core computer science concepts such as data structures (arrays, lists, trees) and algorithms (searching, sorting). These foundational topics are critical for solving complex problems efficiently in real software environments.

5. Professional Coding Practices and Job Success

Learn industry-standard coding practices, how to collaborate in teams, how to write clean and maintainable code, and how to prepare for and succeed in technical interviews. This section bridges the gap between academic learning and professional reality.

You can absolutely learn to program professionally. The path is clear. Will you take it?

From the Author

I spent one year writing The Self-Taught Programmer. It was an exciting and rewarding experience. I treated my book like a software project. After I finished writing it, I created a program to extract all code examples and execute them in Python to ensure all 300+ examples worked properly. Then, I developed software to add line numbers and color formatting to each code block. Finally, I had 200 new programmers 'beta read' the book to identify poorly explained concepts and catch any errors my tools missed.

I hope you learn as much reading this book as I did writing it. Best of luck with your programming journey.

News