Free Programming Books


SOLID Principles Succinctly

SOLID Principles Succinctly

There is always room for improving one’s coding ability, and SOLID design principles offer one way to see marked improvements in final output. With SOLID Principles Succinctly, author Gaurav Kumar Arora will instruct you in how to use SOLID principles to take your programming skills to the next level.


TouchDevelop Programming on the Go 3rd Edition

TouchDevelop Programming on the Go 3rd Edition

With all the people in the world who have only access to a smartphone but not a PC or a keyboard, creating a programming environment for developing in that environment became a reality with TouchDevelop from Microsoft Research. This ApressOpen book TouchDevelop Programming on the Go 3rd Edition is meant to be a handy reference to this unique programming environment.


GitHub Succinctly

GitHub Succinctly

GitHub offers unparalleled access for developers to work on projects together, bridging geographical divides to bring teams together. Whether you are an individual developer looking to explore new projects, post your own, or provide your company with a safe place to work, Joseph D. Booth’s GitHub Succinctly will help you get started.


Efficient R programming

Efficient R programming

Become a more productive programmer with Efficient R Programming. Drawing on years of experience teaching R courses, authors Colin Gillespie and Robin Lovelace give practical advice on a range of topics—from optimizing set-up of RStudio to leveraging C++—that make this book a valuable asset for both experienced and novice programmers.


Algorithms and Data Structures: The Basic Toolbox

Algorithms and Data Structures: The Basic Toolbox

Algorithms and Data Structures: The Basic Toolbox is a concise introduction addressed to students and professionals familiar with programming and basic mathematical language. The algorithms are presented in a modern way, with explicitly formulated invariants, and comment on recent trends such as algorithm engineering, memory hierarchies, algorithm libraries and certifying algorithms. The authors use pictures, words and high-level pseudocode to explain the algorithms, and then they present more detail on efficient implementations using real programming languages like C++ and Java.


Undisturbed REST

Undisturbed REST

Building an API is easy, but designing an API that meets business objectives, pleases your users, and is long-lived – now that’s hard. Undisturbed REST tackles these challenges head on, focusing on what you need to know in order to design the perfect API. Along with best practices and modern design techniques, you’ll be guided through an understanding of the REST architectural style, hypermedia, and how to build an API that is both extendable and flexible.


Accounting Succinctly

Accounting Succinctly

Accounting Succinctly by Joe Booth is a developer’s guide to basic accounting. Written with business app development in mind, Booth discusses some of the most common accounting processes, including assets, multiple accounts, journaling, posting, inventory, and payroll. An appendix includes SQL code examples to get you started with several basic accounting transactions.


CUDA Succinctly

CUDA Succinctly

GPUs can be used for much more than graphics processing. As opposed to a CPU, which can only run four or five threads at once, a GPU is made up of hundreds or even thousands of individual, low-powered cores, allowing it to perform thousands of concurrent operations. Because of this, GPUs can tackle large, complex problems on a much shorter time scale than CPUs. Dive into parallel programming on NVIDIA hardware with CUDA Succinctly by Chris Rose, and learn the basics of unlocking your graphics card.


Regular Expressions Succinctly

Regular Expressions Succinctly

In Regular Expressions Succinctly, author Joe Booth teaches Visual Studio developers how regular expressions can help solve basic programming problems. By introducing patterns and rules to your C# strings, you can eliminate the need to write your own complex code for text manipulation.


Imperative to Functional Programming Succinctly

Imperative to Functional Programming Succinctly

With Imperative to Functional Programming Succinctly by Marc Clifton, you will learn many of the basic concepts involved with functional programming, such as currying, partial application, function pipelines, recursion, and continuations. By book’s end, you will learn how to combine functional and imperative programming to get the most out of your solutions.