ImageGoNord output of Ghost Of Yotei FanArt, posted by BEST8OY on Reddit

ImageGoNord output of Ghost Of Yotei FanArt, posted by BEST8OY on Reddit

ImageGoNord: Balancing Open Source Freedom with Ethical Challenges

By Miki Lombardi

5 December, 2024


The open-source ecosystem thrives on collaboration, transparency, and creativity.

It is where innovative ideas transform into tools that empower millions. One such tool is ImageGoNord, a project that we made in Schödinger Hat, an open source non profit organization, that allows users to convert any image into any color palette like the popular Nord theme.

Its flexibility, free-to-use nature, and open-source philosophy make it a standout resource for designers, developers, and hobbyists (a.k.a linux rice).

However, with freedom comes responsibility, and the challenges ImageGoNord faces today highlight the complexities of open-source software in a world increasingly driven by automation and misuse of the “quick & now” culture.

Hi, I’m Miki from the Schrödinger Hat non profit organization. In this article I bring you a story of the open source world and I’d like to share different angles by posting some questions to you. Hope you’ll answer back and engage a conversation in the comments or via PM.

At the end of the article, if you liked it, please take a moment to check what we’re trying to do on the 21st March 2025 in the Open Source Day happening in Florence, Italy. More info on https://2025.osday.dev

What is ImageGoNord?

ImageGoNord is a tool that brings any palettes into your images by transforming them and giving back your beautiful wallpaper so you could customize your desktop. This tool has become a favorite for users seeking to add a coherent visual style to their projects.

The project is free to use, both as a standalone web application, via the python package or via the python CLI, making it a versatile tool for individuals.

Its open-source nature allows anyone to view, modify, and even contribute to its codebase. Anyone could install the website locally on their VPS, anyone could install the API in their project and anyone could use the python package in any way!

The Ethical Dilemma of Open Source

One of the beauties of open source is its ability to democratize software development. It fosters collaboration, encourages learning, and breaks down barriers to access. But these same qualities can also create vulnerabilities, as ImageGoNord has discovered.

Recently, the project's free-to-use API became a target for aggressive scraping. Many individuals began overloading the service with requests, taking advantage of its openness without regard for the costs or ethics involved. This behavior strains the infrastructure, increasing operational expenses for maintainers and potentially degrading the experience for legitimate users who don’t have the ability or skills to use the python package by themself.

Questions for Reflection:

  • Should open-source maintainers bear the burden of misuse simply because they chose to make their project free and open?
  • How can communities enforce ethical behavior while preserving the spirit of openness?

The Philosophy of Free Software

At the heart of Schrödinger Hat is the ethos of free software. The ImageGoNord project operates under a permissive license, allowing users to do almost anything with it: run, study, share, and modify. We started under MIT but we later changed to AGPLv3.

With freedom comes the possibility of exploitation.

The philosophical underpinnings of free software often rest on trust—trust that users will respect the effort and resources invested by the maintainers. Yet, this trust can be abused. The scraping incidents faced by ImageGoNord raise an important question: how do we balance the freedom to use with the responsibility to respect?

Free software is not just about free access; it is about creating ecosystems where everyone benefits without harming others. Misuse of free resources, as seen with ImageGoNord’s API, highlights the need for a cultural shift. Users must understand that while the software may be free, maintaining it is not.

Defending the Project: A Pragmatic Approach

To mitigate misuse, the ImageGoNord team adopted a counter-offensive strategy using Nginx and iptables. The team implemented IP-blocking rules to deny access to abusive users.

How It Works:

  1. Identify Offenders: Using server logs, the team monitors traffic patterns to identify IPs making excessive requests or displaying suspicious behavior.

Implement Nginx Rules: The deny directive is used to block these IPs. For instance:

server {
  location /api/ {
    deny 192.168.1.1; # Example IP
    deny 203.0.113.0/24; # Block a subnet
    allow all;
  }
}
  1. Monitor and Update: As attackers adapt, the list is updated to ensure continued protection.

This defensive tactic not only shields the API from abuse but also emphasizes the value of maintaining a fair and accessible service for genuine users.

Just to give you some numbers: in about 8 days we received more than 500k requests from the top20 IP addresses reaching our converting endpoint.

We have received zero donations from the last year for maintaining the API alive.The question is: is it worth it to keep it?

Two Angles to Explore

1. Open Source and the Commons Dilemma

ImageGoNord’s challenges can be viewed through the lens of the “tragedy of the commons.” When a resource is freely available, individuals often exploit it without considering the collective impact. How can the open-source community create systems that encourage ethical use while still promoting freedom?

For instance:

  • Should API usage be rate-limited?
  • Would introducing an optional donation system help mitigate costs?
  • Could educating users about the impact of misuse foster a more respectful community?

2. A Call for Ethical Automation

The scraping issue also raises questions about automation ethics. In an era where bots can perform tasks at scale, what responsibilities do developers have when deploying them? Just because a resource can be exploited doesn’t mean it should be.

Questions for readers:

  • If you use an open-source tool, do you consider its impact on the maintainers?
  • Should the open-source community develop norms or codes of conduct for interacting with public APIs?

The Future of ImageGoNord

Despite these challenges, ImageGoNord remains a testament to the power of open source, at least in our organization. We continue to innovate and refine the project, ensuring it serves its community while defending against misuse. But the broader lesson is clear: as users and developers, we must engage with open-source projects thoughtfully and ethically.

A Closing Challenge

As you explore open-source tools like ImageGoNord, consider this: what role will you play in the ecosystem? Will you contribute positively, respecting the effort behind these resources, or will you take without giving back? The choice is yours, and the future of open-source software depends on it.