skysight-inc/HackerNews huggingface dataset:
The SR-71 was a hack, where the goal was to use 1960s technology to make an areal camera platform that could photograph targets protected by SAMs.

The original design brief was that it should be a stealth U2, but as the A-12/SR-71 project developed it became clear that that wasn't possible with the technology of the time, but that they could make a platform that flew so fast the SAMs wouldn't have time to lock, launch, and intercept.

There were suborbital spy satellites available before the A-12 even flew: http://en.wikipedia.org/wiki/Corona_%28satellite%29

The problem was that the cost of the keyhole program was incredible, you needed a whole launch platform plus a whole recovery mission every time you wanted to take a picture. So the SR-71 was a cost-saving measure versus Keyhole.

Currently the us military can get the information that the SR-71 could provide more easily and with less danger and cost.
> The sneering response to this is that I should change my name.

REALLY? Computers exist to bend to our needs, not the other way around!
I'm sure the author acknowledges the importance of complex numbers - the part where he says "don't bother..." is why is i^2 = -1, which makes sense, as i(or j) was indeed chosen to represent sqrt(-1) and not the other way round(no one "discovered" a magical number that, when squared, gives -1) :)
Starfighters
Looking very good here at latest chrome on latest Android.

http://imgur.com/kuSeXfn
Wow. Thanks for this. But I guess quaternions are much more well known because of their application in Computer Graphics/Vision (which is how I stumbled upon this article)
Yeah - there was a lot of backlash around the move to a single account for everything. It isn't just YouTube either, Picasa and others also set you up in the same ecosystem.

There are plenty of people who don't want the email address used to log in to these accounts to be public.
Having grown up on a reservation, I really have never heard that combination. Its "Indian", "Native American", or "American Indian". Canada adds "First Nation". Using three words is pretty unnatural. Really not sure why people are down voting you.
Man I had that conversation so many times (like, five days a week). I wish I'd had that in my toolbox.
She's saying some subtle things about what a "system" is. BitCoin and BitTorrent have almost nothing in common as protocols go.

At a high level, BitTorrent's DHT uses some notion of consensus to communicate between peers about who is on the network and where they and their files are. There is never system-wide coherence of the DHT, but the algorithm (Kademlia) doesn't require anything like that. BitCoin's notion of consensus requires that coherence in all but the last ~10 minutes worth of the blockchain.

Zooming out even farther, BitCoin requires the entire network for anything to happen at all. BitTorrent leverages the entire network to speed up interactions between two individual nodes.

If you're still not convinced, consider what happens if 40% of the network is cut off from the rest for a large period of time. After the extended network partition ends, and the two big swarms rejoin, what do users find is different?
How to steal Bitcoins that are protected by weak passphrases
Mozilla anger over Dell Firefox fee
I started working on a similar thing last year [0]. In my version, your pieces can see any spot on the board they are allowed to move to.

[0] https://github.com/valtron/fog
I've heard this attributed to Alan Kay instead of Ward Cunningham...

...which probably makes this comment a good example of the law.
Emeryville startup Revolights makes a pitch on 'Shark Tank'
This is how many get help in #rubyonrails on Freenode. Join the channel and state that x is impossible with ActiveRecord/ActionView/ActionController - solution posted in seconds.
Sue him in small claims court. You do have signed contracts right?
zip to unzip a dict is a very slow approach to do it

Instead of

mi = dict(zip(m.values(), m.keys()))

Do

mi = {v: k for (k, v) in m.iteritems()}
Agree - those are some of the most ignorant statements on HN.
Any one whose ever been involved in a business like merchant services can sympathize more than those commentors
I'm a researcher and social scientist, and today my tool stack is a complete mess. I use python for crawling and organizing the data that I collect. I then use GIS software to analyze geographic data, R to produce statistical charts and then write documents in LaTeX, integrated with sweave, to pull in outputs from R. In an ideal world I would do this all in python.

def getdata:
...
...

def cleanandstoredata:
...
...

def producecharts:
...
...

def producetables:
...
...

def writepaper:
...
...

I hear Julia's one purported aim is to make something like this possible, though have not tried it out.
That's a great piece of advice. Being goal-less but focussed has had an incredible positive impact on my productivity.
It works on focused technical forums. The less focused and the less technical, the less well it works... though I'd consider that a criticism of the forum rather than the technique. I've been on plenty of focused technical forums, and it is dead accurate for those.

If it doesn't work for you, I'd consider that evidence the forum in question is less technical than it may initially appear; there's a surprising number of forums that have the appearance of being technical, but aren't populated by very technically-skilled people. I've seen that on Ubuntu forums, for instance; someone asks a perfectly sensible question, and 5 people chime in with very convincing-sounding but ultimately completely wrong suggestions. OSes seem to attract that.
Same here, learned something new today.
I've never heard of somebody asking to see a contract with another company; that sounds super weird, and I would definitely be uncomfortable with that request.

There's very little downside to trying to negotiate your job offer, even without a counter offer on the table. The outcomes are pretty easy to enumerate:

1. You ask for more money. They negotiate; you end up with a higher salary. It might not be what you initially asked for, but that's how negotiation works, and it should be higher than what they offered. This is a success.

2. You ask for more money. They say, "Oh geeze, we're really sorry, but there's straight up no room for negotiation here; you're either going to have to accept the offer as it stands, or walk away". This isn't a success, but it's not really a failure either because you haven't lost anything; you're in the same place you were before, making the same decision, but now you've got a little more information.

3. You ask for more money. The company is offended that you have the temerity to negotiate, and they take their offer off the table. This looks bad, but it's a success as well. If a company gets salty at you for trying to negotiate a better salary and rescinds your offer, that's a pretty clear sign that you wouldn't have been happy working there and you've dodged a pretty major bullet. In my mind, that's good news.

For advice specific to negotiating, even without a counter offer, I'll point you towards Patrick Mackenzie's blog post on the topic; it's got some very good advice and is worth reading: http://www.kalzumeus.com/2012/01/23/salary-negotiation/
Google cited as bothered by Android-Windows hybrid
Don't bags that belong to passengers who don't embark get taken off the plane as a standard security measure?
Definitely one of the better articles I've read on productivity that can be applied in many more areas than just programming.

I've found my own sense of entitlement and superiority inflated then promptly deflated by smarter and more productive people; I think the hardest and most important part of the experience though (that the author touched on) is to move through the feelings of depression or unworthiness when you are deflated into an appreciation for what you can become and allow those people to inspire you to something better.

I've accepted that I'm not a bad ass and I'm hyper aware now of what I want to improve upon in knowledge, craft, and self-efficacy (focusing and applying myself).
I did some digging before I ask chm originally, here is what I found:

There are some lecture notes for the compiler class in French: http://www.iro.umontreal.ca/~feeley/cours/ift3065-ift6232/
Chrome automatically translated that resource for me.

Here is Feely giving a talk about a Scheme to javascript compiler: http://www.iro.umontreal.ca/~boucherd/mslug/meetings/2004102...

chm: Lucky... it would be awesome to do a compiler class in Scheme! Could you please tell Feely that some people on Hacker News would be thrilled if he made his lectures available online?
What an unpleasant attitude. The author clearly made a lot of effort and as far as I know it's all accurate. If you know better then say so pleasantly.
Hyper HTTP/2.0 For Python
Please. Stop.

Can you imagine your hammer writing you a mail every day "you know you can use me hammer to ..."?

those are awful ideas. Especially since nowadays every app require registration and mail authentication, and is it impossible to test it without. And that often you have to try 3/4 before finding some satisfying. So, please, I'm using your product, eventually paying, but If you think we are friends now you are wrong.

You are providing me a tool, and I'll be happy to share my productivity increases if any with my friends etc. And that's where it should end. Focus on a decent documentation instead.
When a comment is simply invective, we call it "flaming". Trolling is about triggering a disproportionate response -- particularly, causing the other person to invest either much more time or much more emotion than the troll did. Common forms include:

- using subtle digs make people angry enough that they lash out (thereby making them appear to be the instigator)

- introducing a tangential or irrelevant point, often in a short and snark-laded comment, to get people to waste a lot of time trying to respond

- copying and pasting large blocks of text, especially lists of problems with a particular viewpoint, and criticizing responses for being incomplete (thereby provoking people into writing very long and thorough responses)

- as a followup to the above, making vague criticisms like "you're missing the point" or "you keep dodging my question", so that people will spend time trying to figure out what you're talking about and maybe reworking their entire argument

- implying details, facts, or answers that don't actually exist (or that you don't know if they exist), trying to get people to spend time investigating something you haven't bothered figuring out. The "law" referenced in the article is an example of this type of trolling.
It could be related to StackOverflow displaying "Hot Network Questions" in a sidebar, some of which are from the aviation StackExchange, combined with the usual phenomenon of upvoted stories attracting similar submissions.

Incidentally, I find this sidebar extremely distracting; maybe it's time for a plugin/script to fix it.
> Outside the body, DNA has a half-life of about 500 years.

Who said it had to be stored outside the body? :) You could create a modified copy of an organism's genome with the information inserted.

But let's assume we mean outside the body storage:

The ~500 year number is an estimate based on the half-lives of DNA found in paleontological discoveries. Of course, since these samples were discovered in nature- no effort was made to prevent degradation over the post-death timeline. Some estimates say that a DNA strand could still retain useful information for as much as 1.5 million years.[1] We have amplified and sequenced information preserved in nature for 80,000 years.[2]

That half-life estimate is based on samples that were not always in solid state, which is an empirically more stable preservation state for DNA.

Specifically, the samples were usually not protected from water and oxygen throughout the entire storage period.

It is important to keep in mind that despite the observed half-life of DNA (which is still far longer than any existing/practical high density storage medium), it still retains useful information as it degrades for thousands (theoretically, millions) of years.

Also, you won't be storing the information on just a single strand, but on billions of strands. This redundancy affords you the ability to reliably amplify and sequence different non-degraded segments after many half-lives.

Notice that I said "...if stored properly...", granted, I wasn't clear, but it is certainly theoretically possible to preserve information for millions of years in DNA.

DNA is already the highest density storage medium that we use to store human produced information, such as a book. [3] Right now with current storage methods (room temp, dehydrated) we have an archival storage medium reliable for thousands of years.

If we can crack two things: extremely high speed sequencing, and ultra-long term solid state storage of DNA; it will be the ultimate high density long term storage medium short of sculpting code into metal at the atomic scale.

[1] http://www.npr.org/2013/01/24/170082404/shall-i-encode-thee-...

[2] http://www.nature.com/news/dna-has-a-521-year-half-life-1.11...

[3] http://arep.med.harvard.edu/pdf/Church_Science_12.pdf
Transcoding is tough for processors in case of high definition video, does your app really do it in realtime?
Arguably worked based on what evidence?
Interesting how the playing field changes when you reach a critical mass.

Reforming patent law could be part of the solution against this type of thing, but the bigger problem may actually just be that IBM is run by assholes.
Sounds like a web app would satisfy your requirements.
Cat React to Wrecking Ball (Chatroulette Version)
omg omg omg...this is epic
Excellent, and thank you. I wouldn't have found this without your shameless plug.
Yeah, I actually really do like the rest of it. It's just the part:

"Don’t try to actually understand this term as there is no logical reason why it exists. We just have to accept that is just something that squares to -1."

that rubbed me the wrong way. But in terms of the goal of this guide, I suppose waving hands and saying "deal with it" could be chalked up to a necessary evil.
Russia hits back at US ‘barefaced cynicism and double standards’ over Ukraine
That's fine, as long as the final product ends up linear. What I can't stand is presentations with multiple "directions", like you can move "right", or "up" or "down". I find that to be just distracting and stressful because I'm never sure if I'm going in the "correct" direction or if I've missed something. To me, that style of presentation is a solution looking for a problem.

We're going to view them in some order, just put them in that order and call it a day. If there is no order, then random order should be just fine. After all, what if you really needed more than two dimensions? You'd have to compress your ideas into a two-dimensional space anyway. Might as well make it one-dimensional and therefore less confusing.
Unpacking is a limited form of what is called destructuring in other languages like Clojure. I would say that, in terms of feature-richness: unpacking < destructuring < pattern matching.
Malaysia Airlines plane missing: Stolen passports raise suspicions of terrorism
Beej's guide is great! Thanks!
Awesome! This is some of the coolest stuff I've seen on HN in awhile. Thanks for posting this writeup and making your code open-source.
Kind of alien baby born in chattishgarh! Its Green in color and red eyes!
I hope this is not the case. Bitcoin demands a massive energy investment (every watt used by the attacker must at least be matched by a watt used by the honest parties), and in the future we are going to need to be more careful about power utilization.
What is inconsistent is that I consider some receipts spamº. As a matter of fact I consider A LOT of transactional mail spam.

And under the test of "would I want to get a similar email" from all the companies I do business with, I’d have to say I want no mail at all. But that’s not the truth - I want emails that are helpful, and not emails that are pointless.

What’s helpful and pointless varies from recipient to recipient - but it also varies from company to company - some mails that are appropriate for other companies are not for yours. And vis versa. A blanket rule that if one kind of mail is unacceptable if everyone sends is unacceptable for anyone to send really isn’t true. There needs to be a middle ground.

I think my rule is fine - if the person using the test is close enough to me in what they want. Perhaps your rule is fine, if the person is closer to you. This is probably why this is so hard - we can’t even formulate a rule that people of good faith can follow to build an acceptable policy.

º Spam receipts I my company gets include every mail from AT&T, Zendesk, and Safari Books where we're just paying the standard monthly charge. Overages - those I’d like to know about but of course we don’t get those kinds of useful emails - we get those when do the books.
I segregate some activity across different Google accounts. By using different browser makes (Chrome versus Firefox versus...). And/or by using different data profiles in those browsers (not just the "change user" feature of the Google web properties, but a completely different browser profile subdirectory).

My oldest and most-used Google account (formerly known as a Gmail account), I refuse to Google+ify, as long as I can. For reasons like the OP situation and others.

A while back, I needed to use Hangouts. I +ified another Gmail account that I used for a subset of general business contact. If/when it is borked, I can walk away from it. And it doesn't contain data I worry overly about "bleeding".
Moon – Night #1 (Time Lapse)
"I don't think that's the right test - because it would mean i would get no emails at all."

I believe that all those emails you list pass the test ofyou specifically wanting to receive "a similar email from the dozens, sometimes hundreds, of companies with which I have accounts?"
I assume its basic incompetence due to arrogance, but they have a history. Google Voice blocked one of the tribal community colleges[1], but they were "saving costs"[2].

It doesn't help that Google simply refuses to let people talk to humans, and anything that doesn't meet with their algorithms is simply banned with no recourse other than to create bad publicity for them.

So, they supposedly know the problem they are creating for Native Americans, so can we assume further occurrences are racist or just more incompetence? Will someone with the last name "Afraid Of Ravens"[3] get their account suspended or not even able to create it in the future?

1) http://www.att.com/Common/about_us/public_policy/ATTLetter_F...

2) http://arstechnica.com/tech-policy/2009/10/google-voice-were...

3) it's an actual name if you switch the bird.
How to Combine Images to CSS Sprites
Thanks for that insight. I was asking about the influx of aviation stories on another thread and was downvoted into the basement.
What's wrong with registering a second Google account for Youtube only (and not using its Gmail part)?
Any idea how it compares to http://gildas-lormeau.github.io/zip.js/ ?
More useful than a raw download page, an example of new features: http://nbviewer.ipython.org/github/ipython/ipython/blob/mast...
Thanks for making the world a worse place, Twitter, by giving in to the patent bullies, and setting an example for others. It's sort of "understandable" for small start-ups who would be ruined by the trial alone, but for companies that have billions of dollars in their coffers to do this is just plain pathetic and cowardly. Instead of fighting the problem, they become part of it and accomplices to it.

This also completely devalues the credibility of their IPA [1] patent thing. If Twitter gave in, why would everyone else who might've been interested in the whole IPA thing not do the same, too?

[1] - https://blog.twitter.com/2012/introducing-innovators-patent-...
Apparently it is for many of us: https://news.ycombinator.com/item?id=7358150
We do not have the full story. Maybe 36M$ is very cheap for these 900 patents and IBM was very kind. We will probably not know before many years.
Here are a few other submissions of this story. There is discussion on these:

https://news.ycombinator.com/item?id=7364719

https://news.ycombinator.com/item?id=7364086

Little or no relevant discussion on these:

https://news.ycombinator.com/item?id=7363742

https://news.ycombinator.com/item?id=7363806

https://news.ycombinator.com/item?id=7364159

https://news.ycombinator.com/item?id=7364331

https://news.ycombinator.com/item?id=7364483

https://news.ycombinator.com/item?id=7364486

https://news.ycombinator.com/item?id=7364523

https://news.ycombinator.com/item?id=7364551

https://news.ycombinator.com/item?id=7364585

https://news.ycombinator.com/item?id=7364603
> Another example is Turkish, where there are two capital I's, one with a dot, one without.

It's even more complicated: they have two letter Is, one with a dot in both lower and uppercase (İ/i) and one dotless (I/ı) in both cases. So any automatic case change needs to take this into account or the letter will get switched. This also make using fonts with fi ligatures problematic.

http://en.wikipedia.org/wiki/Dotless_I
Nice work! I use Google+ and I a. Like that you found a hole and reported it, and b. Google fixed it nice a promptly.

I hope you get the bounty.
So much easier said than done.
Ding. Ding Ding. We have a winner.

Creating / getting a patent at IBM is comical. Sort of like a game. All you have to do is document something, pass it to their patent lawyers ... and they fill it with so much verbose lawyer language and fluff that any normal person can't read and interpret it. Then it gets submitted and ... voila ... patent pending (and quite typically a couple years later, patented).

(Source: Me, a former employee of IBM (Indian Business Machines)).
I think Ill just eat it and have the fucking guy out of my life. He really is a subhuman piece of shit. He knows he fucked me and got away with it. I really need/needed that money at the time. My mother is sick, etc. Client is a real garbage human being.
It's too early on a Saturday morning for RegEx jokes :-)
Have you tried the iPython notebook? Don't know about the GIS software but I do most of what you mention inside the my notebooks.
You would not believe the silly obscure things that IBM patents. It is a disgusting game they play.
Python is quite good for this, actually. Julia is fantastic, but the toolchain isn't as mature. (E.g GIS functionality is more or less absent in julia, as far as I know.) To be fair, R is also fantastic for a lot of it.

At any rate, have a look at the pgf backend for matplotlib, cartopy, shapely, etc. Feel free to drop me a line if you want suggestions, examples, etc.
I have a great Dell Latitude E6320. 8G RAM, i5 Sandy Bridge and 250GB HDD. It's basically a tank with Magnesium and Aluminum. It fell from 1.6m right on its VGA connector which was pushed inside, but still works.

First thing I did was installing Ubuntu, though. Same as my desktop Dell.

PS: It's the only computer that gets WiFi while all others find it too weak of a signal. I'm online while all my friends shut their laptops.
Nothing! Lots of people do that, I believe.

The problem is this bug would have let me easily find out your secret YouTube email address.
Clean and professional for the 2 sides. I like it!
What if Dorian is not Satoshi, but Satoshi knows that by doing shady stuff like what he just did, it will just reinforce the idea we have that Dorian is Satoshi
Too bad that the president's name isn't really O'Bama as was reported (jokingly) a few years back when he visited Ireland. If it were, this problem might have been resolved by now ;-)
Live Stream: Julian Assange  SXSW
PayPal is Getting Updated to Focus on Mobile
Love it! And won my game :-)
Hm... Python only supports 1000 recursions? That seems unsafe. It seems like anyone who writes functional-style code will run the risk of a stack overflow.