skysight-inc/HackerNews huggingface dataset:
Out of curiosity, why do shells need to use fork?

Note: I am not familiar with the implementation techniques behind shells.
>Even if iOS 2 were designed more for the 3G than the original iPhone, it couldn't have required significantly more resources because no more became available!

That wouldn't matter if Apple were simply adding code that tested the hardware and manually added slowdowns on the older model. Your observation could be seen as lending credence to the conspiracy theory.
Like magnetic stripe credit cards, keys need to die. The security model is broken for the same reason - anyone who handles or even looks at the token has free reign on whatever is protected by the secret. The secret should instead remain encapsulated, used only to sign encrypted, replay-attack-proof authorizations.

It's 2014. Smart cards need to be everywhere. Even my college dorm had contactless smart card authentication.

Keys still have a place for manual override in outages, but that should be rare and set off alarms.
I think people substantially underestimate how hard the iOS GUI pushes the performance wall, from one release to the next.

There was a talk at WWDC this year (session 419, if you want to watch it) that goes into some detail about how the blur effects on e.g. the lock screen, notification center, control center, toolbars, etc. work.

You can watch the talk for the details, but as a practical matter several of these effects involve seven (!) full GPU passes, just for these effects alone, let alone whatever UI is under or over them. And not even the very latest-gen devices can do it consistently full-screen at 60fps. iOS displays motion underneath blur effects in very small areas (e.g. a toolbar) on new devices but if you think about it, you never see motion underneath, say, the lock screen. The reason is that not even the latest iPad Air has the GPU to apply some fullscreen blurs in enough time to meet the draw deadline.

This actually surprises a lot of people--I can't count the number of designs I've gotten where some designer has made a large blurred UI element and expects something to move underneath it. Which, depending on the size of the element and the target hardware you can sometimes get away with, but you are in for quite the lengthy performance test, and a complicated spectrum of fallbacks for all the devices that just aren't fast enough.

And that's just one blur effect. You take a look at all the other "new" iOS things that are less visible, like the endless stream of new background technologies (background fetch, silent push, NSURLSession, multi-app audio routing, various iCloud syncing stuff) the new bluetooth stuff (iBeacon, HomeKit, Multipeer), turning WebKit into an LLVM compiler, and all the other things that are going on in iOS it really is "doing more of everything". I remember a time when iOS was basically just a few OS processes plus 1 active app, and as we speak ps on my phone lists 87 processes.
New releases of iOS usually go hand-in-hand with a new device. They design the OS to be optimal for the latest and greatest hardware, not so much the previous generations. As much as I like a good tinfoil hat theory, I'd say this is just a case of Apple adding new features (eye candy, mostly) and not worrying so much about the performance on older devices.
The stated goal is to eliminate false positives ("hire the wrong guy and you will be stuck with that person forever.") That necessitates you will have an increased number of false negatives - see http://en.wikipedia.org/wiki/Type_I_and_type_II_errors. The consequences of missing a great hire are less than the consequences of hiring a loser.

My own problem with the question is that I wouldn't know what to answer - I have too many things to choose from. Many are too far in the past to remember lots of details about.
Languages that don't use () still have to use the same syntax. See the haskell solution.
is that like on the cover of justin beiber's albums or something?
This is a syntax error in perl, so impossible?

> perl -e "g()()"
syntax error at -e line 1, near ")("
Execution of -e aborted due to compilation errors.
1) The trunk can be opened without a key from the drivers seat of most every car, no?

2) The value of contents of my trunk is rarely within two orders of magnitude of the value of my car.
The Types of Data (in Swift)
"you'll only have to get measured once!"

Unless you get fat.
I'm just going to pick one person to reply to at random since there seem to be half a dozen comments misunderstanding the same thing...

Yes, a person with all of those things can answer this question. So can a person who doesn't, which is the point. Answering this question correctly cannot identify people with these highly desirable and uncommon skill sets, so the expected result of using it as your only interview test is to hire the most common subset of people that can pass it.

On further reflection, I have another objection to this interview approach. I would never work for this company because it fails my personal red-flag test of the hiring process: "Do I want to work with the worst imaginable person who could pass this interview?"
The table at the bottom is interesting. I'd love to read articles about why it's impossible in language X. E.g. I'm familiar with C/Python and can implement a solution, and am surprised that it'd be impossible in Ruby - I don't know Ruby, and would love to know why.

More generally, what properties must a programming language satisfy for this problem to be solvable in it?

My current intuition is that if a language does not denote function calls with () enclosing arguments, AND if a language does not support metaprogramming (eg. LISP macros), then the problem is not solvable in it. Still thinking about it.
This is a quick follow up to my previous post demonstrating the types of data using Swift. Swift is interestingly a really great language for expressing the types of data (in particular, it has the ability to create true sums).

So if you were a bit turned off by the Haskell examples in the previous post perhaps these examples will be helpful.

(Also, I just started playing with Swift tonight, so feedback on style would be greatly appreciated!)
For the impossible bullets, they link to informal arguments as to why it's impossible. The ruby one has code - it's a syntax error.
It's also to do with Spotlight re-indexing the contents of the phone. Every email, every contact, every web page still in history, etc.

There's some "optimisation" happening too, as bits are shuffled around so the most commonly used parts are fastest to access.

This applies for OSX as well as iOS. After upgrading, just wait an hour or two and everything will settle down. The impatient will simply have to cope with slower speed since the device is still sorting itself out.
The "complete" solutions for Python in the repo don't actually work because they don't reset the state. If you add a final line of:

print g('al')

for solution1 or:

print m('rton')

for solution2, you'll find they don't print gal/ mrton.

Here's what I came up with before looking at those solutions that seems to work:

def g(arg=None):
if arg == 'al':
return 'gal'
def inner(arg=None):
if arg == 'al':
return 'g' + (inner.counter * 'o') + 'al'
inner.counter += 1
return inner
inner.counter = 1
return inner
Can you submit a pull request saying as much in the same format as the Ruby one?
You're figuring for 40 items of clothing?

Someone might buy 1-3 nice shirts and take good care of them and they'd last a long time, provided they didn't buy a shirt with a trendy design that will be useless next year.
Resetting the state isn't one of the rules ;)

I'd make a solution which resets the state linked by the table though, so please submit one!
I would. I've had six or seven interactions with the police in the last eight years or so, and they were all pleasant. Well, except for one guy who yelled at me to slow down, but that wasn't really an interaction.
Agreed! Please submit a solution!
Possibly the only thing dumber than 'sacred' geometry. At least he should be able to shuck a few thousand from the new age crowd to sign up for a course based on this book.
The bullets link to non-solutions, which are not enough to formally prove that it is impossible to solve this challenge in the language.
Elixir supports that syntax. It's a functional language that runs on the Erlang VM. I found it pretty fun in my experiments, you should check it out: http://elixir-lang.org/
> GMail is fast. All the time. No matter how much mail you have. That's because it runs from a local database and all server interaction is abstracted behind sync and local accesses to data.

I don't know about Android, but on iOS, the Gmail app is much slower to launch and navigate than the stock mail app. I think that, on launch, the Gmail app makes some requests before showing you any of even your locally cached data, which always struck me as poor design.
Easy in Lua. You can even write G()'al'
Agreed. These are informal. If you want to make a formal proof that it's impossible, I'll make a new category.
That only applies to a point. I've been high enough that I had trouble walking (fun with poorly calibrated edibles...); driving would have been impossible. Luckily 'couch-lock' tends to limit how much mischief people get up to while heroically high.
Great! Can you submit a pull request?
> The trunk can be opened without a key from the drivers seat of most every car, no?

Depends on the model. New cars usually have this, but e.g. older cars like Mazda 626 or VW Bus, up to the new T5 line, do not.

In some cars, it's configurable at order time if you want this feature.
This is the full report: http://www.osti.gov/scitech/biblio/10117359

I read it some years ago, too. It's an intriguing task, as the comments in this thread show.

The considered the whole "people will think it is treasure" thing. From memory the solution was to make it an open but unpleasant place to try to avoid people thinking there was something hidden.

One idea that stuck in my mind was black concrete pillars on a black concrete surface, in a hot environment to make it extremely hot and oppressive for anyone to enter.
So you never actually had any experience with cops.

I don't see how that invalidates what I said.
Yup I came in to say the same thing. I think this is terrible advice. If your goal is to come back to the US then going back to India for a startup is a terrible idea. If you don't care if you never return back to the US, then it's fine but if you do want to return, you have no idea what the immigration laws will be or how hard it is to return.
Rule 7 says:

g('al') must return "gal".

If you add

assert g('al') == 'gal'

as the last line of solution 1, the assertion will not pass. I'm not saying there is a rule that mentions "resetting state". I'm saying that their failure to reset state is the bug leading to them not following the rules.
Ruby and Java both lack first class functions--functions can't return values that can be directly called with () (unless this has changed with Java 8?).
I made this Go one that might be cheating because instead of the ("al") call returning a string, you get a value that implements the String method. Works with fmt.Println :)

http://play.golang.org/p/zrp2sO6ZLU
Nah, you can use a source filter. "man perlfilter"
The theory in the article is that Apple is intentionally making the older devices slower.

The theory you are responding to is that Apple is intentionally adding new features to iOS, which incidentally makes older devices slower because they're trying to do more work.

Is it a "conspiracy to make your device slower" when Apple adds new features to later versions of iOS? They're not intentionally adding in "slow down a bit here and encourage the user to upgrade to a new phone" code. So there's no conspiracy.
That's some beautiful animation.

At first I wondered, "Wouldn't the air be all purple normally?" Turns out my memory of the atmosphere levels were wrong.

> By volume, dry air contains 78.09% nitrogen, 20.95% oxygen, 0.93% argon, 0.039% carbon dioxide, and small amounts of other gases.
On my chromebook pixel, there is a super/windows key (labeled as a "search" key) where the capslock normally is on a US keyboard. Since I use super as the prefix key for all of my window manager shortcuts, I use xcape (https://github.com/alols/xcape) to allow that key to function both as super (if I hold it down) and as escape (if I tap it).

These sort of systems are a great way to remap keys; I wish such remapping was exposed by operating systems in a nice stock way.
Phone unlocking bill passes House, on its way to POTUS desk
Thanks for pointing this out, it's now fixed.

https://github.com/eatnumber1/goal/pull/18
or something even remotely related to ... who knows... data storage?
Here's one: the Giants Series by James P. Hogan; starts with Inherit the Stars.
I know people who made keys from photos in high school (I attended boarding school, there was a lot of free time). It is not hard to do, even without KeyMe.
For the curious:

http://www.google.com/trends/explore#q=iphone%20slow
This is awesome! Can you add a main method with an example of it working and submit a pull request?
how exactly does this require indexing?
This is close to identical to what I did, but the use of a global just felt too dirty. Still trying to figure out the use of a closure on it.
The hypothesis is that google is, on the whole, parasitic to news organizations. I think, unlike the hysteria on HN, that it is far from obvious this is wrong. We'll hopefully get to see the results of the experiment.
yeah google employer, go check in your code repository history

1. how long my mentioned comment on you tube (for example) is tied to gplus

2. when that checkbox was added.

you will surely see its at least a six month difference or more. now some doesnt even have that option yet... but hopefully you will get the point with just example
Disclaimer: Sort-of-spanish here (Catalan).

These newspapers sales on-paper are dropping alarmingly. They're looking at this as a way to monetize their online versions.

What has already happened: A major spanish social link aggregator (a-la-digg) is boicotting these newspapers.

What will happen: Google will remove them from the index. They'll lose exposure, and therefore make even less.
That's also how the GMail website still acts, which confuses me as well. Why can Facebook load a complex web app instantly while GMail still shows a loading bar on launch?
Love the name. (For those that don't get the joke, basil is an extremely persistent, almost weedlike plant.) That said, I think an async solution would be better, like localforage.
Yes, I found the lack of names frustrating too.

Perhaps we could crowd-source the names?

My identifications are:

21-4 Saint-Paul-de-Vence, France

21-5 Gold Coast, Australia

21-14 New York City, USA

21-18 Kyoto(?), Japan

18-7 Dublin, Ireland

18-8 Quebec City, Canada

9-69 ?, Australia

13-26 Montpellier, France (?)
2014 Big Mac Index (interactive chart from The Economist)
Looks like the experiment has a good chance of being run soon. If News and Search drop these sites, we'll see whether the 'parasite' has been good or bad for the host.
So you think your cherry picked examples prove your point?

The military is made up of PEOPLE. Those people place themselves at great risk for little pay in horrible circumstances. They do a job that very few people are willing to do and your only opinion is a holier than thou diatribe against the US military IN PARTICULAR.

Why not use examples of the atrocities committed by other governments, terrorist orgs, even whole nations? There is a lot of evil in the world, my friend. You'd do well to avoid painting the hundreds of thousands of people in the services with the same brush you use for those who violate every principle we stand for as a nation.
It bothers me that the term "Big-Data" is thrown around casually for basically using Google Trends canned.

The hokey conspiracy theories are needless when there are multiple sites that specifically benchmark the iPhone when new releases of iOS come out - 10 seconds with Google [1].

[1] http://arstechnica.com/apple/2014/03/ios-7-1-on-the-iphone-4...

So the author ( & professor! no less) should have gone with his first instinct that Apple is the largest company in the world and would be foolish to deliberately wreck an older product...this is an embarrassment of an article needlessly tagged with "Big-Data" and expounding a bunch of non-sensical conspiracy theories.
This is a really cool way of tackling circuit design! Being able to compare the significant changes between similar designs is something I used to wish I was able to do with ease.
It naturally follows from the compression-as-intelligence school of thought that building general-purpose compression/intelligence is hard.

I very much believe in domain-specific intelligence, and correspondingly domain-specific compression. Here's a practical business use case for lossless compression (in-memory analytics), which I have been developing:

http://tuulos.github.io/pydata-2014/

In contrast to general-purpose encoders, this approach is extremely data-intensive, compressing terabytes per chunk.
Nick,

That helps but doesn't completely solve the state problem. Try adding these two lines to the end of the program:

g()()()()()
print g('al')

I think 'gal' should be printed here. Rule 7 says that's what your function should return given 'al', and the fact that we've called it in some other way before doesn't change the fact that it is required to return 'gal' given 'al'.

The solution I posted above handles this scenario (and, as a bonus, is thus threadsafe in case multiple people were doing g()()()('al') simultaneously).
Using race as a proxy for class is a great way to generate oppression along some margin (i.e., for some poor bastard(s) unlucky enough to be both poor and not a member of a protected racial/ethnic group). If you want to talk about class and poverty, talk about class and poverty. There's enough misery in the world.
Q: Why not just bury it deep enough so that no one can dig it up?

A tl:dr; Earthquakes and rain.

A: If you bury drums of radioactive material you want to make sure that they stay sealed. However, on a 10,000 year time span, you cannot assume much. A very strong drum right now could be very weak in 5,000 years. Or, with one strong earthquake 2,000 years from now, it could crush the drums you've buried deep in the desert. As rainfall seems from the surface and into the water table, it will pull the radioactive material with it, then making the water supply unsafe.

Yucca Mountain was a popular site for a long time because it's a deep salt mine. Salt mines are interesting because it means that it's been impossible for water to flow thru them for millennia, which is the time scale you're concerned about here. From an engineering stand point, Yucca Mountain was just about the perfect solution, but it got killed politically because being 100 miles away from Las Vegas was "too close" for elected officials to stomach.

http://en.wikipedia.org/wiki/Yucca_Mountain_nuclear_waste_re...

Although the design questions are fascinating, the bigger issue that we need somewhere to store all of the nuclear waste. It's actually sitting in a variety of temporary facilities right now that aren't as safe as WIPP or Yucca mountain simply because it's very hard to get politicians to agree whose backyard gets to be the forever home for our spent fuel rods.

Source: My father has spent the last 20 years of his career with the Department of Transportation and Department of Energy working with transportation of hazardous and nuclear waste and took trips out to Yucca Mountain and WIPP.
Definitely submit a pull-request if you figure out how to do it :)
This reminded me of interesting work Cornell has done in evolving circuits that have no single points of failure [1].

One thing to notice is the emphasis on comparing the GA performance to other search methods (like hill climbing). It would be nice to see that more in blog posts like this.

[1]: http://creativemachines.cornell.edu/sites/default/files/GPEM...
I'll add that freedom, or free-feeling, is more complex than it might seem at first. I grew up in the middle of nowhere, miles outside of a small town, so I've been the 16 year old you describe. I get that.

Other people have taken the opposite point, talking about the freedom of not having to own a car to go about their daily lives. I've lived in a number of megacities with fantastic transit, so I get that, too.

But common to both things is the assumption that there are things you want to get to in the first place. Where are those things? How much effort does it take to get to them? What's the opportunity cost, or additional utility, in making the journey? What circumstances causes those things to exist in the first place?

One of the major lessons of my adolescence was that the ability to translocate from nothing to a much further away nothing is a dubious sort of freedom.
One thing to watch out with these sorts of approaches is you are actually improving on an exhaustive search of all possibilities (perhaps with some smart pruning).
Thanks for your comment.

First note that as stated in the About page, this was a personal project. As such I designed it the way I thought was best for my own use, having a free take on what my ideal UX (including shortcuts) and styling would be.

Marking a todo as done is a two-motion action: hover over the todo, then click the checkmark (assuming you see the checkmark).

Unless you can move your cursor telepathically I think hovering is a part of the clicking motion. The mark will appear if you hover it from the left, no need to hover the text. Besides all of those actions can and are mostly done with the keyboard.

The transition to the done section could be smoother as well. I didn't actually notice what I'd clicked for a moment - took a bit of analysis to figure out that I had marked one as complete.

I do agree that the done transition could be improved.

I can make blank todos. Maybe someone, somewhere, would like to make blank todos - for the other 99.99% of your users, this is a bug. ... Pressing the left arrow at the beginning of a todo takes me to the previous todo (bug?).

That's intentional. One of my guiding principles when making it was that it should work just as it were a plain text file.

Also, I can't move between the done and not done sections with the arrow keys.

That one would be a bug indeed.

The text is difficult to read (which seems important to a text-based todo list).

On the machines I use it the text is readable and looks better that way, but I agree that the light weight could not be the best for all setups.

The entire interface is almost invisible.

Apart from the previous point, another guiding principle was that the main focus of the app is the content –the to-dos–. That's why the UI is lighter, and most of it disappears when you don't need it, to let you focus on the content.
Where's the shot of people exhaling purple stuff?
Previous: https://news.ycombinator.com/item?id=4214476
Ugh, so many solutions that mutate internal state. I went for a more purely functional approach and kept track of the count with a function parameter (JavaScript):

https://github.com/kylecronin/goal/commit/70c9277ec99f80dca2...
Because you don't notice the effects of radiation until it is way way way too late
smaller streets with more people living on them means less snow to move and more people to move it. Also, when you're walking everywhere, snow is FUN rather than an obstacle.

Huge 2-lane roads with 2 foot of snow on them = no school.
Narrow walking streets with 2 foot of snow on them = no problem.
If you have an android phone you may want to check out your location history: https://maps.google.com/locationhistory/b/0

Certainly far better than 100 meters in my case.
The Dead Sea Effect is all about non-circular flows.