11 programming books that can help you become a better programmer

mediumThis post was originally published by Josef Cruz at Medium [AI]

A reading guide for those serious about programming

Image for post
Credit: Dribble.com

I selected these particular books because I wanted to provide a list of books that wouldn’t just increase your technical skills and make you a better programmer but would also challenge you to grow as a person and share your knowledge next in your line.

There’s no single programming book that will make you a better programmer. The best books to learn to code can vary based on what language you’re pursuing, so the sections below didn’t just focus on one language but eleven. Without further ado, here are some of the books every programmer should read.

1. Go Programming Language

I especially appreciated how this book was organized: the first chapter starts with several illustrative examples before introducing the language itself. Then the next several chapters cover all of the basic & advanced features of the language. The final few chapters cover some of the other concerns of modern professional programmers beyond just the language itself: the built environment, packaging, testing, etc.

2. Learning Python, 5th Edition (1600 page)

First of all, I’ve read many of the other up-to-date, shorter Python books, and being new to Python. I ended up spending most of my time searching online, trying to fill in the gaps that the other authors failed to fill in. With this book, you don’t need to reference anything else because the author does a great job answering every question. You can tell he’s dedicated his life to teaching Python and knows what problems his readers will run into.

3. Programming in Scala

4. Programming in C (Developer’s Library)

5. Learn C++ Quickly

Then the author takes the reader through the process of defining the various elements with which they will be dealing as they learn to become a C++ programmer. This is a continuous process throughout the book as Code Quickly introduces new material.

6. Introduction to Programming in Java

I believe this book is superior to other introductory java books (and some other introductory programming books, for that matter) because of the sheer number of practice problems without answers (some are on the book’s website). I’ve discovered that being able to answer a question on your own or make a valiant effort on your own is much more educationally valuable than having the answer shown to you. Furthermore, this book does not advocate a particular IDE. It encourages the user to manually compile and run the programs, which I think is completely necessary for a java programmer to understand.

7. Swift in Depth

Theoretical aspects are balanced by an abundance of code examples, more than you’d normally find in a programming book. The author has put a lot of effort into demystifying abstract concepts on the spot into the mundane (but useful) examples you’re likely to encounter in your day to day work as a programmer.

8. Kotlin in Action

This book is an exceptionally well written deep dive into the Kotlin programming language. The concepts are presented in clear, concise language that flows well and is easy to understand without sacrificing any detail. For a 300 page book, I’m surprised at how in-depth it went with its topics. Perhaps that is a testament to how easy Kotlin is to use, or maybe it was because the book used the reader’s existing knowledge of Java as a starting point.

9. Learn C++ Quickly

Then the author takes the reader through the process of defining the various elements with which they will be dealing as they learn to become a C++ programmer. This is a continuous process throughout the book as Code Quickly introduces new material.

10. Programming in Lua, fourth edition

If you’re new to programming, this book will guide you through fundamental concepts, and the examples at the end of each chapter are easy to digest. Lua has an interactive shell making it fun to test the commands as you read.

11. The Ruby programming language

The book is sectioned and organized masterfully, making topics easy to find, and forward and backward references found throughout the book are helpful instead of a hindrance. The book may have to be read mostly for someone who has no previous experience in Ruby, but the topics are contained well enough so that someone looking to hone their skills in certain areas can find what they need very easily.

Don’t just limit yourself to these books. Learning to program can feel like boiling the ocean. But if you pick a book, learn its lessons, and then move onto the next, you’re narrowing the problem and putting one foot in front of the other.

Spread the word

This post was originally published by Josef Cruz at Medium [AI]

Related posts