Real programmers are language agnostic. Anyways what’s the project?
We’re writing an online banking service entirely in brainfuck. Backend, frontend, even middleend if we have to
I enjoy the contradiction of middleend
It took me a solid half-dozen tries not to pronounce it “mid-leend.” After that much effort, I decided to let my dumb brain win and go with it.
For something you’re getting paid for, sure. But if you’re contributing in your free time for fun or whatever, presumably you’d prefer to use a language you actually like.
Real programmers will write in a way that user’s resources are not being wasted because you need a full browser, a JS runtime, and DOM juggling, to show even the simplest application.
It’s not rare for simple JS applications to consume over half a gigabyte of RAM on startup, and way more CPU than their native counterparts. That this was normalized and even defended is stupid.
I think you’re thinking of Electron apps, but that’s not really a criticism of JavaScript, that’s a criticism of Electron. There are plenty of JS platforms that don’t require a browser/DOM. React Native is the biggest example. Also, GJS if you want native Linux apps.
Node does not require an excessive amount of resources.
But why Node? Node cost five seconds just to start up back when I worked on my embedded ARM v7 platform, and on modern x86_64 computers,
npxanything takes just as long. Why rely on another runtime? Why not native binaries instead?Because you have to figure out how to build them. And with that I mean, how do you make sure that whatever you’re doing will work and work the same way not only on your “embebbed ARM v7” architecture and all the other CPU architectures, but also the operating system libraries included? How do you make it work the same way on Mac, Windows 7, Windows 11, Ubuntu, custom Arch installations, FreeBSD, etc etc?
If you build native binaries, you personally are the one who has to make sure it runs. This means (depending on how much you want to support) a lot of development or support time. (Or you make your users build it themselves and fix errors, which means a massively reduced userbase, good luck with adoption…)
If you use Node, (or other virtual machines) you literally don’t have to do anything, because it just works.
You really don’t see the value in that?
What you mentioned is compatibility across platforms. A program written in C is also guaranteed to run on all the systems you mentioned, given that the system has a C compiler and libc that stick to the standard. You, the programmer, does not have to anything to “make sure” your program works.
See this insane list of platforms GCC supports.
https://en.wikipedia.org/wiki/GNU_Compiler_Collection#ArchitecturesWe’ve invented high-level programming languages like C 53 years ago, just to get away from assembly, and to avoid dealing with the “cross-platform” problem you mentioned, remember?
What if the system does not have libc? What if your program needs obscure library X?
Why do you think anyone even came up with the idea of virtual machines? Don’t you think they had a problem they wanted to solve, that was not solved adequately before?
What if the system does not have libc?
No offence but I think I need to stop discussing with you.
Yes and no. “Real” programmers care about engineering choices ; and JS is the cardboard of programming languages.
Perfect for packaging (which in this metaphor is UI), horrible for building a bridge with. And vice-versa, I wouldn’t try and make amazon packaging out of reinforced concrete.
But for fun both bridge out of cardboard and packaging out of concrete might work, tastes differ ¯\_(ツ)_/¯
Sorry, but Rust triggers me way too much.
the bash language server is in nodejs…
And it shouldn’t
deleted by creator
Also real programmers have impostor’s syndrome.
Feels the same whenever a project is written in python, but I uninstall it too.
why?
Same, so I’ll only answer for me: Python is dependency hell, also breaking existing code with every second update. Hard pass.
Python versioning is terrible
We are no longer in the Python 2 days. You have lots of wiggle room for using the version you want and are rarely forced to use specific releases.
Personally, I find that (complex) software implemented in Python tends to be so unreliable that I typically don’t want to use it after all, but I only find that out after wasting a bunch of time learning the software.
It’s just frustrating, especially if I come back to the software every so often, naively thinking that it’s been a few versions, so maybe they’ve fixed it. It’s always just different bugs, which still end up being too frustrating to use the software.
To give an example, I like to compose music using Lilypond, which is more-or-less a programming language to create sheet music. And there is a program that’s supposed to give you a well-integrated workflow for that (i.e. an IDE), called Frescobaldi.
The first time I tried it, playback of the composed music wouldn’t work.
The second time, I couldn’t click on notes to jump to the respective code snippet.
And I tried it again a few weeks ago and it just crashed immediately with an obscure error message.Instead, I’ve slapped together a script, which just opens the sheet music in my PDF viewer, the code in my normal editor and then uses a CLI tools to generate and playback the sheet music. And while it’s definitely not perfect, it has been working more reliably for me than Frescobaldi ever has.
I’m going to go with the multiple causes for slowness (and that’s interpreted languages in general). In some cases, things might be usable if I weren’t on Zen+ still (newer stuff has better IPC among other things).
Things like JIT or no-GIL might reduce that, but I’m not sure that it’s that easy to fix (not being default (plus multiple options) seems to complicate bindings even).
JS has saved me many hours of mind-numbing, error-prone manual keyboard work by giving me a way to hack together a simple bit of automation as a web page.
Even when a computer has been ham-fistedly locked-down by an overzealous IT department, I can almost always still access a text editor and a browser that will load local HTML files.
Add to that the beauty of bookmarklets.
It’s silly that IT departments forces us to resort to techniques used before browser extensions became a thing, and it’s ironic that it’s because they don’t know how to code, but here we are.
deleted by creator
agreed. typescript is excelent, especially if you make it strict and know a bit of complex types to make sure things stay put.
Prissy little programmers
JavaScript really depends on the people writing it restricting themselves to a sane (ish) subset, just like C++
My personal gripe with JavaScript is how horribly slow it is. C++ at least has the merit of being fast once compiled. I wouldn’t feel great contributing to a JS project knowing fully well that a rewrite in a faster language would be 10x as effective as anything I could improve as is.
I like minecraft

Javascript turn our computers into toasters
You know what they say! All Javascripts Toasts Computers!
Real men use Lisp.
You spelled Forth wrong.
Guile hoot is pretty impressive , guile to wasm
Not to mention the entire Guile OS (Guix).
clojurescript
Oof.
Some of the best software is written in JavaScript.
- Uptime Kuma
- Immich
- Supabase
- VS Code/VSCodium
- Ionic (what the Voyager Lemmy client is written in)
- Expo/React Native (which powers probably a third of your apps)
This doesn’t really conflict with the post. They use and appreciate the software, so presumably it’s decent. You can write good software in any language, so it doesn’t prove that the language itself is good. IMO JS is a popular language, not a good language.
What makes it not good?
The completely bizarre implicit type conversions, for one thing.
I’ve never really found the type conversions that bizarre, unless you’re doing something weird like casting an array to a string or number. I don’t really use strange type casts, since I use TypeScript and avoid using the “==“ operator. What other things make it not good?
I mean, just the fact that you’re using TS instead of plain JS (and that TS even exists) should tell you that the language has issues…
It’s just strict typing on top of plain JS. I like strict typing. Some people like loose typing.
I’m pretty sure most people do not like JS’s loosey-goosey, who-knows-what-ur-gonna-get type system, which is why TS is so popular. Not really surprising since the bones of the language were basically spat out in a couple weeks. TS is a custom type system on top of JS, meaning it’s not just JS’s type system expressed through strict typing. They added a bunch of useful features like discriminated unions and so on to make using TS more pleasant than raw JS.
TS is actually usable (although NPM and the environment built around it still suck). It’s inherited a bunch of weird shit from JS, but the type system generally makes them bearable.
Yes, but some are VERY opinionated about it. It’s almost religious with them. I think it’s silly. Both have their pros and cons. I honestly enjoy both and never had a big issue with loosely typed languages. I assume it’s just bad developers that mess up and get confused about it.
If you use typescript you will obviously never see the weird type system of JavaScript
still possible, typescript is only strongly typed if you and everyone else working on the project wants it to be.
Considering TypeScript is a superset of JavaScript, you certainly can. But, that generally means you’re using TypeScript poorly.
Just look up the video entitled “wat” which is mainly about JavaScript
Yes, if you do silly things with JS, you generally get silly results instead of TypeErrors. I wouldn’t say that makes the language bad. It makes the language resilient to bad programming, which you’d generally want in the case of web pages.
Using only VSCodium in this llist. But not much, because i always have to close it on evening, or the casual game with 300 mods wouldn’t run beside it and the webbrowser reserving about half of my 32 GB RAM.
Your VSCodium reserves ~8 GB of ram? You might want to check the extensions you’re using. I’ve got mine running with tons of open files and it’s using ~2 GB.

Also, you should definitely give Immich a try. It’s an awesome piece of software.
Technically typescript. I know it transpiles to J’s but half the complaints I read are about the typo conversion and so on, which ts heavily alleviates.
VS Code is a good software? I beg to differ. It’s slow. It’s messy to look at. It’s resource hungry.
If you think VS Code is a good editor, we can make an even better editor in another language.
It is resource hungry. I’ll give you that. But it’s neither slow nor messy to look at. Have you ever used NetBeans or Eclipse?
You are comparing it to Eclipse. I also give you that.
A few lists of javascript WTFs:
- https://javascriptwtf.com/
- https://github.com/denysdovhan/wtfjs
- https://wtfjs.com/ (last updated 2016 but most of these things can/will never be fixed)
To anyone who thinks they know JS well and that its quirkiness is not a problem, let me know how you do on these quizzes:
this quirkiness doesn’t materialise in real world applications on any scale that makes it harder to deal with than the alternatives.
I’m in this photo and I don’t like it.
More specifically, my programming background is in industrial automation and I’d like to add some more ‘robust and flexible’ algorithms to CoolerControl so I can control my system fans / temperature better, but it’s written in a mix of TypeScript and Rust.
I’ve spent 20 years programming hard real-time z80 assembly and know quite a few higher-level languages. (Although I prefer the lower-level ones.) Not those ones, however, so it’s not just a couple of hours work to raise a PR against that project. Going to need to crack some books.
Unless you are making a HTML/CSS only site (based) what do you want to use instead?
Invent a new internet where you can script pages directly in Python or TypeScript.
Otherwise, you get to enjoy a silly toy language from the 90’s.
I’m 100% sure I can make Rust code (not even compiled to WASM) run natively in a browser like Firefox, given I have enough will power, time, energy, and money. The problem is getting everyone else to agree to this new standard.
In a scripting language, is there an advantage to no garbage collection? (I honestly don’t know)
Someone else also pointed out to me, when I made a similar suggestion, that ability to partially fail but keep going is desirable in a web context. I don’t know, maybe there’s some way to make Rust do that more automatically than C. Python seems the be the standard for general-purpose scripting, which is why I mentioned it.
So true.
I that’s me😁






















