Live data from Hacker News

Ryan Dahl steps down

groups.google.com

51–60 of 66 posts

Re: Ryan Dahl steps down

#51
This is very surprising. Node is not mature yet and the guy with "the vision" is stepping down. Makes you wonder if node is heading in a direction different than Ryan envisioned and it's no longer a labor of love.

Re: Ryan Dahl steps down

#52

Earlier quoted context omitted.

I don't know that anyone is suggesting that it's "finished". In fact, it's not even to a 1.x release yet. I consider anything below that a work-in-progress at at minimum. Generally anything under a 2.x release has lots of room for improvement. The fact that they're shifting focus isn't a big concern. I'd at least wait until Isaac comes out and says what the future roadmap is before criticizing it.

The point is that people (core developers) are suggesting it is finished. Follow them on twitter, and subscribe to the mailing list and you'll see.

You have to remember, developers close to a platform always live 6-12 months in the future, at least. (Talk to Brendan Eich about JavaScript, he's like 5 years in the future.)

What "finished" means in this context is that we've established which problems we're going to solve, and the solutions to those are well-understood. There aren't new problems that node-core is setting out to address by making changes to the binary itself.

The new hard things to tackle are above the core layer - CI, userland module documentation and discoverability, binary deployments, etc. There's quite a bit of polish and refinement to be done at the lower level, but the paths are clear at this point, as far as that goes.

Re: Ryan Dahl steps down

#53

Earlier quoted context omitted.

You can open a file with O_EXCL if you pass in the open flags as a number. (You can find them on require("constants"), and they need to be binary-OR'ed together.) This isn't documented. It should be. It should probably also be exposed in a cleaner way. Most of the rest of what you describe is APIs that need to be polished and refined a bit. The boundaries are well defined at this point, though. We probably won't add…

> You can open a file with O_EXCL if you pass in the open flags as a number. (You can find them on require("constants"), and they need to be binary-OR'ed together.) This isn't documented. It should be. It should probably also be exposed in a cleaner way. That's great to know. Obviously I'm just following the docs. > Most of the rest of what you describe is APIs that need to be polished and refined a bit My concern is…

O_EXCL is in for 0.8: https://github.com/bnoordhuis/node/compare/O_EXCL

flock() is not trivial to do in a portable way. For a unix-only flock(), check out the fs-ext addon. Same for mktemp.

I wouldn't be opposed to either being in core if it could be done in a clean way, but this is just adding another knob that can be done with an addon easily enough. If you care more about having flock() than about writing portable programs, then that's what the fs-ext addon is for.

> We are going to be dealing with Node.js security bugs because of these issues for a VERY long time.

Of course we'll be "dealing with Node.js security bugs for a VERY long time", because we'll be using Node.js for a very long time. Software is buggy, and many bugs are security hazards. We'll be dealing with "Unix security bugs" and "C security bugs" and "Java security bugs" forever as well.

Please do not make vague suggestions about security issues. Either you've found an issue, and should be submitting it, or you haven't, and are just spreading fud.

Re: Ryan Dahl steps down

#54
post #14

Earlier quoted context omitted.

node.js isn't a language.

Linux isn't a language either, but they have Linus since forever.

To quote Mikeal Rogers, "The L in BDFL stands for LIFE, BRO!"

Ryan will be a part of node forever. He's not gone. He just somehow talked me into doing a lot more work :)

Re: Ryan Dahl steps down

#57
Hm. I am just wondering if it wouldn't be better if Ryan could make living of Node and therefore could stay to work on it. How does one make living of Node ... em, charge for it, maybe? Is it so radical to suggest that Node could be a paid product.

Re: Ryan Dahl steps down

#58

Earlier quoted context omitted.

I hope not. Edit: I don't know of too many prominent JavaScript programmers who prefer not to use semicolons. http://dailyjs.com/2012/01/12/style/

One of the better arguments I can think up against the npm coding style is probably found in the Matador framework, specifically its router: https://github.com/Obvious/matador/blob/master/src/router.js Note: I actually rather like Matador. I just find this particular style--high density, no semicolons--much harder on my eyes. I'm sure many others can read it better than I can, however.

Leaving aside the global variable, I think this example's biggest issue is the complete lack of whitespace and the big stack of chained calls (which I'm not personally a fan of, but your house, your rules :)) - this is it with a few reader-sympathetic newlines added: https://gist.github.com/1710254

Personally, I find using comma-first and omitting semicolons except where required for ASI reduces the amount of noise down the right-hand side of the code and the amount of scanning I have to do there (for variable definition, object literals and nested calls in particular).

Re: Ryan Dahl steps down

#59

Earlier quoted context omitted.

You can open a file with O_EXCL if you pass in the open flags as a number. (You can find them on require("constants"), and they need to be binary-OR'ed together.) This isn't documented. It should be. It should probably also be exposed in a cleaner way. Most of the rest of what you describe is APIs that need to be polished and refined a bit. The boundaries are well defined at this point, though. We probably won't add…

> You can open a file with O_EXCL if you pass in the open flags as a number. (You can find them on require("constants"), and they need to be binary-OR'ed together.) This isn't documented. It should be. It should probably also be exposed in a cleaner way. That's great to know. Obviously I'm just following the docs. > Most of the rest of what you describe is APIs that need to be polished and refined a bit My concern is…

I disagree that it is "huge" that flock() is missing; if you are relying on advisory (emphasis on advisory) file and record locking to implement coherence, then your architecture is likely an accident waiting to happen -- it's a highly problematic interface for many reasons. Of course, if you really need it, use fs-ext as Isaac mentioned -- NS more generally, if you need some system functionality that isn't present in core, develop an add-on and knock yourself out. It's not entirely pleasant, of course -- but don't pretend that an interface not being in core means that some bit of system functionality is somehow off limits...

Re: Ryan Dahl steps down

#60
post #24

Does anyone have a link that doesn't require me to login to see this?

Does anyone have a link that doesn't require me to login to see this? This is a google groups quirk. If you are logged into a google account it will prompt you. If you sign out of your google accounts then you can read it without being logged in.

That happens when google groups detects a cookie indicating someone logged in to google at some point in the past.
Post reply on HN