skysight-inc/HackerNews huggingface dataset:
You're only paying 35% in US federal taxes if you're making over 400K a year. Someone making $100K to $150K is in the 28% bracket.

And you're probably only paying 10% in state tax if you live in California. Most other states' income tax are around 5 or 6 percent, and some are at zero.
Wikipedia's open nature helps it. Several years ago I did a "wiki patrol" for new edits. There is an IRC channel and programs and facilities for this. Most of the cleanup I did was of well-meaning people who did not understand Wikipedia's markup format and the like. Some was vandalism. Lots of people do these "patrols". I would not underestimate Wikipedia's ability to deal with spammers. The open nature of it all helps it.
This is what bothers me the most:

While it's a given that the NSA cannot monitor the entire Internet on its own and that it needs intelligence from companies, Alexander has questioned whether companies have the capacity to protect themselves. "What we see is an increasing level of activity on the networks," he said recently at a security conference in Canada. "I am concerned that this is going to break a threshold where the private sector can no longer handle it and the government is going to have to step in."
It's like the government isn't even pretending anymore that they don't constantly break the law.
That was actually my point, the law hasn't responded to paparazzi in a major way because they effect so few people. Or rather, it hadn't responded until relatively recently. California has found that the swarms are so big, and behave with such reckless disregard for public safety (high-speed chases on freeways are as especially sore point) that they've started to drop the hammer on these fuckers, passing legislation to curb the worst abuses.

Putting this special case aside, if you were to stalk someone in ways that many 'regular' people are actually exposed to, you'd find yourself face to face with a more fully developed - and far more serious - body of legislation.

http://suite101.com/a/stalking-law-a29952

The larger point is that a few people suffering the paps are not a threat to the republic. But if everyone had cause to live their lives in the fearful, guarded, anxious way that a lot of stars actually live (minus the giant paychecks, of course) then it's likely that society really would break down, and we'd see that "the reasonable expectation of privacy" isn't determined by what's technically possible at any given time, but what's psychologically necessary for people to function in and as a democracy.
What facts do you have? More than TEPCO or the Japanese government, who are now admitting that they don't know anything and don't know when they will have the radiation leaks controlled? Are you reading what I actually wrote?
Is it a recent development? On the FBI scale of sinister actions, I'd say this rates, at most, 300 milli-Hoovers.

http://en.wikipedia.org/wiki/J._Edgar_Hoover
I'm going to say first of all that I am a major fan of Dark Souls. So I'm obviously going to be biased here.

Was the PC port rushed? Yes, there's no doubt about it. Is it a broken product, though? No, not at all, because the simple fact is that it was never intended to be played using a keyboard and mouse. The developers, probably at the behest of the publisher, didn't really make that clear for the PC version, and that's a shame, but this game was designed from the ground up for a gamepad to a similar extent that Starcraft is designed for a keyboard and mouse. I think if this was communicated more clearly people would have been less caught off guard by the atrocious keyboard and mouse support in the vanilla PC port.

You need to pick up a gamepad, preferably an Xbox 360 one, to play Dark Souls on the PC the way it was meant to be played.

> And for those few hours I did play it, nothing about it stood out to me as being incredible or ingenious.

Of course, there is no way you can expect to appreciate the game itself if you're struggling with the controls.
I don't think such a creature really exists albeit there are personalities that match the label (with quality of work that's inversely proportional). In fact, I've seen the label implied toward people who turns out not to produce a single line of code; which makes it quite the misnomer.

Most of the people I've met that have done exceptional work were not unusually clever or posses genius level intelligence, but they universally had phenomenal self-discipline, time management skills and had non-abrasive personalities. Maybe that's really all it takes to be a good at coding or really any other job.
Why would you ignore code size? Its a huge factor in load times.
I Never Met a Genius
It actually seems to be a fairly close call. It seems that bed nets prevent about 1 death from malaria for every $2000 or so [1], whereas the quality of life of some of the Watsi patients can be significantly improved for $500 to $1000 [see 2]. So the question is what the relative value of each is, and while I think the balance weighs in favor of malaria prevention, it's not a clear-cut decision.

[1] http://www.givewell.org/international/technical/programs/ins...

[2] https://watsi.org/profile/8d8d49907cc9-hussein
I speculate that re-posts get voted to the front page because the users who are voting on them didn't see them the first time around.

The fraction of HN users that see a post on average depends on how long a typical post stays on the front page and on how often a typical HN user checks HN. I don't know what those parameters are, but I think it's plausible that a typical HN user sees fewer than half of all front-page posts, in which case it wouldn't be surprising for there to be some re-posts.

If something changed about those statistics--for example, perhaps more posts per hour leads to a typical story staying on the front page for a shorter time--then that could account for an increase in the number of re-posts.

Also, I'm not sure that there is actually a trend towards more re-posts on HN. It seems like the kind of thing that would be easy to mis-estimate.
That's not actually what that paper says. It says that if your AES implementation relies on secret-derived table lookups and your attacker shares a machine with you, they can write a spy process that will profile the local cache and from that trace data infer the table lookups you did. It's a great (and famous) paper, but it does not suggest that reusing an AES key is dangerous, because of course it isn't.

The guy talking about using USB one-time pads is not in a good position to be concerned about mitigating localhost attackers.
My experience may be an extreme one but the last apartment I shared,my flatmate would go for long periods without talking to me at all,only communicating by writing note after note,which sometimes was so odd as our rooms were right next to each other,we could easily hear the other person coming and going and would be easier,nicer(in my view)to actually talk.

I felt that she wanted to believe she lived alone but couldn't handle the fact that both of us needed the other for the apartment sharing to really work.
> "Obviously, this is being posted because”...

Or maybe it's part of someone showing off to someone else that they're part of the action.
This is a good start, netstat -an to see what ports are open, to shut down things that open ports. Turn of xinetd if it is on, etc. There was a much more complete best practices document that came through here earlier.
Given that I experienced sleep-paralysis just yesterday, it's opportune that I got to read this article now.

Thanks!
I picture this as an app that's meant more for areas of the world where harassment is much more prominent/aggressive and those that do it are condoned to the point it's considered "acceptable" at a deep-seated, culture-wide level. While harassment is still an issue in the United States, it's nowhere near the point or daily creep factor it is in some areas of the world. While you bring up some good points in the view of someone living in the United States, I don't believe women (and ethical men) in every part of the world would agree.

There was just a report on the BBC the other day where they interviewed women in India about the level of harassment they endure and if it has gotten better since last year when that poor medical student was raped and murdered on a bus. They all agreed that dealing with being regularly groped by men was just a part of "daily life," which is just sad. They also said that when they speak out about it, fallacies such as "women should not be out at X time of day" or "an upstanding woman that does not want that kind of 'attention' should not wear X." While there are reports of that happening in the US, no woman I know would claim it's just a part of daily life.
Create a text file on your desktop, called hack.html, with the following content.

<img src="https://news.ycombinator.com/y18.gif" />

Double click to open with your favorite browser.
Yes, I agree that words have meanings for a reason. Please read my comment again and you'll see that that's the main thrust of what I'm getting at.
This is a really ignorant comment. First, it's downright silly to assume that KB+M is necessarily better for every game; even if the developers had invested time in improving the KB+M controls, the game would still operate far better with a gamepad. Second, it's also downright silly to think that there's no reason to ever use a gamepad with a PC. If you already have a gaming PC and you don't have a console, that's a pretty big reason to play it on PC. If you have a high resolution monitor that you want to take advantage of, that's a pretty big reason to play it on PC. If you're interested in modding, that's a pretty big reason to play it on PC.
How many of them actually do?
Of course people deserve to be able to make a living doing the work they do.

However, they don't get to dictate my behaviour as part of their business model.

I'll decide what my computer renders to my screen. They don't have to run their business like I want, and I don't have to run my computer screen like they want.
How is that different than another framework such as Angular JS, or something like web components perhaps? Each view, or directory or component can have it's own CSS file with existing solutions too.

What we are seeing here is an attempt to solve the same problem, but by doing all the work by using JavaScript. Cool. But not impressed.
This analysis is off in a couple ways.

First: the incentives to spam Wikipedia remain enormous; Wikipedia has incredible search mojo. The kind of spam he's talking about is of a kind with Wordpress comment spam, but the kind of spam Wikipedia deals with in reality is more sophisticated, and involves entire bogus articles.

Second, flagged revisions are a tool that suppresses edit wars, and are used on (last I checked) a tiny subset of all the pages on WP. That "most important technical change" restricting "anyone from editing" WP hasn't been and never will be deployed sitewide.
I didn't say that 'she should be happy with what she had', I said that given a windfall, all she could do was bitch about the small part that was taxed. Getting a payrise made her unhappy!

I'm saying 'keep some perspective', not 'don't try to improve your situation'.
they're both semantic, its just that one splits it between tag names and class structure and the other puts it all in the class structure.
Where's the Gudermannian?

From wikipediophile:

"The Gudermannian function, named after Christoph Gudermann (1798–1852), relates the circular functions and hyperbolic functions without using complex numbers."
It takes advantage of JS's complicated type coercion semantics and the overloading of the [] and + operators.

We start with [] and [[]].

convert [] to a boolean with !:

![] --> false
!![] --> true

convert [] to undefined by subscripting it:

[][[]] --> undefined

convert [] [[]] and true to numbers by prefixing them with + and adding them with +:

+[] --> 0
+[[]] --> NaN
+!![] --> +true --> 1
+!![]+(+!![]) --> +true+(+true) --> 1+(1) --> 2
etc.

convert any of these to strings by prefixing them with []+

[]+[] --> ""
[]+![] --> []+false --> "false"
[]+[][[]] --> []+undefined --> "undefined"
[]+(+[]) --> []+0 --> "0"

get individual characters with the array subscript operator:

([]+![])[+[]] --> ([]+false)[0] --> "false"[0] --> "f"
([]+!![])[+!![]+(+!![])+(+!![])] --> ([]+true)[1+(1)+(1)] --> "true"[3] --> "e"
etc...

So now we can obtain a limited number of characters:

"a" "d" "e" "f" "i" "l" "n" "r" "s" "t" "u" "N" "0" "1" "2" "3" "4" "5" "6" "7" "8" "9"

which we can combine into strings with the + operator:

"f"+"i"+"l"+"t"+"e"+"r" --> "filter"
"1"+"e"+"1"+"0"+"0"+"0" --> "1e1000"

It's not much, but it's enough to obtain large numbers:

+("1"+"2"+"3"+"4") --> +("1234") --> 1234
+("1"+"e"+"1"+"0"+"0"+"0") --> +("1e1000") --> Infinity

and, most importantly, to access a property of the array object:

[]["filter"] --> function filter() { [native code] }

and by converting these back to a string:

[]+[]["filter"] --> "function filter() { [native code] }"
[]+Infinity --> "Infinity"

we can expand our alphabet still further, and access some even more exciting properties:

[]["constructor"] --> function Array() { [native code] }
([]+[])["constructor"] --> function String() { [native code] }
(![])["constructor"] --> function Boolean() { [native code] }
(+[])["constructor"] --> function Number() { [native code] }
[]["filter"]["constructor"] --> function Function() { [native code] }

Almost there now.

By converting these back to strings we can access even more characters, and by passing the strings to the Function() constructor we can can construct functions and evaluate them! In other words, we have "eval". Let's use it to access the window object:

[]["filter"]["constructor"]("return this") --> function anonymous() {return this}
[]["filter"]["constructor"]("return this")() --> window

So now we have access to the global context and eval. We don't quite have access to the full range of letters, but we have enough letters to call toString, and use it's base conversion ability to get the full lowercase alphabet:

10["toString"](36) --> "a"
11["toString"](36) --> "b"
...
25["toString"](36) --> "p"
...
35["toString"](36) --> "z"

And now we have "p", we can use escape and unescape to get most of the rest:

unescape(escape(" ")[0]+4+0) --> "@"

So there you have it!

The source code essentially runs this process backwards: it repeatedly uses regular expressions to convert the code back into "()[]!+" one step at a time.
I also get it regularly, about a 3-4 times a month - and learned to "break out" (such an apt description!) as well.

Lately, I've gotten to the point where sometimes I can remain calm, and instead of breaking out, just sort of wait it out. Its odd, but I've noticed it takes me around 1-3 minutes to get out of it, and it seems if I can remain calm for that duration, that I'll get to a point where I can move out of it on my first try. Its got me questioning whether I ever really break out of it at all, or am just convincing myself that I am until the 'timer' runs out. If I could consistently remain calm and wait, I'd probably know by now - but Im only occasionally able to do so.

Anyways, just thought I'd share my experience for any other regulars :)
Separately, Jimmy Wales reportedly said that 0.7% of Wikipedia's users have made 50% of all Wikipedia edits and 1.8% of users have written more than 72% of all articles, and he was quoted in the New York Times in June as saying “A lot of people think of Wikipedia as being 10 million people, each adding one sentence...But really the vast majority of work is done by this small core community” of about 1,000 Wikipedians.

I believe Aaron Swartz did some statistical analysis on this and found it not to be true .. a small number of editors make the most # of edits, but the content is written by a very large number of editors.

http://www.aaronsw.com/weblog/whowriteswikipedia
Who said I was a yank, mate?
Sounds to me like a traffic map, avoid the red areas.
How many security exploits have been found in the Linux kernel, or other trusted software? How many of those were around for a "long time"? Every one of those got by the normal peer review process.

So the question is, which is harder: does it take more skill to accidently insert a bug that gets by (sometimes for years), or to do so on purpose?
Just out of curiosity - assume you took a key of 8096 bits - and it is super long - could you then make a hash of the key which were shorter, and provide the hash, with instructions on how to reverse it, and then use the hash to produce the 8096 keylength with less digits between you and the recipient?
It's useful to read this to get an idea of the magnitude of the problem WP faced even in 2006, when it already had huge traction. Wikipedia is an amazing achievement, maybe even up there in the leaderboard of western civilization, and the fact that they managed to do it despite an active decentralized motivated adversary (the forces of vanispamcruftisement) is just one aspect of that.
I see quite a bit of discussion in this thread that is wholly unrelated to the topic we are discussing.

My beef is and was with the tone of the post. No need to proclaim that God's work is being done; no need to be a dick.
This didn't stop the huge asset bubbles that formed due to the opaque markets of derivatives from forming.

Buying and selling pressure don't communicate things like size very well, but its often an extremely important point that we need to consider when thinking about the health of a market.
Oh, I don't have much faith in the inner fortitude of my fellow man. The unwashed masses are still watching reality television, ya know.
"Battushig, then 15, became one of 340 students out of 150,000 to earn a perfect score in Circuits and Electronics, a sophomore-level class at M.I.T. and the first Massive Open Online Course, or MOOC"

This is a second year MIT course in a language that is not his native language. While I agree with your sentiment about the use of the word genius, I think it is misdirected here.
How Ticketmaster ruined the concertgoing experience, and how it might be saved
I'm so glad this hasn't happened...yet.
I see where you're coming from. Most young people around the world don't really engage with creative learning, the fog of social games obscures the power and possibilities of education I guess. Your best shot is if you have an amazing teacher, but most teachers are products of the same system, and working with limited resources to boot. The brilliant are much more likely to wind up as professors, which I suppose could be why most people who have these later epiphanies tend to have them around college.

That said, this article is really a testament to the incredible potential of online education. A link was forged between a global centre of thought and a young boy in a far-flung, isolated and poor country. That's pretty awesome when you think about it, and hopefully something that will happen more and more as things get better!

Anyway, I hope you don't let stuff like this get you down. It's never too late in life to find your path.
Agreed I wasn't endorsing the link, just put it there for completeness.

FWIW I think the formula to beat wikipedia is obvious: mirror it, get rid of notability, get rid of anonymity and hire the most prolific editors. It would require a huge investment of course but I'm shocked it hasn't happened yet. I mean you could kill Facebook with the same site.
Don't dismiss the power of a generally constructive, optimistic culture.
> Maybe if people had that slightly better headset, or a connection that doesn't piss you off due to choppiness

As a remote worker: I wish my main office wouldn't use shitty conference speaker phones and actually had an internet connection half as fast as I do. :-)

(Seriously, just today I sat through a WebEx conference call with six people in the room and six people online--all our devs are remote--and ghhhhh mumble mumble mumble ghhhh was the order of the day.)
I was interested in how this might be shrunk to something more reasonable... I got this far before getting bored: http://pastie.org/8324713

That code, run as-is in your browser, should alert 'hi'.

It's constructed with the intent of replacing the variables a-e and various named parameters with short sequences in the given character set that can be cast to strings. For legibility, I shortened many of the encodable sequences to strings (such as []["slice"])

The table holds 5^3 characters, which is 125; you could start the loop at 2 instead of 0 to get 2-127 as target characters, or use 6 input arguments. The 5 I chose were ![], [], +[], +{}, ~[] -- this should let you encode anything after overhead at a ratio of 12:1 with high repetition that gzip can take advantage of. This could be awful, I don't know; but maybe somebody will find this interesting.
Diatoms bring the quantum effect to life
Huh? You might still mistype/forget an =, even if you never intend to perform assignment in a conditional. You never have to do it on purpose to do it by mistake, in other words.
I'm trying to figure out how my understanding of the paper went so horribly awry, but I'm just not seeing it. From the paper:

The first family of attacks, termed synchronous attacks, is applicable in scenarios where the plaintext or ciphertext is known and the attacker can operate synchronously with the encryption on the same processor, by using (or eavesdropping upon) some interface that triggers encryption under an unknown key. For example, a Virtual Private Network may allow an unprivileged user to send data packets through a secure channel. This lets the user trigger encryption of plaintexts that are mostly known (up to some uncertainties in the packet headers), and our attack would thus, under some circumstances, enable any such user to discover the key used by the VPN to protect all users’ packets. As another example, consider the Linux dm-crypt and cryptoloop services. These allow the administrator to create a virtual device which provides encrypted storage into an underlying physical device, and typically a normal filesystem is mounted on top of the virtual device. If a user has write permissions to any file on that filesystem, he can use it to trigger encryptions of known plaintext, and using our attack he is subsequently able to discover the encryption key used for the underlying device. We have experimentally demonstrated the latter attack, and showed it to reliably extract the full AES key using about 65ms of measurements (involving just 800 write operations) followed by 3 seconds of analysis.

Questions:

1) In that example, the attacker "discovered the key used by the VPN to protect all users' packets." Does that mean the VPN reused the same AES key for each encryption?

2) If so, then if the VPN were to change the encryption key each time it encrypted a packet, wouldn't that protect against this attack? The attacker had to be able to trigger 800 encryptions that all used the same encryption key, right? Or does "write operation" refer to something other than "the attacker triggered an encryption of some known plaintext"?
Very cool. Scanning the source code makes it look like you were using Alpha-Beta pruning[0], but I'm not totally sure why the function is named 'pvs'. Does anyone have a quick explanation?

[0]: http://en.wikipedia.org/wiki/Alpha%E2%80%93beta_pruning
Ask for a million dollars. Its worth it to humanity.