Programming

Algorithmic Thinking, 2nd Edition Cover

Algorithmic Thinking, 2nd Edition

Daniel Zingaro

Get in the game and learn essential computer algorithms by solving competitive programming problems—no math required.

The Art of Debugging

Art of Debugging

Norman Matloff and Peter Jay Salzman

Whether you dread the thought of debugging your programs or simply want to improve your current debugging efforts, you'll find a valuable ally in The Art of Debugging.

The Art of R Programming

Art of R Programming

Norman Matloff

R is the world's most popular programming language for statistical computing. Whether you're doing academic research, designing aircraft, or forecasting the weather, The Art of R Programming is your guide to harnessing the power of R.

Bare Metal C cover

Bare Metal C

Stephen Oualline

Teaches you how to program embedded devices with the C programming language.

Black Hat Go

Black Hat Go

Tom Steele, Chris Patten, and Dan Kottmann

Black Hat Go will help you test your systems, build and automate tools to fit your needs, and improve your offensive security skillset.

The Book of R

Book of R

Tilman M. Davies

The Book of R is an interactive introduction to the essentials of R programming and statistics.

The Book of Ruby

Book of Ruby

Huw Collingbourne

Cut through those programming conventions and blaze your own trail with The Book of Ruby. From methods to metaprogramming, gain the skills you need to master the world's most fun programming language with this hands-on introduction.

C++ Crash Course, 2nd edition cover

C++ Crash Course, 2nd Edition

Joshua Lospinoso

Revised to reflect the latest in C++ code and practices, its fast pace is designed to get intermediate programmers fluent in the language—with help from 500 code samples and nearly 100 exercises.

Code Craft

Code Craft

Pete Goodliffe

Code Craft will help take your programming beyond writing correct code to writing great code.

Data Structures the Fun Way Cover

Data Structures the Fun Way

Jeremy Kubica

Learn how and when to use the right data structures in any situation, strengthening your computational thinking, problem-solving, and programming skills in the process.

 

Dead Simple Python

Jason C. McDonald

A thorough intro to every feature of the language, for programmers who are impatient to write production code.

Deep Learning Crash Course placeholder cover

Deep Learning Crash Course

Giovanni Volpe, Benjamin Midtvedt, Jesús Pineda, Henrik Klein Moberg, Harshith Bachimanchi, Joana B. Pereira, and Carlo Manzo

This comprehensive, hands-on guide to deep learning with Python covers fundamental concepts and advanced techniques to apply deep neural network models in real-world scenarios.

Dive Into Data Science cover

Dive Into Data Science

Bradford Tuckfield

Teaches you how to collect and work with data in business settings, and how to analyze data sets using Python code.

Dive Into Systems Cover

Dive Into Systems

Suzanne J. Matthews, Tia Newhall, and Kevin C. Webb

A vivid, layer-by-layer intro to computer architecture and software components.

Effective C, 2nd Edition cover

Effective C, 2nd Edition

Robert C. Seacord

Is an introduction to essential C language programming that will soon have you writing programs, solving problems, and building working systems.

Effective Shell placeholder cover

Effective Shell

Dave Kerr

Teaches you how to navigate the command line so you can work faster and smarter and have more fun while you’re at it.

Eloquent JavaScript, 4th Edition placeholder cover

Eloquent JavaScript, 4th Edition

Marijn Haverbeke

Start building beautiful web applications in JavaScript with the bestselling introduction to the language, updated with new features, fresh exercises, and fun projects.

Game Boy Coding Adventure placeholder cover

Game Boy Coding Adventure

Maximilien Dagois

The Game Boy is an iconic handheld console and a remarkable piece of gaming history. Programming the Game Boy is rewarding but can be challenging especially to newcomers.

Graph Algorithms the Fun Way placeholder cover

Graph Algorithms the Fun Way

Jeremy Kubica

Enter the wonderful world of graph algorithms, where you’ll learn when and how to apply these highly useful data structures to solve a wide range of fascinating (and fantastical) computational problems.

Gray Hat Python

Gray Hat Python

Justin Seitz

The first Python book written for security analysts, Gray Hat Python explains the intricacies of using Python to assist in security analysis tasks. You'll learn how to design your own debuggers, create powerful fuzzers, utilize open source libraries to automate tedious tasks, interface with security tools, and more.

Hello Web Design Cover

Hello Web Design

Tracy Osborn

Don't wish for your own website, make it yourself with Hello Web Design! Written for beginners, brimming with professional insights, and sure to inspire.

Introduction to System Programming in Linux placeholder cover

Introduction to System Programming in Linux

Stewart N. Weiss

This comprehensive introduction to Unix system programming—with an emphasis on Linux—teaches beginners how the Unix OS is designed and structured "under the hood."

JavaScript Crash Course Cover

JavaScript Crash Course

Nick Morgan

A thorough introduction that will have you writing your own JS software and web applications in no time.

Kotlin from Scratch placeholder cover

Kotlin from Scratch

Faisal Islam

Learn to code in Kotlin by starting from scratch and gradually building skills to tackle a wide range of fun and challenging problems.

Land of Lisp

Land of Lisp

Conrad Barski, M.D.

Master the elegance of functional programming with Land of Lisp, an illustrated guide to the world's most powerful language. Learn by doing as you write games like Dice of Doom, The Wizard's Adventure, and the updated classic, Grand Theft Wumpus!

Math for Programming placeholder cover

Math for Programming

Ronald T. Kneusel

A one-stop-shop for all the math you should have learned for your programming career.

Math Hacks for Scratch cover

Math Hacks for Scratch

Michael Mays

Push Scratch programming to the limits as you explore mathematical curiosities through hands-on coding projects.

Mission Python

Mission Python

Sean McManus

Mission Python will teach you how to program an adventure game in this hands-on, beginner-friendly introduction to coding in Python.

The Modern Web

Modern Web

Peter Gasston

The Modern Web deftly guides you through the technologies web developers will need now and in the years to come.

MySQL Crash Course Cover

MySQL Crash Course

Rick Silva

Takes you from the basics of creating a table to the complexities of managing an entire database, with real-world examples and hands-on projects.

Object-Oriented Python Cover

Object-Oriented Python

Irv Kalb

A hands-on tutorial that goes deep into OOP, showing you how to combine data and code into reusable units.

PHP Crash Course Cover

PHP Crash Course

Matt Smith

Go from beginner to pro in PHP programming, through hundreds of in-depth examples and hands-on exercises.

Practical Julia Cover

Practical Julia

Lee Phillips

Use Julia as a research tool and solve real-world problems in this practical, hands-on intro to the language.

 

Practical SQL, 2nd Edition Cover

Practical SQL, 2nd Edition

Anthony DeBarros

A fast-paced guide to SQL – the language for defining, organizing, and exploring relational data.

Python Crash Course 3rd Edition Cover

Python Crash Course, 3rd Edition

Eric Matthes

This fast-paced intro to programming with Python will have you writing code, solving problems, and making cool projects in no time.

Python Flash Cards

Python Flash Cards

Eric Matthes

Python Flash Cards help new Python coders drill and reinforce the concepts, syntax, and terminology they'll need to become successful professional programmers.

Python for Data Science cover

Python for Data Science

Yuli Vasiliev

Introduces you to the Pythonic world of data analysis with a learn-by-doing approach rooted in hands-on activities.

Python for Kids, 2nd Edition Cover

Python for Kids, 2nd Edition

Jason R. Briggs

The second edition of the best-selling Python for Kids—which brings you (and your parents) into the world of programming—has been completely updated to use the latest version of Python, along with tons of new projects!

Python Playground, 2nd Edition Cover

Python Playground, 2nd Edition

Mahesh Venkitachalam

Put the fun back in programming with 3D simulations, speech-recognition systems, IoT devices, and more.

R for the Rest of Us Cover

R for the Rest of Us

David Keyes

Learn how to use R for everything from workload automation and creating online reports, to interpreting data, map making, and more.

Realm of Racket

Realm of Racket

Matthias Felleisen, David Van Horn, Conrad Barski, M.D., and Eight Students of Northeastern University

In Realm Of Racket, you'll learn to wield Racket's mighty yet mind-bending power by reading comics and programming games.

Ruby by Example

Ruby by Example

Kevin C. Baird

Ruby by Example shows you how to take advantage of Ruby as you explore Ruby's fundamental concepts in action.

Rust for Rustaceans Cover

Rust for Rustaceans

Jon Gjengset

Bridges the gap between beginners and professionals, enabling you to write apps, build libraries, and organize projects in Rust.

ScratchJr Coding Cards

ScratchJr Coding Cards

Marina Umaschi Bers and Amanda Sullivan

ScratchJr Coding Cards are a deck of 75 activity cards covering fun and exciting projects designed to educate young children with the visual programming language, ScratchJr.

Serious Python

Serious Python

Julien Danjou

Serious Python is a collection of practical, real-world advice for tackling common Python developer-level problems.

Strange Code Cover

Strange Code

Ronald T. Kneusel

Strengthen your coding skills by exploring the weird, wonderful world of atypical and esoteric languages.

TCP/IP Guide

TCP/IP Guide

Charles M. Kozierok

The TCP/IP Guide is a must-have addition to the libraries of internetworking students, educators, networking professionals, and those working toward certification.

The Art of ARM Assembly placeholder cover

The Art of ARM Assembly, Volume 1

Randall Hyde

Add valuable skills to your programming toolkit by learning to write complete applications in ARM, a popular low-level assembly language.

The Art of Clean Code

The Art of Clean Code

Christian Mayer

Uses 8 core principles, with a focus on simplicity and functionality, to teach you how to write clear, concise code.

The Art of Machine Learning Cover

The Art of Machine Learning

Norman Matloff

Learn to expertly apply a range of machine learning methods to real data with this practical guide.

The Art of Randomness Cover

The Art of Randomness

Ronald T. Kneusel

Use randomness to solve problems in fun, hands-on experiments—from simulating evolution to encrypting messages.

Batch Scripting cover

The Book of Batch Scripting

Jack McLarney

This fast-paced, hands-on, quirky introduction to Windows’ Batch scripting language is ideal for all skill levels.

The Book of Dash Cover

The Book of Dash

Adam Schroeder, Christian Mayer, and Ann Marie Ward

A practical, fast-paced introduction to building interactive data-visualization dashboard apps in Python.

The Book of Kubernetes Cover

The Book of Kubernetes

Alan Hohn

This hands-on guidebook explains the inner workings of containers, and shows how Kubernetes helps computing, networking, and storage.

The C# Type System cover

The C# Type System

Steve Love

A comprehensive guide to effectively using modern C# to write better programs.

The Complete Developer Cover

The Complete Developer

Martin Krause

A hands-on, beginner-friendly approach to developing complete web applications from the ground up.

The CS Detective

The CS Detective

Jeremy Kubica

The CS Detective is a fantasy whodunit for the digital age that introduces the concepts behind search algorithms and important data structures.

The Nature of Code cover image

The Nature of Code

Daniel Shiffman

This creative coding tutorial is designed to grow your skills in a fun, hands-on way as you build simulations of natural phenomena.

The Rust Programming Language, 2E Cover

The Rust Programming Language, 2nd Edition

Steve Klabnik and Carol Nichols

The quintessential guide to programming in Rust. Thoroughly updated to Rust’s latest version, this edition is considered the language’s official documentation.

The Shape of Data Cover

The Shape of Data

Colleen M. Farrelly and Yaé Ulrich Gaba

This advanced machine learning book teaches algorithms through geometry, and data analysis through practical scientific applications.

Think Like a Programmer

Think Like a Programmer

V. Anton Spraul

In this one-of-a-kind text, author V. Anton Spraul breaks down the ways that programmers solve problems and teaches readers what other introductory books often ignore: how to Think Like a Programmer.

Total Typescript placeholder cover

Total TypeScript

Matt Pocock with Taylor Bell

If you're an experienced JavaScript developer or want to level up your current TypeScript skills, with Total TypeScript, you'll learn everything you need to build a TypeScript product from

Wicked Cool Ruby Scripts

Wicked Cool Ruby Scripts

Steve Pugh

Wicked Cool Ruby Scripts will teach you how to automate repetitive tasks using Ruby, one of the most powerful and easy-to-use programming languages around.

Writing a C Compiler Cover

Writing a C Compiler

Nora Sandler

A fun, hands-on guide to writing your own compiler for a real-world programming language.