Web dev at the end of the world, from Hveragerði, Iceland

(Released!) Out of the Software Crisis: Systems-Thinking for Software Projects

The book that is the culmination of my decade-long obsession with software quality is out.

Out of the Software Crisis by Baldur Bjarnason

Software projects keep failing, not because we don’t have the right team or tools but because our software development system is broken. Out of the Software Crisis is a guide to fixing your software projects with systems-thinking making them more resilient to change and less likely to fail.

Get the ebook for $35

You can find the book’s website at: softwarecrisis.baldurbjarnason.com


You think you’re ready to make software

You’re a manager and you’ve got your processes running like clockwork. The deadlines are realistic. The requirements are clear. You’re using a hot new framework. It got you up and running in record time. The designer is cranking out designs like a machine. Your team is fired up. You’re fired up.

Or, you’re the tech lead or senior developer and you’ve been working with your manager on platform choices, testing strategy, language choice, and framework. The project’s technical decisions are sound—based on current best practices. It’s exciting. This time you got to make the right technical choices. You didn’t have to compromise because of managerial whim. It’s going to be great.

Then it turns to shit.

Nothing goes as planned. Everybody underdelivers and underperforms. You keep working on the process. You try everything. You cut back on your technologial ambitions. You try keep the code free of defects but time is running out. You follow all the best practices but aren’t getting the results you expected.

It should have been great, but it’s garbage.

You aren’t alone

You don’t suck.

Your team isn’t uniquely awful.

You aren’t doing any worse than average.

60-90% of all software projects fail. Big projects fail more than small ones. It all comes down to one inescapable fact: most software projects fail.

There must be a process out there that will get us on the right track? A method, tactic, or strategy? Maybe something technological? A programming language, or framework?

None of those are actual solutions. You don’t need a new framework. You don’t need a new programming language. You don’t need a new process. You can’t fix this with better tools because the tools aren’t broken.

The tools didn’t work for you because what was missing was a functioning system for the tools to work in.

Software development tools and processes, old and new, won’t work for you unless you understand software development as a holistic, integrated system.

Software development is an economic system whose primary purpose is to achieve business goals.

Fix your software development process with systems-thinking

Cover for the book 'Out of the Software Crisis

Out of the Software Crisis is a framework-agnostic book for coders and non-coders. Some technical knowledge is helpful for reading but not necessary. If you know what a web server is but couldn’t program one, this book is still for you. If you are a coder, the book’s concepts will help you in your work and collaboration. This book is intended to be read by the entire, cross-functional team.

This book contains everything I wished everybody on every team I’ve worked on knew and understood about software development condensed into 155 pages. It’s for anybody who has authority over processes and technical decisions, even if it’s only partial, even if your ‘team’ is just yourself.

It will explain…

  • The foundation concepts that software development is built on, why processes work for some but not others, which activities are actually responsible for generating value and which aren’t, and what it is exactly that frameworks are doing for you.

  • How all of these disparate elements of the software development process come together to form a system and how you can improve your project outcomes by adjusting the whole—how they integrate—without throwing everything out and starting from scratch.

  • The basics of how to see software development through the lens of systems-thinking and it goes into detail on how the elements of software development differ from most other products or projects.

  • The business value of unit testing and types—why skipping them will have a direct effect on economic outcomes.

  • How design creates value for the business through experimentation.

  • How to understand frameworks as systems, what they are, what they do for you, how they help, and why they can sometimes be harmful.

Get the ebook

The book is 155 pages long and comes in PDF and EPUB formats. You can buy copies with licenses to share with your team or your organisation. Or, you can buy for yourself.

Every edition will get all minor version updates (1.*) to the ebook for free. If I decide to add bonus materials, every edition will get them, for free, in the next update.

Get the Ebook for $35


See the website for information on terms and refund policy.

You can also find me on Mastodon and Twitter