Crossing the 80-char line reveals Java’s verbose abyss for JS and Python
Description
Four-panel comic with a dark purple background. Panel 1: a yellow square labeled “JS” and a blue-yellow snake shaped like the Python logo stand beside a vertical grey rule; Python says, “See this? This is the 80 character line. You must never go beyond it.” Panel 2: JavaScript asks, “What lies beyond it?” Panel 3: a steaming coffee cup representing Java materializes with *woop* sound effects around magenta words “public” and “static”. Panel 4: the Java cup is tiny in front of scrolling magenta keywords “extends implements” and grey code fragments “Anything anything = new Anything();” and “throws ArrayIndexOutOfBoundsExce…”, ending with the signature “THEJENKINSCOMIC”. The joke riffs on long-standing code-style guidelines (PEP 8, linters) that limit line length to 80 characters; Java’s traditionally verbose syntax is humorously portrayed as what lurks beyond that boundary, contrasting concise JavaScript/Python idioms with Java’s boilerplate
Comments
21Comment deleted
We don’t enforce the 80-column rule for readability - it’s to prevent anyone from accidentally typing a Java generic like Map<Class<? extends Enum<?>>, List<Supplier<CompletableFuture<Void>>>> and opening a portal to boilerplate hell
The 80 character limit is like a gateway drug - you start with clean Python, experiment with JavaScript's flexibility, and before you know it you're writing AbstractSingletonProxyFactoryBean and convincing yourself that 'enterprise-grade' justifies a 47-character class name
The 80-character line isn't just a style guide boundary - it's the event horizon beyond which Java's ceremonial verbosity warps spacetime itself. Cross it, and you'll find yourself in a dimension where 'AbstractSingletonProxyFactoryBean' is considered a reasonable class name and every method signature requires more inheritance declarations than actual logic. Meanwhile, Python and JavaScript developers watch from the safety of their concise syntax, wondering if Java engineers are paid by the character
80 columns isn’t a style rule; it’s a safety rail - step past it and you’re in Java, where a single method signature needs word‑wrap, annotations, and a project charter just to throw ArrayIndexOutOfBoundsException
Beyond the line: where JS's 'undefined' becomes Java's unchecked RuntimeException hiding in plain boilerplate sight
Beyond column 80 is the checked-exception zone where Java generics perform a line-width DDoS and your linter auto-files the Jira against you
I’m using typescript and I’m beyond 80 character line Comment deleted
who do you think you are?! Comment deleted
newAnything(); Comment deleted
BTW I'm not against throws in typescript. Comment deleted
I'm using python and java both with 120 limit Comment deleted
You guys are pathetic, I write everything in one line without any linters or limits. I call it a "one liner" Comment deleted
one-liner SPA, with isomorphic code-sharing so the single line of JS is used both on client and backend Comment deleted
That's why semicolon exists in js Comment deleted
Most .py guidelines nowadays say 100 or 120 chars. And readable trumps short any day. Comment deleted
80 limit is for miserable laptop users Comment deleted
Wait we can write everything in more than one line? Comment deleted
Don’t try it, the rest of us will think of you as an amateur Comment deleted
Hahahhahahahha Comment deleted
Thanks god I'm using BASIC with explicit line numbers in source text! 10 PRINT "Hello world!" 20 GOTO 10 Comment deleted
It's legacy of 80x25 text mode in 1990s? Comment deleted