Title: Fundamentals of C++ ProgrammingAuthors: Richard HaltermanLicense: N/ABook Description:This main objectives of this course are:to teach you how to develop the ability to correctly analyze a variety of problems and generate appropriate algorithmic solutionsto teach you the syntax of the C++ programming language as a means of accomplishing the first objectiveto...
Title: Full Stack PythonAuthor: Matt MakaiLicense: N/ABook Description:The main emphasis of this course is teach you how to create, deploy and run a production Python web application.This text can also be helpful to the readers who wan to learn conditional statements, for loops and classes while playing around with the open...
Title: Foundations of Computer ScienceAuthor: Lawrence C. PaulsonLicense: N/ABook Description:The principal aim of this course is to present the basic principles of programming.It introduces to  the principles of data structures and algorithms. The course will emphasize the algorithmic side of programming, focusing on problem-solving rather than on hardware-level bits and bytes. It...
Title: Composing ProgramsAuthors: John DeNeroLicense: CC 3.0Book Description:This book primarily focuses on methods for abstraction, programming paradigms, and techniques for managing the complexity of large programs, using the Python 3 programming language. This book is suitable for beginners and do not require any prerequisites to take this course. View/Download PDF
Title: C# Programming Yellow Book, The "Bananas" EditionAuthor: Rob MilesLicense: N/ABook Description:In this book, you'll get a smattering of the C# programming language. If you have programmed before, still you can read the text. It is worth it just for the jokes and you may actually learn something.If you have...
Title: Automate the Boring Stuff with Python: Practical Programming for Total BeginnersAuthor: Al SweigartLicense: CC 3.0Book Description:In "Automate the Boring Stuff with Python", you will learn how to use Python to write programs that could do your work in minutes what would take you hours to do by hand. And the best...
Title: Think Java: How to Think Like a Computer Scientist (Version 5) Author: Allen B. Downey License: CC 3.0Book Description:Think Java is an introduction to Java programming for beginners. This book is for anyone who wants to learn Java.The book discusses all the topics in brief but at the same time it is also...
Title: Think Java: How to Think Like a Computer Scientist (Version 6) Author: Allen B. Downey and Chris Mayfield License: CC 3.0Book Description:This book is for beginners who want to learn Java. It has no prerequisites. "Think Java" is an introduction to computer science and programming intended for people with little or no experience.The book starts...
Title: Structure and Interpretation of Computer Programs Author: Harold Abelson License : N/A (The MIT Press)Book Description:The readers should have a good feel for the elements of style and the aesthetics of programming. They should also have command of the major techniques for controlling complexity in a large system.This book uses Scheme - a...
Title: Philosophy of Computer Science: An Introductory Course Author: William J. Rapaport License: N/ABook Description:In this book, we will look at some of the central issues in the philosophy of computer science. The book has been designed to “bring you up to speed” on a conversation about these issues— to give you some of...
Title:  Introduction to Computing - Explorations in Language, Logic, and Machines. Author: David Evans License: CC 3.0Book Description:This course is about how computer science changes the ways we think, solve problems and understand the world. At its core, computer science is the study of imperative knowledge.Whereas mathematics is all about declarative knowledge ("what...
Title:  Introduction to Computer Science using Java Author: Bradley Kjell License: CC 3.0Book Description:This book is a compilation of lecture notes by Bradley Kjell, which covers most of the beginning course in computer science using Java. Without having any programming background reader can learn quite a lot about Java by going through this...
Title: How To Think Like A Computer Scientist: C++ Version.Author: Allen B. DowneyLicense: CC 3.0Book Description:The C++ version's goal is to teach you to think like a computer scientist. The single most important skill for a computer scientist is problem-solving. That is, the ability to formulate problems, think creatively about solutions, and...
Title: How to Think Like a Computer Scientist : Learning with Python.Author: Allen B. Downey, Jeffrey Elkner and Chris Meyers.License: GNU Free Documentation LicenseBook Description:This book is based on Allen Downey's How to Think Like a Computer Scientist, a clear and helpful first-year computer science textbook. The book's goal is to teach you to think...
Title: Foundations of Data ScienceAuthor: John E. Hopcroft and Ravindran KannanLicense: N/ABook Description:Early drafts of the book have been used for both undergraduate and graduate courses.Background material needed for an undergraduate course has been put in the appendix.For this reason, the appendix has homework problems.This book starts with the treatment of high...