This article showcases our top picks for the Best Books To Read Computer Science. We reached out to industry leaders and experts who contributed to this article’s suggestions (they have been credited for their contributions below).
We are keen to hear your feedback on all of our content, and our comment section is a moderated space to express your thoughts and feelings related (or not) to this article. This list is in no particular order.
Algorithms to Live By by Tom Griffiths
Marcin Młodzki recommended this product from PhotoAiD
This interdisciplinary work explores how algorithms used by computers can apply to our daily lives. From matchmaking to finding a parking space, from organizing the inbox to understanding the workings of memory, this book transforms the wisdom of computing into strategies for people. A pleasant read for any time, it engages you from the very first page. It aims to integrate technology into our daily lives and stop treating it as alien and strange. Advantages? In audio format, it is available for free on Amazon with an Audible subscription.
Forces by Andi Diehn
Andy recommended this product from Cloom
Picture Book Science presents real-world examples of physical science and engineering topics kids find fascinating! These nonfiction picture books consist of engaging narratives paired with brightly colored, whimsical illustrations drawn by an accomplished scientist. With these books, readers ages 5 to 8 are encouraged to expand their definitions of the words “force,” “matter,” “energy,” and “wave.” Elementary-aged children are equipped to recognize basic science concepts and identify the different ways they are demonstrated in real life while being impressed with the idea that science is a constant part of our lives and not limited to classrooms and laboratories.
The Self-Taught Programmer by Cory Althoff
Andy recommended this product from Cloom
This book is not just about learning to program, although you will learn to code. If you want to program professionally, it is not enough to learn to code; that is why, in addition to helping you learn to program, I also cover the rest of the things you need to know to program professionally that classes and books don’t teach you. The Self-taught Programmer is a roadmap, a guide to take you from writing your first Python program to passing your first technical interview.
Intro to Python for Computer Science and Data Science by Paul Deitel
Andy recommended this product from Cloom
A groundbreaking, flexible approach to computer science and data science The Deitels’ Introduction to Python for Computer Science and Data Science: Learning to Program with AI, Big Data and the Cloud offers a unique approach to teaching introductory Python programming, appropriate for both computer-science and data-science audiences. Providing the most current coverage of topics and applications, the book is paired with extensive traditional supplements and Jupyter Notebooks supplements. Real-world datasets and artificial intelligence technologies allow students to work on projects making a difference in business, industry, government and academia. Hundreds of examples, exercises, projects (EEPs), and implementation case studies give students an engaging, challenging and entertaining introduction to Python programming and hands-on data science. The book’s modular architecture enables instructors to conveniently adapt the text to a wide range of computer science and data science courses offered to audiences drawn from many majors. Computer-science instructors can integrate as much or as little data-science and artificial-intelligence topics as they’d like, and data-science instructors can integrate as much or as little Python as they’d like. The book aligns with the latest ACM/IEEE CS-and-related computing curriculum initiatives and the Data Science Undergraduate Curriculum Proposal sponsored by the National Science Foundation.
The Art of Computer Programming by Donald Knuth
Sudhir Khatwani recommended this product from The Money Mongers
This book is ideal for computer science beginners looking to build a basic but firm understanding of algorithms in programming. Algorithms are the building blocks of programming languages, and learning them makes it easier to grasp more complex programming concepts, as well as creates a foundation for excellent programming skills.