7 ms·
> i'm sure i'm going to burn karma for comparing node with vb but... I'll take the hit for you and flat-out say that node.js is the new VB. In fact, for those
by mhuffman 10y ago
> i'm sure i'm going to burn karma for comparing node with vb but...
I'll take the hit for you and flat-out say that node.js is the new VB.
In fact, for those of you that have been around a while, I think we can all agree that node.js is the new PHP was the new Visual Basic, etc.
Not in the sense that they do the same things, but that they were purposely built for non-programmers (baby-devs) to be able to program (which is good!) but by the same token, invited entire (and continuing) mountains of half-assed, unsupported(unsupportable) code that just begets generations of garbage.
If you are a consultant, fixing this garbage can be a whole career.
- at-fates-hands 10y ago>> but by the same token, invited entire (and continuing) mountains of half-assed, unsupported(unsupportable) code that just begets generations of garbage. Isn't it possible to say this for just about every programming language?
- raverbashing 10y agoNot really The lower the barrier to entry, the more "inexperienced" people you get And with nodejs the inmates are running the asylum There is great nodejs code, for sure. But as left pad has shown us, it seems it is a big "Neverland"
- mhuffman 10y agoBad code? Yes! But C++, Java, Perl, even Python has a bit of a learning curve that demands some small amount of commitment (and more importantly, understanding) to get moving with. Javascript, VB, PHP can get a person creating things in an afternoon (which I am not against, I like that it might inspire people to get into "real" development), which invites hit-and-run development.
- biocomputation 10y agoMan, I feel like I'm going to have to upvote everything you've written in this thread.
- arisAlexis 10y agoSeems like javascript is picked up by giants (microsoft build its IDE) facebook (React?) Google (angular) so I guess you cant compare it with VB unlesss I missed something in the 90s
- rootusrootus 10y agoI think you might be missing the distinction in the above post. Node.JS != Javascript.
- lemiffe 10y agoWhat? Node.JS is Javascript. JS at the end of the name stands for Javascript!
- biocomputation 10y agoYou beat me to it. I was going to write: Node.JS === Javascript
- blitzd 10y ago...except for the whole sync/async (libuv) thing. And the bits they added on top of V8, like Buffers. Maybe Javascript == Node.JS then?
- yulaow 10y agoMeh. Microsoft built a text editor with it and only because it was the simplest choice to have finally a os-independent editor (maybe now they would have go for .net core if they had a good cross-ui library). Facebook and Google had to use it because you are talking about framework for the web, and sadly our browsers support directly only javascript as scripting language... they have not chosen it, they were forced to use it.
- jimjimjim 10y agoin the 90s there was microsoft... outside of internety places, big iron and academia, that was it. 'must be compatible with windows' started appearing in 'request for proposal' specs. what microsoft pushed got massive mind share.
- rationalthug 10y agoYou do realize that Python was not only built to appeal to "non-devs" as well ad devs but, does, in fact, enjoy some of its strongest support from them- scientists, engineers, statisticians, etc., who do not consider themselves to be good developers. And, man, they can develop some crappy code/systems in Python too. I like Python too (as well as node,) but your characterization of node is over-broad and, imo, inaccurate.
- mhuffman 10y ago> You do realize that Python was not only built to appeal to "non-devs" ... as an alternative to C++ and Perl. And in that respect, it is a snap to pick up. It is pretty easy, not as easy as, say, Javascript, but still easy to pick up, I agree. Node.js is cancer. We all use it, because of the momentum it has with designers instantly being able to declare themselves "full-stack devs", but make no mistake -- Node.js and npm are an abomination that we will look back on in ten years and shudder.
- aabajian 10y agoPython is way easier to understand than JavaScript IMHO.
- zyngaro 10y agoSo you're saying bower is cancer? Webpack is cancer? Babel is cancer ? JavaScript module system made popular by nodejs is cancer? I largely prefer Python as a language but Nodejs is the best thing that happened to web development in years/ever
- bradscarleton 10y agoAs someone who does a ton of Node/JS coding as well as some Python, I am personally offended! Ok, not really, but I think you're wrong :) I think VB is more similar to Python in the sense that both languages were designed with some sense of simplicity and straight-forwardness in mind. Both PHP and Javascript are much more complex from a language design standpoint, which makes them more difficult to learn "well" for beginners. Yes, they are both hugely prolific because of the web, and lots of people copy/paste code around not having any clue how it works, so I won't deny your "generations of garbage" comment. But you're assessment is a little too simplistic. A good engineer can write high quality code in "almost" any programming language. It's the coder, not the language, that determines engineering quality.
- mhuffman 10y ago> Both PHP and Javascript are much more complex from a language design standpoint Complex in the sense that they were originally thrown together and the results of the program might best be described as "stochastic output", yeah I can agree with that. > A good engineer can write high quality code in "almost" any programming language. It's the coder, not the language, that determines engineering quality. Sure, but it sure seems funny that "high quality code" is nearly non-existent in PHP and javascript world ...
- bradscarleton 10y ago> Complex in the sense that they were originally thrown together and the results of the program might best be described as "stochastic output", yeah I can agree with that. Absolutely, they are complex because of poor initial designs, and actually even more complex now due to all the efforts to maintain backwards compatibility... > Sure, but it sure seems funny that "high quality code" is nearly non-existent in PHP and javascript world ... jQuery is an incredibly well engineered library by John Resig. I think that jQuery was one of the big technological leaps forward that led to the proliferation of web applications. For a long time, people thought that cross browser JS inconsistencies and confusing API standards meant that you couldn't build interactive UI applications in the browser. And now they are ubiquitous. So I guess it depends on your definition of "high quality code". I don't think quality code is about some arbitrary coding aesthetic. It's about results, and it's about what your code does, and how it creates value.
- dragonwriter 10y agoNode.js wasn't built for baby devs, it was built for professional devs who had to use JS anyway because browsers to be able to use the same technology on the back-end rather than using different languages front- vs. back-end.
- mhuffman 10y agoThere is this radical idea in software development that sometimes you use the language that is best for the job -- not just the one you are already using!
- WayneBro 10y agoRight...but it still wasn't built for people who do not know how to program very well. It was written for JavaScript programmers. Nothing else really needs to be said other than that.
- mhuffman 10y agoWell I disagree. It was written as a limited browser scripting language in 1992. I was never meant to be a full-blown development language. So, I guess that needed to be said ...
- WayneBro 10y agoOK but I was talking about Node, not JavaScript. You certainly cannot say that JavaScript was NEVER meant to be a full-blown development language though because now it is since it has grown into that overtime. Just because it wasn't originally conceived as such does not mean anything. The same thing happened with BASIC and Visual Basic. It doesn't mean anything. It's like saying that wheels have no value because the original wheel was never meant to be used in autonomous cars.
- mercer 10y agoWhile I agree that it wasn't created for 'baby devs', wasn't the primary reason for Node.js' creation that Ryan Dahl wanted an async ecosystem/platform, and javascript had the 'advantage' of not already being used server-side, so there would be no confusion over sync/async libraries/modules? At least that's what I recall from reading/watching the initial videos back when it was released. At the very least I've never heard the 'same language front and back' argument until later on in Node's life. But perhaps I misremember?
- exception_e 10y agoI encourage folks to stop wasting time on this flame war sub-thread and focus on choosing the right tool for the job. ...hopefully that quiets down the nonsense :)
- emilsedgh 10y agoI never got this. Coding in Nodejs is much, much harder that in Python, Ruby, C# or Java. I've seen .NET (and even C) programmers that after a year of coding using node still don't have a clue what the hell is happening. Dynamic typing vs. Static typing doesn't make a language harder. If you prefer dynamic languages you are just a bit lazier and short sighted. Async vs. Sync (specially the way node handles it) IS harder, though.
- RussianCow 10y agoI agree with most of what you said, but this is a bit naive: > If you prefer dynamic languages you are just a bit lazier and short sighted. In theory, the only drawback of a statically typed language is the up front work required to make the compiler happy. In practice, you end up losing a lot of expressive power, and abstractions that were previously effortless now either add a lot of verbosity/complexity, or are simply impossible. Scala is the most expressive statically typed language I've seen, but even there you often have to jump through hoops to implement certain abstractions in a type safe way. The decision to use a dynamic language is not about laziness.