Live data from Hacker News

Node.js, a popular tool for building modern internet services, has split in two

wired.com

111–120 of 166 posts

Re: Node.js, a popular tool for building modern internet services, has split in two

#111

Earlier quoted context omitted.

If I were in this position, I would accept it from a frequent contributor to the project. I don't like the idea of someone poking around to make one-word non-functional changes.

> one-word non-functional changes What about typos in docs? Contextually it seems reasonable to accept changes of a single word which may cause confusion on operational grounds. Is a gendered word really different? Operationally, it would appear differentiating between pronouns might be required in documentation if some readers of the docs are offended by the masculine use. One could certainly argue that with excessi…

The parent is implying that someone was going out of there way to find pronoun errors, to make a political issue of it, not out of genuine interest in project.

Whether this is actually what happened, or is even a bad thing is up to debate.

Re: Node.js, a popular tool for building modern internet services, has split in two

#112
post #48

Earlier quoted context omitted.

Out of curiosity, what's the harm in accepting the pull request after someone's already done the work ? Edit: I get not wanting unsolicited input from "do-gooders," but if someone on the project made such a change, would you still reject it?

> I get not wanting unsolicited input from "do-gooders," I don't get it. Node is an open-source project that accepts unsolicited input in general...is there some objection to "doing good"?

That's fair. By "do-gooders" I was referring to rude people that make it their business to point out all of your problems. Their motivation is not to "do good," it's to be right, and I totally understand not wanting to accept unsolicited input from them because, well, they're rude. :)

So basically I was trying to sidestep the strawman argument.

Re: Node.js, a popular tool for building modern internet services, has split in two

#113

Earlier quoted context omitted.

Really? I've never seen any synchronization code (e.g., locks) in JavaScript. If multiple threads can execute async tasks in parallel, doesn't that mean JavaScript needs synchronization primitives? Most JS code I've seen in the wild relies implicitly on the single-threaded assumption—that only one callback (for example) will run at a time.

Say you wanna make an HTTP request. What node will do is kick off the process (dns, grab a socket, connect tcp, write the header, wait for response etc.)... but it won't wait for any of this to finish, it just starts it on another thread. That thread doesn't need any JS-level synchronization because it has nothing to do with JS. Furthermore, you can kick off multiple requests like this in parallel. When a request is…

> the external thread will queue up a V8 event

> So you see, it's parallel but doesn't need any JS synchronizatioon.

I don't know much about V8/Node internals, but I think we can regard the queue as a synchronization primitive? Granted, from what you say it's not in JS, but it's there, so at least some JS implementations need synchronization.

Re: Node.js, a popular tool for building modern internet services, has split in two

#114
post #55
post #20

Earlier quoted context omitted.

I can only speak from the perspective of my company. We had quite a few pro-node people. They wrote services in node. All of those node services have since been rewritten in Go by the formerly-pro-node people. Go has been much more manageable and powerful.

Just wait 5 years they'll be re-written in Swift, Dart, Rust (other shiny new thing). The important thing is, it will probably be the same people doing it ;-)

Really? Dart?

Re: Node.js, a popular tool for building modern internet services, has split in two

#115

Earlier quoted context omitted.

Perhaps you could name some website/app servers that aren't mostly i/o (or event-timing) bound? I wouldn't say the use cases are limited at all. You can always run multiple process instances, and communication between processes isn't really so different in practice than inter-server communication... Which just means you are scaling horizontally by design earlier in development.

I worked on some web-based project management software which was highly CPU-bound. A typical scenario would be the application querying a database for financial figures, doing a large amount of calculations on those figures and then generating an HTML report from them. I imagine any application with large amounts of business logic like this will be the same.

Could you describe the sorts of calculations those were? Are these regressions or similar? Do PMs really look at that sort of thing? Maybe they were basing a TSP on the latest financial figures? b^)

It seems possible that was a mostly IO-bound system, and the things which could have been conceivably CPU-bound should just have been batched and cached.

Re: Node.js, a popular tool for building modern internet services, has split in two

#116
post #52

Earlier quoted context omitted.

Off topic, I guess, but color me unimpressed by the guy claiming he would fire someone for rejecting a pull request that does nothing but advance a political agenda.

He didn't just reject it, he tried to undo it after it was accepted by someone else.

Well that is a different thing. At that point he couldn't claim that it was about saving his energies for more "worthwhile" project goals.

Re: Node.js, a popular tool for building modern internet services, has split in two

#117
post #48

Earlier quoted context omitted.

Yeah, talk about an over the top reaction. I'd probably reject this too from a do-gooder searching github for pronouns to change. "Get another hobby. Rejected."

Out of curiosity, what's the harm in accepting the pull request after someone's already done the work ? Edit: I get not wanting unsolicited input from "do-gooders," but if someone on the project made such a change, would you still reject it?

Actually, it was also some red-tape as the contributor was new, he has to sign some documents and be on the CLA.

Source: https://github.com/joyent/libuv/pull/1015

Re: Node.js, a popular tool for building modern internet services, has split in two

#120

I think the intersection of politics and internet is interesting. I write about it quite a bit on my blog, as well as here: http://qbix.com/blog/index.php/2013/04/a-new-kind-of-platfor... In this case, we see sort of an "arab spring" of open source projects lately. Consider MySQL after it was bought by Oracle, and then the MariaDB fork was born. Now we have Node.js and Docker being forked. Until now, most successful…

[deleted]
Post reply on HN