Maintain-athon for Nock

Richard Littauer
nock
Published in
4 min readDec 11, 2018

--

Nock is a the premier http mocking tool for Node.js developers. But it's development is dead in the water at the moment. Our question, as maintainers, is this: Can we use a semi-sync online hackathon as a way to inject some life into a project? We don't know, but we're going to find out this Friday.

Nock's current status

Developed in early 2016, Nock has largely been run by a skeleton crew of interested users and casual maintainers for the past year since the original maintainer left the project. Gregor Martynus and I have been thinking for the few past half a year on how to improve the community for Nock. We wrote a lot of documentation edits. We set up bots: stalebot, Greenkeeper, and so on. We started running monthly video calls for people to drop in on. We tried to triage PRs and issues as well as we could.

We do have some funds, through our Open Collective. Coinbase, in particular, gave us a ton of money, which is fantastic.

But there's a persistent problem: right now, Nock is hard to maintain because it's a large codebase with multiple coding styles and a lot of feature creep. The tests aren't passing reliably, so we can't modularise it to make it easier to work on, and we can't depend on any automation to let us know what is going wrong. Answering issues and reviewing PRs is a timely process, because we have to navigate the sea of code to find the answers we want, and navigating takes time.

So, we don't have the time to answer's everyone's questions as fast as we would like to make people who open issues feel like it is an active community, and we don't have the personal resources to set aside hours and hours of time to fix the underlying issues. We don’t have the time to pay for a part-time coder to solve our issues. We're stuck.

How about a hackathon?

Last week, we hit on a new idea. Could we have a hackathon for Nock? We don't have the funds to fly anyone to Los Angeles or Vermont to join us physically. But we could do a synchronous, location-unspecific one.

So, next Friday, we're going to try something new: a semi-synchronous remote hackathon. We'll have a Zoom channel up all day, and set up a remote chat — such as Spectrum or Gitter — to enable people who don't want to be on Zoom to hang out. Gregor will get on at noon his time (PST), I'll jump on at noon on my time (EST), and I'll also be available and working from noon GMT if someone wants to join us then. The idea is that if anyone, anywhere in the world, wants to help us with their Open Source Friday time at their company (traditionally on a Friday), we'll be available and we'll be coding, too. We'll go until 5:00pm, local time. Hanging out over a video channel will make it seem like we're in the same place, and we can ask questions and pair program.

So, to sum up: Friday, December 14th. Noon to 5:00pm, your time. On Zoom. Details and tracking on GitHub.

A scoped goal for this initial session is to fix all the tests. We want to be able to see 100% code coverage, and we want to make sure that in the future we know what PR will work and what won't, and we'll be able to say with surety that a certain section of the code can be extracted into its own module in the @nock org on GitHub.

Join us?

I've not heard of a synchronous, time-zone independent hackathon before. There's probably been one, but not for Nock. We'll see if it works. We'd love for you to come join us. Want to hack on something this coming Friday the 14th, but don't know what? Come hack on the Nock test framework and learn a lot about how http mocking works for Node.

To get involved, subscribe and comment in the Nock GitHub issue.

And read more about our Roadmap in another post here, written by Gregor.

Thanks for your time. Happy Mocking, ya'll. :)

See you there. 🐦

--

--

Richard Littauer
nock

Developer, linguist, adventurer, poet at large.