Think Java
Think Java is a hands-on introduction to computer science and programming used by many universities and high schools around the world. Its conciseness, emphasis on vocabulary, and informal tone make it particularly appealing for readers with little or no experience. The book starts with the most basic programming concepts and gradually works its wa...
An Introduction to C & GUI Programming
Even if you are an absolute beginner, this book will teach you all you need to know to write simple programs in C and start creating GUIs. The first half of the book is an introduction to C, and covers the basics of writing simple command-line programs. The second half shows how to use the GTK user interface toolkit with C to create feature-rich...
Think Python
If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second edition and its supporting code have been updated for...
Think Raku (Think Perl 6)
The title of this book was originally Think Perl 6, but since Perl 6 has been renamed Raku, we have also changed the title of the book. Want to learn how to program and think like a computer scientist? This practical guide gets you started on your programming journey with the help of Raku (Perl 6), the younger sister of the popular Perl programm...
Eloquent JavaScript
JavaScript lies at the heart of almost every modern web application, from social apps like Twitter to browser-based game frameworks like Phaser and Babylon. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications. This much anticipated and thoroughly revis...
Think C++
Think C++ is an introduction to programming using the C++ programming language. I originally wrote it to help students prepare for the Computer Science AP exam (when the exam was in C++)....
Applied Combinatorics
Applied Combinatorics is an open-source book for a course covering the fundamental enumeration techniques (permutations, combinations, subsets, pigeon hole principle), recursion and mathematical induction, more advanced enumeration techniques (inclusion-exclusion, generating functions, recurrence relations, Polyá theory), discrete structures (grap...
Java Notes for Professionals
The Java Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
JavaScript Notes for Professionals
The JavaScript Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Kotlin Notes for Professionals
The Kotlin Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
How To Code in Python 3
Extremely versatile and popular among developers, Python is a good general-purpose language that can be used in a variety of applications. For those with an understanding of English, Python is a very humanreadable programming language, allowing for quick comprehension. Because Python supports multiple styles including scripting and object-oriented ...
PowerShell Notes for Professionals
The PowerShell Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Oracle Database Notes for Professionals
The Oracle Database Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Perl Notes for Professionals
The Perl Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Data Structures and Algorithms
Data Structures and Algorithms (DSA) features implementations of data structures and algorithms that are not implemented in any version of .NET. This book is the result of a series of emails sent back and forth between the two authors during the development of a library for the .NET framework of the same name. A key factor of this book and it...
Full Speed Python
This book aims to teach the Python programming language using a practical approach. Its method is quite simple: after a short introduction to each topic, the reader is invited to learn more by solving the proposed exercises. These exercises have been used extensively in my web development and distributed computing classes at the Superior School ...
Ruby Notes for Professionals
The Ruby Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Swift Notes for Professionals
The Swift Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
The Coder's Apprentice
The Coder's Apprentice is a course book, written by Pieter Spronck, that is aimed at teaching Python 3 to students and teenagers who are completely new to programming. Contrary to many of the other books that teach Python programming, this book assumes no previous knowledge of programming on the part of the students, and contains numerous exercises...
Rexx Programmer's Reference
Originally developed for mainframes but highly portable across platforms-from servers to desktops to handhelds-Rexx is an easy yet powerful scripting language that's widely used for rapid application development. Covers Rexx interpreters for specialized functions-object-oriented, mainframe, and handheld. There are 8 different free Rexx interp...
Hacking Secret Ciphers with Python
There are many books that teach beginners how to write secret messages using ciphers. There are a couple books that teach beginners how to hack ciphers. As far as I can tell, there are no books to teach beginners how to write programs to hack ciphers. This book fills that gap. This book is for complete beginners who do not know anything about en...
Invent Your Own Computer Games with Python
Invent Your Own Computer Games with Python teaches you how to program in the Python language. Each chapter gives you the complete source code for a new game, and then teaches the programming concepts from the examples. Games include Guess the Number, Hangman, Tic Tac Toe, and Reversi. This book also has an introduction to making games with 2D graph...
The Linux Command Line
The Linux Command Line takes you from your very first terminal keystrokes to writing full programs in Bash, the most popular Linux shell (or command line). Along the way you'll learn the timeless skills handed down by generations of experienced, mouse-shunning gurus: file navigation, environment configuration, command chaining, pattern matching wit...
Android Notes for Professionals
The Android Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
PHP Succinctly
Known for its straightforward simplicity, PHP is an open source, general-purpose scripting language oriented for web development. In PHP Succinctly, author José Roberto Olivas Mendoza guides newcomers through PHP's basics, which includes deployment, programming themes such as variables, decision making, arrays, functions, and databases, and the cr...
.NET Framework Notes for Professionals
The .NET Framework Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Algorithms Notes for Professionals
The Algorithms Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Bash Notes for Professionals
The Bash Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
C Programming Notes for Professionals
The C Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
C# Notes for Professionals
The C# Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
The Little Redis Book
The book is many years old, but still relevant. Redis has evolved a lot, but most of that has been in the form of internal improvements, new advanced features (like lua scripting) and awesome new data types. The best way to learn Redis is still to start by understanding the fundamentals presented in this book....
A Whirlwind Tour of Python
To tap into the power of Python's open data science stack - including NumPy, Pandas, Matplotlib, Scikit-Learn, and other tools - you first need to understand the syntax, semantics, and patterns of the Python language. This report provides a brief yet comprehensive introduction to Python for engineers, researchers, and data scientists who are alread...

1 2