The Painful Confession of a Perl Enthusiast
Why is this Languages meme funny?
Level 1: Uncool Favorite
Imagine all your friends are crazy about the newest, coolest video game, but your favorite game is actually an old one that most people forgot about. One day, your best friend looks you in the eye and says, “Be honest with me… I can handle the truth.” You take a deep breath and admit, “Actually, I really love playing this old game.” Suddenly, your friend’s jaw drops in total shock 😮. They can’t believe you’d choose something so old-school! This meme is just like that. It’s funny because the person is treating a simple liking (loving an old programming language, which is like an old game) as if it were a huge, shocking secret. We all have something we secretly enjoy that others think is uncool or outdated. The joke here is showing how over-the-top and silly people’s reactions can be when you reveal your “uncool” favorite thing. In real life, liking something old isn’t bad at all – and that surprised face is an exaggerated way to make us laugh about how people sometimes react.
Level 2: Legacy Code Love
Let’s break down the joke for those newer to the programming world. First, Perl is a programming language. It was created in the late 1980s and became super popular in the 1990s and early 2000s for writing scripts (small programs) to automate tasks. Perl is especially good at working with text – for example, it has built-in superpowers for regex (regular expressions), which are patterns for searching and transforming text. Back in the day, if you needed to parse a log file, replace a bunch of text across many files, or quickly generate a web page, Perl was the tool of choice. People often refer to Perl as a scripting language because you typically run it directly as code (interpreted at runtime) rather than compiling it into an app first. It was beloved for being practical and powerful. In fact, Perl’s motto is “There’s more than one way to do it,” meaning the language design lets you solve problems in many different ways – giving the programmer a lot of freedom.
Now, what about the meme scenario? It shows two characters from a Spider-Man movie. In the first panel, the woman (Mary Jane) says, “Tell me the truth, I’m ready to hear it.” She’s expecting to hear something serious. In the second panel, the man (Peter Parker) looks grave and admits, “I like coding in Perl.” Then in the third panel, Mary Jane appears completely shocked and hurt by this confession. This image is a popular meme template where one person demands honesty and the other person reveals a surprising fact. The humor here comes from over-exaggeration: liking a programming language is treated as if it were a huge, dramatic secret. It’s as if a big superhero secret or relationship truth was revealed – but instead it’s just about programming. 😂 For someone unfamiliar with developer culture, that surprise might seem random. Why would saying “I enjoy Perl” cause such a stunned reaction?
The answer has to do with how developers sometimes view programming languages. There’s a bit of a culture war (often playfully called language wars) among fans of different languages. Think of it like sports team rivalries or fan clubs. Some developers swear by one language and tease or trash-talk others. Perl, in particular, has a reputation these days as an old, oddball language that isn’t as popular anymore. It’s considered a legacy language, meaning it’s from an earlier generation and many new projects don’t choose it. Younger programmers might primarily learn Python, JavaScript, or Java, and only hear about Perl as an outdated thing from the past. So if you’re a new developer, hearing someone earnestly say “I love Perl” might genuinely surprise you – kind of like discovering a colleague still uses a flip phone or loves Windows 95. It’s not bad, just unexpected in 2021’s era of tech. A lot of developer humor plays on these stereotypes: each language has a certain image. Perl’s image is that it’s powerful but a bit archaic and notoriously hard to read. You might even have heard jokes about Perl code being like “line noise” (a jumble of symbols), or that after writing Perl, even the author can’t read it a week later. These jokes come from Perl’s very flexible syntax – which, while efficient, can look cryptic to someone who isn’t used to it.
Let’s clarify a few terms and why this situation is humorous:
- Legacy code / Legacy system: This refers to old software or code that is still in use. It might be written in an older language like Perl. Companies often have legacy code because it works and doing a complete rewrite into a new language could be risky or costly. But maintaining it can be challenging, especially if new developers aren’t familiar with that old language.
- Language quirks: Every programming language has unique features or syntax. Perl’s quirks include needing special symbols in front of variables (like
$variablefor a single value,@arrayfor a list,%hashfor a dictionary of key-value pairs), and lots of clever shortcuts. For example, Perl has default variables that let you do things in one line that might take several lines in another language. These quirks make Perl code very concise, but they also make it confusing if you haven’t learned them. - Language wars / tribalism: This is the fun (and sometimes silly) rivalry between fans of different programming languages. It’s comparable to kids arguing over whether PlayStation or Xbox is better, or adults debating Chevy vs Ford. In tech, you might hear debates like “Windows vs Linux” or “tabs vs spaces” or “Python vs Perl.” Often it’s all in good humor, but it can create peer pressure about what tools are “cool” or “modern.” Right now, Perl isn’t the trendy choice, so admitting you love Perl is like saying you prefer an older, unfashionable option — you risk some playful ribbing from peers who are into newer things.
To understand both sides of Perl’s reputation, consider this comparison:
| Why Some Developers Love Perl 😊 | Why Some Developers Avoid Perl 😬 |
|---|---|
| Excellent for text processing (strong built-in regex for pattern matching) | Syntax can be hard to read (code looks like “noise” with $,@,% symbols) |
| Huge library of add-ons (CPAN has modules for almost everything) | Newer alternatives (like Python) are seen as cleaner or easier to learn |
| Great for quick one-liner scripts and rapid prototyping | Considered outdated or “not cool” by today’s standards |
| Very flexible (“There’s More Than One Way To Do It” ethos) – you can be creative | Too much freedom can lead to many styles, causing confusion in large projects |
(Regex means regular expressions, a mini-language for finding patterns in text. Perl was famous for making regex easy to use, which is why it’s so good at text-manipulation tasks. CPAN is the Comprehensive Perl Archive Network, a massive collection of user-contributed Perl modules/packages that let you add all sorts of functionality easily.)
Now, picture a junior developer who’s learned Python or JavaScript in school. All the tutorials and communities talk about those languages, not Perl. If that junior dev hears a senior colleague say, “Actually, I wrote this tool in Perl and I kind of love working in Perl,” they might react with surprise: Really? Perl? They might have thought Perl was practically extinct or only used by some old-timers. This meme exaggerates that scenario for comedic effect. Mary Jane’s shocked face in the last panel is basically the junior dev community gasping, “No way, you didn’t actually choose Perl on purpose!”
It’s also poking fun at the drama over programming preferences. Realistically, using Perl isn’t something morally wrong (of course not!), but the joke is that developers can be dramatic about tech choices. It’s like someone demanding, “Tell me the truth!” and expecting to hear something huge, and the truth is just a nerdy confession: “I enjoy this old programming language.” The contrast is what makes it funny. If you’ve ever been in a programmer chat or forum, you might notice people often make tongue-in-cheek “confessions” like, “Unpopular opinion: I actually like XYZ language.” There’s a bit of relief and humor in owning up to a preference that others might judge.
For a newer developer (or someone outside software), the takeaway is: developers can be very passionate (and opinionated) about their tools! Today’s hot language can become tomorrow’s punchline, and vice versa. Perl is a great example: it was a hero of its time, and even if it’s not the trendiest now, it still has its loyal fans and valid uses. The meme is essentially saying: “Believe it or not, I still love this old thing,” and showing the exaggerated shock of the audience. It’s a playful jab at how our tech community sometimes handles “old vs new” preferences. If you find yourself liking something unpopular, this meme assures you you’re not alone — and it’s okay to have that secret love, even if it surprises others!
Level 3: The Camel in the Room
In an industry obsessed with the latest languages and shiny frameworks, confessing a love for Perl can feel like admitting a taboo. This meme uses an early-2000s Spider-Man movie scene to dramatize a developer’s big secret. Mary Jane (the red-haired character) pleads, “Tell me the truth... I’m ready to hear it.” In the next panel, Peter Parker stoically confesses, “I like coding in Perl.” The final panel shows Mary Jane’s face frozen in silent shock. We might call this scenario “the camel in the room”—a techie twist on “the elephant in the room”—because Perl’s unofficial mascot is a camel (from the classic O’Reilly Programming Perl book cover). It’s the obvious yet unspoken truth: someone on the team actually enjoys this older, quirky language. The humor comes from treating a programming preference as a dramatic, relationship-breaking revelation. It’s as if Peter admitted to a crime, but nope – he’s just into an old scripting language!
Why would loving Perl be meme-worthy shock? This taps into long-running language wars and generational rifts in software development. Perl was first released in 1987 by Larry Wall and became a powerhouse in the 1990s internet era. Back then, it was the go-to tool for quick scripts, text processing, and early web CGI scripts – people jokingly called it “the duct tape of the Internet.” There’s a rich history here: by the early 2000s, nearly every sysadmin and web developer had some Perl script in their toolbox. (Fun fact: Perl’s mantra is TMTOWTDI, or “There’s More Than One Way To Do It,” reflecting its flexible design philosophy.) However, as the 2000s progressed, newer languages like Python and Ruby rose to fame for scripting and web development, and later JavaScript/Node.js took over a lot of quick scripting tasks. Perl gradually fell out of fashion. Fast-forward to the 2020s, and Perl has a bit of a “legacy tech” aura – younger devs might only know it from jokes about messy one-liners or inherit it in old codebases. Admitting “I enjoy Perl” in today’s context can indeed turn heads, much like saying you still use a flip phone in the smartphone age.
The meme nails this culture clash. The shock on Mary Jane’s face is how a lot of modern developers (especially those raised on Python or JavaScript) might react internally upon hearing a teammate profess genuine love for Perl. It highlights language tribalism: the idea that programmers form camps around their favorite languages. Each new generation often has its preferred tools, and anything not in that list can seem antiquated or “wrong.” There’s an implicit tribal knowledge that Perl is old-school, quirky, even infamous for “write-only code” (code so terse and cryptic that it’s hard to read later). Seasoned engineers nod knowingly at this meme because they’ve seen it play out in real life. Perhaps in a meeting someone half-jokingly says, “Well, we could just use a quick Perl script,” and the room erupts in chuckles or groans. Perl has a reputation: incredibly powerful and pragmatic in its heyday, but also capable of spawning unmaintainable “spaghetti code” if one isn’t disciplined.
Importantly, the humor here also hints at a kind of shame or secrecy that developers feel about older tech. It’s poking fun at the fact that liking an older language shouldn’t be a big deal – yet people treat it like a deep dark secret. This reflects a real dynamic in tech workplaces. Imagine a developer who cut their teeth on Perl years ago. They might still find it elegant for certain tasks, but now they’re surrounded by colleagues who only talk about modern languages (Go, Rust, Python, etc.). They fear being seen as outdated or stuck in the past. So they keep their Perl proficiency low-key, a bit like a guilty pleasure. The meme’s dialogue – “Tell me the truth... I like coding in Perl” – is funny because it mimics a coming-out moment or a hard truth in a relationship. It dramatizes that language stigma.
From a senior developer perspective, this resonates on multiple levels. There’s the architectural reality that legacy systems often include Perl components humming along quietly in production. Large enterprises and old web platforms have Perl scripts running critical jobs (log rotation, data munging, glue code between systems). In those contexts, a dev who “likes Perl” isn’t a unicorn at all – they’re valuable, because few new hires know how to deal with that code! Yet organizationally, companies rarely boast about using Perl in their tech stack today; it’s more like a family secret. The meme gently satirizes that dissonance between official narrative (“We use modern, scalable languages”) and unofficial reality (“Our build pipeline actually relies on a 200-line Perl script that Bob wrote in 2003 and we’re scared to touch it”). Everyone laughs, perhaps a bit nervously, because they know it’s true somewhere in their own codebase.
Let’s also consider the quirks that give Perl its cult-loving and cringe-inducing status. Perl’s syntax is full of symbols: $ prefixes for scalar variables, @ for arrays, % for hashes, lots of $_ default variables and special sigils. This can make Perl code look like cartoon swearing (“$@%#!”). A classic joke goes: “Perl is the only language that looks the same before and after RSA encryption.” 😜 In other words, to the uninitiated, a complex Perl snippet might as well be gibberish. But those who know the language appreciate that all those symbols have purpose and power – they enable extremely concise operations. For example, a one-liner in Perl can find and replace text across hundreds of files or whip up a quick web server. That power earned Perl nicknames like the “Swiss Army chainsaw” of programming: versatile and powerful, albeit a bit dangerous and messy if misused. Seasoned devs have plenty of war stories about that power: maybe a single 5000-line Perl script that miraculously runs an entire nightly job, but no one fully understands it. (Cue the 3 AM on-call horror when it breaks – something many Cynical Veterans joke about.) They both curse and respect the language for that.
The meme’s brilliance is capturing all this subtext in one simple, exaggerated reaction. It reflects the collective memory of an industry: older developers recall Perl with nostalgia (and a few scars), while newer developers treat it like a bizarre relic. The demand “Tell me the truth” paired with “I like Perl” is absurdly funny because it shouldn’t be a dramatic truth – but in our developer culture, it kind of is! It’s a lighthearted jab at the CodingHumor of our own prejudices: how we elevate and dunk on programming tools as trends change. Today it’s Perl being “old and uncool.” Not long ago, people made similar jokes about COBOL or Fortran. Ten years from now, who knows – maybe saying “I secretly enjoy JavaScript” will get the same shocked reaction if JavaScript ever falls out of favor. Tech moves fast, and yesterday’s hotness becomes today’s legacy. This meme crystallizes that cycle through a single Perl confession. It gets experienced devs to smirk and think, “Yep, I’ve been there – that awkward moment revealing I used an unpopular tool,” and it might even provoke a chuckle of self-awareness in teams dealing with their own camel in the room.
Description
This is a three-panel meme using a dramatic scene from the 2002 movie Spider-Man, featuring Mary Jane Watson and Peter Parker. In the first panel, a tearful Mary Jane says, 'Tell me the truth... I'm... I'm ready to hear it.' In the second panel, Peter Parker looks at her earnestly and makes his confession: 'I like coding in perl'. The third and final panel shows Mary Jane breaking down and crying, unable to cope with this revelation. The humor comes from applying the scene's intense emotional weight to a developer's programming language preference. Perl, once a dominant scripting language, is now often viewed by the modern developer community as outdated and having a notoriously unreadable or 'write-only' syntax. Admitting a fondness for it is treated as a shameful, shocking secret, making Mary Jane's dramatic grief a relatable exaggeration for developers who share this negative perception of the language
Comments
17Comment deleted
A senior dev's greatest fear isn't a production outage; it's inheriting a mission-critical, 20-year-old Perl script with no comments and a single, 1000-character line of regex
Confessing you still write Perl is like telling the platform team their 15-node service mesh just reinvented your 20-line script - everyone freezes, suddenly “legacy” looks suspiciously efficient
She's crying because she just realized their entire CI/CD pipeline is held together by a 10,000-line Perl script written in 2003 that nobody else understands, and he just became a single point of failure
The real tragedy here isn't the Perl confession - it's that after 20 years of maintaining regex-heavy legacy codebases, you start to appreciate Perl's 'write-only' philosophy as a form of job security. CPAN was solving dependency management before npm made it cool, but admitting you miss Perl's sigils in a Python shop is basically a CLM (Career Limiting Move). At least he didn't confess to preferring Perl 6... sorry, Raku
“I like Perl” - bold; TMTOWTDI scales beautifully until the on-call meets a 400‑char regex hidden behind $x and a cron job older than our cloud
Perl: the language where TMTOWTDI turns 'readable code' into an urban legend
Admitting you like Perl is the fastest path from 'LGTM' to a rewrite-in-Go RFC, yet the 15-year-old cron still runs on a one-liner nobody dares to touch
Don’t get it…. Comment deleted
what about reading and understanding written code? Comment deleted
This is too hard Comment deleted
life←{↑1 ⍵∨.∧3 4=+/,¯1 0 1∘.⊖¯1 0 1∘.⌽⊂⍵} Comment deleted
It's that fancy language for fun? Raku? Comment deleted
https://en.m.wikipedia.org/wiki/APL_(programming_language)#Game_of_Life Comment deleted
The one language which overshadows the legendary unreadability of both Perl and Forth. Comment deleted
Holy smokes, this is so tiny Comment deleted
it has some tastes of math Comment deleted
Perl is nice for parsing and making wrappers. I actually enjoy programming in Perl. Then again, I enjoy programming in any language 🤷♂ Comment deleted