On Thursday, Amazon Web Services launched CloudWatch Synthetics Recorder, a Chrome browser extension for recording browser interactions that it copied from the Headless Recorder project created by developer Tim Nolet.
It broke no law in doing so – the software is published under the permissive Apache License v2 – and developers expect such open-source projects will be copied forked. But Amazon’s move didn’t win any fans for failing to publicly acknowledge the code’s creator.
There is a mention buried in the NOTICE.txt file bundled with the CloudWatch extension that credits Headless Recorder, under its previous name “puppeteer-recorder,” as required by the license. But there’s an expectation among open source developers that biz as big as AWS should show more courtesy.
“The core of the problem here (for me at least) is not the letter of the license, it’s the spirit,” said Nolet in a message to The Register.
“It’s the fact that no one inside of AWS cared enough to stop and think ‘is this a dick move? Is this something I would want to have happen to me?’ Hence the current PR damage control campaign. They know it’s wrong. Not illegal, but wrong. Someone just had to tell them that.”
Nolet runs a software monitoring service called Checkly and developed the Headless Recorder browser extension as a tool for his company and customers. He said he hadn’t given the license for Headless Recorder a lot of thought because it’s just a browser extension full of client-side code – meaning it’s visible to anyone familiar with browser development tools.
“Amazon should have opened a PR [pull request] and proposed ‘let’s add this feature to your code. Or they could have simply kept their fork open source,” he said.
“In the least, they could have mentioned that their work was based on my work. I do this in the README.md of the project itself where I acknowledge the creators of an old project by segment.io that I used as inspiration.”
This is not the first time AWS has taken the work of open source developers and turned it into an AWS product. Last year, it launched Open Distro for Elasticsearch, to the dismay of Elasticsearch, a company formed to make a business out of the Elasticsearch open source project. And earlier that year it released DocumentDB, based on an outdated version of the open source MongoDB code.
Many popular open source licenses allow this, but because AWS brings billions in infrastructure assets into the competition, smaller companies trying to commercialize open source projects find the challenge difficult to deal with.
Part of the problem is that open source zealots make a point of refusing any kind of money for FOSS licensed projects, which is fine for the zealots as they are paid by a university or foundation. Developers themselves, meanwhile have to contend with other people monetising their work and having to accept it. Projects are hijacked and closed and the original impetus and community around that are killed by large companies.
This is something I have been talking about since 2017 in my talk Open Source XOR Money