The abundance of JavaScript libraries
joonaspajunen.com
joonaspajunen.com
IOW, JavaScript is going to be great next year. Just like it was going to have been each year for the past 10 years or so.
IOW, JavaScript is going to be great next year. Just like it was going to have been each year for the past 10 years or so.
ES6 might actually be ok, in the sense of "about as good as Python 2.3".
Well, ES6 wasn't available "the past 10 years or so", whereas it will be next year, and recent 6-to-5 transpilers make it a backwards compatible option too.
>ES6 might actually be ok, in the sense of "about as good as Python 2.3".
Well, it's more ubiquitus that Python, more dynamic, more modern (if you include ES6 features), tied to a more powerful environment (the web), and beats the shit out of Python regarding execution speed.
None of these things are features of the language itself (except arguably "more modern", whatever that means). They're all byproducts of the fact that JS is the only language that runs in a browser. JavaScript has basically succeeded dramatically in spite of itself by piggybacking on the runaway success of the web/browsers.
So? The end result is the same, Javascript has these attributes and Python doesn't.
- builtin type literal
- closures and fp idioms
- generators
- asynchrony
- comprehensionsThere is definitely a lot of churn, but slowly but surely you are seeing certain functional programming approaches winning out.
And the language is progressing so much faster than similar dynamic languages like Python.
Because it was a haphazard design.
A lot of the progress is just Javascript catching up to thoughtfully designed languages like Python. That's a good and necessary thing, but the fact remains.
It's long past 'catching up'. It's a healthy ecosystem.
Javascript is definitely making great progress, but npm thrown in as an example of how it's "long past catching up?" That's like, bare-minimum required functionality.
I'm not trying to attack, but when JS evangelists cite something like npm as a zap-pow feature, skeptics roll their eyes - especially when they've been using pip/rubygems/cpan for a decade or two.
Edit: I realize now you were probably citing npm more as evidence of JS having arrived with a healthy ecosystem (true) than as evidence it's leapfrogged others.
Mozilla is basically cultish about JavaScript's place as the One True Web Language.
That's pretty scary, if true. That sounds very analogous to academic research and the "publish or perish" state of affairs in academia today.
Office politics often will advance your career in any sizable organization. That's why people engage in it. If publishing libraries is an extension of that, then we should be worried about the precedent that's setting for software development as a whole (because it'd be silly to assume that this remains siloed to front-end developers).
Ehh I'm not really sure how that applies here, especially since the market of "javascript libraries" is probably about as free as you can get (in many senses of the word).
There isn't much going on in the way of financial return in that market, probably because people are seeing the benefit of implicit financial return (via the "office politicking" we're discussing here) and banking on that.
In which case, I'm not sure how capitalism will help.
We're still allowed to use what we want, no matter how new or old it is, right?
Yes, It's called the Internet. People read articles about how X is the best. thing. evar. And this is perpetuated through many blog posts and, well, a lot of developers actually believe it.
It's not just that the language sucks in some ways but that the users of it possess so little engineering rigor that they complain about TOO MANY options.
It has becoming a reality slowly...
Yes. Not all forcing is of the "gun pointed at you" kind.
There's also: peer pressure, fads, media coverage, changing demands from employers, etc.
Sociological studies have proven time and again that this is not the case -- including in people that think that that's impossible for themselves (sort of like the Dunning–Kruger effect).
also, if you're going to assert there are studies that make your conclusion somehow not an ideology, then the actual citations would be good. and they'll have to be fairly interesting to convince me. sociology is full of outright fraud, without even considering all the papers suffering from poor experimental design and rampant conclusion jumping.
The only valid excuse here is your employer, but in that case you should be able justify why using X is better than Y. If your non-technical manager insists that you use something that you don't want to because its hip you should be running away from that employer as quickly as possible.
Not really. That's some conscious processing that you did, and that we can do -- but only to certain degree. When we go and buy stuff, the advertisments we've seen affect us, not just in what brand we'll buy, but in the very basic act of buying something over nothing, and how much we'll buy of a product.
It's a whole, much studied, field with tons of tunable parameters, from the psychology of a tv, to the height of stuff in Costo's shelves, the colors and smells inside a supermarket (and lots of stuff for web shops too), down to the $x.99 kind of pricing.
Yes, but that means you may be on your own to support it, which means extra up-front work as well as maintenance.
For example, keep in mind that Javascript has changed execution environments and was also originally built without the concept of simply importing other JS files. So over the years, we have had various incompatible ways of packaging and even importing modules[0]. Yes, the situation is improving, and ES6 and polyfills sort of fix this, but let me tell you, it is not fun to deal with old code that assumes a different execution environment and/or build process than the one you're using[1].
[0] e.g. https://stackoverflow.com/questions/16521471/relation-betwee...
[1] I really don't want to turn this into a debate on the best way to package or import Javascript projects today - just to point out that yes, there is a cost to using old code, regardless of how good it was at the time it was written.
I mean, you're passionate about keeping your skills updated, right?
Not remotely true with JavaScript. Something which got 2k stars on gitub this year might be on the way out in a year, and you'll be stuck figuring out whether it still works with the new version of d3.js, or on the newest Chrome... and if it doesn't you have to either move on or fix it yourself.
With things like require its not like it would be difficult to role your own framework like you can with php and composer (+all the symfony / laravel modules)
Like in other languages there's some wait and see to adoption. Going all in on a project that's been on GitHub a month no matter how many stars is foolish. JS devs have to make their decisions this way.
1) Learn to focus on the actual ideas and patterns behind languages, libraries, methodologies & concepts, instead of implementations
2) Observe how libraries, languages, methodologies & concepts get adopted & perhaps later rejected