Hacker News new | past | comments | ask | show | jobs | submit login
Why People Shit on JavaScript? (textboard.lol)
9 points by pseudonym0us on May 6, 2023 | hide | past | favorite | 11 comments



čudan means weird, male form, in the languages of former Yugoslavia.

When I create something (software) like this, I never have any visitors or contributors/co-posters. How does this "board" with only 3 threads get so many responses? Must be an outlet of some discord/irc channel (which?).

As for the topic, I like JS better than Dart, which seems to get in my way any way it can. JS on the server though, why would you do that to yourself? I personally didn't migrate from PHP to Go in 2013 so I can write server stuff in yet another not well performing language. If I wanted that, I could've stayed with PHP or went to Ruby. Symfony tries to mimic Rails in features, while trying to be as complicated as Java, without the performance and all the bad stuff attached to it. Or rather Laravel is now the Rails pendant while Symfony is the same for Spring (boot).

Meanwhile many Go "frameworks", more like routers, are inspired by Express. And to my knowledge at least, the first isomorphic frameworks were in the JS ecosystem.


>Must be an outlet of some discord/irc channel (which?)

It's totally not this.

The only thing I did to promote čudan was spamming a lot on other Western textboards and a bit of other sites (like hackernews) and couple of textboard related IRC-channels.

>How does this "board" with only 3 threads get so many responses?

I wish I knew, too. I can only suppose people like the design (it appears that nice dark theme and responsive layout are kinda novelty for 2channel-style textboards in 2023).


I used to shit on js. Especially node. My opinion changed working in a 65+ team engineering org with freedom to choose languages. There was a clear pattern of js/ts/node teams shipping faster.

Means js is better than _insert_other_language_? Nope. There's always tradeoffs. The best solutions seek to manage essential tradeoffs, while ignoring irrelevant ideology.


I’ve always got trouble understanding people saying a PL has « lisp roots » because it has first-class support for functions (aka you can create them on the fly, pass them as values, etc).

This is so common today that i don’t find it relevant.

To me, the most original / not yet present in mainstream PLs is the fact that lisp code is lisp data (homoiconicity). That is, any programming language feature aimed at manipulating data structure (list operators for example) can manipulate code as well.

Am i missing something ?


Am i missing something ?

Basically Brendan Eich, the creator of JavaScript, once said something along the lines that his initial inspiration for the langauge was Scheme, but with a Java-like syntax. People have then taken that quote and run with it until you've reached a point where some people claim JavaScript has "lisp roots"


Well, my take is that the language isn't that great, but I really really dislike the ecosystem.

The sheer amount of code you get, even when using seemingly lightweight dependencies is just such a dumpsterfire.

I once ran cloc on a react getting started example. The example, including its dependencies, contained more than 3 times the lines of code than a 3D game engine (targetting PS4/5) + game logic + dependencies for a (non-indie) title I was porting around that time.


Honestly I find JavaScript better than, for example, Python on this front. JavaScript is pretty good at splitting up functions into individual packages and even better at using tree shaking to make sure you only ship the code you use. Many other languages have single huge packages that contain every single function vaguely related to a single area and no easy way to grab just one function. Also many language 'hide' most of their 3rd-party LoC inside pre-compiled .so files, rather than having it show up in the source tree.

In one case I has a 150ish LoC Python command line tool that I wanted to package up and distribute, and it came in at over 150 MB because I need a single function from sk-image, which contain 100s of image processing function plus pulls in all of both scipy and numpy as dependencies.


How many lines of code were from devDependencies (i.e., for use while developing) and how many ended up in the final production bundle actually intended to be served to the client?


Typescript + functional programming is the sweet spot for me


Oh boy. That topic is so trigger friendly.


It won, which makes it a huge huge target. What's the adage? "How to know if you're popular: you have haters."

Most other ecosystems are much much much much smaller. Which is a huge advantage in many many many ways. People love being able to rank up & establish themselves visibly or invisibly in a position.

But there's no central JS world to stay established in. It's fractured as heck. There's the "Rails is Omakase" way of development, all paved paths, and there's hundreds of JS things that purport to do that, but JS itself is a much vaster much diverser ecosystem.

JS also is so much different from most development. Code ideall is second fiddle, is a helper to the lead, HTML. It's a very different mode than what developers are used to, and many have a hard time loosening up & seeing how great it can be, many don't grasp the power value & possibility, and worse, don't appreciate how meaningful it is to have not just running code, but a protocol based hypermedium, that enables creative usersscripting & malleability.

People also love to take digs at the historical roots as a quick & dirty language. More easy at hand ammo, more stones to throw. Two things on that. In opposite direcions.

Developers are terrified languages might not matter that much, that they might be more alike. We want our niche cool hipster language that we love to matter, to be really important, and there's the threat that something imperfect might actually be good delegitimizes our faith that language is so important.

In the opposite direction, historical mudslinging ignores that this has been one of the best invested in best cared for best grown languages. ESM is good, we just still hate it having a fractured messy ecosystem, where our most popular testing library Jest & dozens of other critical tools still have trash/no ESM support. That's our fault not JS. I fell totally the other side of chain/spawn for promises versus what we got (rank betrayal of JS being a first class system to say promises aren't really objects, just future values, terrible decision, poor governance picking limited unrepresentative choice) but in async/await is still glorious. The itches get scratched. It's become a really solid language. With typescript it leads the pack as a typed optional language too, something everyone else (python, Elixer) are trying to adapt to. JS evolved so well, and there's few real perils, in spite of the boogeyman under the bed horror that "Wat" era anti-JS radicalism tried to frighten us with.

Whether folks are open to & thrive in ambiguity & openness is a huge personality difference that I think governs so much of how people fair here. A lot is just culture, bandwagons, having wagons to circle & enemies to call out, simple tribalism. But JS is as big as everything else put together at this point, practically, and with less clarity & directness in most circumstances, more pick & choose. Perl was the first post-modern programming language & it made a lot of people very upset, but JS is the second & most successful, has become the lead post-modern world. http://www.wall.org/~larry/pm.html




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: