In Seemplicity we work in a “Continuous Deployment” method. Every PR that a developer merges into the “main” branch is automatically delivered to production, and becomes customer-facing within about 30 minutes. One of the advantages of working this way, is that it empowers developers to own their code (new feature, bug fix) end-to-end – From development (code review, unit tests, design) to deployment (system tests) and post production (monitoring the feature over time).
At Seemplicity we believe that when developers own their code & are supported to do their best work, everyone wins. As such we’ve built process and use tools that help us empower such accountability. The “After 18:00” extension we’ve built is a small fun piece of it. The inspiration for this came from a post by Maya Gershovitz Bar, who is a Software Engineer at Facebook and an active tech blogger. The idea is that after 4pm, the normal “Ship It” button changes to “Ship It? After 4pm”.
This is a simple yet powerful feature, in my opinion. On the one hand, it reminds developers that there are consequences to merging the PR and deploying it to production, on the other hand, it leaves the control and choice in the developers’ hands. Its power is in its simplicity. Or as we say it in our language – seemplicity.
Because we couldn’t find an equivalent feature in Github, we decided to build it ourselves. We implemented it as a Chrome Extension that only works on Github’s “pull request” pages, and changed the text on the “squash and merge” button to “Are you sure you want to squash and merge after 18:00?” in our case. Like all other tools we use, it is up to the developer to decide whether he/she would like to use it.
Today we are releasing this code as open source. You can find the source here. Feel free to contribute of course!