I’m looking forward to keynoting at Agile Cambridge this year! It’s October 1st and 2nd my keynote opens the second day. I’ll be talking about “The Accountability Problem.” How do we define software department accountability so our business partners don’t do it for us? Software departments have a problem: they don’t know how to be accountable. The Sales, Marketing, Partners, and Customer Success departments do: Sales is accountable for the revenue they bring in; Marketing is acc...| James Shore
I gave the opening keynote at the Regional Scrum Gathering Tokyo conference on January 8th, 2025. My topic was “The Best Product Engineering Org in the World:” How do you create the best product engineering organization in the world? James Shore had to face that question in his new role as Vice President of Engineering. In the end, it came down to six answers, and six new questions: People. We’d have the best people in the business, and we’d be the best place for them to work. But how...| James Shore
Jade Rubick interviewed me for his “Decoding Leadership” podcast recently. We had a delightful conversation about scaling organizations. We talked about using FaST for increasing the size of teams, the role of management, and scaling development practices using player-coaches. It’s an engaging conversation that’s chock-full of interesting ideas. Take a look.| James Shore
Brent Miller: In April we would announce what we were doing for the conference in October... the year before Upscale we got zero done, which was just a terrible situation for us to be in. ...We started working on [Upscale] in the fall after the whiff on our conference, knowing we were going to roll it out in the spring—probably after we made the commitments for the fall—and we were going to have to do the organizational transformation, do all the change management, have everybody look aro...| James Shore
One of my most enduring works is the Agile Fluency Model, which I created with Diana Larsen. Our original article, The Agile Fluency Model: A Brief Guide to Success with Agile has been translated into multiple languages. And now... that includes Brazilian Portuguese! Download the Brazilian Portuguese version here. Many thanks to Renato Barbieri for creating this translation for us. His book, Uma Breve História da Agilidade, tells the history of the Agile movement. I haven't read it yet—par...| James Shore
I’m thrilled to announce that my commercial “Testing Without Mocks” training course is now available for free! “Testing Without Mocks” Training My “Testing Without Mocks” resources—also known as “Nullables”—are consistently among the most popular material on this site. I used to offer an instructor-led course for it. But I’m too busy for that now, so I’ve released that same high-quality course in a self-guided format. There’s just one caveat: the self-guided versio...| James Shore
In my new role as VP of Engineering, there was one question I was dreading more than any other: “How are you measuring productivity?” I can’t fault the question. I mean, sure, I’d rather it be phrased about how I’m improving productivity, rather than how I’m measuring it, but fair enough. I need to be accountable for engineering productivity. There are real problems in the org, I do need to fix them, and I need to demonstrate that I’m doing so. Just one little problem: software ...| James Shore
I’m pleased to announce that the Korean translation of The Art of Agile Development is now available! You can buy it here. Many thanks to 김모세 for their hard work on this translation.| James Shore
I’m pleased to announce that there’s a special edition of The Art of Agile Development available in the Indian subcontinent and Africa! (It’s in English.) You can buy it here. Many thanks to Shroff Publishers & Distributors Pvt. Ltd. (SPD) for making this edition available.| James Shore
In this weekly livestream series, Ted M. Young and I build an AI-powered role-playing game using React, Spring Boot, and Nullables. And, of course, plenty of discussion about design, architecture, and effective programming practices. Watch us live every Monday! For details, see the event page. For more episode recordings, see the episode archive. In this episode... We turn to parsing the response returned from the “say” API, which will be the OpenAI response to a message. To do that, we a...| James Shore
In this weekly livestream series, Ted M. Young and I build an AI-powered role-playing game using React, Spring Boot, and Nullables. And, of course, plenty of discussion about design, architecture, and effective programming practices. Watch us live every Monday! For details, see the event page. For more episode recordings, see the episode archive. In this episode... We continue working on our front end. After some conversation about working in small steps, we turn our attention to BackEndClien...| James Shore
In this weekly livestream series, Ted M. Young and I build an AI-powered role-playing game using React, Spring Boot, and Nullables. And, of course, plenty of discussion about design, architecture, and effective programming practices.| www.jamesshore.com
I’ve given several talks on FAST (Fluid Scaling Technology) this year. They cover the same material, but in varying levels of depth and with different audience questions. Here’s the abstract:| www.jamesshore.com
This is a transcript of my keynote presentation for the Regional Scrum Gathering Tokyo conference on January 8th, 2025. Watch the video here.| www.jamesshore.com
Automated tests are important. Without them, programmers waste a huge amount of time manually checking and fixing their code.| www.jamesshore.com
Back in April, I posted the new career ladder I was planning to introduce at OpenSesame, which I’ve joined as VP of Engineering. We rolled it out in July, so now’s a good time to share what we’ve learned so far.| www.jamesshore.com
“Nullables” are a novel technique for isolating production code from external systems and state. Although they also have production uses, they’re particularly valuable for creating fast, reliable tests. This page connects to you resources for using Nullables in your code.| www.jamesshore.com
One of the most common questions I get about Nullables is, “How is that any different than a mock?” The short answer is that Nullables result in sociable, state-based tests, and mocks (and spies) result in solitary, interaction-based tests. This has two major benefits:| www.jamesshore.com
Update: See an update on our progress in my August update.| www.jamesshore.com
A few weeks ago, I released a massive update to my article, “Testing Without Mocks: A Pattern Language.” It’s 45 pages long if you print it. (Which you absolutely could. I have a fantastic print stylesheet.) Along with it, I released my new Nullables Hub, which has all sorts of resources related to that article.| www.jamesshore.com
James Shore has totally upgraded The Art of Agile Development with new tools, techniques, and lessons from the past decade. This gem of a book will help you evolve your way of working to a truly Agile and effective way.| www.jamesshore.com