16 booksProgramming Languages Title Author Difficulty Priority Beyond the Basic Stuff with Python Al Sweigart Intermediate high C Programming: Absolute Beginner's Guide Perry & Miller Beginner high C# in Depth Jon Skeet Advanced high C++ Best Practices Jason Turner Advanced medium Dive Into Design Patterns Alexander Shvets Intermediate high Haskell Programming from First Principles Allen & Moronuki Intermediate high Head First Design Patterns Freeman, Robson, Bates & Sierra Intermediate high Head First Java Sierra & Bates Beginner high Introduction to Computation and Programming Using Python John Guttag Beginner high Problem Solving with C++ Walter Savitch Beginner high Programming in C Stephen Kochan Beginner high Python Workout Reuven Lerner Intermediate medium Serious Python Julien Danjou Advanced medium The Go Programming Language Donovan & Kernighan Intermediate high Think Python Allen Downey Beginner high Understanding and Using C Pointers Richard Reese Intermediate high