skysight-inc/HackerNews huggingface dataset:
talk about FUD! where to start

> the people who brought you kernel mode printer drivers and the Blue Screen of Death

the scenarios that result in errors are totally different from the error scenarios in linux. most of the crashes in windows systems are the results of non-MSFT developers who wanted to insert code into the kernel. these kinds of errors happen on linux too, if you use binary nvidia drivers and/or vmware.

> requires such gems as having to intentionally reproduce undocumented historical bugs because legacy applications rely on them.

the "compatibility layer" is actually far more nuanced than this, and only turns on the old and bad behavior if it recognizes that it's being used by an application that requires the old and bad behavior.

> Windows was designed by a committee in a hurry.

NT was designed by the team that did VMS in a 3-month retreat to Hawaii. the design they created has lasted with very minor modifications for the last twenty years. can linux say the same?
Sounds like someone with limited experience with OPC... (Other Peoples Code)

Ever worked on a big code base where some programmers were in Vietnam, some in Russia, some in China and most here in the US? Conventions are different and pride and communications issues make it hard to correct behavior.

Ever worked as the commit point for an offshore group? Code review?

Didn't think so...
> am I legally required to do anything at that point?

No, but if you continue you become an accomplice.
$2k is just the beginning. If you looked at the forum I just posted, attacks can go up to 60 gbps and still only cost a couple of dollars.

This can easily cost as much as a full time employee, and many large sites can be run by 1-2 people. Having to spend 33% more just to stay online is not negligible.

You can't just roll your own DDoS protection. If you do this you are looking at rolling your own data centers. Once an attack gets bigger than the port at one of your standard hosts, your host is going to null route you and even kick you off if it happens too often.

You are going to be hard pressed to find a host that is willing to broadcast your /24, let alone getting a /24 with this IP shortage if you were going to do your own cloudflare.

"If I'm not mistaken, it basically involves detecting anomalous traffic and telling upstream routers that you don't exist for the source IP generating that traffic."

This is called null routing. It involves telling your upstream that the IP can't be routed to. This blocks ALL traffic to that IP so your port doesn't get maxed. Large transit providers are going to charge you an arm and a leg to give you an API to insert ACLs because routers have a limited number of rules.
I've worked from home for 13 years. It's bloody hard. And although most of my work is done solo, my experience has been that collaborative efforts are far more difficult and slow when we can't physically get together.

The advantages of working from home are obvious. Short commute, convenience, midday naps, no pants required... no wonder people want it.

But the disadvantages are really only apparent once you try it. It's hard to get motivated. It's hard to feel a sense of accomplishment. No sense of office "buzz" or excitement. No one to carry you through the mid-afternoon doldrums. When collaborating, all that rich human emotion and nuance is squeezed through a soda straw. Can't go for a walk and talk through a challenging issue. No commute to transition from "work mode" to "family mode." No high fives.

I'm a hard-core introvert, and I miss people.

My business has been a one-man business for the last thirteen years. One of my greatest hopes is that, when I'm successful enough to be a sustainable multi-person business, that we'll have a kick-ass office where we all work together. Because working from home isn't all it's cracked up to be.
I wasn't sure entirely what you were getting at with const variables in C that are initialized later – and this doesn't fit your bill, if you were referring to lazy evaluation – but you can do something like this (apparently works for Clang and GCC):

const int test = ({
int a = 1+1;
sqrt(a);
});
link fails. no https on that site.
That was pretty impressive. I can't even begin to imagine the applications.
> A little off topic from your post, but this is one of those gross generalizations that just actually portrays you as not getting the gist of the problem with bigotry.

leokun, he never stated that. I think you read too much into his statement.

When people say "I like x a lot," they really mean "I like most of x a lot that I have met." Seeing as you probably don't know the guy/girl, you really can't say if he can legitimately form that opinion. Thought experiment: what if rdl has in fact met many gay people and liked them. Would you still call him a bigot for saying that? rdl was simply stating a fact. He should not be scolded for stating a fact of his personal preference.

Gay people aren't homogeneous, but they do share similar traits (being attracted to men being only one of them). So it's not unlikely someone can like certain things about gay people as a whole. The argument that saying you "like gay people a lot" is bad is almost as inane as saying "I'm not racist—I don't see colors"—you'd be blatantly ignoring the uniqueness and distinctness of human peoples and ignoring the fact that it's not that we're not different, it's that we shouldn't treat each other unfairly because of inconsequential differences.

Finally, "I like gay people a lot" is a subjective generalization. It's not really in your authority to judge what type of opinions he should or should not be forming because it is possible that he has met many many gay people and have liked them all. The statement by itself is not really harmful or insensitive, but I agree it can imply that the person who's saying it is naive about gay people and what they're like. That's probably where you saw the bigotry, but it was merely a projection. However, it's not proof that the he/she is naive about gay people. I think you made a logical mis-leap and inferred his bigotry from statements many actual bigots do make.

The OP could either have been

1) Has not met many gay people. Therefore he is making a subjective generalization. But this doesn't affect anyone else but himself.

2) Has met many gay people and likes them. Therefore he is not really even making a generalization, but simply stating a fact of personal opinion.

In neither of your cases is your scolding really warranted though, but what's even worse is you don't even know which case it is in the first place.

You're also diverting attention from the real issues, and from real bigots by focusing on this, and encouraging people to focus on this.
And so you are one of them. You're asking software developers like us to cut deals with people like you in order to avoid litigation.
Possibly because you can put lives at risk by lying.

Suppose I falsely claim I know CPR. My employer is now not liable if I fail to perform CPR correctly and kill somebody, since my fraud was criminal.
Frontline: How reliable is the science behind forensics? The real CSI
It's not. The part that is illegal is encouraging people to lie to the government. They're two different things.
> Falsifying polygraph test results isn't a crime

Yes it is: http://www.law.cornell.edu/uscode/text/18/1505
Because in a statically typed language, you want the type of a symbol to represent the set of values it can be bound to. We often have the set {something that passes a truth test, something that fails a truth test} in our programs, so a boolean type is a nice way to represent it.

Now, this is not the same thing defining what exactly the truth test is. It's perfectly reasonable and arguably a good design to have both a narrow boolean type and a wide definition of truthiness.
They are used widely in employment screenings at the NSA, CIA, etc.
Michael Shermer of "Skeptic" magazine covered how easy lie detectors are to game here: http://www.youtube.com/watch?v=GLL3wtgBiFA

In the video, a former Polygraph Examiner, Doug Williams coaches him on how to beat the test. Then they test Mr Shermer and he defeats the test easily.

Polygraphs are so prone to bad data, they should be retired ASAP. They're slightly more effective than dowsing rods. http://en.wikipedia.org/wiki/Dowsing

In related news, Iraq spent $38 million on dowsing rods to "detect" bombs: http://www.businessweek.com/articles/2013-07-11/in-iraq-the-...

How many lives have been lost or ruined due to lack of basic understanding of available science?
Well,... wanted to give OP a chance to put his/her comment into context. It is just some times, on HN, you really don't know what kind of experience is standing behind the comment.
Thanks for your answer!

You mean consecutive n-tuples, right? If you're checking every permutation of n-tuples in the set, it's equivalent to checking single indices.

I see what you're getting at, but i'm not sure i can accept it as-is - the result is pretty closely tied to your particular choice of a randomness-test, which predetermines several of the later examples. My concept of "random" would not be strictly based on comparing n-tuples, but more about 'unpredictability' - so how about a randomness test based on kolmogorov complexity? Although i expect that finding the shortest possible algorithm that describe a set must be NP, if possible at all (that consecutive n-tuple comparison algorithm certainly isn't guaranteed to find it).
I'm sorry but it is clear to me that you don't understand a major portion of the article you are telling people here to read as though you can understand the technical details. This is both disturbing and amusing at the same time.

If I am coming off as rude and people are going to downvote me for pointing this out, then so be it.
Ah, the Kegel defense.
Mind sharing the URL?
What to Tell VCs When You’re Missing the Data They Want to See
Two female image processing researchers recently used a picture of Fabio as a test image in a paper of theirs:

http://arxiv.org/abs/1202.6429

(Additional discussion at http://www.kitware.com/blog/home/post/246)

Personally, I'm all for the use of amusing (arousing?) test images, as long as they exhibit features that actually make for a good test image (a mix of flat and textured regions, sharp boundaries, etc.).
Hmm... Which one? I'll take a closer look.

Audible app never looses position. But I do sometimes play MP3s... Is there Google audiobook player?
Does anyone know what "wire fraud" has to do with this?

That charge has been used in a number of recent "hacking" cases, where it makes a bit more sense (though still over blown), but I can't quite figure out what it has to do with teaching people how to remain calm while being questioned.
On antipolygraph.org, there is a free download of a much more in depth (and apparently well-researched) analysis and description of techniques called The Lie Behind The Lie Detector. Note that they very reasonably advise that unless there's pretty much no other choice, the best way not to fail a polygraph is not to take one at all.
I wonder if Linus has ever tried better languages.
Paleofluvial Mega-Canyon Beneath the Central Greenland Ice Sheet
Surgeon and civil engineer come to mind as rofessions where you can be criminally incompetent.
There is in fact a subtle difference between

"I have a great relationship with the blacks"

and "I like gay people a lot"

The difference is that Trump said "the blacks" whereas rdl said "gay people."

There is nothing inherently wrong with the statement "I have great relationships with black people," had Trump said that, and this is because it could be a factual statement. If Trump had 10 black friends, and he had a great relationship with 9/10 of them, then Trump could legitimately state that fact in the form of that sentence. Or who knows, maybe Trump has an ebony fetish that predisposes him to great relationships with the majority of black people he meets.

However, because he said "I have a great relationship with the blacks," Trump is stating that he treats black people as a single entity. He dehumanizes black people, because relationships aren't formed with "a people." They are formed with "a person." Forming many relationships with manual people qualifies you to make the statement "I have great relationships (plural) with blacks (plural),"
which is perfectly legitimate. Forming a single relationship with many people is unnatural, so he is doing something wrong there.

The OP's statement is basically the same as the last example I gave ("I have great relationships with black people"). He was simply stating a fact of his overall (generalized, but subjective) opinion of his many experiences with many different gay people. There is absolutely nothing wrong with that.

EDIT: To whomever downvoted me: feel free to let me know how what I said was wrong
You don't check a resume to see if someone is able to perform a task, especially CPR. There are certifications for that.

Pretty much anything remotely safety critical these days relies on some sort of licensing, so you would have to create a fake document certifying yourself.

Your example is so fucking contrived it isn't funny.
Seems like the only reason you'd expect it to be 1 << 5 is that you've been working with a broken definition of bool using #define.

In any sane language you can't redefine bool that way, nobody would ever expect bool to take more than two values, and there wouldn't be a problem.
Syria’s Other Army: How the Hackers Wage War
Again, surgeons and engineers have to take certifications to prove they have the credentials they speak of.

They would have to forge documents on top of lying on their resumes.

You're really drifting from lying to fraud.
I did not imply that in any of my comments
There's a much simpler solution that solves 80% of the chaos at bars as well. If the bar ever gets crowded enough that you need at least two bartenders, put a sign that says "order here" at one end and "pick up here" at the other. Basically, make bars operate more like Starbucks.
Lunch with the FT: Shin Dong-hyuk (The North Korean born in a gulag)
In the example you gave, any compiler from the last 10 years would have given a warning message when converting the pointer to an int. Ignoring error messages is extremely, extremely bad practice. If you are still doing that, I suggest auditing your code right now to see if there are more problems such as mismatched printf arguments and so forth.

bool is a bad thing in C and C++, because of the implicit conversion rules. In C++, pointers implicitly convert to bool in every context-- there is never any warning message. This effectively reduces the compiler's ability to typecheck your program, since so many variables are pointers already, and C++ will happily stuff them into any bool argument to a function.

It seems like the C99 _Bool type implements the same implicit type conversion brain damage. That makes it a step backwards in terms of type safety, not forwards. That's right, using the old-fashioned, fuddy-duddy, plain old int and 0 and 1 gives you better type checking than the shiny new C++ feature.

As Linux points out, the worse typechecking comes with a side order of compatibility problems. And it is not any more efficient or readable.
Are you proposing the kernel be rewritten in a "better" language?
>So how can you know how to cheat them?

I don't understand the basis of your question. To say "this test does not correlate with the phenomenon it purports to measure" is not the same as to say "this test is completely random".

Counting how many times a person says the word "baby" during an answer is a piss-poor way to tell if they're lying, in large part because that factor won't correlate strongly with deception. It would also be extremely easy to fool, by simply controlling how many times you say "baby".
Please read my original comment. I never said what you seem to think I said.
Wow, I'm sure there's plenty of things to vehemently disagree with Torvalds on and even to criticize him - manners, politics, management style and even the finer points of programming. But I would have thought he'd earned his stripes enough to at least not to be called an idiot on his C skills on HN. But apparently not. Next up, Dennis Ritchie!
Thought experiment:
The OP's statement could be naive white-straight-male ignorance, and hint at background bigotry. But what still be just a hint, not proof. However, the OP could also be gay himself, and be able to legitimately say he likes gay people a lot (and prob not in the way a straight man likes another man).

Would you still say what you just said if the latter is true?
Its worth looking at the scale of the swear count. Linux has about 16629976 lines of code, and I'd estimate from the graph that it has about 370* swear words (excluding penguin). If you look at the second graph, that is less then 1 swear in 300000 lines.

I checked this on the source tree for 3.8.0. The numbers appear to be inflated by allowing the swear words to be part of other words.

For example, "shit" appears in 121 lines, but " shit " only appears in 10 lines. Looking at the offending lines, there is only one swearword that is missed by excluding spaces.

"fuck" appears 29 times, all of which are some conjugation of the verb (and some lines have duplicates I'm not counting).

"crap" appears 161 times, 20 of which are part of "scrap"

"bastard" appears 17 times, 6 of which go to email addressed hosted at "lazybastard.org" and "you-bastards.com"

"penguin" appears 99 times, two of which are jokes.
Hold on though, are we talking about "should be legal" now or "is legal"? If we're talking about "should" then the answer to every question is that anything to nullify the credibility of the polygraph is good, and anything that strengthens its credibility is bad, assuming all other factors are equal.
>Please explain the rationale of using jail to punish someone for lying on a resume.

MS lobbying in WA.
Are you trying to suggest that if I had a bad dating experience that I shouldn't write off an entire gender? Or that if I had a bad boss that I shouldn't tar all of management as useless? Or if I had a bad taxi-driver (or two or three) that I shouldn't suggests that "I will never respect or trust a taxi-driver again?"

On what basis are you suggesting that one or two anecdotes don't allow me to completely profile an entire population of millions (in the case of gender Billions) of people?
I don't think that is a problem only with software patents. Even for mechanical patents, say, you could "implement" a mechanism in any of a thousand different alloys as long as they provide the appropriate physical properties required.

Or for electronics patents, you could use any of a thousand combinations of various passive or active components to achieve the same electronic properties.

Or for drug patents, you could deliver the "active" chemical compound in any of a thousand different coatings.

For patents, the specific implementation has always been a secondary consideration (to be precise, for "enablement"), as long as the true "essence" of the invention is protected.

It may seem that it's only in software that all ways of achieving an outcome get encompassed by claims, but this may be due to 1) the prevalence of software patents in litigation these days (as evidenced by the GAO report) and 2) the propensity of tech media to trivialize all patents to soundbites without regards to the actual claims, and then proclaim them to be broad and vague.

Note that broad and vague patents do exist, in many fields, including software-related inventions. However, in my experience, they are not as widespread as it may seem and, as I said before, getting such broad patents is becoming harder and harder, and has been so since the mid '00s. I don't know what to attribute this to, but one of my hunches is the availability of Google search.
Why not make the correct comparison and do BOOL b = pointer != NULL. Now the code says what you mean, is easy to understand, and assigns a boolean value to a bool.
I submitted this 4 hours before that one!
You're right: it's not really thinking after all.

I wouldn't see a reason for annoyance. It seems you asked a question, and you got answers. I'd declare success.
I never said "Bitcoin is a Ponzi Scheme". I just saw some similarities in how people behave around Bitcoins and Ponzi Scheme and described my point of view. It's not so much different from talking about how multi level marketing and ponzi scheme have similarities, and how evangelism in christianity and ponzi scheme have similarities. Just because they have commonalities, doesn't mean "Christianity is a Ponzi Scheme"
From a quick grep of the source, it looks like a contributing factor is Matsushita Electric Industrial. If you are interested, I posted the output of grep to pastebin [0].

[0]http://pastebin.com/MNZF1Vz0

EDIT: This is against linux-3.8.0 from Mint's repository.
If you have the option to choose between a hammer that will hit your own finger and one that will stop short when it detects that (with no false positives), all other considerations being the same; and you willingly choose the first hammer, you are a fool.

Basically the true idiot is not one that makes mistakes, but one that assumes only idiots make mistakes.
>I'd like to be outraged, but it does seem like he deserves to serve time.

"Deserves"? Do you assign this moral priority only to the current snapshot of American law, or do you apply it to American law in general, or do you apply it to the laws of whatever country a person resides in?

>(Bring on the downvotes.)

I wouldn't have if you hadn't said that.
Genuine question - have you considered that the problem might be you?

Sure, there are bad lawyers like there are bad examples of anything else you care to name. It sucks that you've had a bad time of it, divorce court can't be fun.

But the fact that every interaction you've had seems negative - with your own lawyers, opposing lawyers, judges and even bailiffs (who are essentially non-legal admin/security staff) reveals a pattern. Eventually you have to ask: Is the whole world crazy, or just me?

Disclosure: I am a lawyer. I've had very difficult clients in the past. I generally get along well with clients, opposing counsel and even the opposing clients (to the extent we interact).
AngularJS - Understanding $digest
Could you tell people something like "If you did intend to lie on the polygraph test, you should by no means tell anyone that, including me"? Or would that be too legally risky.

It seems like otherwise you have something of a moral quandry. The lie detector is ineffective, so without instruction in countermeasures, a person guilty of one thing could still end up accused of another based on their performance. Whatever they're actually guilty of, that scenario is negative utility for everyone.
Did you not look at the Chik-fil-a video?

Do you think that guy looked at things from the drive-through employee's perspective? Perhaps it was the only paying job she could get...
My uncle just paid me for some web-dev help with dwolla. Have you tried that?
Reached almost twice the fund goal in less than 24 hours
See also:

Homeopaths
Acupuncturists
Most broad-stroke psychometric testing
> 2) Engineers are paid way too much

As others have commented, this is totally market, which is detached from the actual working conditions. Can 100K really be considered overpaid in the bay area? Or is everyone making much less than 100K just crazy to live there (I don't live there, so I don't know how much you really need to make to survive there.)

I think sometimes it's hard for us to see how much we really learn over time. It seems so easy, yet have someone who has never written a line of code try to get to the point where you are at.
>Not to mention this was a fucking manufactured crime.

Absolutely.

Dixon was obviously entrapped. That is to say, the feds threw a bunch of shills at him, who said basically, "teach me how to beat the machine so I can do something wrong". Dixon fell for it, pleaded guilty, and now is awaiting sentencing.

The interesting question is, what did Dixon do that caused the feds to go to such lengths to railroad him?