Matt Wynne

Tea-driven development 🫖

As I consider my future, I’ve been thinking about what I want the next chapter of my working life to look like.

Here are the things that really matter to me, in rough priority order:

  1. Provide a sustainable livelihood for my family

  2. Enjoy a fulfilling, inclusive, creative and fun work environment

  3. Solve an important problem for society

  4. Contribute to the commons

  5. Teach others what I know

#1 is a given. I realise I’m lucky to be able to expect this, but I do.

I’ll put up without #2 for the right price, but I won’t stick around for long unless I get the influence to create that kind of environment for me and everyone else.

I am really puzzled about #3. It seems like so much of the work available to me is simply making the engine of capitalism slightly more efficient. I’m OK with that – it’s the paradigm we live in, like it or not – but I deeply yearn to do something more political, to use the skills I have to actually improve society.

#4 matters to me a lot, but probably not quite as much as #3. I’m not really sure I believe in proprietary code at all anymore, and at the same time I’m really curious about how we can make open source software pay, to make it more sustainable instead of just relying on corporate philanthropy.

#5 gives me a great deal of pleasure, and I guess is really a part of #2.

If I could find a role with all five, I’d be very happy!

Back in 2010, David Chelimsky was re-writing RSpec, and had the idea to use Cucumber scenarios to drive the development. The RSpec website was not much at the time, and David’s intention was to generate user documentation automatically from those scenarios.

I was invested in the Cucumber open source project as a core team member, working as an independent consultant, and just starting to think about how we might be able to build revenue-generating tools around it.

So, together with an RSpec team member Justin Ko, I started work on Relish. Over time, Justin drifted away from the project, and my friend John Hardcastle got involved to help with the UX.

For a while, I was really into it. The service was growing, we had users who wanted to install it on-prem, and there was an active UserVoice forum (remember them?!) where people left their feedback on what else it should do.

In 2013 I started Cucumber Ltd with Aslak Hellesøy and Julien Biezmans, and Relish became part of the IP of that company. We did some lightweight maintenance on it, but our attention became focused elsewhere on building shiny new things – a collaborative editor for Gherkin based on CRDT, which we called Cucumber Pro – and building the training business that was bringing in the money.

To my frustration, each new iteration where we’ve tried to build a commercial tool for BDD practitioners (Cucumber Pro, Jam, CucumberStudio, Cucumber Reports) has never matched up to Relish for the basic use-case of publishing read-only documentation. We never quite got there before the project was shelved and we moved on to the next thing. So the RSpec project have remained its most loyal and biggest users.

Fast-forward twelve years, and the https://relishapp.com/rspec pages are still visited by hundreds of Ruby programmers every day.

Relish's IP and hosting is now owned by SmartBear, who acquired Cucumber Ltd in 2019.

Mostly, Relish has “just worked” and hasn’t caused us too many problems. There has been the occasional glitch that needed a touch of heroku run rails console but we’ve mostly been able to get away with paying it very little attention.

Until this week.

Unfortunately, I’m no longer in a position to be able to help. We have started some early conversations with SmartBear about releasing the IP for Cucumber, which I assume would include Relish’s codebase, but it’s early days.

My hope would be that we can open-source the code for Relish (in retrospect I wish we’d done this ages ago), find some sponsors for the hosting, and let it continue to serve as a platform for the RSpec team. At the very least they could salvage the rendering code to generate their own static documentation.

For the time being though, I’m afraid we’re a bit stuck.

My friend Jeff on a skin-track climbing towards the John Carter peak here in BC in January 2023 with the Kokanee Glacier's peaks in the background

Well, this is new.

After ten years building a company around the Cucumber open source project, I suddenly find myself out of a job.

I was laid off last Friday by SmartBear, who in June 2019 acquired the company I co-founded back in August 2013. It’s no secret that I had recently been involved in a research project to determine Cucumber’s future direction at SmartBear. As the last remaining employee lucky enough to be paid to work on the open source project full-time, I guess the powers that be had already made their minds up about what the outcome of that research would be.

I figured we might be in the end-game, but I hadn’t expected it to come around so suddenly.

Practicalities

I was actually on vacation, with no internet, while all this happened last week, so I was not prepared. I’ve lost access to my matt@cucumber.io email address, meaning there are various services (like Cucumber’s community Slack) that I can’t sign into with my normal account. My GitHub notifications for the Cucumber project were also going into that inbox too.

So if you’ve written to me at that email address, or you’ve pinged me in GitHub or Slack and haven’t got a response, that’s the reason why.

Wow. Are you OK?

Emotionally, I’m OK; thanks for asking 💖

While it’s been interesting, from an anthropological point of view, to spend so much time on the inside of a private-equity backed US company, the culture didn’t suit me well I am pretty relieved—even excited—to be out. I also did a lot of grieving around the time of the acquisition, and I have a lot less attachment to the Cucumber project or my role in it than I used to.

Still, I feel a sense of responsibility towards it, and I hold a great deal of respect and affection for the volunteer members of the community who put so much of their free time into nurturing the project.

I’m not taking this personally. SmartBear has grown significantly since we were acquired in 2019, and the scale of their ambitions has grown too. Although our research showed there is a market for commercial tools built for the Cucumber audience, that market probably just isn’t big enough for a company like SmartBear. There’s no compelling reason for them to continue sponsoring an open source project that doesn’t directly contribute to the bottom line.

I’m optimistic that SmartBear will have the good sense to avoid doing a Hudson, and I’ll do what I can to try and ensure that assets such as the domain, trademarks, training videos, reports service and so on will be transferred into community ownership in due course. I’ve had some positive conversations with senior SmartBear executives about this before I left, and have had some reassuring signals since as well. So I’m hopeful, but we’ll see.

Still, without a significant commercial sponsor, the future of the project is uncertain right now. Would your company like to step in and help?

What are you going to do now?

Almost fifteen years since my first commit to Cucumber, I want to take some space to consider what the next chapter of my work-life will look like; to figure out what’s important.

If you’ll indulge me, I may be using this new blog to think out loud about that a little. It uses the write.as service, which I rather like so far.

I’m going to try and keep the laptop closed as much as possible for the next few weeks, but I’d love to hear from you, whether you think you have an interesting work opportunity for me, or just want to say hi.

In the short term, I’m interested in providing remote coaching to teams in and around the Pacific timezone (I’m based on BC, Canada) who want to apply skills like ensemble programming, test-driven development (TDD), domain-driven design and continuous delivery to interesting and worthwhile problems.

If you want to chat, you can reach me at @mattwynne@hachyderm.io or grab some time in my calendar.

You can find my old tea-driven development blog here.

Enter your email to subscribe to updates.