this post was submitted on 02 Nov 2026
58 points (100.0% liked)

Programmer Humor

33931 readers
704 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 3 years ago
MODERATORS
 

you are viewing a single comment's thread
view the rest of the comments
[–] NateNate60@lemmy.world 19 points 3 hours ago (3 children)

This diagram is nonsense. JavaScript programmers know to simply never use == but to use === instead. Half of JavaScript is like this. Oh, there's a feature, but it behaves in a super weird way so we don't use it to avoid the weirdness.

[–] GeirGrusom@lemmy.world 6 points 1 hour ago

Where's the >== operator? Because they also have the exact same problem.

[–] dan@upvote.au 5 points 2 hours ago (1 children)

The recommended ESLint rules catch most of the bad stuff, and these days this is all you need in your ESLint config to enable them:

import {defineConfig} from 'eslint/config';
import js from '@eslint/js' 

export default defineConfig([
  js.configs.recommended,
]; 

There's one use case where == is still commonly used: == null matches both null and undefined. Lint rules that block == usually allows the null case as an exception.

[–] Venator@lemmy.nz 3 points 2 hours ago (2 children)

I wonder how much bandwidth is wasted on the extra =, since it survives minification 😅

[–] ignotum@lemmy.world 2 points 1 hour ago

But if every single comparison used in a file is a triple =, then any compression algo worth its weight in salt will compress that bloat away during transmission

The real issue is all the precious precious RAM those extra = use on the client device once received and unpacked!

[–] 9point6@lemmy.world 1 points 1 hour ago

Gzip (any properly configured static server will serve compressed assets) probably compresses them down so probably a single extra byte per file

[–] 9point6@lemmy.world 2 points 2 hours ago

IIRC modern linter rulesets generally just outright error if you do anything remotely like this.