1. Head First Java: By Kathy Sierra, Bert Bates: This one is the best beginners’friendly and classic book to learn Java from scratch and it covers all the concepts with proper diagrams and visuals. This book doesn’t require any pre-requisite knowledge. The best part of this book is its simplicity and you will find a lot of real-life examples to clear all the concepts. All the chapters in this book end with quizzes, exercises, and puzzles for a good grasp on Java language.
This book covers all the concepts of OOP which are really important in Java. In the beginning, it covers class, object, thread, collection, language features like Generics, Enum, variable arguments or auto-boxing, etc. In the advanced section, it covers Swing, networking and Java IO, etc and that is the best learning curve for all the beginners. This book is a bit outdated but still, this one is the best book if you are new in programming and java both.
2. Programming: Principles and Practice Using C++: By Bjarne Stroustrup: This book has more than 1200 pages and maybe scary for complete beginners due to its size but after reading this book you will be more confident in programming. It is written by the original implementor of C++ and good for absolute beginners. It covers both generic programming and object-oriented programming.
At the beginning of this book, you will learn how to structure your code. You will find a brief discussion on programming, computer science and then you will be moving to the core concepts of C++ like an object, types, statements, functions, errors, vector, classes, I/O, etc. This book also includes dozens of exercises to make your concepts more clear.
3. Learn Python The Hard Way: By Zed A. Shaw: This book has really helped a lot of people learning python with a practical approach. The author has included exercises in a way that you need to type code on your own and then you need to fix the mistake in your code. Solving these exercises will help you to write a good program also it will help you in learning some tricks for debugging as well. In the beginning, you will learn about the installation of the Python environment, then it covers basic mathematics, variables, program design, data structure, strings, files, loops, and other fundamental concepts. If you really want to learn python from scratch with hands-on experience then go for this book.
4. The Joy of PHP Programming: By Alan Forbes: If you are an absolute beginner in programming and want to become a professional web developer but have no idea where to start then this book is best for you to learn everything from scratch. The book covers HTML basics first so that a newbie can easily start with it and then step by step it covers all the concepts of PHP and helps you to read, write, modify and make your own dynamic website. The book includes the installation of PHP, PHP syntax, control structures, and MySQL as well. Initially, you will be learning to create and run basic PHP script then you will be moving to modify web pages also you will be solving some series of challenging and fun exercises throughout this book.
5. Beginning Node.js: By Basarat Ali Syed: The book covers all the core concepts of NodeJS and will walk you through all the principles. You will be learning to set up the complete environment, SPA(Single page application) concept, packages, streams, handling callbacks along with testing and debugging your application. You will also learn about the Express framework, data maintenance and how to deploy your web application on the internet. Everything in this book is covered through examples and diagrams for better understanding and from beginners’ perspective learning curve.