Live data from Hacker News

Node.js isn't a silver bullet, but it's still a bullet.

crgwbr.com

81–90 of 110 posts

Re: Node.js isn't a silver bullet, but it's still a bullet.

#81

First they ignore you, then they laugh at you, then they fight you, then you win --- Gandhi This happens with every popular new tech that does things differently from how its been done before. Since I've been developing I've seen it happen with PHP Rails mongodb now node.js As long as there is a critical mass of developers that want to use a certain technology, there is nothing that anyone can do to stop it. They'll…

I'm going to make a guess at your age based on this list, I predict you are less than 30 years old.

This is because your list is missing Java. During the mid to late 90s Java was Jesus. It was the solution to every possible computing problem imaginable. The amount of hype surrounding Java puts anything we've seen since to shame, even NoSQL, "cloud" computing, social networking, etc. It was infuriating. And it took a few years of everyone and their mother banging away at Java development before people realized that it wasn't the Messiah, it was just a technology with a few advantages as well as some disadvantages, and that it was a good idea to only use it sometimes and keep using other languages when appropriate.

Remember that JavaScript has absolutely nothing to do with Java except the name was changed and some of the syntax was changed to make it more closely resemble Java merely out of a crass marketing attempt on Netscape's part.

Re: Node.js isn't a silver bullet, but it's still a bullet.

#82

Just wanted to point out the apples to oranges comparison being made: The article argues that node's sweet-spot is: "to enable real-time propagation of events and state-changes between clients. You could do the same thing with long-polling ajax or even frequent polling, but those both come with the cost of tying up unnecessary worker threads on the server and dealing with extra requests." yes we all know that, that i…

Node.js has much better marketing. From the outset Node made a big deal of its event driven architecture and why I should want to use it. Twisted's website, on the other hand, fills the front page to use verbose, boilerplate-heavy code examples. They mention an "event-driven web server" but don't say why I'd want that. If I'm still interested and click through to their example's I see stuff like "pbsimple.py - simple…

I haven't used twisted in ages, but I have to second that.

It's quite a solid framework - with possibly the worst marketing in software history.

Re: Node.js isn't a silver bullet, but it's still a bullet.

#83

Earlier quoted context omitted.

For no reason other than it would be a fine alternative. I'm sure your Node solution is performant and simple, and you should stick with that but no doubt a simple server written in ruby or haskell or python or anything really would get the same job done.

I considered EventMachine and Twisted and decided to go with Node. 90% of the requests to the server will be "take this and push it to redis". Another factor in the decision was the other programmer on the project doesn't know Ruby or Python. Another factor was that I'm young, not constrained, and I want to learn everything I can get my hands on.

[deleted]

Re: Node.js isn't a silver bullet, but it's still a bullet.

#85
post #73

Earlier quoted context omitted.

http://www.infinitelooper.com/?v=-sfZqL4Plxc&p=n#/260;27...

I'm not impressed by this example. You could use the same words to describe nginx to some degree. "Do something that hasn't been done before" isn't a crazy amount of hype, in my opinion.

Event loops and asynchronous reactor patterns have been around since what, the late 70s? Node "callback soup" is isomorphic to the structured programming models of dataflows and transactional architectures. Event-reactor systems with asynchronous libraries have been present in almost every language I've ever encountered--hell, even Modula-2, a fucking ancient Pascal derivative, had coroutines which supported exactly this kind of interleaved or reacted control flow.

You could have used any other language, for literally decades prior to Node's existence, to build the same things. Even if you didn't want to build a totally evented system, judicious use of select/epoll allows you to reap the benefits of asynchronous I/O without locking your whole application into the event loop.

Node.js programmers are building concurrent applications on a platform without coroutines, without fork/join, without threads, indeed without any parallelism, without scheduler priorities, hell without integers--and claiming it's a new paradigm in computing.

I consider that a joke.

Re: Node.js isn't a silver bullet, but it's still a bullet.

#86
post #50
post #22

To extend the metaphor, Node is a silver bullet. Silver's way more expensive than lead and offers little or no improvement unless you're shooting at werewolves.

But when you are shooting at werewolves, silver bullets are definitely the thing to use. A while back, I had an application which needed to do some fairly complicated string manipulation, both on the client side and the server side, and by using Node, I was able to write and debug that code once. There are good use cases here.

Exactly! I'm frankly not sure how “silver bullet” came to mean a general solution…

Re: Node.js isn't a silver bullet, but it's still a bullet.

#87

Using node.js for server side programming is a new trend which is common around people who only know Javascript, and choose node.js because it's a language they know. This is a HUGE problem, because even though node.js has a huge community, it seems they do not learn from the mistakes of older and more experienced languages. They just try to re-invent everything, which results in crappy systems.

Isn't that just part of the process of exploring the new technology though? Sure a lot of that will fail, but people will learn from what works and what doesn't. I think it is less of a problem that people who know javascript are choosing node because they know js (like myself), and more of a problem that there are so many posts complaining about people wanting to expand their horizons instead of trying to actually e…

I guess the take home here is that Node.j is not new technology. It is old technology reimplemented in a new language. In that sense, rather than fumble through the same mistakes and rediscover the same limitations others have, why not read a book on event driven programming instead?

Re: Node.js isn't a silver bullet, but it's still a bullet.

#88

So far, everyone seems to agree that every project has unique problems and solutions, and that node.js has a place. The real argument here seems to be that people are tired of "node hipsters" and "hype". Get over it. What's the point in wasting time being angry about what other developers are thinking or doing? If they're wrong, they'll figure it out eventually. It's the online equivalent of bitching about everyone t…

Plus all the hype just makes programming better. More eyes, more research, more usage, more knowledge, more code-as-art projects. I don't use node, but I'm envious of the people who have all that time to play around with it. Is it the best solution for any problem? That's up to no one but your own expert opinion. It really doesn't matter. What matters is people are programming and they're having fun doing it. You try…

I partly agree, but surely the annoyance at things like this is because those eyes and research could have been on better potential projects that didn't get the hype.

It's naive, but I always felt the annoyance comes from the fact that people like a meritocracy and hype being such a large part is irritating. Luck you can deal with, you know its isn't going away. It's harder to internalize that the hype aspect is natural human behavior and it isn't going away either.

What I don't get is people who take that fact and decide it's not worth trying to do things better.

Re: Node.js isn't a silver bullet, but it's still a bullet.

#89
post #87

Earlier quoted context omitted.

Isn't that just part of the process of exploring the new technology though? Sure a lot of that will fail, but people will learn from what works and what doesn't. I think it is less of a problem that people who know javascript are choosing node because they know js (like myself), and more of a problem that there are so many posts complaining about people wanting to expand their horizons instead of trying to actually e…

I guess the take home here is that Node.j is not new technology. It is old technology reimplemented in a new language. In that sense, rather than fumble through the same mistakes and rediscover the same limitations others have, why not read a book on event driven programming instead?

That is sort of like saying a smart phone is not new technology. In a sense it is not. It is the combination of two already existing technologies, but isn't that pretty much what all new technologies are? On top of that it is a new language and each language is going to be better or worse at doing certain tasks. It is also frequently more beneficial to actually learn something for yourself.

As for your second point, client side programming (GUI in general) is very event driven so a lot of people coming to node because they have javascript experience have event driven programming experience. And as far as I know (I may just be ignorant of it, and would love to know if I am wrong) there is no go-to text on event driven frameworks, nor has there been anything as popular as node that has been so focused on events besides tcl/tk which there isn't really a wealth of readily accessible knowledge about.

Again, I could be totally wrong, but unless you can point towards where someone working with node can learn these lessons I am gonna go on ahead thinking that node and it's community are doing well. There is after all a wealth of community driven documentation and tutorials being assembled already. I would hazard a guess that the amount of information available to someone new to node is more robust than many older frameworks/languages/programming technologies in general.

Re: Node.js isn't a silver bullet, but it's still a bullet.

#90
post #86
post #50

Earlier quoted context omitted.

But when you are shooting at werewolves, silver bullets are definitely the thing to use. A while back, I had an application which needed to do some fairly complicated string manipulation, both on the client side and the server side, and by using Node, I was able to write and debug that code once. There are good use cases here.

Exactly! I'm frankly not sure how “silver bullet” came to mean a general solution…

I always thought that it was because in the metaphor the "werewolf" was "programming is hard". There is no silver bullet to kill the "I have to make trade-offs as this gets more complex!" monster.

I could be wrong, I have no reference or even a memory of learning this so I have either forgotten or I just made this up.

Post reply on HN