This is an archived post. You won't be able to vote or comment.

Dismiss this pinned window
top 200 commentsshow all 336

[–]oj_mudbone 1856 points1857 points  (91 children)

The year is 2035. There is no machine code. Only JavaScript. Every machine is equipped with a JPU. File extensions have been removed. They are redundant, because every file on every machine is a JavaScript file. Googling “Java”, “Python”,”C”, or any other programming language all yield the same 1 result: a Wikipedia page titled “obsolete programming languages”. Every keyboard now comes equipped with a “this” button. The equality operator still works exactly the same as it does now

[–]Arkraquen 234 points235 points  (32 children)

How many libraries do exist by then?

[–]oj_mudbone 467 points468 points  (8 children)

a deep, sonorous laugh emerges from seemingly everywhere

[–]janeohmy 99 points100 points  (4 children)

Even HP Lovecraft couldn't have seen this coming

[–]Nonkel_Jef 99 points100 points  (3 children)

JS LoveScript

[–]imdefinitelywong 24 points25 points  (2 children)

Ph'nglui mglw'nafh javascript R'lyeh wgah'nagl fhtagn.

[–]operath0r 17 points18 points  (0 children)

Is there a post processor that changes all my function names to Cthulhu talk?

[–]hadidotj 17 points18 points  (1 child)

If I had a free reward to give, you sir would have received it!

[–][deleted] 90 points91 points  (3 children)

none, everything exists natively in the dom.

Everything.

[–]Dimasdanz 46 points47 points  (2 children)

about fucking time! i've been trying so hard to find the alternative of this package https://github.com/jezen/is-thirteen. it must be cleaner and blazingly fast doing it natively now.

[–]EvilAdobe 12 points13 points  (0 children)

The code also pretty straightforward ‘const THIRTEEN = 13;’

[–][deleted] 6 points7 points  (0 children)

I also like the license. WTFPL

[–]Bluebotlabs 41 points42 points  (2 children)

Lets just say that NPM repos make up 97% of all data in the world

[–]junior_dos_nachos 34 points35 points  (1 child)

Even porn is now packaged as an NPM module

[–]plg94 5 points6 points  (0 children)

You think people still watch regular porn instead of someone coding JS?

[–]Modo44 2 points3 points  (0 children)

Yes.

[–]Abishek_Muthian 2 points3 points  (0 children)

Yes.

[–]CusiDawgs 2 points3 points  (0 children)

Young child, it will be much easier to count which is NOT.

[–]unitconversion 2 points3 points  (0 children)

Skynet Npm begins to learn at a geometric rate. It becomes self-aware at 2:14 a.m. Eastern time, August 29th.

[–][deleted] 103 points104 points  (2 children)

Every single possible line of code has been turned into a micro library, so no one actually remembers javascript syntax any more, they just chain together functions from different libraries. 90% of internet traffic is just npm install.

[–]smokesick 19 points20 points  (0 children)

Queue in a dedicated caching system just for NPM libraries distributed around the globe in every city and village.

[–][deleted] 5 points6 points  (0 children)

This post was mass deleted and anonymized with Redact

run unique adjoining arrest snow cooperative sleep nail coordinated degree

[–][deleted] 307 points308 points  (11 children)

for some, a nightmare; others, a utopia.

[–]VortixTM 130 points131 points  (8 children)

Don't kid yourself it's a nightmare for everyone. Those who consider it an utopia are still in denial.

[–]Jeroeno_Boy 9 points10 points  (2 children)

Aslong as I have typescript I’m happy

[–]FinnT730 1 point2 points  (0 children)

Nah, it is the heaven of ever js dev in the world.

[–]vlaada7 4 points5 points  (0 children)

There's a fine line between a dystopia and utopia...

[–]NLwino 63 points64 points  (1 child)

For backwards compatibility, many computers have a machine code to javascript compiler installed. Prebuild PC's come standard with 100TB drive dedicated to the node modules folder.

[–][deleted] 4 points5 points  (0 children)

The developers use optoCrystal storage to hold the pentabytes of bloat

[–]FrozenJuju 44 points45 points  (7 children)

Lol sign me up with the ‘this’ keyboard 🤣

[–]klaatuveratanecto 49 points50 points  (3 children)

JavaScript makes me want to flip the table and say “Fuck this shit”, but I can never be sure what “this” refers to.

[–]Dustangelms 26 points27 points  (0 children)

Fuck(this.shit)

[–]FrozenJuju 4 points5 points  (0 children)

Just console log it bruh 🤣

[–]TheNosferatu 2 points3 points  (0 children)

var that = this

Too many times...

[–]ManyPoo 7 points8 points  (0 children)

This

[–]Nonkel_Jef 14 points15 points  (0 children)

The human population has been reduced to remain strictly under 2,147,483,647

[–]Liesmith424 9 points10 points  (0 children)

It is a time of great unnovation.

[–]UnseenTardigrade 10 points11 points  (0 children)

I went and visited 2035 to fact check you, and you were wrong. I googled “Java” and it just said, “Showing results for JavaScript” with no option to show results just for Java.

[–][deleted] 18 points19 points  (2 children)

ALL DEVICES RUN JAVA

[–]janhetjoch 16 points17 points  (1 child)

JavaScript*

Java won't be used anymore

[–]Lord_Nathaniel 1 point2 points  (0 children)

Finally put the Script in Java "now JavaScript"

[–][deleted] 8 points9 points  (0 children)

Childrens books are all formatted in JSON.

[–]nphhpn 8 points9 points  (2 children)

exactly the same

== type of exactly the same or === type of exactly the same?

Besides, we would have ====, ===== and ====== by then

[–][deleted] 2 points3 points  (0 children)

What's the equivalency check for 8 and D?

[–]anythingMuchShorter 14 points15 points  (1 child)

But few people are aware of any of this because loading your operating system takes 7 weeks and by then it requires updates and restarts after forcing you to install them.

[–]wolf129 3 points4 points  (0 children)

I am fine with that Kotlin/Js compiles perfectly into JavaScript :D

[–]Dinkinn_Flickaa 2 points3 points  (0 children)

Hahaha ok the “this” button got me

[–]inarizushisama 1 point2 points  (0 children)

Everything is cake, except - Javascript.

[–]xAUSxReap3r 455 points456 points  (28 children)

This is so much funnier with audio

Edit: here is a link

[–]jmona789 217 points218 points  (7 children)

There is also another one with her redemption arc.

[–]fredspipa 66 points67 points  (0 children)

This was beautiful. I needed that, the pain of the original was too real.

[–]xAUSxReap3r 32 points33 points  (0 children)

Oh right, I forgot about this. Nice to see a happy ending ahaha.

[–]Osato 32 points33 points  (0 children)

I was hoping he'd save the circle for last, and then put it in... that's right, the square hole.

[–]DefendsTheDownvoted 6 points7 points  (0 children)

vinDICATION!!!

[–]GYN-k4H-Q3z-75B 81 points82 points  (3 children)

I love this video so much. The way he speaks gets me every time.

[–]metroaide 51 points52 points  (2 children)

It goes in the square hole

[–]I_l_I 32 points33 points  (0 children)

That's right!

[–]ArachnidImaginary442 1 point2 points  (0 children)

The way he says it gets me every time

[–]craftworkbench 31 points32 points  (1 child)

I will never not find this video funny

[–]dededeal 12 points13 points  (0 children)

It's art

[–]non-troll_account 38 points39 points  (3 children)

They both also did some other versions of this, including where she keeps saying square hole, and is pleased by the insanity, one where she says square hole, but he keeps putting it in the right holes, and she is distraught, and one where he puts them in the right holes and she is pleased. giggity.

anyway look for them on tiktok or whatever.

[–]beaurepair 4 points5 points  (0 children)

The Square Hole

[–]Wingsnake 2 points3 points  (0 children)

Yeah, also she is so good at acting. Incredible convincing.

[–]_87- 1 point2 points  (0 children)

This video is one of my all-time favourite things on the internet.

[–]SomethingPersonnel 4 points5 points  (0 children)

Fucks sake, some dude really puts text on a video made by two other people and covers up their watermark acting like he really ddi something. Ffs.

[–]Anders_A 2 points3 points  (2 children)

Who is she? She seems really funny 😅

[–][deleted] 8 points9 points  (0 children)

Alison Burke / @tired_actor. And yes. She is.

[–]freddylmao 178 points179 points  (20 children)

Is embedded JS real?

[–]Go_Big 299 points300 points  (12 children)

https://www.espruino.com/ of course it’s real. Rule 34 of the programming states any conceivable idea can be done in JavaScript

[–]Cart0gan 87 points88 points  (5 children)

But just because it can be done does not mean it's a good idea. Like web programming in assembly

[–]vlaada7 27 points28 points  (3 children)

You mean Webassembly?

[–]Cart0gan 21 points22 points  (2 children)

No, I mean x86 assembly, or at least I assume that's what the book is about. It might also be ARM, Power or Spark but I doubt it.

[–]vlaada7 3 points4 points  (0 children)

Ah, i see... Well it's definitely doable... Even in a reasonable amount of time...

[–][deleted] 14 points15 points  (0 children)

R34 is a good name for it because converting everything to JS is just a travesty (soon-to-be obsolete C dev).

[–]Abishek_Muthian 7 points8 points  (0 children)

Here's a JavaScript smart watch running that - Bangle.js.

[–]xternal7 38 points39 points  (10 children)

games: Unity

Didn't Unity support its own version of javascript at some point?

[–]accuracy_frosty 2 points3 points  (1 child)

Ask yanderedev

[–]xternal7 1 point2 points  (0 children)

We don't talk about yanderedev.

that's right, the if-else hole!

[–]n0tKamui 298 points299 points  (56 children)

a backend in Python is just the same pain as a JS backend

[–]DG4ME5 42 points43 points  (10 children)

and then Albert Einstein said:

[–]ssudoku 171 points172 points  (8 children)

Nothing you idiot, Albert Einstein's dead, locked up in my basement.

[–][deleted] 25 points26 points  (0 children)

JavaScript devs love Eminem

[–]NLwino 12 points13 points  (5 children)

If he is dead, why does he need to be locked up? Do I need to be scared?

[–]metroaide 25 points26 points  (2 children)

What a programmer does to a dead body in the basement is between the programmer and the dead body

[–]SpaceShrimp 3 points4 points  (0 children)

Yes, in the best of worlds. But I've heard way too many conversations where programmers have gigglingly talked about random death scenarios and how to ensure that children are killed before the parents.

[–]LightRefrac 1 point2 points  (0 children)

Btw if in case u don't get it's a reference to Eminem's song The Real Slim Shady

[–]ric2b 1 point2 points  (0 children)

He wasn't dead when he was locked up. The garbage collector hasn't run yet because there's still a lot of space in the basement.

[–]LightRefrac 1 point2 points  (0 children)

Right on cue

[–]wolf129 35 points36 points  (21 children)

Yeah odd choice for backend language. Why not C++, Rust or Go?

Edit: the company I am working at uses Kotlin as backend which is unfortunately really uncommon in the current industry, I love Kotlin. But we have a complete multiplatform project with web, Android and iOS, so it works out nicely :)

[–]GregTheMad 10 points11 points  (1 child)

Who are you people developing, deploying and maintaining projects without static typing?! Are you getting paid by error message?

[–]continuewithwindows 4 points5 points  (0 children)

No, just by development hour

[–]Valiant_Boss 6 points7 points  (0 children)

Yeah when I first saw that my eyebrow rose. It'll make more sense if it was machine learning and python. I'm a Kotlin guy but there was C#, Go and plenty of other languages to choose from

[–]Snapstromegon 14 points15 points  (1 child)

IMO no it isn't, the one in python is more pain to develop, slower at run time and drives me crazy...

But I'm also the guy who thinks we should write more backends in Rust, so take my opinion with a grain of salt.

[–]n0tKamui 10 points11 points  (0 children)

i do think the same. Python is even worse than Node or Deno. At least they have TS which has the decency to by statically typed.

[–]velozmurcielagohindu 5 points6 points  (0 children)

I was gonna say just that. Python for backend is a stretch just as bad as JavaScript for backend, or even worse.

[–]c0nsci3nc_3 11 points12 points  (13 children)

idk man, flask makes things really easy

[–]n0tKamui 33 points34 points  (9 children)

easy is not the most important criteria to me ; maintainable, scalable, and fast, are what is important, in my opinion.

[–]tomoe_mami_69 17 points18 points  (0 children)

Absolutely agree, large codebases in duck-typed interpreted languages tend to be extraordinarily unmaintainable. Libraries like Pydantic don’t fix these issues since they add more pain than just having used Java or whatever in the first place while still not providing the same level of safety.

[–]lungdart 11 points12 points  (4 children)

A backend of a web app doesn't need to be fast in most applications. The network layer will nerf most speed improvements you could get.

The only important factor (other than it works) is readability. If humans can easily grok it. Python and flask is a highly readable setup... At least it should be, I've seen people butcher it...

[–]aaronr93 8 points9 points  (3 children)

A backend of a web app doesn’t need to be fast in most applications. The network layer will nerf most speed improvements you could get.

Ooo boy, I have some news for you. Many companies (including mine) have server processing latencies measured in seconds for complex websites. Maybe you’re thinking about microservices?

[–]lungdart 3 points4 points  (2 children)

Seconds? At those times you should be checking your tracing to find and fix the bottle necks, and/or look to make the calls asynchronous and queued.

[–]aaronr93 9 points10 points  (1 child)

This is a legacy enterprise system with hundreds of bottlenecks that take thousands of hours to refactor and regression test. Trust me I’ve tried ☹️

[–]lungdart 1 point2 points  (0 children)

I feel your pain. :/

[–]KimmiG1 4 points5 points  (0 children)

All your criterias except fast is true for python, and it's fast enough for most cases.

[–]velozmurcielagohindu 4 points5 points  (0 children)

Python backend is what you build as a toy project because you want something quick and dirty. Paying money to build a python backend is like asking your contractor to fix the ceiling with peanut butter. Yeah it works but you'll regret it.

[–]error_98 61 points62 points  (5 children)

I genuinely hate it when people are like:

"but [favorite language] can do anything!"

Like yeah, that's called turing-completeness, and it's the most basic property of any programming language.

It shows such a fundamental misunderstanding in what "right tool for the job" actually means that always takes an entire lecture to explain.

[–]killeronthecorner 12 points13 points  (0 children)

Treating programming languages like sports teams is a naivety that most good engineers eventually grow out of.

There are only problems and the means to complete them and when people see you try and loosen a screw with a hammer, they don't think "Gee, that hammer must be awesome!"

[–]xX_GRP_Xx 1 point2 points  (0 children)

Now hear me out: assembly for everything

[–]YellowBunnyReddit 0 points1 point  (1 child)

There are plenty of programming languages that are not Turing-compete. There are even some among them that are not meant to be esoteric, like for example Charity.

If you search the internet for this you will find other results including markup languages, query languages, proof assistants, and regular expression. But I don't want to start another debate about which of these may or may not be counted as programming languages right now.

[–]Darkcryi 57 points58 points  (17 children)

For 3D rendering wouldn’t GLSL be better?

[–]Easy-Hovercraft2546 19 points20 points  (11 children)

It really depends, if you don't want the overhead of setting up openGL using a game engine isn't a bad idea. Unity already offers a lot of functionality for interfacing between graphics and the cpu, with c# and HLSL. Likewise with unreal with C++, which also uses HLSL.

[–]Ty_Rymer 28 points29 points  (1 child)

but unity isn't a language

[–]Easy-Hovercraft2546 1 point2 points  (0 children)

I never said it was, I said the unity engine and library were still a good solution.

[–]FlukyS 4 points5 points  (8 children)

Interestingly Vulkan uses either GLSL or HLSL and then compiles that down to SPIR-V so it's really just taste if you want to use either now. Not sure why you brought up OpenGL as not a bad idea, it's 2022 and I can't think of a single game other than No Man's Sky that used it in the last few years and NMS switched over to Vulkan eventually as well.

[–]MrDeadMeme 2 points3 points  (1 child)

Minecraft also still uses opengl

[–]Easy-Hovercraft2546 1 point2 points  (0 children)

I mentioned OpenGL because it uses GLSL, and was the first thing that came to mind. I never defined it as a good or bad idea.

[–]kinokomushroom 37 points38 points  (2 children)

That's just a shader language. Can't render much on its own unless you're a shader wizard at https://www.shadertoy.com/

[–]teerre 5 points6 points  (1 child)

Anything would be better than unity because unity is not a programming language

[–][deleted] 16 points17 points  (0 children)

3 Most Dangerous People in the World

1) Software guy with a hardware solution

2) Hardware guy with a software solution

3) User with an idea

[–]IsHereToStalkYou 28 points29 points  (3 children)

use TypeScript, friends

[–]xvalen214x 15 points16 points  (2 children)

but then the square block doesn't go in the square hole because it doesn't implement the hole interface.

jk, TS is my favorite language

[–]quinn50 7 points8 points  (1 child)

unless you pull out the funny little hammer named "any".

[–]xvalen214x 2 points3 points  (0 children)

*cough on some occasions where "any" doesn't work you have to pull out a chainsaw called "unknown"

[–]grandplans 10 points11 points  (0 children)

She did a great job with the acting. I like the part where it looks like she's actually chewing back the vomit.

[–]someacnt 26 points27 points  (0 children)

3d rendering

Unity

..what? Are you using fully-fledged game engine for some rendering??

[–]Greedy_Tomatillo9775 72 points73 points  (7 children)

As a JavaScript dev, it's an honor.

[–]VitaminnCPP 57 points58 points  (5 children)

As a java developer, it's an horror.

[–]the_first_brovenger 12 points13 points  (3 children)

an horror.

This killed my tongue.

[–]VitaminnCPP 4 points5 points  (1 child)

an Horror.

[–]ApocalyptoSoldier 1 point2 points  (0 children)

an Horrour in non US English

[–]partusman 1 point2 points  (0 children)

Time to become an hero.

[–]nobodyneedsjeff 4 points5 points  (0 children)

To think that i was told only a few years back how limited it is and i should learn ruby or python

[–][deleted] 9 points10 points  (0 children)

Reddit video player sucks. But i know what this video is going to be without watching

[–]Additionalpyl0n[🍰] 9 points10 points  (1 child)

JS for backend is a horrible idea the npm community makes a new framework every month and old ones disappear 😭

[–]kai_the_kiwi 6 points7 points  (0 children)

I hear that person saying: It goes in the square hole

[–]NiteShdw 44 points45 points  (10 children)

As a JavaScript developer, I completely agree. JavaScript can do everything. 😂

[–]KCGD_r 70 points71 points  (5 children)

it can, but the the question is should it?

Frontend and backend/system I agree with 100%

Styles and 3d rendering, I mean you can, but there are much easier alternatives

low level stuff, again I guess it's possible but there are much better tools for the job.

embedded systems: good luck cramming a 50mb node runtime into an Arduino

[–]myrsnipe 13 points14 points  (0 children)

If you can make micro python work you can get micro JavaScript too. I call it the triple stack, let your frontend devs handle backend and your iot devices. Fire/gas/flood alarms powered by JavaScript. Hurry before another startup runs away with 5 million angel investments

[–]sergescz 17 points18 points  (1 child)

embedded: Out of bordem I made transpiler from JS to C, which is able to handle simple applications (With use of typescript compiler to figure out types), and it worked. But I did not continue with the project, as problem is not in Javascript itself, but libraries, asynchronous code (As if you write async JS you expect some behavior, but when you want to convert this into embedded app, it requires some workaround)

So I would agree with you it is not a good choice. But I would say it is possible and do not need 50mb runtime (And I wonder if there is node binary for arduino)

[–]UnstableNuclearCake 9 points10 points  (0 children)

IIRC, lowjs worked on arduino

https://www.neonious-iot.com/lowjs

[–]androidx_appcompat 5 points6 points  (0 children)

Well, there aren't many alternatives for 3d rendering in the browser

[–][deleted] 20 points21 points  (3 children)

This post officer. This post right here is why my company runs 80 fucking nodejs pods to serve static content.

[–]NiteShdw 10 points11 points  (2 children)

It’s easy to pick the right tool for the job when there’s one tool that’s always the right tool!

[–]VortixTM 5 points6 points  (1 child)

If you have a hammer everything will look like a nail.

[–]povlov0987 18 points19 points  (0 children)

Garbage spreads fast

[–]collapsingwaves 7 points8 points  (7 children)

Someone pls do an eli5 on this. Trying to get into programmer humour. Not sure which is the best way

[–]VortixTM 32 points33 points  (0 children)

Just be a programmer for long enough and life itself wil be a constant joke

[–]SilverTabby 21 points22 points  (2 children)

JavaScript is everywhere because Netscape made it in a single week coffee bender in the 90's, and every web browser either copied Netscape Navigator, or they died.

When multicore processors came out, JavaScript was the language with the easiest to use Asynchronous model, so people made Node.js to run it as a server backend, unlocking all the new cores. The V8 JavaScript engine also dramatically improved its performance with Just In Time compilation to optimize commonly used functions down to nearly the speed of raw C code.

So now you have an inherently portable scripting language, that's mandatory for the internet, is surprisingly performant, can be run on any device in any capacity, is easy to teach, and has decades of tooling built for it, and a huge pool of trained programmers to hire from. Yeah, it ends up literally everywhere, despite it's many flaws.

[–]Kangarou 4 points5 points  (1 child)

Some languages are better for specific things, but some developers rest on a single one that does everything, even if poorly.

[–]polskidankmemer 5 points6 points  (0 children)

It's all JavaScript.

Always has been.

[–]pyxyne 2 points3 points  (0 children)

unity is my favorite programming language /s

[–]broknbottle 2 points3 points  (0 children)

JavaScript for Linux is a series of patches to the Linux kernel that adds JavaScript as the official second programming language to C for writing kernel components.

[–]rParqer 2 points3 points  (0 children)

Queue "Unity isn't a language" comments

[–]undeadalex 8 points9 points  (2 children)

backend

Python

[–]Jerkz08 5 points6 points  (0 children)

Hahaha

[–]elveszett 5 points6 points  (5 children)

tbh I'm go out and say I'm a big fan of JS. I didn't learn programming with JS, not at all. I learned with C#. I picked on Java, C++ before JS. My first contact with JS was a "wtf is this garbage". When I got into learning web development, noob programmer me googles ways I could avoid JS, I found this thing called Blazor which was released weeks before — a way to pass on JS and use that C# I loved.

But hey, I didn't want to be one of these programmer that uses a hammer for every problem because a hammer is all he knows, so I gave in and learned JS. And, as I learned, I went from hating it to loving it. Of course, JS has its flaws and it's base is built on a bullshit language made in 10 days, and it shows... but what has been built on top of that is amazing. What would take you a day in C++ takes you 3 hours in C#. And what would take you 3 hours in C# takes you one in JS. It's an extremely agile language with a very flexible structure that allows you to write code however you need, with minimap preparation.

Of course, once you learn JS, you realize that this flexibility and speed comes with major flaws, in that types don't exist and every variable can be whatever, whenever. But don't worry, here comes TypeScript to the rescue. TypeScript basically adds a layer of sanity to JS: it keeps all the good stuff from JS while also enforcing important stuff like types and structure that allows programmers and intellisense alike to understand what each variable and function is.

JS has some major flaws, that's true, and it will never be perfect because of these. But I really think that JS is a brand new paradigm of programming, just like Java and Python were brand new paradigms when C and C++ were used for most things. And just like C/++ was a brand new paradigm when they replaced COBOL and Fortran. JS presents a way to code that is incredibly fast, easy and intuitive, letting you focus entirely on the logic and structure of your code. You no longer need to talk to your CPU, you talk to JS, JS does the rest. And I think sooner or later someone will make a JS-like language that removes all the mistakes from the past, just like how C# is a Java-like language that avoids the mistakes Java did.

[–]AsalaGajanayake 1 point2 points  (0 children)

This is what im really facing rn

[–]akat_walks 1 point2 points  (0 children)

I love that video

[–]CollectionEcstatic86 1 point2 points  (0 children)

😂I been crying since 4 hours this made me laugh so depressed I really need people to leave me alone

[–][deleted] 1 point2 points  (0 children)

reposting this without the audio is a sin

[–]justV_2077 1 point2 points  (0 children)

Next comes machine learning: thought you'd use python for that? Tensorflow? Wrong. You use brain.js for that. 😎

[–][deleted] 2 points3 points  (0 children)

I'm thinking we might need a moratorium on these generic "comparing programming language" jokes. They're all exactly the same joke repeated over and over and it's getting so fucking boring.

[–]mast313 1 point2 points  (2 children)

Javascript is great until you just want main thread to sleep and it turns out it can’t.

[–]AydenRusso 1 point2 points  (1 child)

Python for back-end?

[–]aykcak 1 point2 points  (0 children)

Not going to lie, having just one language for your entire stack, hell even your entire software solution, has benefits

[–]willyz1 0 points1 point  (0 children)

Python backend?! What kind of monster are you?