Here are some book recommendations covering everything from general programming knowledge to language-specific information. Happy reading!

General

Automate the Boring Stuff With Python by Al Sweigart

Structure and Interpretation of Computer Programs by Harold Abelson, Gerald Jay Sussman, and Julie Sussman

Clean Code: A Handbook of Agile Software Crafstmanship by Robert C. Martin

CODE: The Hidden Language of Computer Hardware and Software by Charles Petzold

Don’t Make Me Think, Revisited: A Common Sense Approach to Web Usability by Steve Krug

Programming Pearls (2nd Edition) by Jon Bentley

Structure and Interpretation of Computer Programs

The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas

The Self-Taught Programmer: The Definitive Guide to Programming Professionally by Cory Althoff

You Don’t Know JS (book series) by Kyle Simpson

Soft Skills: The software developer’s life manual - John Sonmez

Algorithms

Introduction to Algorithms, 3rd Edition (MIT Press) by Thomas H. Cormen and Charles E. Leiserson

Cracking the Coding Interview: 150 Programming Questions and Solutions by Gayle Laakmann McDowell

C-lang

The C Programming Language by Brian W. Kernighan and Dennis M. Ritchie

A Book on C: Programming in C

Coding Interview

Cracking the Coding Interview: 150 Programming Questions and Solutions

Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition

  • Wiley
  • ISBN: 978-0-470-12167-2

Java

Head First Java by Kathy Sierra and Bert Bates

Effective Java by Joshua Bloch

JavaScript

You Don’t Know JS (book series)

Eloquent JavaScript: A Modern Introduction to Programming by Marijn Haverbeke

JavaScript: The Good Parts

JavaScript and JQuery: Interactive Front-End Web Development

Python

Automate the Boring Stuff With Python

Core Python Applications Programming (3rd Edition) by Wesley J Chun

Soft Skills

Soft Skills: The software developer’s life manual

Other

*Hacking: Ultimate Hacking Guide: Hacking For Beginners And Tor Browser

*Code: The Hidden Language of Computer Hardware and Software (Developer Best Practices) *

Data Structures And Algorithms Made Easy

Think Python: How to Think Like a Computer Scientist

Python Crash Course: A Hands-On, Project-Based Introduction to Programming

Computer Science Distilled: Learn the art of solving computaitonal problems by Wladston Ferreira Filho

Algorithms Unlocked by Thomas H. Cormen

Violent Python: A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers

The Shellcoder’s Handbook: Discovering and Exploiting Security Holes

Head First C: A Brain-Friendly Guide

Practical Object-Oriented Design in Ruby

Thinking in C++ by Bruce Eckel

Operating System Concepts

Computer Networking: A Top-Down Approach (7th Edition) by Kurose and Ross

Competitive Programming 3: The New Lower Bound of Programming Contests

Dynamic Programming for Coding Interviews: A Bottom-Up approach to problem solving

GATE 2019 Computer Science and Information Technology

The Art of Computer Programming by Donald E. Knuth

Facts and Fallacies of Software Engineering

The Mythical Man-Month: Essays on Software Engineering

This list was compiled from multiple suggestion threads on Reddit and Stackoverflow.

Please feel free to add more that you have found useful!

Other programming book recommendations: