Skip to content
DevMeme
4616 of 7435
The Classic Open-Source Feature Demand and the Oblivious User
OpenSource Post #5065, on Dec 6, 2022 in TG

The Classic Open-Source Feature Demand and the Oblivious User

Why is this OpenSource meme funny?

Level 1: Make It Yourself

Imagine you’re at a free lemonade stand run by your friend. Your friend is giving out lemonade they made, just to be nice. You drink a cup and it’s great. Then you say, “This lemonade is awesome! Why don’t you also start offering cookies and build a fancy stand with lights?” In other words, you’re asking your friend to do even more work (bake cookies, decorate the stand) because you want a full lemonade-and-cookie experience. Your friend looks at you, a bit tired, and replies, “Why don’t you bring some cookies or help me decorate if you want that?” You pause for a second, confused, thinking, “Huh? Me do it?” You expected your friend to just agree and do it all for you. But instead, they turned it back on you, suggesting you help out since it’s your idea.

This scene is funny because it flips the expectation. You thought you were a customer at a lemonade stand, so you could ask for extras. But actually, it was more like a group project among friends. Your friend’s response, “Why don’t you do it,” is a playful way of saying, “This is a team effort, not a service just for you.” In real life, it’s fair: if something is free and run by volunteers, you can’t demand extra features unless you’re willing to pitch in. The meme’s situation is just like that: someone asked for a big new feature in a free project, and the person in charge basically said, “sure, go ahead and make it if you want it!” It teaches us that if we want something improved in a community project, sometimes we should be ready to help make it happen ourselves.

Level 2: Open Source Etiquette

Let’s break down what’s happening in this GitHub issue for those newer to open source collaboration. On GitHub, projects have an issue tracker where users and developers can report bugs or request enhancements. Here, issue #52 was opened by a user named PCUser2021. The title and comment say: “Why don't you update this app & develop a GUI for it!” This is essentially a feature request – the user wants the app to be updated and specifically is asking for a GUI. A GUI (Graphical User Interface) is a user-friendly visual interface (windows, buttons, menus) as opposed to using the app through a text-based command line. So perhaps the app currently only works via commands in a terminal, and PCUser2021 is asking, rather bluntly, for the maintainers to not only update it but also create a whole new graphical interface for it. That’s a pretty big ask!

Now, another person in the thread, mbonne – likely a maintainer or an experienced contributor of the project – responds with: “Why don't you PCUser2021!!!” If we put that in a calmer tone, it reads: “Why don’t you do it, PCUser2021?” This response is turning the request back on the requester. In open source projects, the code is publicly available, so anyone (including PCUser2021) could, in theory, make the changes they want. mbonne’s point is: if you really want a GUI, you have the power to contribute that feature yourself. This is a common mindset in open-source communities: contributions are welcome. The phrase maintainers often use is “patches welcome,” meaning they’re open to improvements if someone else is willing to do the work and submit a patch or pull request. mbonne’s reply is basically the less polite, more comedic version of that. It’s as if they said, “Feel free to code it yourself!” but with a bit of exasperation peeking through.

PCUser2021’s follow-up question, “What do you mean?”, shows that they might not understand the implication. It suggests they expected the maintainers to simply agree or explain when the update/GUI would be delivered. Instead, they got a challenge to do it on their own. This is where communication breakdown happened: the user was thinking like a consumer, but the maintainer answered like a collaborator. In an open source developer community, those roles can blur – users can become contributors. But not everyone knows that or is ready for it. If you’re new to open source, it might be surprising that a maintainer essentially says, “You want this feature? You can implement it.” After all, in traditional software (like a paid app or corporate product), users make requests and the company’s developers are expected to fulfill them if feasible. Open source is different: it’s more of a do-ocracy (things get done by the people who do them).

Let’s clarify a few terms and norms here for newcomers:

  • Maintainer: The person (or people) in charge of an open source project. They review contributions, fix issues, and guide the project. Often they are volunteers or doing this in their spare time.
  • Issue: On GitHub, an issue is a discussion thread for tracking bugs, tasks, or requests. PCUser2021 opened an issue to request a feature (an update + GUI).
  • GUI vs CLI: GUI (Graphical User Interface) uses graphics/icons; CLI (Command Line Interface) uses text commands. Many open source tools start as CLI because it’s simpler to build and appeals to power users. Writing a GUI is a significant undertaking – it requires designing windows, buttons, event handling, etc. That’s likely why the user wants it (to make the app easier to use), but also why the maintainer isn’t jumping to do it (it’s a lot of work, possibly outside the project’s original scope).
  • “Why don’t you [do it]”: In open source, this phrase indicates the project is open for contributions. It’s not necessarily rude in context – it’s literally an invitation to contribute. But the phrasing here was very direct, which is why it comes off as humorous (and a tad sassy). A more standard maintainer reply might be, “We currently don’t have plans for a GUI, but we’d welcome a contribution if someone is interested.” mbonne cut straight to the chase with a playful tone.
  • Fork and Pull Request: If PCUser2021 did want to take up the challenge, they would fork the repository (make their own copy of the project’s code), do the updates and create the GUI on their own copy, and then create a pull request on GitHub. A pull request is basically saying, “I’ve made some changes, would you like to pull (merge) them into the main project?” If the maintainers approve the PR, the feature gets added for everyone. That’s the beauty of collaboration in open source.

So why is this exchange meme-worthy? Because it’s a learning moment wrapped in humor. It highlights collaboration challenges: The user’s approach lacked some open source etiquette (it was more of a demand than a polite request, and without any offer to help). The maintainer’s patience was perhaps thin, so they replied with a quip that carries an important message: open source isn’t a one-way street. In a healthy open-source project, users are encouraged to become collaborators. Even if you’re not a coding wizard, there are ways to contribute (report bugs with detail, offer to test, write docs, etc.). Simply demanding “why don’t you do this for me” misses the spirit of Collaboration that open source relies on.

For a junior developer or someone who’s just a user of open source tools, the takeaway is: always remember there are humans behind that project. They’ve likely spent late nights fixing bugs for free, they have their own priorities, and they owe you nothing (since you didn’t purchase a service; you’re using something they shared). If you have a feature idea, it’s great to share it, but consider how you share it. Here are some etiquette tips when making feature requests in an open-source project:

  • Be polite and appreciative: Instead of “Why don’t you add a GUI!”, say “Thank you for this tool. I was wondering if a GUI is planned or if there’s interest in one?”. Acknowledge the maintainers’ work before asking for more.
  • Don’t assume effort is trivial: Adding a GUI might sound simple, but it can be a huge task. It’s wise to ask rather than demand. e.g., “Would a GUI be in scope for this project? I imagine it might be complex.” This shows you respect the complexity.
  • Offer to help, if you can: Even if you’re not a coder, you could say, “I’m not experienced in coding GUIs, but I’m willing to learn or help test if needed.” This signals you’re not just expecting to be handed the feature. If you are a developer, you might even say you’re considering contributing it and wanted to discuss first.

By approaching it this way, maintainers are more likely to respond positively, maybe guiding you or at least explaining their roadmap. In our meme’s case, PCUser2021 skipped these niceties and went straight to a commanding “Why don’t you do X?” That’s why mbonne’s reply came back a bit cheeky. It’s a reminder that open source works on a give-and-take model. The DeveloperCommunity thrives when users become collaborators. And if a random user isn’t willing (or able) to contribute, they at least need to be patient and respectful, understanding that maintainers juggle many requests. After all, open source maintainers are often doing this as a labor of love, not as a paid obligation.

In summary, this meme captures a tiny drama that packs a big lesson: In open source, asking for a feature often implicitly includes the question “could you (the requester) help make it happen?” When that implication is laid bare, as mbonne did, it can be both funny and illuminating. For newcomers, it’s a peek into how communication in developer communities can sometimes get spicy, but there’s a purpose behind it — keeping the project a community effort rather than a one-sided service.

Level 3: Fork It Yourself

This GitHub issue thread is a textbook open-source standoff that many veteran developers recognize instantly. A user (PCUser2021) bluntly asks the maintainers: "Why don't you update this app & develop a GUI for it!" In response, contributor mbonne basically replies, "Why don't you, PCUser2021!!!" – throwing the challenge right back. This witty retort highlights the unwritten rule of Open Source projects: if you want a new feature, be prepared to contribute. It’s the classic feature request turned on its head. Experienced devs see the humor here because it exposes a frequently encountered dynamic in developer communities: eager users with big demands vs. overworked maintainers with limited time. The maintainer’s response is essentially the snarky version of “PRs welcome” (where PR stands for Pull Request). In other words, show us the code, not just the request!

At an industry level, this interaction underscores a mismatch in stakeholder expectations. The user, acting like a customer, expects the project to deliver updates and a shiny GUI on demand. The maintainer, on the other hand, expects users to understand the DIY ethos of FOSS (Free and Open Source Software): you didn’t pay for this app; it’s a collaborative effort, so you can help improve it. The gap between these mindsets is where the developer humor kicks in. Seasoned open-source contributors nod knowingly here — they’ve seen many drive-by feature requests where someone parachutes in asking for a major change without offering any help. This can be frustrating for maintainers who might already be battling collaboration challenges like backlog, technical debt, and sparse volunteer time. The bold reply “Why don’t you [do it]” is the maintainer’s way of leveling the playing field. It says: “We’re all developers here. If you want a GUI, nothing’s stopping you from building it. This is a community project, not a free feature factory.”

There’s a bit of developer frustration in mbonne’s comment (notice the triple exclamation marks!!!). It’s comedic in the context of DevHumor because it’s so direct. Instead of a polite corporate response, we get an unfiltered reality-check. Yet, beneath the humor lies a genuine lesson about communication in DevCommunities: open source works best when users become contributors rather than just consumers. The maintainer’s comeback is effectively saying, “We welcome your help, but we’re not your unpaid dev team.” It flips the script on the typical feature request interaction. In fact, this echoes a famous Linus Torvalds quip:

“Talk is cheap. Show me the code.” – Linus Torvalds, creator of Linux

Torvalds’ mantra is exactly what’s playing out here. Instead of spending energy demanding a GUI, the user could fork the repo and start coding. The humor is that PCUser2021 seems genuinely baffled by the suggestion, replying “What do you mean?” – as if the thought of doing it themselves never crossed their mind. That response, to seasoned devs, is the punchline. It perfectly captures the communication breakdown: the user treated the issue tracker like a customer service portal, while the maintainer answered in the language of open-source collaboration. This scenario is painfully relatable to maintainers who’ve dealt with “idea people” that want the OpenSource project to magically evolve to their needs. It’s both a cringe and a chuckle moment – we laugh because it’s true. The DevCommunity moral here? In open source, you gain the power to request features, but also the responsibility to pitch in. The meme nails that duality in one succinct exchange.

Description

This image is a screenshot of a GitHub issue thread, which perfectly captures a common dynamic in open-source communities. The issue, #52, is titled 'Why don't you update this app & develop a GUI for it!'. The initial comment from a user named 'PCUser2021' makes the same demanding request. A second user, presumably a maintainer named 'mbonne', replies with a witty and sarcastic retort: 'Why don't you PCUser2021!!'. The punchline is the final comment from the original poster, 'PCUser2021', who, completely missing the sarcasm and the ethos of open source, replies, 'What do you mean?'. The humor lies in the user's entitlement, treating a free, community-driven project like a commercial product they've paid for, and their subsequent cluelessness when the 'pull requests are welcome' attitude is reflected back at them

Comments

7
Anonymous ★ Top Pick Some users think 'FOSS' stands for 'Free On-demand Software Service'. The correct response is always to turn their feature request into an invitation to their first pull request
  1. Anonymous ★ Top Pick

    Some users think 'FOSS' stands for 'Free On-demand Software Service'. The correct response is always to turn their feature request into an invitation to their first pull request

  2. Anonymous

    On GitHub, “Please add a GUI” is maintainer-speak for: “Congrats, you’ve volunteered to babysit 60 MB of Electron updates until the heat death of the universe.”

  3. Anonymous

    After 20 years in tech, I've learned that 'Why don't you add a GUI?' translates to 'I want enterprise software quality for free, delivered yesterday, with no intention of contributing code, documentation, or even a proper bug report' - and the maintainer's response is the politest version of 'git clone && git commit' I've ever seen

  4. Anonymous

    The beautiful irony of open-source: someone who can't figure out why 'Why don't you do it yourself?' is a valid response to their demands, yet somehow found their way to GitHub to file an issue. This is the digital equivalent of walking into a free community kitchen, demanding they add a Michelin-star menu, then asking 'What do you mean?' when told to grab an apron. Classic PCUser energy - the 'PC' stands for 'Please Code (for me)'

  5. Anonymous

    In OSS, 'Why don’t you add a GUI?' compiles to 'PRs welcome' - the only horizontally scalable entitlement mitigation pattern we’ve found

  6. Anonymous

    “Please add a GUI” is the GitHub issue that turns a tidy CLI into a startup: event loop, state, Electron vs Qt, installers, i18n, accessibility, crash reporting, DPI bugs - PRs welcome

  7. Anonymous

    Open-source judo: flipping a GUI feature request into a user contribution pull request

Use J and K for navigation