Resurrecting outdated software with CircleCI
Stephen Leach reduces errors and maximizes value on open-source development environment, Poplog, using CircleCI
If UK-based software engineer Stephen Leach has anything to say about it, Poplog, an open-source software development environment created in the 1970s, will once again become a must-have tool for developers. In his spare time outside of his current position as scrum master for a large UK-based IT company, Leach and Senior Software Engineer Will Price are working to “resurrect” Poplog, updating its workflows to today’s standards and bringing it back into mainstream development.
The challenge, says Leach, is keeping up a steady pace of updates and testing when development of Poplog isn’t his day job. “You have to accept that you’re not available all the time,” says Leach. “The interrupted pattern of work is just a feature of life when you’re working on a hobbyist basis. That means your error rate kicks up horribly because you forget the ins and outs of the undocumented scripts that you’ve picked up previously.”
Automation was the answer, but Leach’s past experience with CI/CD solutions made him wary of the time it would take to deploy a system. “CI/CD is brilliant but the solutions can be enormously slow and painful to set up,” Leach says. “Will and I decided that CI/CD would offer the only way we could keep going with our work.”
“When I give demos of Poplog and people ask, ‘How would you put that into the CI pipeline?’ I just say, ‘CircleCI.’ It’s that straightforward.”
Stephen Leach | Scrum Master at Poplog
The best CI/CD solution for open source projects
Leach had used Travis CI for years, but when a colleague recommended that he try CircleCI’s free plan, he and Price realized the solution could solve the development and testing challenges they faced for Poplog.
“CircleCI genuinely supports open source, and it’s very scalable,” Leach says. Price adds, “It’s got great debugging capabilities for SSH, and it’s easy to get a build working again when you build new pipelines.”
The Poplog build pipeline is extremely complicated, Leach explains, demanding a CI/CD solution that’s up to the task. “Just about every other CI/CD solution that works with containers prevents us from disabling address randomization – and unless you can do that, you can’t use containers,” Leach says. “Not only does CircleCI allow address randomization to be disabled, but it also provides virtual machines. For us, that was the clincher.”
Documentation for complex projects
For Leach and Price, the question isn’t how they’d manage the Poplog reboot if they didn’t have CircleCI – it’s that without CircleCI, the project wouldn’t happen at all.
“We couldn’t update Poplog without CircleCI,” Leach says. “What makes CircleCI even more attractive is that when you decide that you’re going to automate using it, you have to actually document your build process and formalize it. For an old system like Poplog, the documentation was missing. Now, not only do we have a system to build Poplog with, but it forces us to document our processes.”
The best part, says Leach? “It’s pretty easy to get started! When I give demos of Poplog and people ask, ‘How would you put that into the CI pipeline?’ I just say, ‘CircleCI.’ It’s that straightforward.”
Benefits since using CircleCI
- Reducing errors between gaps in active development time
- Maximizing valuable time for project leaders with easy setup