skysight-inc/HackerNews huggingface dataset:
The tl;dr version is this:

Discover Card, which spends ~$15M/yr advertising with Amazon, wanted to give a $10 gift card to Kindle users that changed their default Amazon 1-Click purchase settings to use a Discover card. Instead, Amazon gave the gift cards to everyone that used Discover for a 1-click digital purchase, the vast majority of whom already had Discover as their default 1-Click purchase card. Discover's $500K budget was predictably drained in rapid fashion, and they barely got any of the actions they had agreed to pay for. The author of this letter was encouraged to hide this fact, pitch it as an overwhelming success of the campaign, and to ask Discover to expand the budget. He was fired after complaining about being uncomfortable with participating in obvious fraud against their 2nd largest advertiser, and is now suing Amazon.

The failures here occurred in every department. First, at a fundamental technical level, I don't understand how this could happen in the first place if it wasn't intentional. This was a simple CPA campaign. When someone changed their default card to Discover, they got a gift card. So it begins with their "ad execution team". Second, the moment the problem was discovered, they should have simply credited the campaign such that they were only charged for the actions they agreed and intended to pay for. Third, any employee actively involved in encouraging fraud, let alone fraud against their 2nd largest advertiser, should be fired. Their engineering, marketing, legal, and HR teams all failed miserably on this one.

I don't envision myself ever having a need to run a CPA campaign through Amazon, but based on this I would stay away from them as much as possible. They had to have multiple internal discussions about whether or not they should commit a crime against a multi-million dollar advertiser. That's certainly enough to scare me away.
The Startup Guide to Hiring a Remote Customer Support Rep
Untainted open source. There's plenty of it.
It wouldn't be called "Human Resources" if that department were on the side of the worker. They wouldn't be calling the workers "resources."

My wife's studying to go into this field and that's basically what she's taught - you're in HR for the company.
How-to generate thumbnails for Office documents using Cloudinary and Aspose
Lots of people lose jobs over falsifying credentials. The higher up the ladder you go the worse it gets for example Yahoo CEO's computer science lie. It's a good idea to even make sure your resume is month accurate to avoid misunderstandings. Degrees shouldn't be required for most jobs but people shouldn't make stuff up.
What do I, as a user and customer of software, care why companies harbor known security flaws (that, after all, is what you're talking about)? Hope is not a strategy. Those flaws are going to be discovered whether or not insiders leak them.
This post explains how to programmatically create image thumbnails from Word, Powerpoint and Excel documents, using Cloudinary's image management platform and its new Aspose add-on. Sample code included for PHP, Ruby on Rails, .Net, Node.js, jQuery and other frameworks.
I interviewed with Endgame recently. Their arrogance was striking.

More topically, there's a basic problem in security - vulnerabilities have value. They have more value to people who want to use them than to people who want to close them. Unless this shifts, the current situation is only going to get worse.

Making it illegal isn't going to work. There is already a functional black market. Removing the white market will just drive more groups to the black market.

There's no easy answer here. Yesteryear's EFNet junkies have been turned into today's mercenaries and weapon designers. Cyberspace is valuable, and controlling it moreso. It's a dangerous time to have interesting information.
Nice timing on this story.
It's a "secret" because the manuals that HR produces contain explicit or implicit statements to the effect that HR is there to help the employee with things like benefits and conflicts with other employees or managers. Most people aren't ever caught up in a tangle in which HR's true purpose was exposed to them, so HR gets away with these little lies and maintain the illusion that they're there to help employees.
Tachyus uses F# almost exclusively. We have had great success with it. Just released 2.0 of our stack to production. After a week, still no issues. We use it for server-side web development in Azure, iOS app with Xamarin, and Raspberry Pi Linux. Fantastic integration with SQL Server throught the SqlClient Type Provider. It's great having one language across platforms.
The flipside is that its very easy for your library users write a new function that takes a Shape as a parameter. If you model things with a class hierarchy its easy to add a new Shape subclass but you can't add any new methods to the Shape interface.
well I'm not a legislator, and if you're looking to pick holes, trust me you would be able to :)

The question is, is that the best approach and if not, what is? Once an approach is agreed then the inevitable x years of wrangling on details could occur.
That's a good question. Let me think about that.
I think that the market they're aiming to capture is the people who want to get stuff "internet enabled", but don't have the technical expertise to do so with the existing more DIY-intensive options like RPi or Arduino, so them leaning more towards a market-y design-y webpage sort of makes sense
Unrest at Nest Labs
Using X-Editable with Ember JS
You do. Row 3 and 6 are both RBRBRB.

edit: I see you noticed.
And a quick glance shows that the code isn't written in a terribly obvious and defensive manner. For example, just by skimming you can spot loads and loads of unchecked arithmetic. How can you know none of that can be exploited? The code doesn't do a lot to assure you of that.
Define secure. The traffic seems encrypted from you to Google and from Google to the other caller(s), but do you trust Google, your OS, etc.? FWIW, I believe Google records the last few seconds of a hangout to let people report abuse.
True. There is only a single solution to each puzzle, so it just highlights all the blocks which don't match the known solution.
Why the US has the most powerful currency
You are crazy if you think that legislators are going to do a better job of designing a policy to regulate vulnerability researchers than technologists will. Whatever the policy would end up being, it will be asymptotically as effective and reasonable as whatever we talk about here.

If a bunch of technologists (including vuln researchers) can't define a reasonable policy, I think it's a pretty safe bet that there's no reasonable policy to be had.
Are you being sarcastic? Because that statement is not an argument at all.
These Are the Hardest Niches to Find a Co-founder
> I dropped out of highschool and attended no postsecondary and I don't have any problems with Git.

Git problems arise when people want to do moderately sophisticated things, beyond just committing changes and viewing logs and diffs.

> If git commit and git checkout are too complicated,

If "If git commit and git checkout are too complicated" is your argument, then you aren't doing anything more sophisticated with git than what you learned from a svn to git migration tutorial in five minutes.

People do more with version control than "commit and forget".

If that's all you need, then what you really want is backup software that takes regular snapshots of your filesystem.
Well that's it, I'm done with Amazon. I hope everything goes well for Kivin. As for Munira, I am ashamed of myself, but sometimes I really want certain peaple to step on a landmine.
EU is a part of the US, surprise.
That's what I do on my "bin" directories (for scripts and such).

On the other hand, maybe being able to grab something analogous to a ",v" file and moving the archive for a single file around by itself has some value. Just not enough value for me to bother installing RCS when git is already present :-)
Just amazing how easy (and free!) the upgrade was. Thanks, SSLMate!
One problem with the space asteroid mining argument is that if you flood the market with precious metals, the value of them will plummet.
Jet.com is using F# as their core language. (and hiring) http://techcrunch.com/2014/09/16/quidsi-co-founder-raises-an...
If those are equivalent to making me look good, then focusing on those should be sufficient. No need to bring my ego into it.

But of course, they're not. This whole mess at Amazon is an issue only because Kivin Varghese chose to do the right thing by his customer instead of making his manager look good. And look where it got him: screwed over and sued.

Regarding your claim that "make your boss look good" really means "do the assigned job well": I don't believe you. If that's what it meant, we could say, "do the assigned job well". What it actually means is exactly what it says. The reason that people say and mean that is that in organizations driven by power and appearance, making your boss look good is indeed a road to success.
git commit and git checkout are fine. git pull and git push are where the problems start.

as I got myself into tighter and tighter jams

I suppose this is the thing; if you're happy to learn that way, fine. It's just that git is particularly prone to "I've trashed local state and lost work" / "I've just pushed a huge mess and will have to lose time cleaning it up, if that's even possible".
I believe that to do this without using any of the existing firmware you would just want to grab a JTAG programmer and flash your own version of their firmware, or a custom blend of something. Flashing it is easy and they've got plenty of instructions on the web.
Worth adding: even basic software security engineering services are, compared to other services, spectacularly expensive. In ten years of software security consulting for big companies, I met with very few who didn't get sticker shock from the cost of even a basic web app assessment.

Supply/demand is a motherfucker. The solution is probably going to have to focus on the supply side.
I'm nit particularly fond of git, I much prefer mercurial - but they are of course pretty much equivalent. Either way I have a hard time seeing which usecases aren't covered by the duo of RCS and mercurial (actually I'm very hard pressed to see why one would ever use RCS over mercurial, but no question RCS is simpler). At least something like fossil have some actually unique features....
Aparently you need the rcs and rcsdiff commands available to use it.
I think a key difference here is Groove is actually a real company with real revenues which are growing. This is not true for many similar sized acquisitions you see. Good on Groove!
>Let's say a comet is going to impact Earth in a few decades.

You can't just make up stuff like this... sure, it could happen but you have to go off probability. What's the probability an asteroid will end all life on earth in the next thousand years? I'd guess not very likely.
So what benefit do you get from that? i.e. have you ever gotten yourself in a mess and thought, 'thankfully I used git here, otherwise I'd be fecked.'
Show HN: Glose, a next-generation social reading platform for ebooks
I think your biases are getting best of you, I have seen sufficient number of people of similar ethnic background laid-off and fired. I do not think that is the basis of her employment's continuance. Its very likely that she is willing to do the dark and dirty work, some higher-ups do not want to do.

There is level fascination to mis-direct the causes, let me assure you if people of ethnic backgrounds are so protected - we would not be scratching and clawing at the lower rungs of corporate ladder.
Announcing OpenShift Enterprise 2.2
Also, the language syntax is (basically) designed to be parsed in a trivially obvious way into the internal "list" (really tree, with lists as a common special case) data structure. This lets the friction of writing macros which work with code (or with structured data) be very low: the macro logic that you write is fed that parsed list and works with it directly, skipping the usual glue logic for telling a parser how to cope with syntax for a language extension.

(The "basically" caveat above is because some Lisps honor this code-is-a-list principle more than others. E.g., I have seen remarks about how modern Schemes have moved away from it at least a little bit, with syntax which is importantly not quite a list, though I don't know any of the details. And CL has other kinds of reader magic --- like one-character "reader macros" and like the implicit package which is used as a default for symbols at read time when no explicit package is given --- that can in principle complicate the obvious 1-1 correspondence between source and parsed-as-list representation, although in practice that magic is very seldom used in such a way that you need to think about it.)
Scroll up a bit and you will see this comment:

> Ladies and Gentlemen, i present: Bullshit. I wish companies with no clue about encryption would stop making these insane claims.

Which is rude and does not make a cogent argument, and yet 3 people asked for clarification instead of downvoting it.

The (lack of a) downvoting policy here is abysmal and no one wants to talk about it.
What you need to know is that "git add" has little to do with "foo add" where "foo" is just about any other version control system. Look, you ran "git add" on files that were already added, what?

There is this hidden thing called the index that confuses the heck out of everyone. Oh, but it's not always called the index, either: that would be unnecessarily easy. Sometimes it is called "the cache". How to show the difference between the index and HEAD? Why, of course not "git diff --index" but "git diff --cached".

(In what way the index acts as a cache is beyond me; a cache is a fast place where you look for something that is also available in some slower place, but things in the index are sometimes only in the index and nowhere else!)

Furthermore, things in the index are not "indexed" or "cached". Why, they are "staged". So why don't they call it the stage? (And only that: no synonyms?)

(The index behaves like a cache in the following sense: it has transparent "read through". If you do a "git diff", you see the difference between the index and your working copy for any changed file. But if the index doesn't have that file, then it gets out of the way and you see the diff between HEAD and the working copy. This confuses people because the transparent behavior teaches them, most of the tiem, that "git diff" is like "svn diff" when it isn't.)

The overloaded meanings of "git reset" are astonishing also. Sometimes it means "make the working tree like what is in HEAD". Sometimes it means "no, don't touch the working tree, but change HEAD to a particular revision". Sometimes it means "don't touch HEAD or the working tree: make the index look like a particular revision".

Want interactivity? Sometimes it's --interactive, and sometimes it's --patch. Please, just let me do "git stash --interactive"; don't make me correct that to "--patch".
You could have made that remark at some point in time about any open source technology that eventually got lots of enterprises to bet their infrastructure on it so by that standard Rust will do just fine. Of course there is no telling what the future holds for Rust and other novel pieces of open source code but I would not dismiss them out of hand this easily. See: Linux, Apache, PHP, Ruby, MySql, Postgres, GCC and tons of other very successful open source projects that at some date in the past were pre 1.0, fragile and buggy.
HR is there to protect the company from all staff - yes you but also your manager and his/her ignorance of employment law.

Maybe it's just a European thing but I've seen more HR professionals despair at the actions of managers than staff. Yes, they may help him/her get rid of you but what they're really terrified of is his ill advised actions which open the company up to a massive liability.
What happens if you accidentally git clean -dfx?
At one previous job the team I was on had a business analyst who was hired as an 'executive' referral. He was clearly unsuited for the role, no business background, and no real professional experience. The guy had a bachelors in communication iirc. So, the manager was forced to hire him, HR literally wouldn't accept no.

He was a nice guy, but did not flourish, and his peers did not help at all. I remember one analyst berating the new guy because he asked the same questions over again, when this particular analyst asked me the same crap all the time. Very annoying and disingenuous. I complained to my lead, which was a mistake. I, a developer was tasked with helping the new business analyst, when his role was totally different than mine.

To the point; he was put on PIP and eventually let go, and I had a couple of bad reviews due my involvement. I switched groups soon after, then left the company. I had worked with my lead and manager for 5 years before that, I thought we all got along great. Little did I know how tenuous my good standing was, and how I endangered myself for standing up for someone else.
> and everyone will try to prove you wrong

heh, how true, though more of an invitation; a strength/weakness of Scala is the fact that there's often more than one way to do the same thing (at least 3 ways have been shown with the current example). From what I've seen F# does not have this characteristic.

Anyway, ideally the Scala compiler would provide the same level of concision that for comprehensions do vis-a-vis flatMap/map boilerplate, thus reducing our example down to: `list map plus`, the bare essentials ;-)

Worth noting that the source for Function[0] indicates `Function.tupled` methods are slated for removal in future: "these functions are slotted for deprecation, but it is on hold pending superior type inference for tupling anonymous functions"

https://github.com/scala/scala/blob/v2.11.4/src/library/scal...
Why I Journal with Day One
This is great. He's pointing out the facts! Your comment appears to be a classic case of projection.

How is pointing out the facts about homosexual behavior a characteristic of a degenerate? Au contraire, your protestations signify you as a likely degenerate.
For those of you brave souls who downvote me. I'm wondering which part of my statement you disagree with.

- You think homosexual are pedophiles?

- It's not important what he thinks about homosexuals. You're going to support him by using his software.

If he had held the same hate speech about women in 2014, everyone would be here talking how imbecile this guy is.
> Amazon should be smart enough to know they can't put in a clause that's too far-reaching and preventing people from working anywhere in the world.

Actually, they can put in such a clause. There's a difference between "unenforceable" and "illegal". There's nothing to prevent Amazon from including such a clause in the contract, even if it is clearly unenforceable. The worst case scenario, from Amazon's perspective, is that a court simply rules that the clause is unenforceable (as happened in the example masklinn gave https://news.ycombinator.com/item?id=8600939 ).

The best case scenario is that Amazon can frighten an ex-employee with the threat of legal action if he accepts a job with a competitor. Even if the ex-employee knows that a court will likely rule the clause is unenforceable, he has to decide whether he wants to go to the hassle and expense of fighting Amazon in court.

Amazon could also use the clause as a pretext to dissuade potential employers from hiring the ex-employee. Again, while the potential employer might realise that the clause is unenforceable, they have to decide whether they want to take the risk of hiring someone who will then be sued by Amazon (while it may not affect the potential employer directly, the new employee will inevitably be distracted by the court case).

I would never recommend that anyone sign an employment contract with a non-compete clause, even if it's clearly unenforceable. Even setting aside the potential legal hassle if it goes to court, you want to think about why they've included such a clause in the contract. Either they don't realise that it's unenforceable (in which case you have to question how competent they are), or they know it's unenforceable but don't care (which suggests that they plan to use it to frighten/bully you, as described above).

Recently, I turned down a job because the company included a clause in the employment contract under which I would have been prevented from engaging in "any activity" that competed with the company (or its related companies), anywhere in the world, for two years after I left the company. In the relevant legal jurisdiction (Switzerland), non-compete clauses are legal but "must be appropriately restricted with regard to place, time and scope such that it does not unfairly compromise the employee’s future economic activity". This one clearly wasn't. Effectively, it would have prevented me from working in banking or fintech, which is pretty much all that I've done for the last 14 years. I consulted an employment lawyer, who confirmed that it would definitely be thrown out if it ever went to court, so I pushed back.

I have zero problem with clauses that prohibit me from poaching clients or hiring other employees but if a company's hiring me for my expertise and experience that I've gained before going to work for them, I don't think it's reasonable for them to try to prevent me from using that same expertise and experience at another company if I leave them.

In the end, they refused to remove or alter the clause, so I turned down the job.
> I thought we were all programmers here.

LOLOLOLOLOLOL. I feel the number of top stories on HN are steadily moving away from programming, and that it is more about Entrepreneurship/VC/Business Management these days.
You beat me to it. RCS can't scale up like Git, but Git scales down very nicely. Instead of learning two VCSes, you can reuse the same one you probably already use for everything else.

Sure, Git isn't the last word in VCS. There's lots of room for innovation in the space. Still, I don't see anything in the docs (at http://www.catb.org/~esr/src/src.html) that Git can't do just as well. It seems to be a solution in need of a problem.
> Even a basic knowledge of labour laws is not a pre-requisite for a career in HR.

This might be a US-centric view. In the UK if you don't know employment law you're no use as an HR professional. Your line managers almost certainly don't so HR are often the only people who do.
We are a dev team from IBM (many of us formerly UrbanCode), ask us anything
This rule is easily overlooked in the tutorial,
since the example shown can already be resolved
using earlier rules (balancing red/blue in columns).

The tutorial must use an example where unique
rows/columns is the only way to resolve the choice...
There are only so many ASCII symbols to use for separators and brackets when creating syntax for literals. Think of [| and |] as〚 and 〛 (double square brackets), then it doesn't look so bad, I think.
"Homosexual activists, when challenged on this point, like to retort
that older men nailing barely-nubile teenage girls is far more
common. And in absolute terms it is — but only because there are
twenty-five to a hundred times more straight men than there are gay
men in the world (reliable figures for the incidence of male
homosexuality range between 1% and 4%). Per capita among gays,
pederasty is more frequent than among straights by a factor of
between three and ten, depending on whose statistics you believe —
and the North American Man-Boy Love Association, actively advocating
pederasty and pedophilia, is welcomed at gay-pride events
everywhere."

Sounds like some people can't handle the truth. I'm sure the HN crowd don't have a problem with truth... do they?