A software engineer pulled a personal project down after he found out that one of the companies using it had recently signed a contract with the US Immigrations and Customs Enforcement (ICE).

The engineer, Seth Vargo, cited the ICE's "inhumane treatment, denial of basic human rights, and detaining children in cages," as the reason for taking down his library.

The project was called Chef Sugar, a Ruby library for simplifying work with Chef, a platform for configuration management. Varga developed and open-sourced the library while he worked at Chef, and the library was later integrated into Chef's source code.

Code's yank results in some Chef downtime

Earlier this week, a Twitter user discovered that Chef was selling $95,000-worth of licenses through a government contractor to the ICE.

The news didn't go well with Vargo, who, yesterday, September 19, took down the Chef Sugar library from both GitHub and RubyGems, the main Ruby package repository, in a sign of protest.

"I have a moral and ethical obligation to prevent my source from being used for evil," Vargo wrote on the now-empty Chef Sugar GitHub repository.

Vargo's actions didn't go unnoticed, and in a blog post published later in the day, Chef Software CEO Barry Crist said the incident impacted "production systems for a number of our customers."

The Chef team fixed the issue by scouring some of the older Chef Sugar source code and re-uploading it on their own GitHub account.

Vargo's actions praised

However, things didn't stop here. Vargo's unique method of protesting the ICE's treatment of children went viral on social media.

Many developers stood by his decision, even if they, too, had to find replacements for the Chef Sugar library in their own projects [there's one here].

props to the Google Engineer who yanked code from Chef for working with ICE. You've made my job harder today, but I really don't mind. — marea rosa (@smrt_fasizmu) September 19, 2019

I'm so proud of @sethvargo today, who removed his code from the Chef ecosystem after they entered into a contract with ICE.



"I have a moral and ethical obligation to prevent my source from being used for evil."https://t.co/CfAxbqXOym — Ian Coldwater ⎈ (@IanColdwater) September 20, 2019

If I were a @chef client, I would be FURIOUS right now.



You think you're working with a great, high-quality company that cares about your needs, and then it turns out they'll get into bed with WHITE SUPREMACISTS WHO TORTURE CHILDREN.



How absolutely despicable. I would leave. — ellen wondra won't build tech for ICE (@ln1draw) September 17, 2019

Over the course of the past day, Chef engineers and leadership have been bombarded with requests to drop out of the ICE contract and criticism for signing it in the first place.

Chef plans to continue working with the ICE

The pressure didn't come only from the outside, but also from within Chef. The company's CEO responded with an email sent to all employees, later also published on the company's blog.

Crist said Chef had been a long-time ICE collaborator for years, since the previous administration, long before the ICE become the hated agency it is today.

"While I understand that many of you and many of our community members would prefer we had no business relationship with DHS-ICE, I have made a principled decision, with the support of the Chef executive team, to work with the institutions of our government, regardless of whether or not we personally agree with their various policies," Crist said.

"I want to be clear that this decision is not about contract value - it is about maintaining a consistent and fair business approach in these volatile times. I do not believe that it is appropriate, practical, or within our mission to examine specific government projects with the purpose of selecting which U.S. agencies we should or should not do business," Crist added.

The Chef CEO did add that he didn't agree with the ICE's practices of separating families and detaining children, but that "Chef as a company that transcends numerous U.S. presidential administrations."