Langr Software Solution Colorado Springs, Colorado resources

Our resources

Books

Over half a dozen books

Articles

Over 130 articles published at various portals & printed periodicals

Agile in a Flash

A couple hundred posts by Jeff Langr and Tim Ottinger. Basis for the printed PragProg card deck

Jeff's Blog

Over 250 posts since 2004

Jeff's GitHub

Over 100 repos, with a large number suitable for exercises and examples

Jeff's Quora

Over 1000 helpful answers to questions

Books

Pragmatic Unit Testing
in Java with JUnit, Third Edition

Pragmatic Unit Testing in Java with JUnit, 3rd Edition

The third edition of the decades-old classic is effectively a complely new book, almost completely overhauled and rewritten to remain relevant today. Almost all examples have been rewritten to be more streamlined and accessible, and all of them have been updated to a modern version of Java and JUnit. I've also added a chapter that demonstrates how unit testing remains an effective tool in the age of AI, even in the face of the rapidly accelerating ability of LLMs to generate code.

Clean Agile: Back to Basics

Clean Agile

For Bob Martin’s best-selling book Clean Code, he invited a number of former Object Mentors to contribute chapters for the book. Jeff Langr and Tim Ottinger were invited back for Bob’s 2019 book Clean Agile, in which Bob “shows how to bring unprecedented levels of professionalism and discipline to agile development — and thereby write far more effective, successful software.” Tim and Jeff provided a chapter on “Agile Tools,” in which they discuss what’s important in settling on the day-to-day tools you’ll want for agile software development.

Pragmatic Unit Testing
in Java 8 with JUnit

Pragmatic Unit Testing in Java 8 with JUnit

In 2003, Andy Hunt and Dave Thomas published Pragmatic Unit Testing in Java with JUnit, a top-seller and great tool for quickly getting up to speed on unit testing. Jeff Langr updated nearly every aspect of the book, which is designed as a friendly but meaty introduction for Java programmers new to unit testing. Lots of new code (featuring Java 8 and JUnit 4.x), new techniques, mnemonics, and topics, all based on over a dozen years of wisdom gained from practical application of unit testing on real projects!

Modern C++ Programming with
Test-Driven Development:
Code Better, Sleep Better

Modern C++ Programming with Test-Driven Development

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 Modern C++ Programming with Test-Driven Development, published in October 2013 by the Pragmatic Bookshelf, Jeff Langr gives you hands-on lessons in the challenges and rewards of doing TDD in C++.

Agile in a Flash: Speed-Learning Agile Software Development

Agile in a Flash

This comprehensive set of cards, created by Tim Ottinger and Jeff Langr and published by the Pragmatic Bookshelf in February 2011, is an indispensable resource for agile teams. The deck of Agile in a Flash cards teaches leadership, teamwork, clean programming, agile approaches to problem solving, and tips for coaching agile teams. Team members can use the cards as reference material, ice breakers for conversations, reminders (taped to a wall or monitor), and sources of useful tips and hard-won wisdom.

Clean Code

Clean Code

Uncle Bob Martin’s Clean Code is a collection of wisdom on how to build clean systems. Jeff Langr contributed two chapters to the book, one on clean classes and one on emergent design. The book, published by Prentice Hall PTR in August 2008, is a cohesive compilation of contributions from several Object Mentors both past and present.

Agile Java: Crafting Code with Test-Driven Development

Agile Java

Agile Java, by Jeff Langr, provides a modern introduction to professional software development. Agile Java was published in February 2005 by Prentice Hall PTR. This code-intensive book of over 750 pages teaches Java as a high-discipline craft, using an object-oriented (OO) and test-driven approach from the ground up. The book demonstrates and uses the latest features of Java 2 version 5.0.

A solutions manual is available for qualified instructors. Contact Jeff Langr for further details. View Review links / excerpts, Errata, and Source.

Solutions Manual for Agile Java

Solutions Manual for Agile Java

Astute readers of Agile Java will note that it's designed to work in a university-level course. The book contains 15 core chapters, one per week of a typical semester.

Each Agile Java chapter comes with exercise questions designed by Jeff Bay. I coded solutions for each question and also provided a good amount of explanatory text; this became the Solutions Manual for Agile Java. It was printed in softcopy but not offered for sale to the general public. At one point, qualified instructors could get a free copy of the Solutions Manual.

Essential Java Style: Patterns for Implementation

Essential Java Style: Patterns for Implementation

Essential Java Style, by Jeff Langr, presents a pattern-based approach to defining a clean, common Java programming style. The book takes its lead from Kent Beck’s book Smalltalk Best Practice Patterns. A fun review of the book appeared at Dr. Dobb’s Electronic Review of Computer Books (and has been re-captured here, since the ERCB no longer exists). Although out of print (Essential Java Style was published in 1999 by Prentice Hall with a copyright date of 2000), you can usually order used copies of Essential Java Style at Amazon.

Pragmatic Unit Testing
in Java 8 with JUnit (Japanese)

Pragmatic Unit Testing in Java 8 with JUnit

In 2003, Andy Hunt and Dave Thomas published Pragmatic Unit Testing in Java with JUnit, a top-seller and great tool for quickly getting up to speed on unit testing. Jeff Langr updated nearly every aspect of the book, which is designed as a friendly but meaty introduction for Java programmers new to unit testing. Lots of new code (featuring Java 8 and JUnit 4.x), new techniques, mnemonics, and topics, all based on over a dozen years of wisdom gained from practical application of unit testing on real projects!

Modern C++ Programming with
Test-Driven Development:
Code Better, Sleep Better (German)

Modern C++ Programming with Test-Driven Development

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 Modern C++ Programming with Test-Driven Development, published in October 2013 by the Pragmatic Bookshelf, Jeff Langr gives you hands-on lessons in the challenges and rewards of doing TDD in C++.

Modern C++ Programming with
Test-Driven Development:
Code Better, Sleep Better (Chinese)

Modern C++ Programming with Test-Driven Development

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 Modern C++ Programming with Test-Driven Development, published in October 2013 by the Pragmatic Bookshelf, Jeff Langr gives you hands-on lessons in the challenges and rewards of doing TDD in C++.

Agile Java: Crafting Code with Test-Driven Development (Korean)

Agile Java

Agile Java, by Jeff Langr, provides a modern introduction to professional software development. Agile Java was published in February 2005 by Prentice Hall PTR. This code-intensive book of over 750 pages teaches Java as a high-discipline craft, using an object-oriented (OO) and test-driven approach from the ground up. The book demonstrates and uses the latest features of Java 2 version 5.0.

Agile Java: Crafting Code with Test-Driven Development (Chinese)

Agile Java

Agile Java, by Jeff Langr, provides a modern introduction to professional software development. Agile Java was published in February 2005 by Prentice Hall PTR. This code-intensive book of over 750 pages teaches Java as a high-discipline craft, using an object-oriented (OO) and test-driven approach from the ground up. The book demonstrates and uses the latest features of Java 2 version 5.0.