skysight-inc/HackerNews huggingface dataset:
You are doing yourself a great service by learning Scheme - that can fundamentally change how you think about programming. Reading the first chapter of SICP[0] will change you forever. Yet right now you're using Scheme as a Python/C/Ruby with a strange syntax, while it's a totally different language with its own idioms. You should learn them to master Scheme.

As for your particular questions:

1. map yields an error under mzscheme

I'm at work, and didn't have access to a proper scheme, so I used an online REPL[1], which apparently is more forgiving. Regardless, you can write your own map (a good exercise!) that stops as soon as one of the arguments is exhausted. Make it tail-recursive[2] as well!

2. list-ref is bad

Lists are beautiful data structures designed for recursive algorithms. If you are using lists and not using recursion (or a hidden recursion in the form of map), you're doing something wrong. list-ref uses list as a vector, which has a performance implications - your algorithm is O(n^3) while mine is O(n^2).

3. set! is bad

Margins are too small for a proper explanation :), but basically set! has side-effects[3], and functional programming should avoid having them.

Have fun learning Scheme!

[0] http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-9.html#...
[1] http://www.bluishcoder.co.nz/jsscheme/
[2] http://en.wikipedia.org/wiki/Tail_call
[3] http://en.wikipedia.org/wiki/Side_effect_(computer_science)
Since you said, "Correct me if I should be wrong"... the burden of proof is on the person who uploaded the content to prove they have the right. The only burden on the UGC company is to take down content that is in dispute.

But to also correct you on your implied sob story for UGC companies...

Some person you don't know comes to you and says, "I wrote this e-book, or I wrote and recorded this song, or I made this movie," and they upload it to your site. You take them at face value without any due diligence, even though in some cases the file is called "Stairway to Heaven by Led Zeppelin". Laws require you to have a license to play copyrighted works, but thanks to the DMCA they now say you can proceed as if you have that license, even if the person who gave it to you is not who they say they are. Thanks to this clusterfuck, you are protected as long as you take it down upon complaint. You must do no work to research whether you're dealing with the true copyright owner, no "due process", if you will.

Now, someone comes along and says, "Hey, that content is mine. Please take it down."

And you're upset that you have to take down this content and make the person who uploaded it verify ownership. You're upset about the work involved, even though your entire business is built on the backs of not verifying claims, and the entire creative world is left to police your site and every one like it. After you've had the content up on your site and, in many cases, profited from it being there, you're upset that now your user has to do some work when someone complains.

Let's take the number of real copyright abuses and hold it up to the highly dramatized number of false claims and see who deals with the larger clusterfuck.
I would dare say unless you're rational, not necessarily an economist. Most of us are not rational all the time, and the whole point of the question is to show an instance where we are not.

You would be correct if there were not other tickets available; in that case, the ticket truly is unique. But in the example given you could acquire another one. In that case the ticket is not unique and is equivalent to the cost of acquiring another one, which is $10.
> I also notice that lots of early church hymns and political songs were merely new sets of lyrics put on the same melody over and over again.

That's because those songs were meant to be singable by everyone, most of whom had no formal musical training. Tunes were reused because people could start singing the new lyrics right away if they were already familiar with the melody.
I have to second this advice, even though I'm halfway through it.

Kahneman has spent decades investigating biases and cognitive error. And it turns out he's not all that bad at popularising his and related research.

Of particular fascination (and frustration!) are the little examples he liberally sprinkles throughout the book. Small quizzes, questions and the like for the reader to try. Try as I might, I have consistently "failed" these in the way Kahneman goes on to explain.

He even explains why he does that: because it's hard to particularise from the general. It's easy to generalise from the particular.

I've found that many dimly held intuitions I've developed over the years about "how the world works" are starkly illustrated in the book. And many things I believed were not borne out be research.

Bottom line: it's a great book and very illuminating. Read it.
PBS: Probabilistically Bounded Staleness
If most people answered all or most of the questions correctly, it would be disproving Kahneman and Tverksy's theory of how people think.

The title assumes they would hate to be proven wrong, but makes sense.
Couldn't fit this in the title, but I would love comments on the UI/UX and code. We're building something totally different out of this (a local recommendation engine for finding what to buy and where to go when you want to drink and when you're out drinking) but the current principles that apply to our most recent version will permeate the rest of what we build. That's really why I'm so eager for feedback from HN.
Mike that is not my position and I apologize if I am not conveying that properly. My position is that white-boarding in front of people you just met for some people will not convey that they can do it. Because they can become distracted by perceiving that they are a spectacle and their every move is under a microscope. Many developers have been in such a situation and walk away from the situation permanently affected by it. It only take one bad interviewer to criticize your every move to make a developer analyze their every move in future interviews. But that does not mean in their natural and comfortable environment they would have such an issue. It is why I prefer to look at code they produced in that natural and comfortable environment.
> Do you feel the moderation over there is enough though, even on the "nicely moderated places" that you mention?

There's a huge range in how hands-on moderators are, and it varies dramatically by subreddit. Some subreddits are notoriously draconian; others permit pretty much anything. I don't think it's possible to make a statement about moderation on reddit overall, across subreddits.
CRAPL - Open source license for academic software
I was referring to environmental cost, not monetary cost.
Luby had a startup named Digital Fountain in SF in the late 90's where they attempted to productize this, primarily for video streaming.

Looks like they were acquired by Qualcomm a few years back:
http://www.qualcomm.com/solutions/broadcast-streaming/media-...
Using process descriptors instead of PIDs in FreeBSD's Capsicum
It's still possible. What I mean, is don't expect to be able to get away with something as skimpy as you would in a totally new market.
If you go through the algorithms book the recruiter suggests and look up on glassdoor for interview questions, there's a very fair chance that you already know the answer to the question that's being asked!

Most of the supposed brilliant Algorithm and Math brains are basically people who crawl internet forums for puzzle questions by spending around 30 minutes everyday.

They don't know a jack about algorithms or math. Its just they know enough to game the interview.
Twitter will tell you when a user blocks you
There are several languages with type inference, although most can't infer types in all cases: Haskell, ML variants (SML, CaML, etc.), and Scala are the most thorough.

There are some common language features that make type inference tough, most notably mutable data. It's difficult to infer the element type of an array unless you know where it's been, which can be difficult or impossible to know in situations involving separate compilation. Some ML variants can infer all types for programs that avoid using mutable data.
Well I also didn't like that question but for a different reason.

"As you enter the theater, you discover that you have lost the ticket. The theater keeps no record of ticket purchasers, so the ticket cannot be recovered."

Considering how clever they were being in the first couple questions, I assumed it was a trick. People typically give their tickets to the person at the booth outside the theater. Considering I am in the theater already I haven't lost my ticket, but simple given to the men as I walked inside. I'm just forgetful I did so.

Over thinking it I guess...
Is the protocol actually as real-time as XMPP is?
GAE is a mistake. By that I mean that it's got a big design flaw that's bound to cost Google money, which means it'll always be expensive than alternatives. Consider shared PHP hosting: a request comes in, apache finds which PHP file is responsible for it, then directs the request to the PHP interpreter. The PHP interpreter will parse the file (or more likely load the parsed bytecode from a cache) and return a response, which apache will then forward to the user agent. Notice that aside from the cache the PHP interpreter is stateless. As soon as it is done serving a request from site foo.com it can immediately jump on a request from bar.com and the context switch doesn't cost anything (once again disregarding finite cache size issues).

Contrast this with running a stand-alone application server for each site, which is what GAE does. Here, even if your code is not serving any requests it's still waiting to get them. Now, GAE has powerful magic in it to retire request handlers which aren't frequently used. This way if site foo.com is getting 1 request/minute, it only really needs one process/thread/hander abstraction at a time. However, it is expensive to start/stop these "processes", so instead GAE is forced to keep this "process" around for a while after a request has been served hoping that the cost of keeping it alive would be justified by a second request. Thus these stateful, slow-to-start processes are always taking up resources that could be used to serve other requests.

Disclaimer: all my knowledge of GAE has been from reading their docs/blog, not from deploying projects to it.

Disclaimer 2: I am not saying that PHP is better/worse than GAE in any way. However, I am saying that the model that GAE uses is more costly for a typical application. This can be easily seen by comparing the cost of running a basic site on GAE vs $2/month shared hosting.
To borrow or not to borrow: Thoughts on US government debt
I'm going to go out on a limb here and say this doesn't sound like a competitive threat to the RIAA.
First 'mixed embryo' monkeys born
Are there really programmers that get pangs of fear at the bought of middle school algebra?
Ca Student Bil of Rights Act - Friend or Foe of Public Education?
Thanks for the data. And I won't be leaving the financial firm I work for to go to WalMart any time soon from the sound of it :-)
Actually, it's even worse than that. If this theater has customer service this lousy, I'm not sure I want to give them my business anyway...
What I would find really fascinating is if someone could explain to me why programmers have the urge to solve a programming interview problem whenever one is posted.

Not that anyone will ever read this... I thought I'd managed to escape this time, but then I thought it might be some good practice, so I timed myself...

nitrogen@n2:~ $ time bash
nitrogen@n2:~ $ vim /tmp/pascal.c
nitrogen@n2:~ $ cd /tmp
nitrogen@n2:/tmp $ gcc -std=c99 -Wall -Wextra pascal.c -o pascal
pascal.c: In function ‘main’:
pascal.c:15:21: error: expected ‘;’ before ‘)’ token
pascal.c:15:21: error: expected statement before ‘)’ token
pascal.c:16:2: error: too few arguments to function ‘calloc’
nitrogen@n2:/tmp $ vim pascal.c
nitrogen@n2:/tmp $ vim pascal.c
nitrogen@n2:/tmp $ ./pas^C
nitrogen@n2:/tmp $ gcc -std=c99 -Wall -Wextra pascal.c -o pascal
nitrogen@n2:/tmp $ ./pascal 1
1
nitrogen@n2:/tmp $ ./pascal 2
1 1
nitrogen@n2:/tmp $ ./pascal 3
1 2 1
nitrogen@n2:/tmp $ ./pascal 4
1 3 3 1
nitrogen@n2:/tmp $ ./pascal 5
1 4 6 4 1
nitrogen@n2:/tmp $ ./pascal 6
1 5 10 10 5 1
nitrogen@n2:/tmp $ ./pascal 7
1 6 15 20 15 6 1
nitrogen@n2:/tmp $ exit
exit

real	4m5.621s
user	0m0.928s
sys	0m0.136s

The initial syntax errors were including an extra parenthesis after atoi() and passing a total size to calloc() instead of an element count and element size. My solution is vulnerable to integer overflow and doesn't handle a negative row parameter. Simplifying assumptions: the first row and column will always be 1, so I don't recalculate it. Everything else just gets shifted in at the right. The code:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int row;
int *data;
int i, j;

if(argc != 2) {
printf("Usage: %s <row>\n", argv[0]);
return -1;
}

row = atoi(argv[1]);
data = calloc(row, sizeof(int));

data[0] = 1;

for(i = 1; i < row; i++) {
for(j = i; j > 0; j--) {
data[j] = data[j] + data[j - 1];
}
}

for(i = 0; i < row; i++) {
printf("%d ", data[i]);
}
printf("\n");

return 0;
}
I recently passed (with high distinctions) three postgraduate course exams towards my masters degree (at a top-10 university). Ho hum, don't be impressed; that is not unusual. My strategy, though, is not textbook; I spend more time studying the conceits of the lecturer, than I did the lecture material itself.

With this in mind:

The point we're supposed to accept is that when asked to evaluate the data sets presented, one heuristically makes assumptions based on social norms and crystallised intelligence. I'm pretty sure that this hypothesis was made in the article preceding the quiz, so no excuses for not realising the point of, well, any of the questions.

For the theatre question, I too started with your interpretation. However, it didn't make sense in the context of illustrating the author's hypothesis, so it couldn't have been the "right" answer.

Protip: when considering someone's line of argument in anything but a hard engineering discipline, I usually play the man before the ball - it's much more revealing.
I think it's a little unfair to lump Cloudant in with MongoHQ and label them a "datastore as a service" company. You should check out what they've done with BigCouch and their annoucement today about how they will be committing the BigCouch changes back into CouchDB proper.
Kahneman's work is great, and deserves to have attention directed to it, but this Vanity Fair article is pretty bad. Why does the title say that Kahneman wants people to fail the quiz? That's wrong, and since it's attention-grabbing in a way that the truth isn't, I'd say it's dishonest. And the rest of it is riddled with errors and confusions.

So go read Daniel Kahneman's books, and don't read Vanity Fair.
#2, can you not share with the circle and with [Public]?
Arg. I thought algorithms weren't supposed to be patentable. I know there are workarounds (like referring to the "algorithm" as a "system"). But it's frustrating nonetheless.

For the curious, Knuth wrote an interesting letter on the topic back in 1994: http://www.pluto.it/files/meeting1999/atti/no-patents/brevet...
Jay’s Nyali Homestay  Accommodated People Kenya
Homestay is an option for tourists and students on study abroad programs to rent a room from a local family in the country they visit. The idea is to help them learn about the local culture, lifestyle and even pick up a word or two of the local language during the stay.
Private Hire in Sussex Hampshire Surrey
Private hire/ chauffeur/ taxi service by executive car covering Sussex, Hampshire and Surrey to airports, docks and ferries. Executive car transfer by private hire, chauffeur or taxi from business locations in Sussex, Hampshire and Surrey to any destination in UK and Europe. Executive travel by private hire, chauffeur, or taxi for the public in Sussex, Hampshire and Surrey for sightseeing trips, family visits throughout England,Scotland and Europe. Private hire, chauffeur and taxi service from Sussex, Hampshire and Surrey by executive car to theatres, sporting venues and concerts for business and pleasure.
My life with recruiters - How to tarnish your reputation with poor recruitment
Free Commodity Trading Tips
Get daily accurate Commodity Tips, intra-day trading tips, NIFTY Tips, MCX Tips, NCDEX Tips for different commodities in the market which come from our fast SMS Services. Our Technical team always analyzes the market to give you the more profit.
I'm still waiting for better comments, less like facebook and more like Google's own YouTube (or ideally like reddit and HN). The fact that you can +1 something but not have it rise to the top makes no sense at all to me.
Your language and line of questioning leads me to assume that you're perhaps not that familiar with Erlang.

Erlang has facilities for running native code within the VM (NIFs and linked-in drivers) and for interacting with non-Erlang processes in an Erlang like way (ports and c-nodes). Extending the VM via these mechanisms is not the default path but it's also not unusual - much of the standard lib is implemented via these mechanisms after all.

To answer your question, bitcask, ebloom, eleveldb, erlang_js and skerl all have c_src directories which suggests they're likely either all or in part implemented via NIFs or linked-in drivers.

EDIT: You might also find http://vimeo.com/17078993 interesting viewing.
Photos uploaded to Facebook are usually not in high resolution, do the prints turn out well enough?
How do you deal woth the isolation?
I worked remotely for around 3 years and in the end I was begging for an office. Desperate need to see other human beings...
Besides the cost, if your startup can survive without SSL support on your own domain, go for App Engine.

See:

http://code.google.com/p/googleappengine/issues/detail?id=79...

People requested custom SSL support at 2008, and today is 2012, if you still believe in App Engine, good luck!
Just out of curiosity did you learn scheme primarily through books? Do you actually use the language on a daily basis? Maybe you are a lisp hacker?
OK. Top-voted comments from the site:

1. "...making a killing on hypothetical theories... pie in the sky science. I'm sick and tired of these theories... Lying to keep the global warming cash cow rolling..."

2. "When Hawking stands at The Great White Throne Judgement and asks why he (Hawking) is being cast into the Lake of Fire, Jesus will tell him... blah blah blah"

4. "I think that Mr Hawking is going to be in for a big surprise when he is standing before the throne of God..."

Etc. etc. etc.

Comparing tone, content, and relevance, I'd say three to nil HN. Was that your point?
AFAIK there's no way to initiate TLS over a SPDY stream (i guess SPDY could be extended to add TLS handshake control frames, but that's downright crazy) which would mean that the third diagram is misleading. End to end SSL would not be possible with a SPDY proxy. Instead, the client's SSL connection would extend to the SPDY proxy, and the proxy would have it's own SSL (HTTP, HTTPS or SPDY) connection to the remote server. If that's the case, the proxy would have unencrypted access to all traffic.

This is arguably not a problem for clients that explicitly opt in for this sort of proxy setup. But it sounds like this is not the case for the Kindle Fire. Based on this article (i don't have a Kindle Fire to test this theory), i'm guessing the browser has custom CA's for the SPDY proxy so that the SPDY proxy can spoof any domain through the magic of SNI. If all this is true, then it's pretty evil. People who know enough to check for the "secure connection" badge in the browser would be fooled into thinking they have end to end encryption to the website they are viewing. In reality, the proxy, and whoever runs it, silently has complete access to your unecrypted traffic.

There's quite a few assumptions here. And I'm not a SPDY expert so I may be overlooking something. But this doesn't sound like an optimization i'd be comfortable with.
Never, ever use Javascript to figure out the current date.

It should be never use client dates. The developers should have sent a server UTC time code to the client and all JavaScript dates should have used that date as there seed. We actually create an extension of the standard JavaScript date in our projects which is seeded off of a server time so the time since epoc comes from the server. Further, they still should not trust the clients data as submitted and check to see if it is in range.
You also missed the point. What I said had nothing to do with it being easy. I was just clarifying that because of their official status they don't have any exemptions. Im not trashing them for not achieving anything. If I were to trash them I'd trash them for trying to achieve some political goal by founding some bullshit religion. Rights are important all but founding a religion in protest is frivolous. The political party is one thing but a religion? Really?
Kondoot set for the US as it closes $3.2m funding round
Will new app marketplace Apptopia help developers sell their wares?
How Dwolla Tricks You Into Giving Your SSN (Screenshots)
F# doesn't have an in-built iterate function, but found an equivalent on the F# Snippets site -- http://fssnip.net/18.

let rec iterate f value = seq {
yield value
yield! iterate f (f value) }

Using the above we get ...

let pascal = iterate (fun xs -> List.map2 (+) (0::xs) (xs @ [0])) [1]
That is a very clever solution that appears to rely on some mathematical property of Pascal's triangle that is not at all obvious from its definition. You've basically derived a formula for deriving binomial(n, k) given binomial(n, k-1).
Curled Up User Experience
The questions involving "90% chance of $1000 or 100% chance of $900" always bother me. I never understand why economists think that a rational actor would consider them equivalent; they're not, unless you are making that choice many many times.

But if I'm given that chance once (which is presumably what most participants assume, since that's not a choice that comes up often in one's life), it's really then a choice between "90% of a ton of free money or 100% chance of a ton of free money". Unless the dollar amounts are radically different, who in their right mind would take the choice that could possibly leave them without a life-changing sum the next day?
I think it's ironic that it's called the "envy". :)
I think you are wrong on the home page change. Word clouds would be crap as the main focus of any page.
Oh So we have started up
Thailand Living
På Thailand Living bokar du hotell till mycket bra priser i Bangkok, Phuket, Koh Samui, Hua Hin, Koh Lanta, Chiang Mai, Koh Chang och Krabi.
So they basically took that feature out of Windows Home Server which pissed a bunch of people off and put it in 8. I'm guessing it will make a comeback to home server?
Some ideas:

Change the pricing model, with say a lower retainer and a higher cost of change.
When the client knows it's going to cost them $$ to change that border they would think thoroughly whether this is a value worth pursuing.

Offer a re-visit to the app after few months if usage where you can address all if the requests together, and maybe outsource it (as it's not core to you).
Ways to earn extra income from home
Millions of people are currently enjoying playing games over the Internet. We are offering many types of cashgames, win money playing games and get paid to play games. There are many ways to earn extra income on the Internet. For more details on extra income ideas please visit us.