Clean Code
by Robert C. Martin · Robert C. Martin
Martin's guide to writing readable, maintainable software, covering naming, functions, comments, error handling and refactoring, with extended Java case studies. Readers finish able to recognise code smells and restructure existing code into smaller, clearer units.
This link may earn us a small commission at no extra cost to you. Affiliate disclosure
More resources on Programming Fundamentals
nand2tetris.org
Nand2Tetris.org offers a hands-on computer-architecture course that guides you from basic NAND gates to a working Hack computer and software stack. It provides project descriptions, HDL files, simulators, and tools (assembler, VM translator, compiler) plus links to the accompanying textbook.
LeetCode
Online judge with thousands of algorithm and data-structure problems sorted by difficulty, topic and company, plus timed contests, discussion threads and study plans. Regular practice builds fluency with common interview problem patterns and writing correct, efficient code under time pressure.
Structure and Interpretation of Computer Programs (MIT 6.001)
The original course behind SICP: procedural and data abstraction, higher-order procedures, recursion, state and mutation, object-oriented design and building interpreters in Scheme. 20 lecture videos, notes, programming projects and exams with solutions teach learners to analyze and construct computational systems.
CS50 Harvard
The official course site for CS50x, Harvard's introduction to computer science, taught by David J. Malan. Eleven weeks of lectures, problem sets, and a final project covering C, memory, Python, SQL, and web development.
12 Beginner Python Projects - Coding Course
A freeCodeCamp video course that walks through building twelve small Python programs from scratch, one after another. It gives beginners practice applying loops, functions, and standard libraries in complete programs rather than isolated exercises.
Teach Yourself Computer Science
Oz Nova and Myles Byrne's opinionated syllabus for self-taught engineers, naming one best book and video course for each of nine core subjects. Gives a defensible study order and rough hour budgets per topic.