Hacker Newsnew | past | comments | ask | show | jobs | submit | pork's commentslogin

Note: this Kiva is not the San Francisco brand of medical cannabis chocolate confections.


Second note: this Kiva is also not the company producing automated robots servicing select Amazon Fullfilment Centers


Don't post garbage on Hacker News.


Very interesting! I've often thought that Javascript could actually be a pretty language with some syntactic sugar. It'd be even more interesting if you could run it client-side without preprocessing an sjs file into js first, sort of like how you can include LESS stylesheets and load a JS module to compile them in the browser.


Hmmm. Perhaps it's time to lay off the bong a bit?


No -- Facebook's PHP code is translated to C++ by HipHop and compiled into a monolithic binary, and Cassandra has largely been deprecated in favor of HBase.


Facebook is using HipHopVM, which is a JIT for PHP. HipHop is no longer a PHP -> C++ compiler.

Didn't know they switched to HBase, it's still Java though.


https://www.facebook.com/note.php?note_id=10150415177928920

"Facebook uses hphpi (and now hhvm) for day-to-day software development, but uses the HipHop compiler (hphpc) to create optimized binaries that serve the Facebook website. hphpc is in essence a traditional static compiler that converts PHP→AST→C++→x64."


That note is from 2011.

According to wikipedia: http://en.wikipedia.org/wiki/HipHop_for_PHP

"in Q1 2013, the production version of facebook.com started running on HHVM, replacing HPHPc."


ohh, nice.

I wonder how well silverstripe runs on it....


Same on Chrome/Linux. Looks like you're using push/popState slightly incorrectly. To the parent: if you long-click the back button, you can jump to an arbitrary point in your history.


Yes, npm installs to a node_modules/ subdirectory. GP is off the mark. It's possible that people mistakenly use sudo with npm because the syntax is reminiscent of apt. This is absolutely not necessary.


  As of version 0.3, it is recommended to run npm as root.
  This allows npm to change the user identifier to the nobody
  user prior to running any package build or test commands. [1]
npm modules that are used from the command line are often installed with the -g, or global switch so they can be used anywhere. Yeoman [2], for example, is installed to /usr/lib/node_modules/yo/bin/yo and owned by nobody:users on my system. While it's reassuring that these files are chowned to nobody, I confess I don't understand npm enough to tell if running it as sudo will not give modules root access in other ways to my machine.

1. https://npmjs.org/doc/README.html

2. http://yeoman.io/


That's odd.

I've worked with node for a couple years. I've used npm hundreds of times, and I can count on one hand the number of times I've used it in combination with sudo (and all but one were a mistake).

  ~/dev $  ls /usr/local/lib/node_modules/
  jsontool npm
Every time I've used npm with sudo I've received a big warning in red to not do that.


Which version are you using? And do you install packages globally using the -g switch?


Currently 1.2.11. As you can see above, I've only ever installed one package globally (jsontool).


I only use -g when installing runnables, like less, jade etc. I try very hard to reduce the number of CLI apps that I install this way (I've written several build.js scripts that use less/jade/etc as a library instead of an application) because I don't trust the npm repository (no signing, no guarantees, etc).

Please avoid -g unless installing a CLI tool. You will only end up in version hell if you install globally, which is what node_modules was designed to avoid.


Sigh...this is a PR release. Flagged.


This is not a PR release - not even close. It's written by a freelance writer who does not work for Neo4j, and in this instance is working for DATAVERSITY. DATAVERSITY's mission is to provide education. And that's what this article is, to inform and educate about Neo4j. In fact, this is the first article in a series of reviewing some NoSQL DBs. The writer honestly downloaded Neo4J, tested it out, and wrote an article on it.


See my added comment. This is not a PR on any level.


> "Both founders (Andy and Jessica) studied computer science before starting the company, and they wrote most of the initial code until product launch." > - Ok, I will be dealing with a lot technical debt.

This made me laugh, because although the intention was well-meaning (you're dealing with technical co-founders), an experienced programmer will instantly realize that the probable case is what you pointed out.

I also agree that calling this position a "lead engineer" is horribly misleading. My take is they want a combination of a DevOps person and a Product Manager. Unless the product is trivial, this is seriously a terrible gig -- jack of all trades, master of none.


I almost sprayed coffee on my screen when I read that part about technical debt, and instead managed to somehow laugh around the mouthful.


No. Both the "safe" and "unsafe" versions are asynchronous. The safe version waits for a response from the server before invoking a callback. The unsafe version does not, but that doesn't make it synchronous -- the operation is still potentially executing on the server when the function returns.


This completely misses the point! I am talking about what the API does which is what you are using. Whether it internally makes one over the wire call or 10 is irrelevant. With the parameter set one way, the API does not return until the server has completed the operation, and the other way the operation could still be in progress or could have errored - you have to explicitly ask.

My contention is that "safe" is a bad name for the parameter, and "async" is far better suited as it describes the semantics of the API.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: