skysight-inc/HackerNews huggingface dataset:
Excellent. Ostracizing complicit people is the key to reducing bad behavior. Imagine if you did some real bad but legal thing and then no one would talk to you, not even your family, or even serve you in a restaurant. Others would think twice. I don't think it's as horrible a consequence as prison, where these people belong. (NSA folk flouted their oath to support the Constitution and defend it against domestic enemies.) If you changed your ways you could be forgiven.
The rules of the road are the rules of the road and--unless otherwise specified--are to be followed by cyclists and drivers. Period. No exceptions.
Yes, I went through that training, and that's an accurate summation of the commandments given. Do not peruse patent databases because it only takes one person at Microsoft reading the patent, and someone else totally unrelated infringing, to turn a simple "oops" into "knowing infringement".
I wonder if the individual reward versus collective reward approaches have any actual data for their respective sides?

I am pretty sure Toyota gives collective bonuses or not, and they are kicking the shit out of American auto, but I don't really have the background in this to cite data on either side. Maybe someone on HN does?
> Why not give everyone the same bonus based on company performance? Make it collective good.

I wholeheartedly agree. Apart from niche examples, like measuring sale people on sales, there is no good reliable way to measure employees based on performance/outputs. IO Psychologists have been looking at this for years and even mathematicians (like Leonard Mlodinow in The Drunkard's Walk) agree.
>CloudFlare is awesome.

Seconded, I'll throw my website's name into the hat of "websites saved by cloudflare."

I was really skeptical of them at first but I'm really glad I decided to give them a try.
Just FYI since most people don't know this: "Sherpa" is not a obscure word for "porter" in Tibetan or Nepali as many people seem to think. It's the name of a very small group of once Nomadic people (an large extended family, almost) living on the Nepal/Tibet border.

When you hear a climber say "I hired two Sherpas to help me port supplies up the North Col" it's almost akin to saying "I hired two chinamen to help me lug these boxes around." How well do you think that would go off in civilized society? It only almost-kinda-sortof makes sense in the highest regions of the Himalayas as Sherpas apparently have genetic adaptations that make them superhuman climbers at that altitude so you might want to clarify "The climbers I hired were Sherpa, specifically."

I'm not really sure at all why you chose "Health Sherpa" as a name (what's the connection?). Just FYI, you're productizing the name of a people.
If you're regularly doing 7 joins it's a good sign of an over normalized databased.
That's definitely the root cause. I'm not saying peer review is the solution, just that if managerial review is the alternative, I think peer review is better.
Nice. Fast and simple.

Maybe add age on the first page with zip code.

I'd love for it to have a glossary. Coinsurance? HSA? PPO? Copay? Catastrophic?
This smells like over-engineering to me...

In my experience, including rendering code both server-side and client-side is overkill. Just put all the rendering and templating code client-side, period.

If you want your page to appear more quickly, then instead of loading content data with AJAX afterwards, just include JSON arrays of content directly within the HTML source itself, and use JavaScript to populate the page instantly, even as it loads.

(Obviously SEO is a different case, but there are tools built for that specifically.)
It does that indeed! It will process a field paragraph, containing a list of parsed paragraphs in the article, as simple UTF8 text. Lists and Tables are collected in separated fields, have a look to the Article object. For the wikicode parsing I relied on the JWPL Library http://www.ukp.tu-darmstadt.de/software/jwpl/
Some people want hard-copy magazines. Many thousands of them, in fact! And as for "a crap-ton of money to make a bunch of PDFs", it's far more involved than that. See the FAQ on the Indiegogo page.

When you take into account editorial contributors (£100 per page, or £4,400 per issue), design and art help (£2,900 per issue), hardware, bills, app store charges etc., it all adds up.

So it's not just a "bunch of PDFs" -- it's a complicated collaboration between writers, artists and stores. We want to make it good value, but we're not just reproducing some HOWTOs. We're making new, original, creative content.
This was the root of my frustration with my time studying mechanical engineering.

Every course I took in the CS, applied math, or EE departments required us to, you know, actually do something. In my POSIX programming class, we wrote lots of programs (malloc, web proxies, and so on). In my graphics class, we wrote renderers (while paper tests covered the algebra of geometry). In my PDE classes, we wrote simulation code in Matlab and saw it run on wave and heat equations.

In mech, though, scarcely any classes had an experimental component. Fluids? Nope. Heat transfer? Negative, barring a baking orb lab and a Reynold's number lab. Machine design? Hah, fat chance--a 25 page report on a fucking bolt was the capstone assignment (alternately, a failure analysis on a gear tooth that chipped in a transmission). Control systems? A few tedious labs more suited to padding out a grad student's paper on teaching engineering than actually, you know, teaching us anything.

The height of this nonsense was a mandatory lab on power generation--one in which we finally got to run a steam powerplant! Except we didn't, and were given the results to run our analysis on instead. Sitting in the campus pub afterwards and grousing into my beer, a facilities guy from the central plant expressed surprise--they'd specifically made sure to have steam run out to make that lab happen. The lab was cancelled because that steam wasn't available, nominally--more likely, the student running it was looking for a way out.

The only good labs we had were an industrial processes lab (machining, welding, and so on), and a strength of materials lab (tension, torsion, and whatnot).

I guarantee that at the end of four years any of our CS or EE kids were substantially better coders--I cannot claim the same for the mechanical engineers I graduated with.

Our final design project was our one true chance to show that we could actually build something, and for many teams that too resulted in failure.

EDIT:

The problem with so much of this is that there are perfectly good ways these things could be taught. Machine design could have you, you know, actually manufacture some cams or build gearboxes. Heat transfer could have you build heat sinks, manage fluid flows, or create exchangers. Control systems could have you build robots or invert pendulums or do any other damn fool cool thing that requires signal transforms.

It's just such a goddamn disappoint.
Dear (YC XX) recruiter, please include job location in your HN submission title
Dear (YC XX) recruiter,

You're an amazing YC company looking for your N-th amazing hire, where N is an amazingly small number. The technology is fantastic, the team is fantastic, the benefits are fantastic, the potential upside is fantastic. It would be an honor for little old me to even be considered for a job interview. I'm not even worthy to have you read this message right now.

Yes, I get all that. But do you get that that's the same story for every YC company, all of which are really, really great opportunities?

So what three things separate one YC early-stage job opportunity from another? Location. Location. Location. No job perk is so great, and no problems you're solving are so tough and so interesting, that they'll make up for a lousy commute.

Let me know right away: WHERE IS THE JOB? Don't make me waste time figuring out where you are. Here's one that just got it right: "Meta (YC S13) is hiring 4 roles in the South Bay (Los Altos, CA)." And one that just got it wrong: "PagerDuty (YC S10) is seeking an exceptional Engineering Manager." The worst example I won't name, but it took me a few minutes to figure out where they were located--and their product was a hyper-location service!

So, recruiter, before posting make sure your title answer's this one question: What's the Location, Kenneth?
I want an independent write-up of Red October! Sounds really cool.
In the case of git 'rewriting history' is not really the problem, and it leaves the old history intact (you cannot change git history, but you can create an alternative history).

The old history will possibly be garbage collected eventually, but for quite a while that history is still accessible.

I think the only missing piece is a simple (and obvious) client side 'undo/rollback that force push'.

The issue is that the git client may not have the history pre-force, so it may have insufficient information to do the rollback (at least in the current model), however the server still has all the refs (and they are listed in the reflog).
I like the basic idea, but my hope is that we can go the other direction and bring more interesting languages to the client side. I know this is done to some extent using JS or Asm.js as a compile target with a whole bunch of existing projects. But it would be great to see this really move forward.

It seems like CoffeeScript did this rather successfully, and with source maps, the debugging story is getting better too. Any reasons why this might not be a more compelling future than the "JS everywhere" vision?
I used it for exactly one production app and it was a huge success. The reason I used it was because the data we needed to represent was actually a document, in this case a representation of fillable form fields in a pdf document. The basic structure was that documents had sections and sections had fields and fields had values, types, formatters, options, etc.

Initially trying to come up with a schema in SQL was somewhat painful as what I was really looking for was an object store. Switching to mongo gave me a way to do a very clean, simple solution that worked quite well for the problem at hand (representing pdf forms). That said, we also played it very safe and used mongo for only the document portion, with every other part of the system being in an sql database. But for the doucuments mongo worked really well as a basic object store without the complexity of something like Neo4j.
I generally use the regular library first, but I've had to resort to libgen in a few cases where: 1) no library in my country has the book; and 2) the book is out of print. Without that possibility, I would have had to either not read the book, or travel somewhere with more libraries (like the U.S.).
I did experience revulsion, but I think that you're right, it's an important concept to think about. I perused the link you provided, and here are some random thoughts:

- The article lists as a deadly sin: "Evaluation by performance, merit rating, or annual review of performance"

But then the question remains: how do you make sure your best employees don't get poached by other companies who are willing to acknowledge the fact that they are superior, and pay them accordingly?

- Another point listed as a deadly sin: "Mobility of management"

I can agree with that, only if we also agree on the fact that management is just an administrative position, like at Fog's Creek or Jane Street. In other words, salaries and positions in the hierarchy are decoupled. If not, then the system you mention doesn't solve the problem of: "how are we going to promote people?"

I admit that I didn't read the entire Deming article, so please correct me if I'm missing something.
Show HN: ccontact.me Simple, Easy Contact Forms
I've been working on this side project for a few weeks in my spare time. Any feedback would be greatly appreciated.
Thanks for the details. I'm very surprised that you were able to do the surgery without an earpiece. I can't even understand what someone's saying to me when I'm in the grocery store, the bone conduction is so quiet.

If there's a more detailed report of the event up anytime, please share. It's fascinating stuff.
That's quite a strong statement. Mercurial is less popular, but why would it not be relevant? There are great tools for it, great websites, and it's being very actively developed. Plenty of open source projects use it, and there's little downside to choosing it for your own projects.

Mercurial won't take over the world, and it won't even reach the adoption level of Git, but that doesn't strike me as particularly terrible in any tangible way.
its not that bad. i do it from a shiva plug over a 10mbit DSL link for a few dozen gigs regularly. its as fast as the DSL will go.
Like you say, anonymizing data is nigh impossible, so I'd rather just avoid it entirely. Maybe local processing?

We are thinking a user driven OAuth style service would be valuable.
I'm in Sydney but I'm seeing otherwise. Most if not all of my Chinese friends are using WeChat primarily. Sure they may have WhatsApp installed and use them sometime but if they talk to their Chinese friends it always WeChat.
OP here. While I agree with what you say, I just don't know how this can be changed. It takes substantially more resources to do anything in mech. Sometimes you can't even lift the stuff you're working with without some other expensive machinery.
Fire victim backs Tesla as Feds deepen probe
I remember reading about this. It would really help if Git supported inotify; there is no reason to stat every file on git status/diff/etc. I remember a mailing list thread about this in the past, but I don't think it ever got off the ground. I know there was a lot of discussion on how to support the feature cross-platform.

On a slightly unrelated tangent, the tup build system supports inotify, which I appreciate.
Is is possible to construct a persistent data structure that is not referentially transparent? I suspect the answer is yes, depending on how you define side effects (example: a persistent array that logs operations).

Which would mean "functional" is a more general adjective than "persistent" since it includes both persistence and referential transparency.

Wikipedia[1] claims "There also exist persistent data structures which use destructible operations, making them impossible to implement efficiently in purely functional languages"

[1] https://en.wikipedia.org/wiki/Persistent_data_structure
or when politicians don't execute their promises after being elected.
Git provides all the pieces, we just need to put them together in the right way.

The issue is that a client may not have fetched for a while before performing the force push, so it may not have all the required refs for performing the rollback.

The server of course still has all the refs, so it shouldn't be too hard to add a command (run client side) to invoke the required server-side rollback.
If you don't know what dd does, never run it. You really should know what all commands do, but dd can hose your system very easily.
The loop/recur syntax gives you recursion in constant stack space.[0] It was a bit of a speed bump coming from Scheme but it's just part of being on the JVM. Personally, I'm more than happy to take some ugly TCO syntax if it comes with the all the good stuff Clojure inherits from Java.

[0] - http://clojure.org/special_forms#Special%20Forms--%28recur%2...
I recall Valve having a stack ranking system as well? I haven't heard anything bad about their ranking system though. Maybe it is different considering the lack of managers with the flat culture that makes it better.

EDIT: Article I found on MS vs Valve stack ranking.
http://www.jpuddy.net/2012/stack-ranking-to-gain-team-insigh...
Camlistore:

http://camlistore.org/docs/contributing

Docker:

https://github.com/dotcloud/docker/issues?labels=Help-Wanted...
Want to star in Google Ads? Or is that oversharing?
Ask HN: Review my side project ccontact.me
I've been working on this side project for a few weeks in my spare time. Any feedback would be greatly appreciated.
Google Develops Lie Detector Neck Tattoo
https://ccontact.me
For me, it was a database schema with 38 joins (and 2 additional queries) to effectively get the data to display a single page. For that use case, mirroring the data on save to MongoDB was a no-brainer... with geospacial queries out of the box, and a few other indexing features it made a lot of sense.

I wouldn't even think to use MongoDB for certain use cases... but for others, it's a great fit. I think that Cassandra, Riak, Couch, Redis and RethinkDB all have serious advantages and disadvantages to eachother and SQL.

I do find that MongoDB is a very natural fit for node.js development, but am not shy about using the right tool for a job.

Another thing that tends to irk me, is when people use SQL in place of an MQ server.
I'm not sure if it contributed to this fiasco, but GitHub's team system is a bit backwards and screwed up. You create teams of people, that automatically have either pull, push/pull, or administrative permissions on every repository they touch. Then, when you go to the 'collaborators' section, you simply add those teams of people, without being able to see what access level you are awarding to that specific repository! It makes no sense. Either the permissions should be RIGHT next to the team name in the drop down or (much better) GitHub should decouple groups from the permissions they have, and permissions should be awarded on a per-repository basis. That you way you are granting X group of people Y permissions on Z repository. You are always explicitly granting a permissions level to a specific group of people, and no permissions are automatically added that you haven't explicitly signed off on for that repository.

Maybe there's some logic behind it, but I doubt it, and I'm really not sure if GitHub completely thought it through.
Whoa old man quarterto, who said the word ever belonged to math people in the first place? I could argue that math people have a bad habit of squeezing English words into strange contexts that corrupt the original meaning. Take "manifold" for instance, or "curl", or even something as harmless as "mode". They all meant perfectly fine things until the math people claimed them as their own.

According to M-W "isomorphic" has pre-existing definitions from medicine and chemistry that could align better with what OP is trying to say. http://www.merriam-webster.com/dictionary/isomorphic

Good day quarterto! I shall now leave to take a smooth ride in my compact car.
yes, and also it makes easy to manipulate the dump using Hadoop, and retrieving some values for all the article using jq http://stedolan.github.io/jq/, could you do the same with XML? Btw You can find a little sample of the dump here: https://dl.dropboxusercontent.com/u/4663256/tmp/json-wikiped...
Quite so.

That said, if our tuition is north of a hundred grand (as mine was), one wonders that that expense cannot be borne by the institution.

Even building simple structures and predicting their failure would be a worthwhile endeavor.
Chemical engineer who now mostly works as a programmer checking in. This is 100% true.
Githubs response:

Good news from GitHub: they have extracted the full list of SHA-1 before the forced push !
Many thanks to Nathan Witmer :-)

See below the full CSV with the SHA-1.
He created as well a branch named 'recovery' that points to the candidate point for restoring the master branch.

Hope this will help to sort out the remaining repos.

Luca.

> Hi Luca.
>
> Oh man, that sinking feeling!
>
> But, no worries: I've gone through each of the repos listed above and done the following :
>
> * retrieved the SHA for the previous `master` before you force-pushed
> * created a branch called `recovery` pointing to each former master
>
> In some cases, these are the same.
>
> I can go further and reset the master refs to their former shas if you'd like, or you can recover these yourself. To do so, in each repo:
>
> $ git fetch
> $ git checkout master
> $ git reset --hard origin/recovery
> $ git push --force origin master
>
> I've attached a csv containing the shas (former master and forced master) for each branch, for your reference.
>
> Good luck!
>
> Nathan.
Yes, AWS started signing BAAs on June 18th, 2013. FireHost and Rackspace will also sign a BAA.

"AWS enables covered entities and their business associates subject to the U.S. Health Insurance Portability and Accountability Act (HIPAA) to leverage the secure AWS environment to process, maintain, and store protected health information and AWS will be signing business associate agreements with such customers."

http://aws.amazon.com/compliance/
> The maps are vector.

I guess I'm wrong about that then :). My assumption was based on the fact that when I traveled into areas with no data coverage, I distinctively remember Google Maps having great difficulty with cached map data, while Apple Maps didn't.

(In the hotel prior to driving I would load both maps and directions in both apps, "click through" the directions to give the apps a chance to cache the data, and then go on my way - if I dicked around in Google Maps it tended to just not show anything, or a very very fuzzy view of where I was, whereas Apple tended to show a low-precision (but clear) view of where I was.)
c.f. http://blog.bonus.ly/post/33011276149/google-peer-bonus
interesting because a common suggestion for increasing the security of a sensitive system is to maintain an "air gap". they have an "off-the-planet gap" and they still got compromised.
Ampline: assign variables to output from common commands
A little sample of the dump: https://dl.dropboxusercontent.com/u/4663256/tmp/json-wikiped...
All the examples you provide are right, because they happen seldomly. Unfortunately, in git, --force is part on the everyday workflow.
Fab COO To Exit As Company Looks To Winnow Down ‘Top Heavy’ Management Structure
Show HN: Build an API for Philippines from your browser
Nice. This is exactly what I mean when I talk about ORMs. See how everything's nicer when its an API?
Review (and compensate based on) impact rather than "performance", the latter carrying connotations of personal assessment rather than objective contribution.

Low impact doesn't mean you're a "low performer" or bad person, just that you didn't have any major successes that year. You'd fire over low impact if someone clearly didn't care, but not if they were just unlucky/ill-mentored/mistaken in choosing what efforts to focus on.

The problem with stack-ranking is that it lets people get "killed by the dice", to use an RPG metaphor.
Ask HN: What programming cookbooks would you be interested in?
I'm wrapping up the first release of my latest project CodeGofer: http://codegofer.com and need some input on it

Essentially CodeGofer is a searchable library of programming cookbooks (collections of pre-selected snippets) for Mac OS X

I've already put together three collections on subjects I am personally interested in but before investing further efforts I'd like to get opinions from community more diverse than one developer :) So I'd appreciate your answer here in comments or on the website.
NFS can be the right solution, depending on the problem. Storage backend for serving live images to users? Probably not. Taking uploaded images and storing a copy (after processing), maybe. Depends on the amount of IOPS you expect to need to throw at those copies.

I haven't seen any posts from Etsy on their normal image pipeline, so it's hard to say. It sounds like this was a one-time conversion. Their live image serving is on Akamai, but nothing says they're back-ending the origin servers on NFS.

I have to imagine with the amount of ops talent at Etsy, they're not using NFS because they're too dumb to know about a better option. I'm guessing John Allspaw knows a thing or two about how to serve images at high volume.