9

There has been a post today about the existence of too many js frameworks. Which reminds me of this awesome post https://hackernoon.com/how-it-feels...

At first I thought someone was corpseposting, as it is my understanding that the js ecosystem is calming down a bit. But then I noticed that post got almost 20 upvotes. So here's my thoughts:

(I'm not sure what I'm ranting about here, as it feels kinda broad after writing it. I think it's kinda valid anyhow.)

I'm ok with someone expressing frustration with js. But complaining about progress is definitely off to me.

How is too many frameworks a bad thing?

How does the variety and creation of more modern frameworks affect negatively developers?

Does it make it hard to understand each of these new frameworks?
Well, there's no need to. Just because it has a logo and some nice badges and says it will make you happy doesn't mean you should use it.
You just stick to the big boys in the ecosystem and you'll be fine for a while.

Does it make you feel compelled to migrate the stack of every project you did?

Well, don't. If you don't like being on the bleeding edge of js, then just stick to whatever you're using, as long as it's good code.

But if a lot of companies decided to migrate to react (among others frameworks), it's because they like the upsides: the code is faster to write, easier to test and more performant.

In general, I'm more understanding/empathic with beginner js programmers.

But I have for real heard experienced devs in real life complain about having to learn new frameworks, like they hate it.
"I just want to learn a single framework and just master it throughout my life" and I think they're lowering the bar.

There's people that for real expect occupying positions for life, make money, but never learn a new framework.

We hold other practitioners to high standards (like pilots or doctors), but for some reason, some programmers feel like they're ok with what they know for life.

As if they couldn't translate all they learned with one framework to another.

Meanwhile our lives are becoming more and more intertwined with technology and demand some pretty high standards. Standards that historically have not been met, according to thousands of people screaming to their devices screens.

Even though I think the "js can be frustrating" sentiment is valid, the statement 'too many js frameworks is bad' is not.

I think a statement like 'js frameworks can go obsolete very quickly' is more appropriate.

By saying too many js frameworks is a bad thing you're
1) Making a conspiracy theory as if js devs were working in tandem to make the ecosystem hard,

But people do whatever they want. Some create packages, others star/clone/use them.

2) Making a taboo out of a normal itch, creating.
"hey you're a libdev? just stop, ok? stop"
"Are you a creative person? Do you know a way to solve a problem in an easier way than some famous package? it doesn't matter, don't you dare creating a new package."

I'm not gonna say the js world is perfect. The js world is frantic, savage, evolves aggressively.
You could say that it (accidentally) gives the middle finger to end users, but you could also say that it just sets the bar higher.

I liked writing jquery code in the past, but at the same time I didn't like adding features/fixing bugs on it. It was painful.

So I'm fine with a better framework coming along after a few years and stealing their userbase, as it happens almost universally in the programming world, the difference with js is that the cycle is faster.

Even jquery's creator embraced React.

This post explains also
https://medium.com/@chrisdaviesgeek...

Comments
  • 1
    Also it is my impression that some people is under the impression that every existing module can be reused elegantly by other modules.

    As if the every part of open source code is like one piece of a giant puzzle that can be elegantly reused, thus never needing to be rewritten. That couldn't be more sci fi and further from the truth.
  • 5
    The "you don't have to use it" argument falls flat in reality because it's not you who decides that.

    It's whatever is present in existing code at this or the next or any other company, and the consequence is that you have to learn MANY frameworks - but you can't really enjoy the benefits because the next project from half a year earlier is in another framework.

    In short, this shit forces devs into eternal noobness, and of course this will piss people off.
  • 0
    @Fast-Nop I thought being a dev meant eternal noobness though. I've tried embracing it. Sure, it feels good to use the same tools for a couple of years but... Eh, I dunno. At the same time I'm thoroughly convinced that I'll learn React and a handful of companion libs and just use that for the next 20-50 years so you'd be right in questioning my judgement... 😬
  • 0
    @ihatecomputers the problem when everyone is eternal noob: who makes sure that the product doesn't get fucked up? I mean, suppose you'd need a dialysis machine, would you want that to have been developed by noobs?
  • 1
    If you actually chose the best available tool for the job, kudos to you. Yet especially with JavaScript I have experience hype-driven development, where managers who never code force a team to use the technology of the latest trend because "<big company uses it / created it" and it supposedly solves all our problems.

    Then there also developers whose purpose is trying out all the latest technology because it's fancy completely forget that there's a business involved.

    I too consider it a strength that it's easy to develop new libraries and frameworks through npm, though then it becomes a question of filtering.

    Often times you have 10 libraries doing the same things but each is missing something that the other had. I wish people would align more and build one library together than producing their own take on it.

    For all the flag php has gotten over the years, its community understood the need for a *mature* framework that you can build rocksolid software with.
  • 0
    I am dearly missing something like symfony and its component in the npm landscape. In JavaScript, it appears that everybody is always reinventing the wheel.
  • 1
    Honestly, when it comes to JS and its ecosystem: we can't win as JS devs when it comes to the hate.

    I like Javascript, actually I love the language and have not ONCE got caught up in the language's quirks. But this comes from the fact that when I started developing in it a lot of articles, books, documentation would mention certain things and I would always keep my eye for such things, the same I can say for every other language that I have ever work with professionally, knowing what to do and not do has always been a major thing for me and I believe it should be for others. Yet people complain, about C++, about C about Java, about PHP, about Python, Ruby you name it: someone will bitch about it.

    With Javascript it does not matter how much the language evolves and what people brings to the table, ignorance will always prevail and you will have articles bitching about the state of modern JS and by extension web development.
  • 2
    @AleCx04 it does not matter if you have Typescript, it does not matter if you have Clojurescript, it does not matter if you have all these amazing tools that will help erradicate the bitching points, nope, you will have people bitching about it. Learning new things should be something that developers look forward, but you do have assholes thinking they can concentrate on just one stack and then explode when a different stack is not working in the same way. This is true for literally every other technology. In my experience, if someone bitches about something like Vue or Angular or React, which are the main frameworks, then they probably never really needed them, and shit is fine really, but to bitch about the modernization of frontend development or shit even backend development in Javascript is pointless since they never needed it, again, that is fine. There are some things that I don't like, like JS desktop apps, but I don't neglect the importance of such tools.
  • 0
    @k0pernikus I hear you on that because I am also all for symfony. I really am. But there are stacks for Javascript that work that way, take Nest JS for example or Express or Koa. They are modular as all hell, much like the current iteration of Symfony is and I believe this is wonderful. One can't win with PHP either, people will continue to bitch about it as well. To me that's fine. While they(properly, if they even know how) take the time to set up a Rails environment or a Python flask or django or whatever I already got done building what they needed with PHP , such is life.
  • 1
    @Fast-Nop
    I get your point. But maybe I'm too young in the industry to see how usability, performance, and enjoyment has dropped as our techniques on the front-end has advanced. Like, we have awesome sites that do - what we not long ago would have called - crazy stuff.

    And despite these advancements: The web usually work, yes? Not because we fall back to barebones HTML, or because all the global sites are built on very mature tech. Even two years ago Facebook had 30k React components. Did devs groan about having to abandon their old frameworks? Probably. But they'd probably be excited about all the cool stuff they'd be able to do.

    Maybe I'm just ranting, but this attitude has bothered for some time. And this comes from a guy that has suffered from that god-awful framework fatigue that most of us can relate to, and had a minor panic attack when Webpack became so big that I'd actually had to sit down and understand what problems it was solving and what new stuff I could do with it. I hated it. Yeah it sucks, but it's kinda cool that we're in this explosively innovative phase...

    I guess my point is that these frameworks popped up for a reason. It's a bummer but it's also nice in a big-picture kind of way.

    Does this make sense?
  • 1
    @ihatecomputers mh yes I guess, when it's about the web where it doesn't really matter whether it's there or not. However, usability hasn't really advanced that much because designers are too fond of finding ever new ways to implement super annoying shit.

    Sometimes new tech is even behind what we already had. Just compare usenet clients of the 90s to modern forums, the latter are a joke in comparison. Chatting? There's hardly anything modern that compares well to mIRC from the 90s. Change isn't always progress because losing skills and tech is also change.
  • 1
    @Fast-Nop
    See, I missed that era so I might be blissfully ignorant about the ways in which we've gone backwards. One thing is never all good or all bad, and I guess I'd be naive believing that everything is better now. I certainly don't believe that about society in general, for example, even if it's a fact that we've advanced in so many ways. Cool...
  • 2
    This is a quality post
Add Comment