Pragmatic Software Development Solutions

How's your Scrum/agile process working for you? Want to really get your software team clicking?

I've been there and seen just about everything. I can help by providing the hands-on coaching your teams need. I can help your team learn learn how to continually improve. I can also help them master successful development practices such as test-driven development (TDD), automated acceptance testing/specification by example, OO design, refactoring, user stories, and pair programming. I can also help get your legacy code base back on track.

To help your teams get on the same page with respect to concepts and techniques, I offer training courses in TDD (test-driven development), designprogramming, automated acceptance testing/specification by example, and of course agile concepts and implementations. I can deliver training remotely or on site. My goal is to ensure students leave the classroom jazzed and ready to apply what they learned. Some of them tell me this is the best training they've ever attended.

Considering growing the distributed nature of your software development teams? I can also help you grow a successful distributed software development environment, which can help you assemble the best possible team for your technology and process stack.

Interested in hearing more? Want to talk about pricing, ask questions, or just want some general advice? Give me a call at 719-287-GEEK, or email me at  This e-mail address is being protected from spambots. You need JavaScript enabled to view it .

I've been building software for over 33 years. I've also worked with numerous development teams over the past 15 years to help them understand how to deliver better. I'm not a permanent coach/consultant, however--I've repeatedly returned to full-time development in those 15 years, to ensure my saw stays sharpened and my skills relevant, and to ensure I stay in touch with what "real" software developers go through.

Jeff Langr



New class, "TDD in Clojure"

04 November 2015

Learn how TDD can add value to your Clojure development experience in my new hands-on programming class, TDD in Clojure. You'll leave this two-day class with the confidence to go back to your desk and start test-driving code. You'll also learn how TDD best fits alongside REPL-Driven Development and test-after development.



New blog entry, "Surviving Chaos with Pairing"

30 March 2015

While I've been swamped for the past 18 months, I did find some time to write a bit here and there (but then got too lazy to do anything with it). Here's a blog post about my experiences at the end of 2013 with a few months of hyper-productive distributed development at a startup.


Pragmatic Unit Testing in Java 8 with JUnit published!

30 March 2015

Pragmatic Unit Testing in Java with JUnit

I'm excited to announce that my fifth book, Pragmatic Unit Testing in Java 8 with JUnit, is available for purchase from the Pragmatic Bookshelf, Amazon, and other retail outlets such as B&N. It's a near-complete rewrite of the Andy Hunt/Dave Thomas classic from 2003. My goal in rewriting the book was to update it based on what I've seen work in 15+ years of unit testing, and to pack a bit more "meat" into it (even though it's still designed as an introductory treatment of unit testing). If you enjoy the book, please drop a few kind words in an Amazon review--I'd greatly appreciate it!


News: Publication of Modern C++ Programming with TDD

30 October 2013

Modern C++ Programming with Test-Driven Development Jeff Langr's fourth book, Modern C++ Programming with Test-Driven Development: Code Better, Sleep Better, is now available for purchase from the Pragmatic Bookshelf, in both print and eReader formats, as well as retail outlets such as Barnes & Noble and Amazon!


New blog entry, "Running Google Maps in an AVD"

05 July 2013

In "Running Google Maps in an AVD," Jeff provides detailed steps for getting a map-based application to run in an Android Virtual Device (AVD). The steps are for the ADT, but should be adaptable to Android Studio.

Image: By Tom Murphy (Own work) [CC-BY-SA-3.0 (], via Wikimedia Commons

New blog post, "A Story Isn't a Feature"

20 March 2013

User stories are an essential part of agile software development. But are you simply trying to shoehorn your old requirements process into a new terminology? Find out why it's important to understand the definition of the word story in Jeff Langr's new blog post, "A Story Isn't a Feature."

Image source: AJC1, Flickr