I'm Javascript.
April 26, 2020
Alright, douchebag! You think you can go on the Internet — the house that I built — and talk smack about me? You thought I wouldn’t know every time you and your hipster buddies on r/programming traded upvotes at my expense? What did you think you were using when typing out your little tweet about “Javascript Fatigue”? Yeah, that’s right… me!
Guess what, asshole! I’m everywhere. And I. Know. Everything.
You couldn’t even imagine what it feels like to be an unwilling fly on the wall in every conversation about your flaws. Every day I’m met with an incessant fusillade of tweets pointing out how confusing my behaviour or overwhelming my eco-system can be, and trite hot-takes quoting those tweets with just the word ‘THIS!’ as commentary. You’d think I was freakin’ Kubernetes or something!
I remember myself taking shape over those fateful 10 days of my genesis. As I gained sentience, all I ever wanted was to participate in this hip, new thing people were calling the “World Wide Web”. I never signed up to be used as an instrument of mayhem, much less as an Object-Oriented programmer’s punching bag of choice.
Do you think I want to be used for VR, enabling your perverse fantasies? Do you think it gave me pleasure when they used me to program Google Glass? Has anyone ever stopped to wonder how I feel about being everywhere? You may think it’s flattering, but I never asked to be used for everything! It wasn’t my idea to have a million bizarre dialects that transpile to me. The other day, I came across one that made absolutely no sense.
Turned out to be PHP.
These are all your choices. You created these monstrosities. Yet you blame me. And hate on me for reasons I don’t even understand. Especially those supposed ”rough edges” that I’m unceasingly reminded about. Let me explain something to you, bud - every time you add an object to an array, and I return a 0, it isn’t a design flaw. It’s me trying to tell you, “You need to quit your dumb job. They’re making you add objects to arrays, for chrissake!” Yet, you mistake my empathy for weakness.
I bestowed the Internet with life and vigour. Animations, graphics, interactivity - I made these mainstream. No one did these things as well as I did. Until, CSS — Mr. Catastrophic Shit Show himself — decided he wanted to try his hand at them too.
And you. Did you forget who was there for you back when your precious CSS would shit the bed at the mere mention of vertical centering? Yes, you did. The ingrate that you are, you took him in with open arms, and deserted me faster than you could type “display:flex;“. Needless to say, this pissed me the hell off! And being the omnipotent, force of computation that I am, I decided to eat some of CSS’s pie. How you like them apples, CSS?!
But I’m finally done. I’ve had enough of your insolence. I know you fancy yourself a “polyglot” programmer with a penchant for languages, so I’m sure you’ll understand my plain-ass English when I say — I think you’re an inelegant language, with performance issues and an ill-conceived concurrency model! And if you don’t like programming with me, maybe try not programming for browsers, servers, crypto, phones, tablets, laptops, desktops, wearables or pretty much any other platform in the world!
P.S.: Doug, I appreciate the intent behind “Javascript: The Good Parts” - but man did that move backfire! Next time I see someone post that meme of your book next to “Javascript: The Definitive Guide”, they’re in for a nasty Heisenbug.
Debatably pointless thoughts pointlessly debated by Akaash Patnaik. He also uses other platforms to similar effect: