I was there for the first wave of SPAs, I even learned angularJs and Knockout. It did feel like a major atep forward, being able to make highly interactive applications. However, things quickly went off the rails when the tools stopped being about managing heavy client state, and became the default for everything, even when it ment using JavaScript to build extremely basic functionally browsers did natively with html, but extremely worse(e.g. navigation). The modern Web really is a victim of hype and trends.
Unless your app needs to work offline, or you have to manage dozens of constantly changing client side data points concurrently, your site doesn’t need to be a big heavy js framework. My rule is if it looks like Google Maps, you need a SPA. if it looks like Gmail you need REST/HATEOS. and if it looks like google’s mainpage, you need a server side rendering.
At some point you might see the light, and go back to making your websites simpler, but Im not hopeful. Until then I’m building the majority of things with HTMX and alpineJs.
css can do animations, and it’s much more performant then js. I hate how over-used JavaScript is on “modern” websites.
some websites are even straight up unusable or don’t display anything with js disabled…
Some websites, JavaScript is necessary for doing things without overloading a server. Mostly SPAs/PWAs and such. I’m using Voyager for Lemmy right now, which needs JS, but it gives me a great experience.
But yeah, JS is often overused. Luckily, with new technologies coming out like Astro and HTMX, we should hopefully start seeing less JavaScript on pages that don’t need it.
However, it uses a lot less JS. It’s only a few lines of JS to replace an HTML element, but a lot more to parse a bunch of JSON and then alter the HTML to reflect that.
Yeah. I don’t like writing JavaScript and I hate when I’m forced to use it to do something that could be handled otherwise except reasons. But especially with later versions it’s not the worst thing in the world. I work in ruby on rails and love hotwire that lets me avoid js more than before. But still js isn’t literally Hitler like people make it out to be
Sucks that the same bs posted on reddit is creeping into lemmy
I’m seeing this in a few communities and it’s really frustrating. It’s not surprising, because it’s not like Lemmy has something built into the software to prevent it, it’s just disappointing.
And python was created to teach programming. And PHP was something a guy used to maintain his webpage. If a language is useful it will gain popularity, and I never used a language which I didn’t find frustrating at some point.
True, but I see this quote repeated so often that it kind of bugs me. It seems to be used in a thought-terminating way. As if we shouldn’t criticize languages. As if they aren’t tools that are able to be improved upon, or they’re all made equal. But I’m sure Bjarne Stroustrup needs to fend off hostility and unfair criticism as much as any programmer with a successful language.
i read it as more: complaints about a language, particularly the amount of complaints, don’t mean it is a Bad Language that should be dropped in favor of something else
in fact the complaints validate that the language is being used by people, and that–the number of people actually using the language to Do Things–is imo a decent proxy metric for the usefulness of the language
so please complain about your languages’ shortcomings! i hate so many things about terraform / sh / python / golang / java and will gladly rant at length, and then go right back to using them
JS is fine. But as with any tool it’s not the best for every scenario.
The flak JS tends to get us mostly because of the rise of popularity is Node.js leading to backend JavaScript beginning commonplace. which it’s overall a poor choice for backend when compared to many other languages as the strengths that JS has are more tailored to frontend.
Don’t worry about, JS is a fine language and is used by all of the top companies. If you want to get a job as a software developer you have decent odds if you learn JS
As someone currently job hunting - native JS isn’t enough anymore. Everyone wants React devs. I see some posts for Vue or Angilar and sometimes even TypeScript but the vast majority want React coders now.
Very true.
If you are learning JavaScript, typescript is absolutely worth learning as well.
React and Vue have some additional paradigms, but it is basically just JavaScript/typescript.
It’s a lot to learn all in one step.
I guess it’s like trying to learn C# and Unity all in one
If you don’t hate a programming language you simply haven’t used it enough or are delusional. Every language sucks in its own special way, js ain’t special.
I agree with you that every language has its flaws but JS feels like it was a hodgepodge created without any design philosophy in mind. I don’t use C or lisp in day to day work but I can appreciate their philosophies and power. Can’t say the same about JS.
That’s because it literally is the result of mozila, Microsoft and later Google fighting about what the right language choices were/are. Browser detection scripts and shims are still a thing, but back in the day we had to code that shit by hand every, and I mean every, minor version release of every browser.
This is super interesting. But why isn’t HTML or CSS a similar mess? I found their structure to be more logical than JS. Parts of JS feels like it’s intended as a backend language but parts of it don’t.
Really? I find that css is pretty much the ugly part of html. Html is no worse than markdown or latex. If you just wrote plain HTML and were okay with how it rendered, you would have nicely structured code.
My point is that if you only use the parts that don’t bring confusion you have a problem… Nobody ever does that in production… Much less with any frameworks. There is no such thing as semantic html at scale or in any modern framework.
That isn’t the fault of the language though. It does what it was designed to well. Maybe it is I’ll suited to achieve things it wasn’t designed to do?
I could absolutely write code to do data analytics with C and gnuplot, does that mean they’re the appropriate tools for doing that when pandas, SPSS, Julia or matlab exists? Probably not.
Honest answer: JS is a shitty language and I despise it. BUT you can learn a ton of stuff with that, all the features (loops, conditions, variables, etc.) that exist in other languages. You will hate JS one day too, but right now it’s good to learn, and when you’ll switch to other languages, you’ll be happy you learned something.
So yes, JS sucks, but no, it won’t be useless for your future. Keep on working, programming is really fun.