Title: How To Design Programs: An Introduction To Programming and Computing.Authors: Matthias Felleisen, Robert Bruce Findler, Matthew Flatt and Shriram KrishnamurthiLicense: N/ABook Description:This introduction to programming focuses on the program design process. This approach fosters a variety of skills -critical reading, analytical thinking, creative synthesis, and attention to detail (that are important for everyone, not...
Title: How to Design Programs, Second EditionAuthor: Matthias Felleisen, Robert Bruce Findler, Matthew Flatt and Shriram KrishnamurthiLicense: CC 2.0Book Description:This book focuses on habits of good programming, addressing both professional and vocational programmers. With “good programming,” we mean an approach to the creation of software that relies on systematic thought, planning, and understanding from the very...
Title: How to Become a Programmer: Everything (Non-Technical) You Need to Know to Start Making Money Writing Code.Author: Rob WallingLicense: N/ABook Description:Everything contained in this book is based on 16 years of professional software development experience of the author. The book is a collection of advice on the what, why, and how...
Title: How to be a Programmer: Community VersionAuthor: Robert L. ReadLicense: CC 4.0Book Description:Author:-  In this essay , I attempt to summarize as concisely as possible those things that I wish someone had explained to me when I was twenty-one. This is very subjective and, therefore, this essay is doomed...
Title:  How to be a Programmer: A Short, Comprehensive, and Personal SummaryAuthor: Robert L ReadLicense: GNU 1.2Book Description:It is an essay on how to become a professional programmer. This book is recommended for wannabe and professional programmers. The writer has put emphasis on the ethics of working as a...
Title:  Fundamentals of Python ProgrammingAuthor: 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 solutions to teach you the syntax and usage of the Python programming language as a means...
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: 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...