Skip to content
DevMeme
2889 of 7435
Linux kernel built over email trounces startup excuses about remote web dev
OperatingSystems Post #3194, on Jun 6, 2021 in TG

Linux kernel built over email trounces startup excuses about remote web dev

Why is this OperatingSystems meme funny?

Level 1: Snail Mail vs. Smartphones

Imagine a bunch of friends all want to build a huge LEGO castle together, but they live in different towns. They don’t get to meet up in person. Instead of talking on the phone or using the internet (let’s pretend that doesn’t exist for a moment), they decide to send each other letters in the mail with their ideas and the new little LEGO designs they’ve made. So one kid writes a letter, “I built a tower, maybe you can build a gate,” and mails it. A few days later another kid replies by letter, “Great, I’ll build the gate and connect it like this,” maybe even drawing a picture. Piece by piece, through these slow mailed letters, they eventually create this amazing giant LEGO castle that all the pieces fit into. Pretty incredible, right?

Now, think of another group of kids who want to build a much smaller LEGO house together. These kids have all the modern things – they can text each other instantly, they can video chat, they can send pictures over their phones in a second. But then they start saying, “Ugh, it’s too hard to work together if we’re not all in the same room. Maybe we should just give up or wait until we can meet.” This sounds a bit silly when you compare it to the first group who built a castle by just sending letters. The meme is basically making this point: if the first group could accomplish something huge with really slow, simple communication, then the second group has no real excuse. In real life, the first group represents the people who built the Linux kernel by emailing each other, and the second group is like a startup company whining about how remote work is too hard even though they have the internet. It’s a funny way of saying, “Others did way more with way less, so surely you can do this small thing with all the advantages you have!” It reminds us that sometimes the problem isn’t the tools or the distance – it’s the attitude. So the joke is a friendly nudge: no excuses, if they could do it by mail, you can do it with your smartphones!

Level 2: Built via Email

This meme is talking about how one of the biggest, most complicated software projects ever – the Linux kernel – was (and still is) developed by people working completely remotely, using something as simple as email. To break that down: the Linux kernel is the core part of the Linux operating system. It’s basically the software that talks directly to the computer’s hardware (like CPUs, memory, disks) and makes it possible for other programs (your web browser, games, etc.) to run. Building a kernel is a huge undertaking; it’s extremely complex and requires a lot of coordination and careful coding. Yet, the Linux kernel is an OpenSource project, meaning its source code is open for anyone to see, use, and contribute to. Over the last few decades, thousands of programmers around the world have contributed improvements and fixes to Linux. Here’s the kicker: these developers aren’t working in one office or even for one company – many of them are volunteers or work for different organizations, collaborating over the internet. And for Linux, the primary way they coordinate and discuss changes is via an email mailing list. A mailing list is essentially a group email channel: you send an email to one address, and it gets broadcast to everyone subscribed. It’s like an old-school group chat, but in your email inbox and without real-time instant messaging frills. The Linux Kernel Mailing List (often abbreviated LKML) is famously high-traffic – if you subscribe, you’ll get a flood of emails every day with people discussing bugs, submitting code patches, and reviewing each other’s work.

Now, what’s a “patch” in this context? A patch is a file (usually a text file) that describes changes to the source code. It’s basically a set of instructions for the code: “remove these lines, add these lines.” For example, if a developer fixes a bug, they’ll create a patch that contains the code they changed to fix it. They then send that patch to the mailing list, often with a message explaining what the change does and why it’s needed. Other developers – especially maintainers (experienced project members responsible for certain parts of the kernel) – will read that email. They might test the patch, review the code, and reply with feedback. The conversation is asynchronous: someone might send a patch in the morning and get a reply from another developer who is in a different time zone later that day or the next. Over a few days (or weeks for big changes), they discuss and refine the code remotely. If the patch is good and passes review, a maintainer will eventually merge it into the kernel’s codebase. All of this happens without any face-to-face meetings or even real-time calls – it’s all written communication over the internet. This is a normal part of OpenSourceContribution culture: projects like Linux often operate this way so that anyone, anywhere can take part as long as they have email and programming knowledge. It’s a proven model of async_collaboration (asynchronous collaboration), meaning people don’t have to be online at the same moment to work together effectively. They leave messages (emails) that others can read and respond to when they’re available.

On the other hand, the meme mentions “your startup” making a website remotely. A startup is a young tech company, often small and trying to grow quickly by making a new product or service (like a web application). Modern startups usually use a bunch of fancy tools to work together: things like Slack for instant messaging, project management boards (e.g., Jira or Trello) to track tasks, and GitHub or GitLab to collaborate on code (these platforms allow developers to share code and do something called a pull request, which is a way to propose code changes and have them reviewed, somewhat like emailing a patch but with a nice web interface). They might also do daily video calls or “stand-up meetings” to sync up. Now, some startups (or their managers) in recent times have complained about RemoteWork – that is, having their team work from home or different locations. They claim it’s hard to get things done unless everyone is in the same office. You might hear things like “communication is difficult” or “we’re less productive” as excuses for why progress is slow or why they want people back in the office. The tweet referenced in the meme calls this out. It basically says: look, if people managed to build the Linux kernel – a way more complex thing than your website – by emailing each other from all around the world, then your startup has no excuse not to be able to make your relatively simpler project with today’s much better remote tools. In other words, the tweet is saying “Don’t blame remote work for your problems; people have done bigger things remotely long before Zoom and Slack existed.”

For a junior developer or someone new to tech, this is a bit of a reality check about tech history. It might be surprising to learn that yes, Linux (which runs on everything from servers to Android phones) was largely developed through a mailing list! It highlights how strong OpenSourceCulture and processes can overcome challenges of distance and time zones. Teams spread across different countries managed to coordinate and work together effectively without ever sitting in the same room. And they did it with what we’d now call “legacy” tools – basically just email and simple version control systems. Compare that to a modern team which has high-speed internet, cloud-based collaborative coding platforms, video conferencing, etc. It makes one wonder: if remote collaboration succeeded back then, why do some people act like it’s impossible now? The humor in this meme comes from that stark comparison. It’s poking fun at any startup_remote_excuses by using Linux as the ultimate trump card in the argument. For context, this tweet was from mid-2021, a time when a lot of companies were knee-deep in remote work due to the pandemic, and there was a widespread discussion about whether remote teams could be as effective as in-person teams. The open-source folks could cheekily say, “We’ve been doing remote work since the ’90s, welcome to the club!” So the meme serves both as tech humor and a little lesson: great things can be built remotely, and sometimes the old-school methods (like mailing lists) can get the job done impressively well.

Level 3: No Slack, No Excuses

The tweet in this meme bluntly ridicules modern startup_remote_excuses by pointing out a legendary counterexample from tech history. It says, effectively: “If an entire Operating System kernel – one of the most complex software projects on the planet – can be built via a fucking mailing list, then surely your tech startup can handle making a simple web app with everyone working remotely.” This contrast is both humorous and instructive. On one side, you have the Linux kernel, born in 1991 and grown into a behemoth of OpenSourceContribution. It’s a project that has always been developed by a distributed team of programmers scattered across continents, many of whom have never met face-to-face. Their primary collaboration tool? An email mailing_list_workflow (specifically, the Linux Kernel Mailing List, often called LKML). No slick UI, no real-time Slack chats, not even a central code hosting platform in the early days – just plain text emails with patches and a whole lot of passion and discipline. On the other side, you have a modern startup in the 2020s, likely building something far less complex (say, a website or a mobile app), with access to an embarrassment of riches in terms of collaboration tech: high-speed internet, video conferencing, cloud-based version control (GitHub, GitLab, take your pick), continuous integration servers, project trackers, messaging apps like Slack, you name it. And yet, despite all these RemoteWorkCulture tools, you sometimes hear excuses like “Remote work makes it too hard to coordinate,” or “We can’t innovate unless we’re in the same room.” The meme calls BS on that, in a very colorful way, by invoking Linux’s example. It’s a classic developer humor move – using an extreme case to highlight the absurdity of a complaint.

Why is it funny (and true)? For seasoned developers, the Linux story is almost mythical. Imagine thousands of contributors sending code improvements as patches_by_email, engaging in long email threads to discuss and refine them, and somehow this chaotic-sounding process produces stable releases of a world-class OS kernel year after year. There’s a shared understanding in the developer community that this is an astounding feat of coordination. So when a much smaller team says remote collaboration is a show-stopper, it rings hollow. The tweet’s author underscores this by dropping an F-bomb (“via f***ing mailing list”) – the exasperation is part of the humor. It’s like hearing a grizzled engineer scoff, “Back in my day, we built entire operating systems by typing emails uphill both ways in the snow…” It’s exaggerated for effect, but not by much! The truth is, OpenSourceCulture has been remote-first since day one. Projects like Linux, Apache, and many others have proven that async_collaboration can create software that runs the world.

This meme resonates especially with developers who have witnessed or participated in large open-source projects. They know that using a mailing list for KernelDevelopment isn’t just a quaint tradition; it’s a battle-tested workflow. Email threads provide a permanent, searchable record of decisions and rationale. Anyone can join or leave the conversation at will – it’s the ultimate flexible work environment. No one worries about whether you’re online at 9 AM sharp; what matters is the quality of your code and communication. Compare that to some startups that, even in a RemoteWork setup, try to mimic office culture with constant Zoom meetings, micromanagement, and miscommunication. The Linux folks would probably chuckle at needing a daily stand-up to decide who’s fixing a bug – they just send the patch! The humor also hints at legacy_tooling_vs_modern: it’s ironic that with all our shiny tools, some teams struggle to do what others achieved with far less. One of the unspoken truths here is that success in distributed work isn’t about the fanciest tools, but about culture and process. The Linux kernel community has very strict coding standards, a hierarchy of maintainers, and a norm of thoroughly reviewing code via email. They essentially solved the problem of “working together apart” decades ago. Meanwhile, a startup formed last year might still be figuring out how to keep everyone on the same page remotely – and maybe looking for someone (or something) to blame when things slip. As a result, seasoned devs find this relatable and a bit cathartic: it’s a reminder (in meme form) that yes, remote teams can succeed and that perhaps the limiting factor is not distance, but mindset.

To illustrate the contrast, consider how a new feature might get added in each scenario. In the Linux world, a developer writes code and uses git format-patch to create a patch file, then emails it to the mailing list with a subject like “[PATCH v2] Add support for XYZ feature”. A discussion ensues under that email thread: senior maintainers and even Linus Torvalds himself might reply with comments like “This approach breaks on 32-bit systems, please fix” or style critiques about the code. The original author may send revised patches (PATCH v3, v4, and so on) as replies. Eventually, a maintainer agrees the patch is good and applies it to their branch, later merging it into the main kernel. All of this happens asynchronously; people might be in vastly different time zones, replying when they start their day. There’s no Zoom call needed to reach consensus – the mailing list discussion is the meeting, and it’s text-based and persistent. Now think of a typical startup: a developer might put up a pull request on GitHub, assign reviewers, then ping a manager on Slack, have a meeting to demo the feature, etc. There’s a lot more real-time coordination, yet it’s fundamentally the same challenge of integrating code changes. The meme jokingly implies that if the email method works for something as huge as the Linux kernel, a startup’s reliance on face-to-face (or real-time) contact is probably overkill. In fact, some might argue the mailing list approach reduces noise: no endless calendar invites, no “quick sync” calls – just the code and written rationale. In a way, it forces clarity and thoughtfulness; you can’t just wing it in an email to LKML because thousands of experts will read what you wrote.

To drive the point home, here’s a quick comparison between the open-source kernel development model and a typical startup development model:

Aspect Linux Kernel (Email & Async) Typical Startup (Modern Tools)
Collaboration Tool Plain-text mailing list threads, git patches via email. Slack, GitHub/GitLab pull requests, video calls, Jira boards.
Coordination Style Asynchronous; developers work remotely and respond on their own schedule. Often synchronous; attempts to simulate office culture even online (daily stand-ups, constant pings).
Code Review Process Email reviews: maintainers and peers reply with feedback, require commit sign-offs. Web-based reviews: code changes are discussed in pull request comments, may still schedule meetings for approval.
Project Scale & Complexity Huge: entire OS kernel (~30 million lines of code), high complexity (drivers, memory, CPU). Moderate: typically a web or app project with far fewer lines of code and complexity.
Tools & Workflow Legacy_tooling (email, command-line git); lots of conventions and documentation to make it work. Modern_tooling (cloud repos, CI/CD); relies on tools integration, but sometimes tool overload.
Team Dynamics DistributedTeams by default; contributions from around the world, meritocratic (respect earned by quality of patches). Often co-located initially; switching to distributed can expose weak processes or communication issues.
Attitude towards Remote “We’ve always been remote – results matter, not location.” “Remote is challenging; we miss the water-cooler chats (excuse for delays).”

Notice how nothing in the kernel column mentions needing an office or constant real-time contact. It’s all about the code and an established OpenSourceCulture of trust and verification. This table makes it crystal clear why the original tweet strikes a chord: it exposes how slight the startup’s struggles seem when placed next to the vast success of Linux’s async_collaboration model. It’s a comedic reality check for anyone claiming a DistributedTeams can’t succeed: the Linux community did it before most startups even existed, using technology and processes from the ’90s, and they absolutely trounced that challenge. In short, the meme’s senior-level insight is that remote work and distributed development are not only possible, they’ve been the engine behind some of tech’s greatest achievements. As the saying goes in IT whenever a flaky excuse comes up: “No, it’s not because of remote work — look at Linux. It’s always possible, maybe you’re just doing it wrong.”

Level 4: Patch-Based Consensus

At the highest level, this meme highlights a form of decentralized software development that resembles a human-driven consensus protocol. The Linux kernel, an incredibly complex piece of system software (millions of lines of C managing everything from CPU scheduling to device drivers), has been successfully built and maintained through an asynchronous, text-only workflow. Think of it as a distributed version control system without the luxury of real-time coordination. Instead of a centralized repository with instant merges, Linux development relies on what we might call patch-based consensus: developers from all over the world email proposed code changes (called patches) to a mailing list, and these changes only make it into the official codebase after a series of human acknowledgments and reviews by maintainers. This is essentially a multi-phase commit for code, but achieved via social process and plain text communication. Each maintainer in the Linux project acts like a replica in a distributed system, merging patches into their subsystem’s branch, testing them, and then handing them off upstream. Ultimately, the project leader (Linus Torvalds) integrates changes into the main kernel tree. It’s a lot like a distributed database achieving eventual consistency: multiple nodes (maintainers) accept writes (patches) independently, and then reconcile them into a single source of truth (the mainline kernel), resolving conflicts as needed. There’s no global lock or real-time transaction; instead, eventual consistency is reached through careful patch review, testing, and trust in the maintainer network.

This process is underpinned by some surprisingly elegant technical tools. The patches are plain text files generated by diff – an algorithm that computes the differences between two versions of a file (essentially solving a longest common subsequence problem under the hood). These unified diff files contain enough context lines to apply changes even if the code has shifted slightly, much like a small error-correcting code that can align the patch in the right spot. The patch utility (originally written by Larry Wall in the 1980s) can apply these diffs to the source code, and if context lines don’t match (analogous to a merge conflict), a human must reconcile the differences. This is a primitive but effective approach to distributed version control. In fact, Git itself was invented by Linus Torvalds in 2005 to better handle the avalanche of patches for the kernel after a proprietary tool (BitKeeper) fell out of favor. Yet, even with Git’s emergence as a powerful distributed VCS, the kernel community kept the mailing list workflow for submissions. Why? Because it’s robust, platform-neutral, and forces a discipline of clear, self-contained commits. Every patch email includes a description, rationale, and a Signed-off-by line asserting authorship and rights – essentially a cryptographic checksum of the contributor’s intention and accountability, but in text form. The result is that even such OperatingSystems internals, with all their intricate concurrency and memory management challenges, are developed through an async_collaboration model that predates modern project management tools. This approach has scaled to thousands of contributors, illustrating that fundamental computer science principles – like modular design (each subsystem is somewhat isolated, reducing integration conflicts) and careful review (like a manual gating function) – can enable high complexity work without a heavy synchronous coordination overhead. In summary, the Linux kernel’s emailed-patch model is a testament to how far legacy_tooling can stretch when underlined by strong conventions: it’s like a globally distributed Turing machine, where the tape is email and the state changes are patches applied one by one, achieving a coherent system state without needing daily stand-up meetings or fancy real-time dashboards.

Description

Screenshot of a dark-mode tweet interface. A round pink avatar, username “eevee” and handle “@eevee” appear under a small tag that says “Linux.” The tweet text reads: “if the linux kernel can be made via fucking mailing list then i'm pretty sure your startup can manage to make a website or whatever remotely”. Below it shows the timestamp “20:12 · 06.06.21 · Twitter for Android” and engagement metrics “74 Retweets 2 Quote Tweets 346 Likes.” Standard Twitter icons for reply, retweet, like (highlighted in red), and share sit at the bottom. Technically, the post jokes that one of the most complex pieces of software - the Linux kernel - has been collaboratively engineered for decades using plain-text email patches, so a modern SaaS startup should have no trouble building a simple website while its team works remotely. It highlights asynchronous workflows, distributed teams, and long-lived open-source processes predating today’s tooling

Comments

7
Anonymous ★ Top Pick If 30 million lines of kernel code survived decades of “reply-all diff” threads, your Series-A React monolith probably isn’t blocked by remote work - more likely by the committee choosing a Slack emoji for “production down.”
  1. Anonymous ★ Top Pick

    If 30 million lines of kernel code survived decades of “reply-all diff” threads, your Series-A React monolith probably isn’t blocked by remote work - more likely by the committee choosing a Slack emoji for “production down.”

  2. Anonymous

    The irony that a globally distributed team of volunteers can coordinate one of the world's most critical pieces of infrastructure through plain text emails and patch files, while your Series A startup insists everyone needs to be in the same WeWork space to ship a CRUD app with a React frontend

  3. Anonymous

    The Linux kernel - millions of lines of C code, thousands of contributors across continents, managing memory, filesystems, and hardware drivers for everything from toasters to supercomputers - coordinates entirely through plaintext email patches and mailing list threads. Meanwhile, your Series B startup with a React CRUD app and three microservices insists everyone needs to be in the office for 'collaboration' and 'spontaneous innovation.' If Linus can review patches via `git send-email` while maintainers debate semaphore implementations over LKML threads, your PM can probably survive a Zoom standup

  4. Anonymous

    LKML merges thousands of patches over git-send-email; if your sprint still needs an office to ship brochureware, the bottleneck isn’t bandwidth - it’s management

  5. Anonymous

    Mailing lists birthed the kernel's 30M LoC empire - your startup's 'we need a full stack first' is just distributed denial of progress

  6. Anonymous

    The kernel gets built via git-send-email and reply-all code review; if your startup needs office badges to ship a brochure site, the real incident isn’t remote work - it’s your Electron Slack using more RAM than the kernel

  7. @Bodziek 5y

    that's true but without an office they can't brag about gaming rooms that nobody is going to use and good coffee and fruit wednesdays

Use J and K for navigation