Sort by: Title | Release Date

Cover Image For Rails 4 Test Prescriptions...

Rails 4 Test Prescriptions

Does your Rails code suffer from bloat, brittleness, or inaccuracy? Cure these problems with the regular application of test-driven development. Rails 4 Test Prescriptions is a comprehensive guide to how tests can help you design and write better Rails applications. In this completely revised edition, you’ll learn why testing works and how to test effectively using Rails 4, Minitest 5, and RSpec 3, as well as popular testing libraries such as factory_girl and Cucumber. Do what the doctor ordered to make your applications feel all better. Side effects may include better code, fewer bugs, and happier developers.

2014-10-10

Cover Image For Programming Elixir...

Programming Elixir

You want to explore functional programming, but are put off by the academic feel (tell me about monads just one more time). You know you need concurrent applications, but also know these are almost impossible to get right. Meet Elixir, a functional, concurrent language built on the rock-solid Erlang VM. Elixir’s pragmatic syntax and built-in support for metaprogramming will make you productive and keep you interested for the long haul. This book is the introduction to Elixir for experienced programmers.

Maybe you need something that’s closer to Ruby, but with a battle-proven environment that’s unrivaled for massive scalability, concurrency, distribution, and fault tolerance. Maybe the time is right for the Next Big Thing. Maybe it’s Elixir.

2014-09-25

Cover Image For Seven More Languages in Seven Weeks...

Seven More Languages in Seven Weeks

Great programmers aren’t born—they’re made. The industry is moving from object-oriented languages to functional languages, and you need to commit to radical improvement. New programming languages arm you with the tools and idioms you need to refine your craft. While other language primers take you through basic installation and “Hello, World,” we aim higher. Each language in Seven More Languages in Seven Weeks will take you on a step-by-step journey through the most important paradigms of our time. You’ll learn seven exciting languages: Lua, Factor, Elixir, Elm, Julia, MiniKanren, and Idris.

2014-09-10

Cover Image For Fire in the Valley...

Fire in the Valley

In the 1970s, while their contemporaries were protesting the computer as a tool of dehumanization and oppression, a motley collection of college dropouts, hippies, and electronics fanatics were engaged in something much more subversive. Obsessed with the idea of getting computer power into their own hands, they launched from their garages a hobbyist movement that grew into an industry, and ultimately a social and technological revolution. What they did was invent the personal computer: not just a new device, but a watershed in the relationship between man and machine. This is their story.

2014-08-15

Cover Image For Metaprogramming Ruby 2...

Metaprogramming Ruby 2

Write powerful Ruby code that is easy to maintain and change. With metaprogramming, you can produce elegant, clean, and beautiful programs. Once the domain of expert Rubyists, metaprogramming is now accessible to programmers of all levels. This thoroughly revised and updated second edition of the bestselling Metaprogramming Ruby explains metaprogramming in a down-to-earth style and arms you with a practical toolbox that will help you write your best Ruby code ever.

2014-08-15

Cover Image For Build iOS Games with Sprite Kit...

Build iOS Games with Sprite Kit

Take your game ideas from paper to pixels using Sprite Kit, Apple’s 2D game development engine. Build two exciting games using Sprite Kit and learn real-world, workshop-tested insights about game design, including cognitive complexity, paper prototyping, and levels of fun. You’ll learn how to implement sophisticated game features such as obstacles and weapons, power-ups and variable difficulty, physics, sound, special effects, and both single- and two-finger control. In no time, you’ll be building your own thrilling iOS games.

2014-07-17

Cover Image For Seven Concurrency Models in Seven Weeks...

Seven Concurrency Models in Seven Weeks

Your software needs to leverage multiple cores, handle thousands of users and terabytes of data, and continue working in the face of both hardware and software failure. Concurrency and parallelism are the keys, and Seven Concurrency Models in Seven Weeks equips you for this new world. See how emerging technologies such as actors and functional programming address issues with traditional threads and locks development. Learn how to exploit the parallelism in your computer’s GPU and leverage clusters of machines with MapReduce and Stream Processing. And do it all with the confidence that comes from using tools that help you write crystal clear, high-quality code.

2014-07-10

Cover Image For Building Backbone Plugins...

Building Backbone Plugins

Getting started with Backbone.js is fairly simple compared to most of the large frameworks. But it’s not without its perils and pitfalls. For all of the flexibility and freedom you have, it requires a lot of boilerplate—a lot of copy and paste code. But there’s hope. You can reduce the boilerplate code, cut your development time, and improve your app’s functionality by creating good abstractions. With Building Backbone Plugins, you’ll learn more than just the “how” of building abstractions, you’ll also learn the “why”!

2014-06-18

Cover Image For The Healthy Programmer (audio book)...

The Healthy Programmer (audio book)

To keep doing what you love, you need to maintain your own systems, not just the ones you write code for. Regular exercise and proper nutrition help you learn, remember, concentrate, and be creative—skills critical to doing your job well. Learn how to change your work habits, master exercises that make working at a computer more comfortable, and develop a plan to keep fit, healthy, and sharp for years to come.

Adapted Audio Book; m4b (iTunes), mp3 and ogg formats. Also available in paperback and ebook formats.

Listen to an excerpt.

Read the Slashdot review here.

Read the IT World review here.


This book is intended only as an informative guide for those wishing to know more about health issues. In no way is this book intended to replace, countermand, or conflict with the advice given to you by your own healthcare provider including Physician, Nurse Practitioner, Physician Assistant, Registered Dietician, and other licensed professionals.

2014-05-29

Cover Image For Build an Awesome PC, 2014 Edition...

Build an Awesome PC, 2014 Edition

Custom-build your own dream PC, have fun doing it, and save yourself a lot of money in the process. This book will give you the confidence to buy the best-of-class components and assemble them with clear, step-by-step instructions. You’ll build your own PC capable of effortlessly running the most graphic and CPU-intensive games, graphics software, and programming compilers available today. And because it’s a PC that you built yourself, you’ll be able to keep it up to date with the latest hardware innovations.

2014-05-20

Cover Image For Learn to Program with Minecraft Plugins...

Learn to Program with Minecraft Plugins

Programming doesn’t have to be boring! Write your own Minecraft plugins and watch your code come to life with flaming cows, flying creepers, teleportation, and interactivity. Follow along with the book and add your own features to the Minecraft game by developing Java code that “plugs in” to the server. You’ll manipulate and control elements in the 3D graphical game environment without having to write tons of code or learn huge frameworks. You don’t need programming experience to get started—-this book will teach you everything you need to know!

2014-05-10

Cover Image For Automate with Grunt...

Automate with Grunt

Grunt is everywhere. JavaScript projects from jQuery to Twitter Bootstrap use Grunt to convert code, run tests, and produce distributions for production. It’s a build tool in the spirit of Make and Rake, but written with modern apps in mind. This book gets you up to speed with Grunt using practical hands-on examples, so you can wrangle your projects with ease. You’ll learn how to create and maintain tasks and project builds, and automate your workflow with plugins and custom tasks.

2014-04-30

Cover Image For Confident Ruby...

Confident Ruby

Are your Ruby methods timid? Do they constantly second-guess themselves, checking for nil values, errors, and unexpected input? With Confident Ruby, you’ll learn patterns, idioms, and language features that help to write code in a clear, straightforward style. Your code will be more testable, easier to read, and easier to debug. And you’ll be a happier programmer!

Foreword by Sandi Metz, author of Practical Object-Oriented Design in Ruby.

2014-04-10

Cover Image For Manage Your Job Search...

Manage Your Job Search

Searching for a job is a big, complex, and scary prospect. There are so many things to do, so many choices to make. Where do you start? How do you keep track of it all?

Treat your job hunt like the project it is. When you use proven project management techniques that allow you to create a visual system, you’ll be able to increase your productivity, track your progress, evaluate your work, gain feedback, and throw out what doesn’t work while building on your successes. Take control of the most important project you’ll ever work on: finding fulfilling work.

2014-04-09

Cover Image For Raspberry Pi: A Quick-Start Guide...

Raspberry Pi: A Quick-Start Guide (2nd edition)

The Raspberry Pi is one of the most successful open source hardware projects ever. For less than $40, you get a full-blown PC, a multimedia center, and a web server—and this book gives you everything you need to get started. You’ll learn the basics, progress to controlling the Pi, and then build your own electronics projects. This new edition is revised and updated with two new chapters on adding digital and analog sensors, and creating videos and a burglar alarm with the Pi camera.

2014-03-10

Cover Image For Functional Programming in Java...

Functional Programming in Java

Get ready to program in a whole new way. Functional Programming in Java will help you quickly get on top of the new, essential Java 8 language features and the functional style that will change and improve your code. This short, targeted book will help you make the paradigm shift from the old imperative way to a less error-prone, more elegant, and concise coding style that’s also a breeze to parallelize. You’ll explore the syntax and semantics of lambda expressions, method and constructor references, and functional interfaces. You’ll design and write applications better using the new standards in Java 8 and the JDK.

2014-02-28

Cover Image For iPad and iPhone Kung Fu...

iPad and iPhone Kung Fu

A shortcut straight to power-user level with over 300 tips, tricks, hints, and hacks to make your Apple device the one thing you can’t live without. Learn the secrets of FaceTime, Maps, Safari, and Mail. Transform your Apple device into a go-to office tool, as well as tighten security to deter theft. Designed to be dipped into, most tips in iPad and iPhone Kung Fu take only a minute to implement, but will change your life. Good for iOS 7 on iPhone, iPad, iPod Touch.

2014-02-21

Cover Image For Programming Sound with Pure Data...

Programming Sound with Pure Data

Sound gives your native, web, or mobile apps that extra dimension, and it’s essential for games. Rather than using canned samples from a sample library, learn how to build sounds from the ground up and produce them for web projects using the Pure Data programming language. Even better, you’ll be able to integrate dynamic sound environments into your native apps or games—sound that reacts to the app, instead of sounding the same every time. Start your journey as a sound designer, and get the power to craft the sound you put into your digital experiences.

2014-01-20

Cover Image For Seven Web Frameworks in Seven Weeks...

Seven Web Frameworks in Seven Weeks

Whether you need a new tool or just inspiration, Seven Web Frameworks in Seven Weeks explores modern options, giving you a taste of each with ideas that will help you create better apps. You’ll see frameworks that leverage modern programming languages, employ unique architectures, live client-side instead of server-side, or embrace type systems. You’ll see everything from familiar Ruby and JavaScript to the more exotic Erlang, Haskell, and Clojure.

2014-01-15

Cover Image For Web Development with Clojure...

Web Development with Clojure

If the usual patchwork of web development tools and languages just isn’t cutting it for you, you need Web Development With Clojure. Clojure gives you the rich infrastructure of the JVM with the expressive power of a modern functional language. It combines excellent performance with rapid development—and you can exploit these virtues for web app development. With step-by-step examples, you’ll learn how to harness that power and richness to build modern web applications.

2014-01-15

Cover Image For Grails 2: A Quick-Start Guide...

Grails 2: A Quick-Start Guide

Java web development is notoriously tedious, but help is on the way. Grails takes the pain out of web development and brings back the fun. This beginner’s guide gets you up and running with Grails as you construct an original, working application from start to finish. In this new edition, you’ll be building an application entirely with Grails 2, which allows you to take advantage of the new HTML 5 scaffolding, dramatic performance improvements, and enhancements new to Groovy 2.

2014-01-08

Cover Image For Programming Google Glass...

Programming Google Glass

Google Glass is the new wearable computer everyone’s talking about. It offers a head-mounted optical display and touch interface, and it’s programmable. Kick-start your Glassware development by exploring how users can interface with Glass, developing a Glass application fast by using the Mirror API to manipulate Timeline cards and menus, tracking a Glass’s geolocation, creating rich interactions by responding to user inputs, and capturing or serving user images and videos. This is the book to read for a shortcut to this brave new world.

2013-12-30

Cover Image For Crafting Rails 4 Applications...

Crafting Rails 4 Applications

Get ready to see Rails as you’ve never seen it before. Learn how to extend the framework, change its behavior, and replace whole components to bend it to your will. Eight different test-driven tutorials will help you understand Rails’ inner workings and prepare you to tackle complicated projects with solutions that are well-tested, modular, and easy to maintain.

This second edition of the bestselling Crafting Rails Applications has been updated to Rails 4 and discusses new topics such as streaming, mountable engines, and thread safety.

2013-12-15

Cover Image For The Agile Samurai (audio book)...

The Agile Samurai (audio book)

Here are three simple truths about software development:

1. You can’t gather all the requirements up front.
2. The requirements you do gather will change.
3. There is always more to do than time and money will allow.

Those are the facts of life. But you can deal with those facts (and more) by becoming a fierce software-delivery professional, capable of dispatching the most dire of software projects and the toughest delivery schedules with ease and grace.

Unabridged Audio Book; m4b (iTunes), mp3 and ogg formats. Also available in paperback and ebook formats.

Listen to an excerpt from Chapter 3.

2013-12-10

Cover Image For Remote Pairing...

Remote Pairing

You’ve heard about pair programming’s benefits: fewer bugs, improved skills, and faster delivery. But what happens when you want to pair with someone in another city, country, or even hemisphere? With the right tools, you won’t have to relocate to refactor. In this book, you’ll learn techniques used by the most productive remote programmers in the industry to pair with anyone on the globe on any kind of project. You’ll use collaborative editors, screen sharing, secure networking, and virtualization to create a remote pairing environment that feels as if your partner is sitting right next to you.

2013-12-02

Cover Image For Node.js the Right Way...

Node.js the Right Way

Get to the forefront of server-side JavaScript programming by writing compact, robust, fast, networked Node applications that scale. Ready to take JavaScript beyond the browser, explore dynamic languages features and embrace evented programming? Explore the fun, growing repository of Node modules provided by npm. Work with multiple protocols, load-balanced RESTful web services, express, ØMQ, Redis, CouchDB, and more. Develop production-grade Node applications fast.

2013-11-20

Cover Image For Developing Android on Android...

Developing Android on Android

Take advantage of the open, tinker-friendly Android platform and make your device work the way you want it to. Quickly create Android tasks, scripts, and programs entirely on your Android device—no PC required. Learn how to build your own innovative Android programs and workflows with tools you can run on Android itself, and tailor the Android default user interface to match your mobile lifestyle needs. Apply your favorite scripting language to rapidly develop programs that speak the time and battery level, alert you to important events or locations, read your new email to you, and much more.

2013-11-15

Cover Image For The Dream Team Nightmare...

The Dream Team Nightmare

This first-ever interactive Agile Adventure is the gripping tale of an experienced team struggling with agile adoption. In this unique mashup of a business novel written in the gamebook format, you’ll overcome common yet daunting challenges that come from using agile methods. As Jim, the agile coach, you’ll learn to apply a range of thinking tools and techniques to real-life problems faced by teams and organizations. Find out what really works and what fails miserably from the consequences of your choices. And, unlike in the real world, if at first you don’t succeed, you can make different choices until you get things right.

2013-11-15

Cover Image For Build Awesome Command-Line Applications in Ruby 2...

Build Awesome Command-Line Applications in Ruby 2

Speak directly to your system. With its simple commands, flags, and parameters, a well-formed command-line application is the quickest way to automate a backup, a build, or a deployment and simplify your life. With this book, you’ll learn specific ways to write command-line applications that are easy to use, deploy, and maintain, using a set of clear best practices and the Ruby programming language. This book is designed to make any programmer or system administrator more productive in their job. This is updated for Ruby 2.

2013-11-15

Cover Image For Backbone Marionette...

Backbone Marionette

Leverage Backbone.js while increasing your productivity! This is a great resource for learning Marionette the “right” way, even for total beginners. In this book, you’ll develop a complete Marionette.js application, and you’ll become comfortable with the library. You’ll learn how to structure and refactor your code so it stays manageable even for large applications. Whether you’re new to web apps, or an experienced developer looking to quickly master yet another framework, you’ll get there in no time. All you need is a basic understanding of JavaScript and the DOM.

Now updated for Marionette 2.0

2013-11-13

Cover Image For Functional Programming Patterns in Scala and Clojure...

Functional Programming Patterns in Scala and Clojure

Solve real-life programming problems with a fraction of the code that pure object-oriented programming requires. Use Scala and Clojure to solve in-depth problems and see how familiar object-oriented patterns can become more concise with functional programming and patterns. Your code will be more declarative, with fewer bugs and lower maintenance costs.

2013-11-10

Cover Image For Modern C++ Programming with Test-Driven Development...

Modern C++ Programming with Test-Driven Development

If you program in C++ you’ve been neglected. Test-driven development (TDD) is a modern software development practice that can dramatically reduce the number of defects in systems, produce more maintainable code, and give you the confidence to change your software to meet changing needs. But C++ programmers have been ignored by those promoting TDD—until now. In this book, Jeff Langr gives you hands-on lessons in the challenges and rewards of doing TDD in C++.

2013-10-30

Cover Image For 3D Game Programming for Kids...

3D Game Programming for Kids

You know what’s even better than playing games? Creating your own. Even if you’re an absolute beginner, this book will teach you how to make your own online games with interactive examples. You’ll learn programming using nothing more than a browser, and see cool, 3D results as you type. You’ll learn real-world programming skills in a real programming language: JavaScript, the language of the web. You’ll be amazed at what you can do as you build interactive worlds and fun games. Appropriate for ages 10-99!

2013-10-23

Cover Image For HTML5 and CSS3...

HTML5 and CSS3 (2nd edition)

HTML5 and CSS3 are more than just buzzwords—they’re the foundation for today’s web applications. This book gets you up to speed on the HTML5 elements and CSS3 features you can use right now in your current projects, with backwards compatible solutions that ensure that you don’t leave users of older browsers behind. This new edition covers even more new features, including CSS animations, IndexedDB, and client-side validations.

2013-10-23

Cover Image For Programming Erlang...

Programming Erlang (2nd edition)

A multi-user game, web site, cloud application, or networked database can have thousands of users all interacting at the same time. You need a powerful, industrial-strength tool to handle the really hard problems inherent in parallel, concurrent environments. You need Erlang. In this second edition of the bestselling Programming Erlang, you’ll learn how to write parallel programs that scale effortlessly on multicore systems.

2013-10-05

Cover Image For Agile Web Development with Rails 4...

Agile Web Development with Rails 4

Rails just keeps on changing. Both Rails 3 and 4, as well as Ruby 1.9 and 2.0, bring hundreds of improvements, including new APIs and substantial performance enhancements. The fourth edition of this award-winning classic has been reorganized and refocused so it’s more useful than ever before for developers new to Ruby and Rails.

Rails 4 introduces a number of user-facing changes, and the book has been updated to match all the latest changes and new best practices in Rails. This includes full support for Ruby 2.0, controller concerns, Russian Doll caching, strong parameters, Turbolinks, new test and bin directory layouts, and much more.

2013-09-27

Cover Image For Working with Ruby Threads...

Working with Ruby Threads

This book will help you get the story straight when it comes to multi-threaded programming in Ruby. Heard of things like Ruby’s GIL? Mutexes? Race conditions? Actors? This book is a gentle introduction to these topics for the complete concurrency beginner. After reading, you’ll have a firm grasp on why multi-threaded concurrency matters, how to use multiple threads safely, what issues to be aware of in your libraries or your Rails apps, and even see some walkthroughs of real-world multi-threaded code. Don’t get left behind—join the conversation and take advantage of your modern multicore hardware.

2013-09-25

Cover Image For The Coding Dojo Handbook...

The Coding Dojo Handbook

Looking for inspiration for good design and creating automated tests? Want to promote better practices? This handbook is a collection of concrete ideas for how you can get started with a Coding Dojo, where you and your team can focus on improving practical coding skills. When you step into the Coding Dojo, you leave your daily programming environment, with all the associated complexities and problems, and enter a safe environment where you can try stuff out, make mistakes, and learn with others.

2013-09-18

Cover Image For Practical Programming...

Practical Programming (2nd edition)

This book is for anyone who wants to understand computer programming. You’ll learn to program in a language that’s used in millions of smartphones, tablets, and PCs. You’ll code along with the book, writing programs to solve real-world problems as you learn the fundamentals of programming using Python 3. You’ll learn about design, algorithms, testing, and debugging, and come away with all the tools you need to produce quality code. In this second edition, we’ve updated almost all the material, incorporating the lessons we’ve learned over the past five years of teaching Python to people new to programming.

2013-09-16

Cover Image For The Retrospective Handbook...

The Retrospective Handbook

If you could only pick one agile practice, which would it be? With retrospectives, you and your team could continually adapt your process to find the most effective way of working for you. Retrospectives, when done well, offer a good opportunity to initiate lasting change. This book shows you how.

2013-09-10

Cover Image For Test iOS Apps with UI Automation...

Test iOS Apps with UI Automation

If you’re an iOS developer or QA professional tapping through an app to reproduce bugs or performance issues you thought were solved two releases ago, then this is your book. Learn how to script the user interface, assert correct behavior, stub external dependencies, reproduce performance problems, organize test code for the long haul, and automate the whole process so the machine does the work. You’ll walk through a comprehensive strategy with techniques using Apple’s tools that you can apply to your own apps.

2013-08-10

Cover Image For 101 Design Ingredients to Solve Big Tech Problems...

101 Design Ingredients to Solve Big Tech Problems

Tough technology and business challenges face you at every stage of a project. The one-page ingredients in 101 Design Ingredients show you how to solve problems using practical examples you can apply right away. Case studies explain how leading companies combined these ingredients into their own unique recipes to catapult their businesses, and how you can, too. You’ll learn how to mix and match the high-level patterns in this quick, entertaining survey to build your own solutions tailored to your projects’ requirements.

2013-07-31

Cover Image For Processing Big Data with MapReduce...

Processing Big Data with MapReduce

MapReduce is a programming paradigm that uses multiple machines to process large data sets. Apache Hadoop is the most popular MapReduce framework and this series takes you from zero MapReduce knowledge all the way to writing and running Hadoop programs.

In these screencasts, Jesse teaches MapReduce with his own novel method that makes it easy to understand. After you learn the basics, Jesse teaches you Hadoop using Java, Ruby, Python, and Perl code. No matter which technology stack you choose, you’ll have the understanding and tools you need to use to use Hadoop on your next project.

Together we’ll write code in Java, Ruby, Python and Perl.

Source code for the first and third episodes is available at github.com

Source code for the second episode is available at github.com

Free Preview Video:

2013-07-24

Cover Image For Programming Groovy 2...

Programming Groovy 2

Groovy brings you the best of both worlds: a flexible, highly productive, agile, dynamic language that runs on the rich framework of the Java Platform. Groovy preserves the Java semantics and extends the JDK to give you true dynamic language capabilities. Programming Groovy 2 will help you, the experienced Java developer, learn and take advantage of the latest version of this rich dynamic language. You’ll go from the basics of Groovy to the latest advances in the language, including options for type checking, tail-call and memoization optimizations, compile time metaprogramming, and fluent interfaces to create DSLs.

2013-07-15

Cover Image For iCloud for Developers...

iCloud for Developers

Get up-to-date fast on the techniques you need get your applications iCloud-ready. With Apple’s iCloud servers now available to developers, there’s every reason to make synchronization a core feature of your product. You’ll learn how to iCloud-enable the data formats you’re most likely to use in an iOS application: key-value data, document-based data, and relational data. Using a simple grocery list application as an example, you’ll find out how to configure any application to make the most of iCloud’s capabilities.

2013-07-15

Cover Image For Good Math...

Good Math

Mathematics is beautiful—and it can be fun and exciting as well as practical. Good Math is your guide to some of the most intriguing topics from two thousand years of mathematics: from Egyptian fractions to Turing machines; from the real meaning of numbers to proof trees, group symmetry, and mechanical computation. If you’ve ever wondered what lay beyond the proofs you struggled to complete in high school geometry, or what limits the capabilities of the computer on your desk, this is the book for you.

2013-07-15

Cover Image For The Healthy Programmer...

The Healthy Programmer

To keep doing what you love, you need to maintain your own systems, not just the ones you write code for. Regular exercise and proper nutrition help you learn, remember, concentrate, and be creative—skills critical to doing your job well. Learn how to change your work habits, master exercises that make working at a computer more comfortable, and develop a plan to keep fit, healthy, and sharp for years to come.

This book is intended only as an informative guide for those wishing to know more about health issues. In no way is this book intended to replace, countermand, or conflict with the advice given to you by your own healthcare provider including Physician, Nurse Practitioner, Physician Assistant, Registered Dietician, and other licensed professionals.

2013-06-21

Cover Image For The Developer's Code (audio book)...

The Developer's Code (audio book)

You’re already a great coder, but awesome coding chops aren’t always enough to get you through your toughest projects. You need these 50+ nuggets of wisdom. Reinvigorate your passion for developing applications and think about your job in new and enlightened ways.

Adapted Audio Book; m4b (iTunes), mp3 and ogg formats. Also available in paperback and ebook formats.

Listen to an excerpt.

2013-06-21

Cover Image For OpenGL ES 2 for Android...

OpenGL ES 2 for Android

Android is booming like never before, with millions of devices shipping every day. It’s never been a better time to learn how to create your own 3D games and live wallpaper for Android. You’ll find out all about shaders and the OpenGL pipeline, and discover the power of OpenGL ES 2.0, which is much more feature-rich than its predecessor. If you can program in Java and you have a creative vision that you’d like to share with the world, then this is the book for you.

2013-06-20

Cover Image For Programming Ruby 1.9 & 2.0...

Programming Ruby 1.9 & 2.0 (4th edition)

Ruby is the fastest growing and most exciting dynamic language out there. If you need to get working programs delivered fast, you should add Ruby to your toolbox.

This book is the only complete reference for both Ruby 1.9 and Ruby 2.0, the very latest version of Ruby.

2013-06-18

Cover Image For Rapid Android Development...

Rapid Android Development

Create mobile apps for Android phones and tablets faster and more easily than you ever imagined. Use “Processing,” the free, award-winning, graphics-savvy language and development environment, to work with the touchscreens, hardware sensors, cameras, network transceivers, and other devices and software in the latest Android phones and tablets.

2013-04-05

Cover Image For Agile Web Development with Rails 3.2...

Agile Web Development with Rails 3.2

This edition of this award-winning classic has been reorganized and refocused so it’s more useful than ever before for developers new to Ruby and Rails.

Rails 3 was a major release—the changes weren’t just incremental, but structural. So we decided to follow suit. This book isn’t just a mild reworking of the previous edition to make it run with the new Rails. Instead, it’s a complete refactoring.

You’ll still find the Depot example at the front, but you’ll also find testing knitted right in. Gone are the long reference chapters—that’s what the web does best. Instead you’ll find more targeted information on all the aspects of Rails you’ll need to be a successful web developer.

This edition is for Rails 3.2. It has been replaced with the Rails 4.0 Edition.

2013-03-01

Cover Image For Explore It!...

Explore It!

Uncover surprises, risks, and potentially serious bugs with exploratory testing. Rather than designing all tests in advance, explorers design and execute small, rapid experiments, using what they learned from the last little experiment to inform the next. Learn essential skills of a master explorer, including how to analyze software to discover key points of vulnerability, how to design experiments on the fly, how to hone your observation skills, and how to focus your efforts.

2013-02-17

Cover Image For Hiring Geeks That Fit...

Hiring Geeks That Fit

Hiring a person for your team is the single most important decision you can make. It has long-lasting impact, whether you are the manager or a team member. Would you like to learn to hire great people? Not sure how? You need this book.

Great geeks are not the same as skill-based staff. You need to analyze your culture, determine your problems, define the essentials you need in a candidate, and then you’re off and running.

Great geeks adapt their knowledge to your context. One developer or technical manager is not interchangeable with another. Hiring Geeks That Fit takes the guesswork and cost out of hiring.

2013-02-15

Cover Image For Cucumber Recipes...

Cucumber Recipes

You can test just about anything with Cucumber. We certainly have, and in Cucumber Recipes we’ll show you how to apply our hard-won field experience to your own projects. Once you’ve mastered the basics, this book will show you how to get the most out of Cucumber—from specific situations to advanced test-writing advice. With over forty practical recipes, you’ll test desktop, web, mobile, and server applications across a variety of platforms. This book gives you tools that you can use today to automate any system that you encounter, and do it well.

2013-02-06

Cover Image For Core Data...

Core Data (2nd edition)

Core Data is Apple’s recommended way to persist data: it’s easy to use, built-in, and integrated with iCloud. It’s intricate, powerful, and necessary—and this book is your guide to harnessing its power.

Learn fundamental Core Data principles such as thread and memory management, discover how to use Core Data in your iPhone, iPad, and OS X projects by using NSPredicate to filter data, and see how to add iCloud to your applications.

2013-01-31

Cover Image For Working with TCP Sockets...

Working with TCP Sockets

Do you know how your web server opens a socket, binds to an address, and accepts a connection? I did a lot of Rails development before I understood the mechanics of the network stack I was working on top of. Forget those 1,000+ page networking manuals; Working With TCP Sockets zeroes in on exactly what you need to know as a Ruby developer working on the web today. After reading the book, you’ll have a good understanding of socket programming basics—enough to write servers, client libraries, or concurrent network programs.

2013-01-18

Cover Image For The App Design Handbook...

The App Design Handbook

In the App Store, apps are judged by their screenshots. For paid apps, that is the only thing the user has to work from, so you need to learn how to design iOS applications that look great. But more important than that, they need to be intuitive for the users. The App Design Handbook will take you from creating wireframes that focus on the user flow, to adding style through colors and textures, to finally adding polish to your app with animations and other subtle details.

This book, available in PDF format, was entirely written and produced by the author. Pricing set by author. We are proud to be distributing it.

2013-01-16

Cover Image For The Definitive ANTLR 4 Reference...

The Definitive ANTLR 4 Reference

Programmers run into parsing problems all the time. Whether it’s a data format like JSON, a network protocol like SMTP, a server configuration file for Apache, a PostScript/PDF file, or a simple spreadsheet macro language—ANTLR v4 and this book will demystify the process. ANTLR v4 has been rewritten from scratch to make it easier than ever to build parsers and the language applications built on top. This completely rewritten new edition of the bestselling Definitive ANTLR Reference shows you how to take advantage of these new features.

2013-01-15

Cover Image For Outsource It!...

Outsource It!

If you need to expand your business but not your budget, if your group has an intense but short-term project, if you don’t have the skill set to get a job done-it’s time to think about outsourcing. Starting from the first step (should you outsource part of your tech work?) to the last (how can you protect your intellectual property?), you’ll learn everything about setting up projects overseas.

2013-01-10

Cover Image For Sublime Text 2...

Sublime Text 2

Sublime Text is taking the programming community by storm, and rapidly unseating incumbents like TextMate and Vim for many programmers. This screencast series teaches you Sublime Text’s layout, navigation, and flow. You will also learn how to use more advanced features, such as tweaking the program’s interface or installing custom plugins. You’ll even incorporate the vast library of TextMate themes and plugins into the Sublime Text environment.

This screencast teaches both the basics and expanded features of ST2, and accelerates you along the learning curve needed to become rapidly productive with this powerful editor.

Free preview:

Installer videos:

2012-12-18

Cover Image For RubyMotion...

RubyMotion

Make beautiful apps with beautiful code: use the elegant and concise Ruby programming language with RubyMotion to write truly native iOS apps with less code while having more fun. You’ll learn the essentials of creating great apps, and by the end of this book, you’ll have built a fully functional API-driven app. Whether you’re a newcomer looking for an alternative to Objective-C or a hardened Rails veteran, RubyMotion allows you to create gorgeous apps with no compromise in performance or developer happiness.

July 22, 2014: All projects have been updated for compatibility with iOS7 and RubyMotion 2.0. Refined code to use more idiomatic Ruby when possible. Fixed external URLs that have been moved or deprecated. Fixed errata.

2012-12-12

Cover Image For Pomodoro Technique Illustrated (audio book)...

Pomodoro Technique Illustrated (audio book)

Do you ever look at the clock and wonder where the day went? You spent all this time at work and didn’t come close to getting everything done. Tomorrow, try something new. Use the Pomodoro Technique, originally developed by Francesco Cirillo, to work in focused sprints throughout the day. In Pomodoro Technique Illustrated, Staffan Nöteberg shows you how to organize your work to accomplish more in less time. There’s no need for expensive software or fancy planners. You can get started with nothing more than a piece of paper, a pencil, and a kitchen timer. Unabridged Audio Book; m4b (iTunes), mp3 and ogg formats. Also available in paperback and ebook formats.

Listen to an excerpt from Chapter 4.

2012-12-12

Cover Image For Async JavaScript...

Async JavaScript

With the advent of HTML5, front-end MVC, and Node.js, JavaScript is ubiquitous—and still messy. This book will give you a solid foundation for managing async tasks without losing your sanity in a tangle of callbacks. It’s a fast-paced guide to the most essential techniques for dealing with async behavior, including PubSub, evented models, and Promises. With these tricks up your sleeve, you’ll be better prepared to manage the complexity of large web apps and deliver responsive code.

2012-11-28

Cover Image For Mac Kung Fu...

Mac Kung Fu (2nd edition)

Squeeze every drop of juice from OS X with over 400 quick and easy tips, tricks, hints and hacks in Mac Kung Fu: Second Edition. Exploit secret settings and hidden apps, push built-in tools to the limit, radically personalize your Mac experience, and make “it just works” even better. In addition to core OS X technologies, this significantly revised and expanded update to the best-selling first edition dissects new OS X Mountain Lion tools such as iCloud, Notifications, Reminders, and Calendar.

2012-11-28

Cover Image For iOS SDK Development...

iOS SDK Development

Since the iPhone’s launch in 2008, the iOS platform has added two new device families, thousands of new APIs, new tools and programming practices, and hundreds of thousands of new apps. Yours can be one of them. This book guides you through the state of the art of iOS development, including the radically overhauled Xcode 4 toolchain, the iOS 6 SDK, and the new iPhone 5. You’ll accelerate your development with new tools like Storyboards, practice on new APIs like the Twitter framework, and learn the latest features of the Objective-C programming language.

2012-11-14

Cover Image For The Cloud and Amazon Web Services...

The Cloud and Amazon Web Services

“The Cloud” is a buzzword that’s been hyped and overused. We’ll cut through the marketing cruft with a series that starts with the basic concepts behind cloud computing and guides you through practical, hands-on examples using Amazon’s cloud offerings.

This six-episode series targets users who are new to the cloud, with content tailored for novice to mid-range expertise levels. Jesse’s material is useful for both developers and managers. The preview video has more information about which sections are best for each audience. The series covers the main Amazon Web Services’ technologies like EC2 and S3. It also covers the lesser known, but incredibly useful technologies like Elastic Load Balancer, CloudFront, Elastic MapReduce, and Relational Database Service. Each episode covers several Amazon Web Services technologies, discusses the theories behind them, and presents practical exercises.

SAVE 30% on the whole series. Buy all episodes of this series and automatically save 30% over the individual price.

2012-10-23

Cover Image For The ThoughtWorks Anthology, Volume 2...

The ThoughtWorks Anthology, Volume 2

When you hit a rough spot in software development, it’s nice to know that someone has been there before. The domain experts at ThoughtWorks share what they’ve learned in this anthology, bringing together the best field-tested insights in IT and software development. You’ll benefit from their experience in areas from testing to information visualization, from object oriented to functional programming, from incremental development to driving innovation in delivery. You’ll find yourself referring to this collection of solved problems whenever you need an expert’s insight.

2012-10-11

Cover Image For Practical Vim...

Practical Vim

Vim is a fast and efficient text editor that will make you a faster and more efficient developer. It’s available on almost every OS—if you master the techniques in this book, you’ll never need another text editor. In more than 100 Vim tips, you’ll quickly learn the editor’s core functionality and tackle your trickiest editing and writing tasks.

2012-09-27

Cover Image For Deploying with JRuby...

Deploying with JRuby

Deploy using the JVM’s high performance while building your apps in the language you love. JRuby is a fast, scalable, and powerful JVM language with all the benefits of a traditional Ruby environment. See how to consolidate the many moving parts of an MRI-based Ruby deployment onto a single JVM process. You’ll learn how to port a Rails application to JRuby, get it into production, and keep it running.

2012-08-15

Cover Image For Hands-on Backbone.js...

Hands-on Backbone.js

With a nearly endless stream of success stories, blog posts, add-ons and frameworks built on top of Backbone.js, you don’t need another set of marketing materials to tell you why you should be working with Backbone.js. What you need is a way to get started quickly – to get up to speed with Backbone’s components, learning how to orchestrate them to create rich, interactive applications in a browser. This series of screencasts from Backbone.js expert Derick Bailey, will teach you what you need to know in a straight-to-the-point, hands-on way to building single page applications for today’s modern web.

2012-07-29

Cover Image For Scalable and Modular Architecture for CSS...

Scalable and Modular Architecture for CSS

CSS is messy. At least, it always seems to get messy as projects and teams grow in size. If you’ve ever battled specificity issues by throwing “important!” at them, or found the components of your site so increasingly intertwined that you’re afraid to change anything, then this book is for you. If you’ve ever come into a project and found yourself confused by the existing code, then this book is for your co-workers. Scalable and Modular Architecture for CSS (SMACCS) explores techniques that can make your sites more manageable.

2012-07-23

Cover Image For Deploying Rails...

Deploying Rails

Today’s modern Rails applications have lots of moving parts. Make sure your next production deployment goes smoothly with this hands-on book, which guides you through the entire production process. You’ll set up scripts to install and configure all the software your servers need, including your application code. Once you’re in production, you’ll learn how to set up systems to monitor your application’s health, gather metrics so you can stop problems before they start, and fix things when they go wrong.

2012-07-20

Cover Image For Dart for Hipsters...

Dart for Hipsters

Psst! You’re not stuck with JavaScript anymore. Dart for Hipsters teaches you the fastest way possible: with real code and real projects starting on page 1. The unabashed goal of Dart is to make programming for the Web simpler, faster, and more powerful. And Dart for Hipsters is the fast-paced, most thorough way to learn it. You’ll explore the ins and outs of Dart by writing a simple application that grows in complexity from modest beginnings to a separate library that fully leverages the power of Dart. Caution: after reading you may develop an intense attachment to structured code and skinny jeans.

2012-06-27

Cover Image For Working with Unix Processes...

Working with Unix Processes

Take advantage of system programming techniques without toiling away in C. If you program for the web, you might be missing some fundamentals in the name of getting stuff working. Now you can fill that gap. In Working With Unix Processes, you’ll reuse decades of battle-tested, highly optimized, and proven techniques to put your system to work for you.

2012-05-23

Cover Image For Seven Databases in Seven Weeks...

Seven Databases in Seven Weeks

Data is getting bigger and more complex by the day, and so are your choices in handling it. From traditional RDBMS to newer NoSQL approaches, Seven Databases in Seven Weeks takes you on a tour of some of the hottest open source databases today. In the tradition of Bruce A. Tate’s Seven Languages in Seven Weeks, this book goes beyond your basic tutorial to explore the essential concepts at the core of each technology.

2012-05-11

Cover Image For Programming Clojure...

Programming Clojure (2nd edition)

If you want to keep up with the significant changes in this important language, you need the second edition of Programming Clojure. Stu and Aaron describe the modifications to the numerics system in Clojure 1.3, explain new Clojure concepts such as Protocols and Datatypes, and teach you how to think in Clojure.

2012-04-05

Cover Image For Rails Recipes...

Rails Recipes

Thousands of developers have used the first edition of Rails Recipes to solve the hard problems. Now, five years later, it’s time for the Rails 3 edition of this trusted collection of solutions, completely revised by Rails master Chad Fowler.

2012-03-29

Cover Image For The Rails View...

The Rails View

Working in the Rails View layer requires a breadth of knowledge and attention to detail unlike anywhere else in Rails. One wrong move can result in brittle, complex views that stop future development in its tracks. Break free from tangles of logic and markup in your views and implement your user interface cleanly and maintainably.

2012-03-23

Cover Image For The dRuby Book...

The dRuby Book

Learn from legendary Japanese Ruby hacker Masatoshi Seki in this first English-language book on his own Distributed Ruby library. You’ll find out about distributed computing, advanced Ruby concepts and techniques, and the philosophy of the Ruby way—-straight from the source.

2012-03-20

Cover Image For Technical Blogging...

Technical Blogging

Technical Blogging is the first book to specifically teach programmers, technical people, and technically-oriented entrepreneurs how to become successful bloggers. There is no magic to successful blogging; with this book you’ll learn the techniques to attract and keep a large audience of loyal, regular readers and leverage this popularity to achieve your goals.

2012-03-01

Cover Image For Build Awesome Command-Line Applications in Ruby...

Build Awesome Command-Line Applications in Ruby

Speak directly to your system. With its simple commands, flags, and parameters, a well-formed command-line application is the quickest way to automate a backup, a build, or a deployment and simplify your life. All you’ll need is Ruby, and the ability to install a few gems along the way. Examples written for Ruby 1.9.2, but 1.8.7 should work just as well.

2012-03-01

Cover Image For tmux...

tmux

Your mouse is slowing you down. The time you spend context switching between your editor and your consoles eats away at your productivity. Take control of your environment with tmux, a terminal multiplexer that you can tailor to your workflow. Learn how to customize, script, and leverage tmux’s unique abilities and keep your fingers on your keyboard’s home row.

2012-02-29

Cover Image For Programming Your Home...

Programming Your Home

Take control of your home! Programmatically interact with indoor and outdoor lighting, remotely monitor and take charge of your home’s security, react to changes in room lighting and temperature by autonomously opening and closing curtains, and much more. Learn how to program Android smartphones and Arduino microcontrollers to remotely manage your home’s environment. Step-by-step instructions tell you all you need to know about how to obtain, build, program, use, and extend these innovative services.

2012-02-20

Cover Image For The Developer's Code...

The Developer's Code

You’re already a great coder, but awesome coding chops aren’t always enough to get you through your toughest projects. You need these 50+ nuggets of wisdom. Veteran programmers: reinvigorate your passion for developing web applications. New programmers: here’s the guidance you need to get started. With this book, you’ll think about your job in new and enlightened ways.

2012-02-20

Cover Image For The Cucumber Book...

The Cucumber Book

Your customers want rock-solid, bug-free software that does exactly what they expect it to do. Yet they can’t always articulate their ideas clearly enough for you to turn them into code. The Cucumber Book dives straight into the core of the problem: communication between people. Cucumber saves the day; it’s a testing, communication, and requirements tool – all rolled into one.

2012-01-27

Cover Image For Web Development Recipes...

Web Development Recipes

Modern web development takes more than just HTML and CSS with a little JavaScript mixed in. Clients want more responsive sites with faster interfaces that work on multiple devices, and you need the latest tools and techniques to make that happen. This book gives you more than 40 concise, tried-and-true solutions to today’s web development problems, and introduces new workflows that will expand your skillset.

2012-01-01

Cover Image For Pragmatic Guide to Sass...

Pragmatic Guide to Sass

CSS is fundamental to the web, but it’s a basic language and lacks many features. Sass is just like CSS, but with a whole lot of extra power so you can get more done, more quickly. Build better web pages today with Pragmatic Guide to Sass. These concise, easy-to-digest tips and techniques are the shortcuts experienced CSS developers need to start developing in Sass today.

2011-12-16

Cover Image For Lean from the Trenches...

Lean from the Trenches

You know the Agile and Lean development buzzwords, you’ve read the books. But when systems need a serious overhaul, you need to see how it works in real life, with real situations and people. Lean from the Trenches is all about actual practice. Every key point is illustrated with a photo or diagram, and anecdotes bring you inside the project as you discover why and how one organization modernized its workplace in record time.

2011-12-07

Cover Image For New Programmer's Survival Manual...

New Programmer's Survival Manual

It’s your first day on the new job. You’ve got the programming chops, you’re up on the latest tech, you’re sitting at your workstation… now what? New Programmer’s Survival Manual gives your career the jolt it needs to get going: essential industry skills to help you apply your raw programming talent and make a name for yourself. It’s a no-holds-barred look at what really goes on in the office—and how to not only survive, but thrive in your first job and beyond.

2011-12-01

Cover Image For Mac Kung Fu...

Mac Kung Fu

Exploit secret settings and hidden apps, push built-in tools to the limit, radically personalize your Mac experience and tweak your system so it’s just right for you. Every one of these 300 quick and easy tips, tricks, hints, and hacks in Mac Kung Fu makes “it just works” even better. Become the ultimate Mac user, working faster, smarter, and simply have lots more fun with your Apple computer.

Please see our new edition of Mac Kung Fu, updated for OS X Mountain Lion.

Paperback list price normally $35.00, now on sale for $9.95 while supplies last.

2011-11-18

Cover Image For The SPDY Book...

The SPDY Book

Building high performance websites is hard—let’s go shopping! Better yet, let’s take the best ideas from the past 10 years on how to improve HTTP and wrap them up in a brand new protocol named SPDY. In The SPDY Book, you will learn all of the secrets behind this new protocol from Google. Compression, multiplexing, writing directly to the browser’s cache are not only possible with SPDY, but easy. Google is already using it in production on all of their sites to make their services even faster. Why shouldn’t your websites do the same?

2011-08-08

Cover Image For CoffeeScript...

CoffeeScript

CoffeeScript is JavaScript done right. It provides all of JavaScript’s functionality wrapped in a cleaner, more succinct syntax. In the first book on this exciting new language, CoffeeScript guru Trevor Burnham shows you how to hold onto all the power and flexibility of JavaScript while writing clearer, cleaner, and safer code.

2011-07-25

Cover Image For Programming Concurrency on the JVM...

Programming Concurrency on the JVM

Stop dreading concurrency hassles and start reaping the pure power of modern multicore hardware. Learn how to avoid shared mutable state and how to write safe, elegant, explicit synchronization-free programs in Java or other JVM languages including Clojure, JRuby, Groovy, or Scala.

2011-07-25

Cover Image For Designed for Use...

Designed for Use

Have you ever been angry at your computer or cell phone? This book is for designers, developers, and product managers who are charged with what sometimes seems like an impossible task: making sure products work the way your users expect them to. This book shows you how to design applications and websites that people will not only use, but will absolutely love.

2011-06-14

Cover Image For Exceptional Ruby...

Exceptional Ruby

Writing code that works is hard. Writing code that handles unexpected errors and still works is really hard. Most of us learn by trial and error. This short book removes the uncertainty. With over 100 pages of content and dozens of working examples, you’ll learn everything from the mechanics of how exceptions work to how to design a robust failure management architecture for your app or library. Whether you are a Ruby novice or a seasoned veteran, Exceptional Ruby will help you write cleaner, more resilient Ruby code.

2011-05-01

Cover Image For Test Driven Development for Embedded C...

Test Driven Development for Embedded C

Still chasing bugs and watching your code deteriorate? Think TDD is only for desktop or web apps? It’s not: TDD is for you, the embedded C programmer. TDD helps you prevent defects and build software with a long useful life. This is the first book to teach the hows and whys of TDD for C programmers.

2011-04-06

Cover Image For Crafting Rails Applications...

Crafting Rails Applications

Rails 3 is a huge step forward. You can now easily extend the framework, change its behavior, and replace whole components to bend it to your will, all without messy hacks. This pioneering book is the first resource that deep dives into the new Rails 3 APIs and shows you how to use them to write better web applications and make your day-to-day work with Rails more productive.

Everything covered in this book is valid through at least Rails 3.1

For Rails 4, have a look at the second edition.

2011-03-29

Cover Image For Rails Test Prescriptions...

Rails Test Prescriptions

Rails Test Prescriptions is a comprehensive guide to testing Rails applications, covering Test-Driven Development from both a theoretical perspective (why to test) and from a practical perspective (how to test effectively). It covers the core Rails testing tools and procedures for Rails 2 and Rails 3, and introduces popular add-ons, including RSpec, Shoulda, Cucumber, Factory Girl, and Rcov.

Please see our New Edition updated for Rails 4.

2011-02-17

Cover Image For Agile in a Flash...

Agile in a Flash

The best agile book isn’t a book: Agile in a Flash is a unique deck of index cards that fit neatly in your pocket. You can tape them to the wall. Spread them out on your project table. Get stains on them over lunch. These cards are meant to be used, not just read.

2011-01-15

Cover Image For Arduino...

Arduino

Arduino is an open-source platform that makes DIY electronics projects easier than ever. Even if you have no electronics experience, you’ll be creating your first gadgets within a few minutes. Step-by-step instructions show you how to build a universal remote, a motion-sensing game controller, and many other fun, useful projects. This book has now been updated for Arduino 1.0, with revised code, examples, and screenshots throughout. We’ve changed all the book’s examples and added new examples showing how to use the Arduino IDE’s new features.

2011-01-10

Cover Image For The RSpec Book...

The RSpec Book

Behaviour-Driven Development (BDD) gives you the best of Test Driven Development, Domain Driven Design, and Acceptance Test Driven Planning techniques, so you can create better software with self-documenting, executable tests that bring users and developers together with a common language.

Get the most out of BDD in Ruby with The RSpec Book, written by the lead developer of RSpec, David Chelimsky.

2010-12-02

Cover Image For Driving Technical Change...

Driving Technical Change

If you work with people, you need this book. Learn to read co-workers’ and users’ patterns of resistance and dismantle their objections. With these techniques and strategies you can master the art of evangelizing and help your organization adopt your solutions.

2010-11-09

Cover Image For Pragmatic Guide to Git...

Pragmatic Guide to Git

Need to learn how to wrap your head around Git, but don’t need a lot of hand holding? Grab this book if you’re new to Git, not to the world of programming. Git tasks displayed on two-page spreads provide all the context you need, without the extra fluff.

2010-11-01

Cover Image For Pragmatic Guide to Subversion...

Pragmatic Guide to Subversion

Subversion is the most popular open-source version control system on the planet. Development teams-big and small, enterprise and open source-use this fast, feature-rich tool daily. Pragmatic Guide to Subversion presents the 48 essential tasks you need to know. It’s your shortcut to the Subversion master’s recommended set of best practices. With this book, you can get to the good parts quickly, and be more productive and effective.

Part of the Pragmatic Guide series

Paperback list price normally $25.00, now on sale for $9.95 while supplies last.

2010-11-01

Cover Image For Pragmatic Guide to JavaScript...

Pragmatic Guide to JavaScript

JavaScript is everywhere. It’s a key component of today’s Web—a powerful, dynamic language with a rich ecosystem of professional-grade development tools, infrastructures, frameworks, and toolkits. This book will get you up to speed quickly and painlessly with the 35 key JavaScript tasks you need to know.

2010-11-01

Cover Image For Seven Languages in Seven Weeks...

Seven Languages in Seven Weeks

You should learn a programming language every year, as recommended by The Pragmatic Programmer. But if one per year is good, how about Seven Languages in Seven Weeks? In this book you’ll get a hands-on tour of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. Whether or not your favorite language is on that list, you’ll broaden your perspective of programming by examining these languages side-by-side. You’ll learn something new from each, and best of all, you’ll learn how to learn a language quickly.

2010-10-27

Cover Image For The Agile Samurai...

The Agile Samurai

Here are three simple truths about software development:

1. You can’t gather all the requirements up front.
2. The requirements you do gather will change.
3. There is always more to do than time and money will allow.

Those are the facts of life. But you can deal with those facts (and more) by becoming a fierce software-delivery professional, capable of dispatching the most dire of software projects and the toughest delivery schedules with ease and grace.

2010-09-15

Cover Image For Hello, Android...

Hello, Android (3rd edition)

Google’s Android is shaking up the mobile market in a big way. With Android, you can write programs that run on any compatible cell phone or tablet in the world. It’s a mobile platform you can’t afford not to learn, and this book gets you started. Hello, Android has been updated to Android 2.3.3, with revised code throughout to reflect this updated version. That means that the book is now up-to-date for tablets such as the Kindle Fire. All examples were tested for forwards and backwards compatibility on a variety of devices and versions of Android from 1.5 to 4.0. (Note: the Kindle Fire does not support home screen widgets or wallpaper, so those samples couldn’t be tested on the Fire.)

2010-07-13

Cover Image For Test Driven Development...

Test Driven Development

Test-driven development (TDD) is a programming technique that reverses the usual sequence of coding and testing. By writing tests just in advance of the code needed to satisfy them, programmers:

  • Work with confidence
  • Work on a series of achievable steps instead of tackling a big problem all at once
  • Ensure that software design meets the need of the actual code
  • Leave behind a suite of tests to help preserve the integrity of the code

Note: Although the ideas aren’t language specific the author does use Java in the examples.

2010-06-24

Cover Image For SQL Antipatterns...

SQL Antipatterns

Bill Karwin has helped thousands of people write better SQL and build stronger relational databases. Now he’s sharing his collection of antipatterns—the most common errors he’s identified in those thousands of requests for help.

Most developers aren’t SQL experts, and most of the SQL that gets used is inefficient, hard to maintain, and sometimes just plain wrong. This book shows you all the common mistakes, and then leads you through the best fixes. What’s more, it shows you what’s behind these fixes, so you’ll learn a lot about relational databases along the way.

2010-06-17

Cover Image For ExpressionEngine 2...

ExpressionEngine 2

Whether you’re building a small site or a large corporate undertaking, ExpressionEngine is becoming the tool of choice. With this Quick-Start Guide, you’ll get hands-on experience with ExpressionEngine 2 by building a complete web site from start to finish. You’ll learn techniques and best practices for customizing and optimizing your sites, including working with new ExpressionEngine 2 features, templates, and site search.

2010-04-01

Cover Image For ExpressionEngine Techniques...

ExpressionEngine Techniques

This series is currently not for sale as the videos have become out of date.

Why work through common problems on your own when you can skip the trial and error and jump straight to a solution that works the first time? Learn the latest techniques the pros use to build full-featured websites with ExpressionEngine from Ryan Irelan, an ExpressionEngine guru. Each of these video tutorials teaches you how to solve a particular set of problems with ExpressionEngine, quickly and efficiently.

2010-03-09

Cover Image For Language Implementation Patterns...

Language Implementation Patterns

Learn to build configuration file readers, data readers, model-driven code generators, source-to-source translators, source analyzers, and interpreters. You don’t need a background in computer science—ANTLR creator Terence Parr demystifies language implementation by breaking it down into the most common design patterns. Pattern by pattern, you’ll learn the key skills you need to implement your own computer languages.

2009-12-28

Cover Image For Pomodoro Technique Illustrated...

Pomodoro Technique Illustrated

Do you ever look at the clock and wonder where the day went? You spent all this time at work and didn’t come close to getting everything done. Tomorrow, try something new. Use the Pomodoro Technique, originally developed by Francesco Cirillo, to work in focused sprints throughout the day. In Pomodoro Technique Illustrated, Staffan Nöteberg shows you how to organize your work to accomplish more in less time. There’s no need for expensive software or fancy planners. You can get started with nothing more than a piece of paper, a pencil, and a kitchen timer.

2009-11-10

Cover Image For Debug It!...

Debug It!

Professional programmers develop a knack of unerringly zeroing in on the root cause of a bug. They can do that because they’ve written a lot of buggy code and then gained experience fixing it. This book captures all this experience—use it, and you’ll find you write fewer bugs, and the ones you do write will become easier to hunt down.

2009-11-04

Cover Image For Source Control Made Easy...

Source Control Made Easy

Git has significantly changed the way teams develop software. Its distributed nature and lightweight branching and merging have made it possible for developers to massage their code bases in ways they couldn’t have imagined before. However, Git has a reputation for being hard to learn. And when folks transition to Git, they often settle for using a handful of commands and treat Git just like their other source control system. But because of its different approach to source control issues, many of the techniques and terminology we have learned in other source control systems do not translate cleanly when using Git. To begin to use Git effectively, you need to understand the underlying concepts.

In this 49-minute screencast, Jim Weirich takes you on a journey of how you might design and build a source control system from scratch. Along the way you’ll gain a deeper understanding of the first principles behind systems like Git, so things begin to make more sense.

This screencast is a great introduction to the principles of source control, for developers and managers alike! No prior experience with Git or other source control systems is required.

2009-10-20

Cover Image For Agile Coaching...

Agile Coaching

Discover how to coach your team to become more Agile. Agile Coaching de-mystifies agile practices—it’s a practical guide to creating strong agile teams. Packed with useful tips from practicing agile coaches Rachel Davies and Liz Sedley, this book gives you coaching tools that you can apply whether you are a project manager, a technical lead, or working in a software team.

2009-08-15

Cover Image For Manage Your Project Portfolio...

Manage Your Project Portfolio

Too many projects? Want to organize them and evaluate them without getting buried under a mountain of statistics? This book will help you collect all your work, decide which projects you should do first, second—and never. You’ll see how to tie your work to your organization’s mission and show your board, your managers, and your staff what you can accomplish and when. You’ll get a better view of the work you have, and learn how to make those difficult decisions, ensuring that all your strength is focused where it needs to be.

2009-08-05

Cover Image For Coding in Objective-C 2.0...

Coding in Objective-C 2.0

Objective-C is the programming language for writing native iPhone and Mac applications. It’s also the language that Apple uses to build their own applications and frameworks. So, if you know Objective-C, you have a lot of power at your fingertips. But if you’re new to C or object-oriented programming, then Objective-C can seem a little awkward at first. These screencasts by Bill Dudney, an experienced Objective-C programmer, will help you quickly get up to speed on Objective-C 2.0 basics.

2009-07-12

Cover Image For Programming Scala...

Programming Scala

Scala is an exciting, modern, multi-paradigm language for the JVM. You can use it to write traditional, imperative, object-oriented code. But you can also leverage its higher level of abstraction to take full advantage of modern, multicore systems. Programming Scala will show you how to use this powerful functional programming language to create highly scalable, highly concurrent applications on the Java Platform.

2009-07-02

Cover Image For Modular Java...

Modular Java

Attack complexity in your Java applications using Modular Java. This pragmatic guide introduces you to OSGi and Spring Dynamic Modules, two of the most compelling frameworks for Java modularization. Driven by real-world examples, this book will equip you with the know-how you need to develop Java applications that are composed of smaller, loosely coupled, highly cohesive modules.


This second reprinting of Modular Java has been revised to include updated information on OSGi Blueprint Services. It also details Pax-Runner’s new profiles feature that makes loading an OSGi runtime with bundles even easier, along with errata fixes and updates to bring the book up to date with current versions of the tools used.

2009-07-01

Cover Image For Using Map Kit...

Using Map Kit

Using the new Map Kit framework available in iPhone 3.0, you can embed customized maps within your iPhone application. In this screencast you’ll learn how to build an iPhone application from scratch that displays a map of recent earthquakes, shows custom annotations with callouts, and automatically zooms to a region of interest.

2009-06-29

Cover Image For Land the Tech Job You Love...

Land the Tech Job You Love

You’ve got the technical chops—the skills to get a great job doing what you love. Now it’s time to get down to the business of planning your job search, focusing your time and attention on the job leads that matter, and interviewing to wow your boss-to-be. Land the tech job you love.

2009-06-02

Cover Image For The Passionate Programmer...

The Passionate Programmer (2nd edition)

This book is about creating a remarkable career in software development. In most cases, remarkable careers don’t come by chance. They require thought, intention, action, and a willingness to change course when you’ve made mistakes. Most of us have been stumbling around letting our careers take us where they may. It’s time to take control. This revised and updated second edition lays out a strategy for planning and creating a radically successful life in software development.

2009-05-06

Cover Image For Programming Ruby 1.9...

Programming Ruby 1.9 (3rd edition)

Ruby is the fastest growing and most exciting dynamic language out there. If you need to get working programs delivered fast, you should add Ruby to your toolbox.

This book has been superseded. Please see the Fourth Edition for Ruby 1.9 and 2.0, or the original PickAxe for 1.8.

2009-04-15

Cover Image For Learn to Program...

Learn to Program (2nd edition)

For this new edition of the best-selling Learn to Program, Chris Pine has taken a good thing and made it even better. First, he used the feedback from hundreds of reader e-mails to update the content and make it even clearer. Second, he updated the examples in the book to use the latest stable version of Ruby, and also to use code that looks more like real-world Ruby code, so that people who have just learned to program will be more familiar with common Ruby techniques.

Not only does the Second Edition now include answers to all of the exercises, it includes them twice. First you’ll find the “how you could do it” answers, using the techniques you’ve learned up to that point in the book. Next you’ll see “how Chris Pine would do it”: answers using more advanced Ruby techniques, to whet your appetite as well as providing sort of a “Rosetta Stone” for more elegant solutions.

This fourth printing of Learn to Program, 2nd edition has been updated for Ruby 2.0.

2009-04-01

Cover Image For Agile Web Development with Rails...

Agile Web Development with Rails (3rd edition)

This book is obsolete.

2009-03-01

Cover Image For Classy Web Development with Sinatra...

Classy Web Development with Sinatra

This screencast series is not being sold as they are out of date—the example applications are based on the 0.9.0.3 release of Sinatra.

Sinatra is a small Ruby web application framework that packs a big punch. It’s also a lot of fun! You can use Sinatra to write tiny, focused web applications and lightweight REST services very quickly. And sometimes a lean and mean web app is all you need. If you haven’t given Sinatra a look, now’s a great time to get a fresh perspective on web development. Learn how to get the most out of Sinatra from Adam Keys, an experienced Ruby and Sinatra developer.

2009-01-22

Cover Image For The Ruby Object Model and Metaprogramming...

The Ruby Object Model and Metaprogramming

Metaprogramming lets you program more expressively. This makes your code easier to write and easier to maintain and extend. Learn both the hows and whys of metaprogramming Ruby from Dave Thomas, one of the most experienced Ruby programmers in the western world.

2008-12-26

Cover Image For Pragmatic Version Control Using Git...

Pragmatic Version Control Using Git

There’s a change in the air. High-profile projects such as the Linux Kernel, Mozilla, Gnome, and Ruby on Rails are now using Distributed Version Control Systems (DVCS) instead of the old stand-bys of CVS or Subversion.

Git is a modern, fast DVCS. But understanding how it fits into your development can be a daunting task without an introduction to the new concepts. Whether you’re just starting out as a professional programmer or are an old hand, this book will get you started using Git in this new distributed world.

2008-12-17

Cover Image For Insider Guide to GitHub...

Insider Guide to GitHub

GitHub is where the action’s at: you can host your public and private projects there, use it to collaborate on projects in a truly distributed way, and expand your social coding network. But to really get the most out of this great resource, you need an experienced guide to show you the ropes. Learn how the pros use GitHub from Scott Chacon, a long-time Git user and GitHub insider.

2008-12-06

Cover Image For Pragmatic Thinking and Learning...

Pragmatic Thinking and Learning

Software development happens in your head. Not in an editor, IDE, or design tool. You’re well educated on how to work with software and hardware, but what about wetware—our own brains? Learning new skills and new technology is critical to your career, and it’s all in your head.

In this book by Andy Hunt, you’ll learn how our brains are wired, and how to take advantage of your brain’s architecture. You’ll learn new tricks and tips to learn more, faster, and retain more of what you learn.

You need a pragmatic approach to thinking and learning. You need to Refactor Your Wetware.

2008-09-15

Cover Image For Creating a Compelling User Interface with Core Animation...

Creating a Compelling User Interface with Core Animation

No longer offered.

Core Animation adds that “wow!” factor to your Cocoa and iPhone applications. It’s not just cool, it also improves the user experience to make your application a cut above the rest. Learn how to create an animated and cinematic user interface with Core Animation from Bill Dudney, an experienced Cocoa developer.

2008-09-05

Cover Image For Scripted GUI Testing with Ruby...

Scripted GUI Testing with Ruby

If you need to automatically test a user interface, this book is for you. Whether it’s Windows, a Java platform (including Mac, Linux, and others) or a web app, you’ll see how to test it reliably and repeatably.

Many automated test frameworks promise the world and deliver nothing but headaches. Fortunately, you’ve got a secret weapon: Ruby. Ruby lets you build up a solution to fit your problem, rather than forcing your problem to fit into someone else’s idea of testing.

This book is for people who want to get their hands dirty on examples from the real world—and who know that testing can be a joy when the tools don’t get in the way. It starts with the mechanics of simulating button pushes and keystrokes, and builds up to writing clear code, organizing tests, and beyond.

2008-08-05

Cover Image For Mastering Dojo...

Mastering Dojo

Imagine a true thin-client web application environment, with no browser incompatibilities, no plugins, and an interface that’s closer to a desktop app. You can have it all, today. Welcome to The Dojo Toolkit.

Mastering Dojo walks you through the whole range of modern web programming problems, from bringing simple web pages to life with widgets and animation, to designing and building an enterprise-class, single-page Rich Internet Application (RIA).

Are your web pages becoming more and more complex, with hundreds of lines of sprawling JavaScript as clients demand modern Ajax designs? Or maybe you’re about to enter the new world of single-page, Rich Internet Applications? Dojo is the unified toolkit that you need to get the job done.

VERSIONS: Applicable for Dojo Versions 1.1 to 1.7. Versions 1.2 onward contain additional widgets, experimental api’s and bugfixes. Please see the Dojorelease notes for detailed information.

2008-06-01

Cover Image For Design Accessible Web Sites...

Design Accessible Web Sites

“Accessibility” has a reputation of being dull, dry, and unfriendly toward graphic design. But there is a better way: well-styled semantic markup that lets you provide the best possible results for all of your users. This book will help you provide images, video, Flash and PDF in an accessible way that looks great to your sighted users, but is still accessible to all users.

2007-12-01

Cover Image For A Peek at Computer Electronics...

A Peek at Computer Electronics

Are you a programmer or computer enthusiast? Do you feel comfortable with methods, functions, and variables? Do you wish you knew more about how the computer made it all work? Now you can. From basic electronics to advanced computer hardware, you’ll learn the magic behind the gear that makes it all run.

If you’re into tinkering, or ever thought about it, this book explains the basics of how it all works

2007-08-01

Cover Image For Programming Erlang...

Programming Erlang

Learn how to write truly concurrent programs—programs that run on dozens or even hundreds of local and remote processors. See how to write high reliability applications—even in the face of network and hardware failure—using the Erlang programming language.

2007-07-01

Cover Image For Manage It!...

Manage It!

This book is a reality-based guide for modern projects. You’ll learn how to recognize your project’s potholes and ruts, and determine the best way to fix problems—without causing more problems.

2007-05-01

Cover Image For The Definitive ANTLR Reference...

The Definitive ANTLR Reference

ANTLR v3 is the most powerful, easy-to-use parser generator built to date, and represents the culmination of more than 15 years of research by Terence Parr. This book is the essential reference guide to using this completely rebuilt version of ANTLR, with its amazing new LL(*) parsing technology, tree construction facilities, StringTemplate code generation template engine, and sophisticated ANTLRWorks GUI development environment. Learn to use ANTLR directly from the author!

This book covers ANTLR 3. Please see the new edition, The Definitive ANTLR 4 Reference, which covers ANTLR 4.

2007-05-01

Cover Image For Release It!...

Release It!

“Feature complete” is not the same as “production ready.”

Whether it’s in Java, .NET, or Ruby on Rails, getting your application ready to ship is only half the battle. Did you design your system to survive a sudden rush of visitors from Digg or Slashdot? Or an influx of real world customers from 100 different countries? Are you ready for a world filled with flakey networks, tangled databases, and impatient users?

If you’re a developer and don’t want to be on call at 3AM for the rest of your life, this book will help you.

2007-03-01

Cover Image For TextMate...

TextMate

TextMate is a powerful tool for programmers, web designers, and anyone else who regularly needs to work with text files on Mac OS X. TextMate focuses on pragmatic automation, which means it will save you time—time that’s always in short supply. See how your lowly text editor can become a hard working member of your staff.

2007-01-01

Cover Image For Everyday Scripting with Ruby...

Everyday Scripting with Ruby

Are you a tester who spends more time manually creating complex test data than using it? A business analyst who seemingly went to college all those years so you can spend your days copying data from reports into spreadsheets? A programmer who can’t finish each day’s task without having to scan through version control system output, looking for the file you want?

If so, you’re wasting that computer on your desk. Offload the drudgery to where it belongs, and free yourself to do what you should be doing: thinking. All you need is a scripting language (free!), this book (cheap!), and the dedication to work through the examples and exercises.

2007-01-01

Cover Image For Agile Retrospectives...

Agile Retrospectives

See how to mine the experience of your software development team continually throughout the life of the project. The tools and recipes in this book will help you uncover and solve hidden (and not-so-hidden) problems with your technology, your methodology, and those difficult “people issues” on your team.

2006-07-01

Cover Image For Interface Oriented Design...

Interface Oriented Design

Learn by pragmatic example how to create effective designs composed of interfaces to objects, components and services.

You’ll learn what polymorphism and encapsulation really mean, and how to use these ideas more effectively. See how to create better interfaces using agile development techniques, and learn the subtle differences between implementing an interface and inheriting an implementation. Take a fresh, modern view of Design By Contract and class responsibilities. Understand the basis of a service-oriented architecture, including stateful versus stateless interfaces, procedural versus document models, and synchronous versus asynchronous invocations.

2006-06-01

Cover Image For Pragmatic Version Control using Subversion...

Pragmatic Version Control using Subversion (2nd edition)

Revised content to reflect all the major changes to Subversion 1.3 New chapter on Subversion’s optional file locking to help you manage unmergeable binary files New sections covering path-based security for both the svnserve and Apache networking servers New advanced topics chapter covering programmatic access to Subversion and advanced repository management.

2006-05-01

Cover Image For Practices of an Agile Developer...

Practices of an Agile Developer

Want to be a better developer? This book collects the personal habits, ideas, and approaches of successful agile software developers and presents them in a series of short, easy-to-digest tips.

You’ll learn how to improve your software development process, see what real agile practices feel like, avoid the common temptations that kill projects, and keep agile practices in balance.

2006-04-01

Cover Image For Behind Closed Doors...

Behind Closed Doors

Great management is difficult to see as it occurs. Great management happens in one-on-one meetings and with other managers—all in private. It’s hard to learn management by example when you can’t see it.

Find out what goes on Behind Closed Doors and see how a skilled manager turns around a tricky management situation in seven weeks. You’ll learn how to provide and use feedback effectively, and become a better coach and mentor peers and team members. As you begin to build a cohesive, “jelled” team you’ll learn how to use your influence across the organization and make better choices daily to survive and thrive.

2005-09-01

Cover Image For Ship It!...

Ship It!

Many software projects run into trouble, and many never ship at all. Others run like well-oiled machines. This book shows you the basics of how to get your project well on the road to success.

Ship It! bucks current fashion trends and marketing hype; instead, you’ll find page after page of solid advice, all tried and tested in the real world: a collection of tips that show you what tools a successful team has to use, and how to use them well. You’ll get quick, easy-to-follow advice on modern techniques and when they should be applied.

2005-06-01

Cover Image For Programming Ruby...

Programming Ruby (2nd edition)

The Pickaxe book, named for the tool on the cover, is the definitive reference to Ruby, a highly-regarded, fully object-oriented programming language. This Second Edition has more than 200 pages of new content, and substantial enhancements to the original, covering all the new and improved language features of Ruby 1.8 and standard library modules.

2004-10-01

Cover Image For Pragmatic Project Automation...

Pragmatic Project Automation

Pragmatic Project Automation shows you how to improve the consistency and repeatability of your project’s procedures using automation to reduce risk and errors.

Simply put, we’re going to put this thing called a computer to work for you doing the mundane (but important) project stuff. That means you’ll have more time and energy to do the really exciting—and difficult—stuff, like writing quality code.

2004-07-01

Cover Image For The Pragmatic Programmer...

The Pragmatic Programmer

Straight from the programming trenches, The Pragmatic Programmer: From Journeyman to Master cuts through the increasing specialization and technicalities of modern software development to examine the core process—what do you do, as an individual and as a team, if you want to create software that’s easy to work with and good for your users.

This classic title is regularly featured on software development “Top Ten” lists, and is issued by many corporations to new hires.

We wrote this book before we created our publishing business, and we do not publish it. The Pragmatic Programmer is published by Addison Wesley, and may not contain the same ebook features or format the same as our Pragmatic Bookshelf books. Paperbacks are available wherever old-fashioned paperback books are sold, and the ebook is available here—all available ebook formats for one price, with no restrictive DRM.

For more on The Pragmatic Programmer have a look at the Pragmatic Programmer Resources page.

1999-10-01