A Road Trip That Became a Philosophy

December 2008. A software developer in Cleveland gets laid off from a startup. He has $2,400 in his bank account, no plan, and an idea that had been forming for years: what if you could learn more from the programmers you hadn't met than from the ones you already worked with every day?

So Corey Haines bought a one-way bus ticket to Chicago. Not to look for a job. To pair program his way across America in exchange for food and a place to sleep. He called it the Journeyman Tour - a nod to the old guild tradition of craftsmen traveling between masters before settling into their own practice.

He crashed with David Chelimsky. Then Gary Bernhardt. Then Uncle Bob Martin, Brian Marick, Dave Hoover. Each day, pairing on real code. Each evening, a filmed interview posted to his blog. The developer community started paying attention. By the time InfoQ covered it, he was a known name in circles that were used to known names.

"If you have other people pay for your food, you can live a lot longer than a couple months."

The $2,400 lasted the better part of nine months. The tour lasted as a legend far longer.

The Accidental Movement

One month into the tour, in January 2009, Haines found himself at CodeMash Conference in Sandusky, Ohio. With Gary Bernhardt, Patrick Welsh, and Nayan Hajratwala, he ran a day-long event built around a single programming problem: Conway's Game of Life.

The rules were simple to the point of being strange. You worked on the problem for 45 minutes. You found a new partner. You started over - from scratch. And here was the constraint that made it interesting: you deleted all your code at the end of every session.

Not because you failed. Because deletion was the whole point.

The reasoning was elegant: when you know you're going to throw it away, you stop protecting it. You stop making safe choices. You try the abstraction that seemed too risky, the naming approach that seemed too opinionated, the design pattern you'd read about but never used in production. You learn.

They called it Coderetreat. And then other people started running it. Then other countries. By 2011, it had grown to the point where Haines announced the first Global Day of Coderetreat - 91 cities, 1,600+ developers, all pairing on the same problem on the same Saturday in December.

The format was so self-sustaining that by 2014, Haines stepped back from active facilitation. The community runs it without him now. That is either the clearest sign of failure or the clearest sign of success, depending on what you think the job was.

Where He Came From

White Center, Seattle. Second most dangerous neighborhood in the city, by his own accounting. His father was a Boeing software developer, and Corey's first computer was his father's Commodore Pet - which he immediately used to cheat at games by breaking into the code, editing values, and continuing.

He burned through math booklets at his private Christian school so fast they started withholding them. He dropped out of high school at 15 and enrolled in community college. "Suddenly I was surrounded by people who were actually interested in learning," he said. He majored in mathematics and planned to get a PhD.

That plan ended when someone told him about the Budapest Semesters in Mathematics program. He didn't know where Hungary was. He didn't care. He went.

"I didn't know where Hungary was. No idea... I didn't care, I was going."

After one month, he called his father to say he was staying. After the program ended, he bought a one-way ticket back to Budapest. He stayed for years, teaching English while facing open discrimination, eventually finding his way into software development through an American company operating in Hungary. That company relocated him to Cleveland - and twelve years of professional development followed.

The Four Rules - What a Thousand Pairs Taught Him

From 2009 to 2014, Haines facilitated Coderetreats around the world. He watched thousands of pairs of programmers tackle the same problem over and over. He saw every mistake repeated. He saw every insight discovered independently, in parallel, by people who'd never met.

In 2014, he wrote it all down. "Understanding the Four Rules of Simple Design" - an ~85-page book published on Leanpub - is as close to distilled observational wisdom as software has produced. It uses Conway's Game of Life throughout, not because the problem is interesting but because it's familiar enough to disappear. The subject is Kent Beck's four rules of simple design, explored through every edge case and nuance Haines had seen play out in real rooms with real pairs.

Tests pass. Expresses intent. No duplication. Small. The rules are simple. The book is about why they're harder than they look.

Hearken: Journalism's Missing Question

In February 2015, Haines pivoted sharply. He joined journalist Jennifer Brandel - who had run the Curious City project at WBEZ in Chicago - as co-founder and CTO of Hearken.

The premise: newsrooms were asking the wrong questions, or more precisely, they were asking themselves instead of their audience. Hearken gave newsrooms a platform for readers to submit story questions, vote on what they most wanted covered, and then follow the reporting. Audience engagement as infrastructure. Editorial direction as a conversation rather than a broadcast.

Within a few years, Hearken served more than 60 paying newsrooms globally. Columbia Journalism Review covered it. It became a model for what public-powered journalism could look like in the digital era.

The Through-Line

What connects cheating at Commodore Pet games, moving to Budapest on a whim, pairing for room and board across America, inventing a deletion-based learning format, and building a platform for newsroom-audience dialogue?

Possibly this: Corey Haines has never once done the obvious next thing. He has consistently chosen the move that optimizes for learning over safety, for community over credential, for the interesting problem over the comfortable one.

He once described software craftsmanship as being about the reasons and values behind wanting to be a good programmer - not just the skill. He has lived that distinction. Currently a Staff Software Engineer at TriumphPay in Dallas, with 155+ public GitHub repositories and an active presence on Twitter/X (@coreyhaines), he remains one of software's clearest voices for fundamentals over hype.

"My goal in life is to be happy. I don't care about much else."

It sounds like an ending. It's actually the explanation for everything that came before it.