People disagree whether it is possible and worth it to learn the basics of programming or programming languages from books or not, and about which books are the best for these purposes. We believe that well-written programming books can be a good foundation and give learning support if we also practice.
The goal of this blog post is to help you orient yourself in the world of books about programming languages or other programming subtopics and guide you with information about what to look for when choosing a programming book, where to find them, and how to use them efficiently.
In the second half of the article, you can find book recommendations sorted by programming languages and technologies (e.g., programming, web development). In the list, you will find physical books, online textbooks, and a few university notes.
Step Zero – If you aren’t yet sure where to go
You might already know what you want to learn within the huge topic of programming—what languages, what technologies you would like to get to know. But you might also be a beginner, not knowing where to start. This is why we wrote another article titled Which Programming Language is Right for You? You should read this blog post before starting to learn.
In a nutshell, you should choose a language according to your goals, what you would like to use programming for, or what other languages you want to get to know.
How to choose appropriate programming books
It is important to know what your current goal is when learning. Do you want to prepare for exams? Do you want to know the basic concepts and logical operations of programming? Do you already have programming skills and want to learn a new language? Make your goal clear, and look for programming books according to it.
How do you know if a book you want to absorb is good? You cannot be sure about it before you start, but some things can help you decide. Look through the table of contents to see the book’s topics, and know if it contains the key information you need. As an absolute beginner, it can be difficult to judge what a book needs to be useful when learning.
Read a bit of the book! Look through some chapters, and see whether the text is well-structured and understandable. It is essential for you to be able to follow the text, and for the text to make sense of definitions, not be superficial, but not to be too stressful to read either.
See whether the book gives any examples as well as explanations. We can grasp complex concepts easier with examples than with just a description.
You need to practice to be successful in learning. It is great if a book has practice tasks with explanations and sample pieces of code.
Finally, you can read reviews and ask people about the books in forums and other programming groups.
Where and how can I get programming books?
The answer might be obvious that you can find books like this in bookstores and online, but let’s see what other options we have if we want to get them cheaper or in a more sustainable way.
We spare our environment and our wallets if we don’t buy books fresh from the press. Why would it be a problem if someone else read it before us? The virtual and actual shelves of second-hand bookstores have things other than old books; There are many newer books as well, so it can be useful to start your search in these second-hand bookstores.
Some other groups and websites are also worth checking out, as many people want to sell their textbooks when they are finished learning from them.
If you rent a book from the library, you should be aware that the rental time can be short, making us pressed for time. This can have its advantages, giving us external motivation to read faster. However, we might need the book later, or the learning process can be longer than the book’s rental time.
Bookstores and publishers
You can’t always buy straight from publishers, but some have their own online stores where you can get their books at a discounted price. On the list at the end of this article, you can find links to publishers’ online stores when they are available.
If you are buying programming books at a bookstore, you can look through them, which can be an important aspect if you are unsure about which book you want to choose. Bookstores have a limited storage capacity, so not all books they have are on the shelves. Find out if the books you are looking for can be bought at the store or not.
When you don’t even have to buy them
There are many university notes, PDFs from authors, and complete textbooks available on the internet for free. On the list at the end of this article, we’ll tell you if the recommended text is available online or not. We cannot always find the most recently published editions, but if you want to learn about the basics of programming, algorithms, or programming logic, they can be helpful.
Learn efficiently from programming books
What do you need to be able to learn programming from books? Besides finding the right book for your level, interests, and goals, practising what you read is also crucial. You can be efficient only if you code.
Have questions you need answers to. Reading programming books this way can keep you interested while searching for answers, so you’ll have a richer learning experience than reading from cover to cover. Without real programming and persistent practice, we forget processes even if we understand them while reading.
Open the programming environment recommended by the book, and complete the steps and tasks written in it.
In this part of the article, you can find great programming books you should learn from sorted by programming languages and technologies.
If you want to learn the basics of programming
Problem-solving, algorithmic thinking, the basic concepts of programming—these books teach you basic skills and prepare you for learning the more complex processes of programming.
- Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers: How to Think Like a Computer Scientist: Learning with Python 3
Introduction to the world of coding – programming books for kids
If you would like younger people to get into the exciting world of programming, here are some books that are perfect for them, that introduce them to the basics of programming playfully. You can read more about why kids should start learning programming in our article titled A New Necessary Skill? Programming for Kids.
- Carol Vorderman: Computer Coding for Kids – DK Publishing, 2014
We recommend our Programming course collection to learn the basics.
Learning programming for some research or a project
We recommend this book for those who want to learn programming as a supplement to their studies, jobs, or as a solution to problems in everyday life. The book teaches numerical methods that can be applied quickly using basic programming operations.
- Jaan Kiusalaas: Numerical Methods in Engineering with Python 3 – Cambridge University Press, 2014
Complex book to create web applications – many technologies in one
Front-end technologies – web development books
- Francesco Strazzullo: Frameworkless Front-End Development: Do You Control Your Dependencies Or Are They Controlling You? – Apress, 2019
- Simone Chiaretta – Front-end Development with ASP.NET Core, Angular, and Bootstrap – Wrox, 2018
Server-side programming, database management, PHP, and SQL from the basics.
- Laura Thomson Luke Welling: PHP and MySQL Web development – Developer’s Library, 2010.
- Alan Forbes: The Joy of PHP: A Beginner’s Guide to Programming Interactive Web Applications with PHP and MySQL – BeakCheck LLC, 2012
- Janet Valade: PHP & MySQL For Dummies – For Dummies, 2009
Android programming books
If we want to create applications, we need to learn the languages of Android app development (Java or Kotlin) and get to know a special development environment and toolkit.
- Barry Burd: Java Programming for Android Developers – For Dummies, 2016
- Bill Phillips: Android Programming: The Big Nerd Ranch Guide – Big Nerd Ranch Guides, 2017
- Dawn Griffiths, David Griffiths: Head First Android Development 2e: A Brain-Friendly Guide – O’Reilly, 2017
iPhone programming books
This book introduces you to the Apple iPhone SDK development toolkit and teaches app creation with the Objective-C programming language.
- Wei-Meng Lee: Beginning iPhone SDK Programming with Objective-C – Wrox, 2011
Graphic and game applications
These two programming books guide you through creating game applications at home using Unity, one of the most popular game developing softwares. They also show multiple graphic display systems and development environments.
- Fletcher Dunn: 3D Math Primer for Graphics and Game Development – A K Peters/CRC Press, 2011
- Patrick Felicia: Unity 5 from Zero to Proficiency (Foundations): A step-by-step guide to creating your first game – CreateSpace Independent Publishing Platform, 2016
We recommend this classic if you want to learn C++ as it may not be the most newly published book, the information in it is still valid, and it introduces us to the C++ language clearly and consistently.
- Bjarne Stroustrup: The C++ programming language – Pearson Education, 2013
If you’d like to supplement the information in the books, check out our Beginner’s guide to C++ programming article!
C# programming books
Not only can you learn C# programming from the books on this list, but also job-seeking techniques and tips so you can have an easier time on the labor market for developers.
- RB Whitaker: The C# Player’s Guide – Starbound Software, 2016
- Jamie Chan: Learn C# in One Day and Learn It Well – C# for Beginners with Hands-on Project – Learn Coding Fast, 2015
- Andrew Stellman, Jennifer Greene: Head First C#, A Learner’s Guide to Real-World Programming with C# and .Net Core – O’Reilly, 2021
Java programming books
If you want to learn the most popular, most diverse programming language, you should check out the books below:
- Barry Burd: Beginning programming with Java – Wiley, 2017
- Kathy Sierra: Head First Java – A Brain-Friendly Guide – O’Reilly, 2005
- Krishna Rungta: Learn Java in 1 Day: Complete Bible – Guru99, 2016
If you want to learn not just from books, we recommend trying our Beginner Programming Course.
MatLab programming book
MatLab stands for “matrix laboratory”, and it is a development environment as well as a programming language. It is used for complex mathematical operations, data analysis and data visualization. If you’d like to get to know it, check out this book:
- Jim Sizemore: MATLAB For Dummies – Wiley, 2014
- Brian R. Hunt, Roland L. Lipsman, Jonathan M. Rosenberg: A Guide to MatLab: For Beginners and Experienced Users – Cambridge University Press, 2014
- Stormy Attaway: MatLab: A Practical Introduction to Programming and Problem Solving – Butterworth-Heinemann, 2018
Python programming books
We recommend the Python books below beside the ones that prepare you for the final exam and the ones about numerical methods.
- Paul Barry: Head First Python – A Brain-Friendly Guide – O’Reilly, 2016
- Mark Lutz: Powerful Object-Oriented Programming – O’Reilly, 2011
- Al Sweigart: Automate the Boring Stuff with Python, 2nd Edition: Practical Programming for Total Beginners – No Starch Press, 2019
R programming book
The R programming language is used for statistical operations and their graphical display. It can be useful in any field of science, or research. We recommend these notes if you want to learn R:
- Andrie de Vries: R for Dummies – For Dummies, 2015
- Richard Cotton: Learning R: A Step-By-Step Function Guide to Data Analysis – O’Reilly, 2013
Where to look for programming books if you are interested in a special subtopic?
You should take a look at Krisztián Fehér’s amazon site where you can find many of his programming books dealing with many topics like programming printers, CUDA programming, 3D programming, etc.
We hope you’ve found useful pieces of information and tips in this article, and we hope you’ll have a successful and joyful learning experience!
In our Programming Tutorials series, you’ll find useful materials which will help you improve your programming skills and speed up the learning process.
- How to create perfect HTML tables?
- HTML color codes
- CSS background images
- Best Programming Books You Must Read in 2021
Would you like to learn how to code, online? Come and try our first 25 lessons for free at the CodeBerry Programming School.