Hacker Newsnew | past | comments | ask | show | jobs | submit | 2009-05-11login
Stories from May 11, 2009
Go back a day, month, or year. Go forward a day, month, or year.
1.Smart people can rationalize anything (thefarmers.org)
79 points by vaksel on May 11, 2009 | 27 comments
2.The 75% answer (lbrandy.com)
75 points by old-gregg on May 11, 2009 | 41 comments
3.An approach to fair ad blocking (adblockplus.org)
68 points by haasted on May 11, 2009 | 79 comments
4.C++ Frequently Questioned Answers (yosefk.com)
60 points by kmavm on May 11, 2009 | 73 comments
5.NYTimes.com Announces Map/Reduce Toolkit (nytimes.com)
58 points by bdotdub on May 11, 2009 | 12 comments
6.Y Combinator’s ReMail Finally Brings Full-Text Email Search To The iPhone (techcrunch.com)
55 points by vaksel on May 11, 2009 | 35 comments

Does anyone here, like me, really appreciate Feynman's just the fact's style of writing?

Most people describe it as eerily cold, but I love it. Articles like the this one on the other hand, while excellent, bury their valuable information under a lot of fluff. And most people like that kind of writing, but I just find it annoying.

Good article, I just wish it was more direct.


You're mischaracterizing their argument. They're saying that people who are poor at resisting impulsive behavior tend to be less successful because they're more likely to get caught up in problems associated with poor impulse control. Credit card and gambling debt, drug addiction, getting in fights, etc.

It's about people who fail since they consistently choose to spend time getting wasted or playing WoW rather than studying, practicing, or other things that pay off in the long-term. This isn't about conformity, because it specifically includes people who have trouble meeting their own goals.


Took a lot of self-control just to read through the damn thing!
10.Why there's nothing special about the business of software (businessofsoftware.org)
48 points by pclark on May 11, 2009 | 22 comments
11.The App Store Is a Classic Example Of A Broken Business Process (thecodist.com)
44 points by vaksel on May 11, 2009 | 10 comments
12.Clojure on the Google App Engine (fatvat.co.uk)
41 points by coglethorpe on May 11, 2009 | 8 comments
13.NYT reader 2.0 (nytimes.com)
39 points by _zhqs on May 11, 2009 | 21 comments
14.An Open Letter to Students Waiting for Their College Admissions Decisions (calnewport.com)
39 points by epall on May 11, 2009 | 9 comments

To add onto the title point... yes, smart people can rationalise and explain anything.

This is why I rarely ever change my mind during a conversation. There's two parts to that.

1) I am usually able to construct a convincing counter-argument to whatever the other person is arguing, and so it is difficult to "win" the argument, so to speak.

2) I am aware of this, and also aware that a smart person I'm talking to will be equally able to construct a convincing argument - irrespective of the merits of what they're arguing.

So, to me, a good heated argument is just a good device to bring out pro and con arguments and clash them "in the field", so to speak. But a heated argument is not the place to come to a conclusion about which side of the argument is more correct. That needs to be done after the argument, in the peace and quiet of your own head, over the following days.

The funny thing is, often, I do change my mind after the argument (even though I was making a strong case for the opposing view during the argument), and it can be quite surprising for people to overhear me, 2 days later, arguing the very opposite of my previous point with equal vehemence.

16.Ubuntu One : Store, Sync & Share (ubuntuone.com)
38 points by samueladam on May 11, 2009 | 13 comments
17.Ask HN: Stark Trek - How far are we?
37 points by kyro on May 11, 2009 | 55 comments
18.Sony CEO: "If we had gone with Open Technology ... we would have beaten Apple" (engadget.com)
38 points by jodrellblank on May 11, 2009 | 37 comments
19.Finding Great Domain Names with Mechanical Turk (domainpigeon.com)
37 points by matt1 on May 11, 2009 | 28 comments

No.

Mice want cheese. If you put a mouse at the start a maze, and cheese at the end of it, a mouse will likely go through a maze to get the cheese. It will likely pay attention to the maze to try to figure out how to get through faster next time. But if the mouse can figure out how to get around the maze, maybe by climbing over a wall, don't be surprised or angry. The mouse doesn't like the maze at all; it's just an obstacle. The mouse just wants the cheese, not the maze.

Advertisements are like the maze. In early days, people were forced to sit through them in between parts of shows on the radio. Print ads had to be looked at so that people could find the articles. Nowadays, people are able to get around these 'mazes'. Morally, people might want to support the content-creators, but if you ask any newspaper executive or journalist, guilt can't get you very far for very long. Technology has enabled the blocking of advertisements, and a few mice have had a taste of the easy-to-reach cheese. These mice will almost certainly not go back to trudging through the maze as they did before.

Many critics offer a better solution: Make the mice want to go through the maze. This is certainly a more difficult solution than making a banner ad with a logo. It requires a fair amount of creativity, time, and effort. But some advertisers are already doing this. Take a look at the Burger King games: http://www.youtube.com/watch?v=mt2do5oV2-8

Burger King has made their brand fun and engaging, making the consumers want to consume the advertisements. In fact, they pay for them! Now isn't that ingenious?

Another example is woot.com. People want to buy stuff, suppliers want to sell stuff. They connect at Woot, and are directly engaged with the product.

This is the way marketing is supposed to work. Plastering noise and garbage on a webpage will drive your users to clean it up. They will find a way around your maze.


Kidnap vacations. The ultimate thrill ride. You pay them some amount of money and they will arrive at your home, blindfold you, put you on a plane, and then take it off once you are in the foreign country. Then you have to work out where you are and how to get back.

I believe the government has been doing this for a while now.

23.Beware Programming Language Requirements On Job Postings (shorestreet.com)
34 points by robin_bb on May 11, 2009 | 26 comments
24.We need both engineers and artists in programming (loudthinking.com)
33 points by joao on May 11, 2009 | 30 comments
25.One malloc to rule them all (reverberate.org)
33 points by parenthesis on May 11, 2009 | 11 comments

"Unfortunately, you can't tell the class of a C++ object given a pointer to it at run time....which is why you can't automatically collect the garbage of C++ programs."

That's a somewhat self-serving use of ellipses. Here's the actual text:

"Unfortunately, you can't tell the class of a C++ object given a pointer to it at run time. So if you debug a crashed C++ program and find a pointer somewhere in its guts, and you don't know its type, you'll have to guess that "0000000600000005" is a Point. Which is completely obvious, because that's the way a pair of adjacent integers looks like in hexadecimal memory listings of a little endian 32 bit machine. And two adjacent integers might be a Point. Or some other two-integer structure. Or a part of a three-integer-and-a-float structure. Or they might be two unrelated numbers which just happen to be adjacent.

Which is why you can't automatically collect the garbage of C++ programs."

Which part are you claiming is wrong? (Be careful.) The entire first paragraph even Bjarne Stroustrup would agree with once he was done hemming and hawing. Post-mortem inference of types of dynamic objects in C++ programs is undecidable. In higher-level OO languages, memory is organized as framed objects, not as a bag of bytes. The main thrust of this questioned answer had nothing to do with GC.

And he's right about this being what makes GC and C++ bad fits for one another, too, though he skipped a few steps. Getting out the sock puppets, without the ability to tell the type of an in-memory object, you can't compact the heap. If you want to move an object, you can't just assume anything in memory with the bit pattern of that object's address is a pointer, because it might be two shorts or a double or whatever that happens to have that bit pattern.

While conservative, non-compacting garbage collectors can be built in theory, they're too slow in practice. Check out the source to Hans Boehm's C/C++ collector; it stops all the threads in the process, and analyzes liveness starting from each thread's CPU registers, each thread's entire stack, and the entire static data segment. By the implementors' own admission, this will not scale to large numbers of threads, or large address spaces. Even if this approach is refined significantly, if your garbage-collected program lives long enough, you need compacting garbage collection, or fragmentation will kill you just as surely as exhaustion would have.

And if you are so convinced that performant, general purpose GC can be dropped into large C++ codebases, you have a straightforward way of both shutting me up, and having a very interesting ycombinator startup. A drop-in operator new overload that does compacting, generational, safe GC would have a readymade market, with very deep pockets, from companies stuck maintaining enormous piles of C++ code with intractable memory management bugs.

27.Did Mark Zuckerberg's Inspiration for Facebook Come Before Harvard? (readwriteweb.com)
30 points by jasonlbaptiste on May 11, 2009 | 21 comments
28.Ask HN: Review my website (hottweeters.com)
29 points by wushupork on May 11, 2009 | 31 comments

The hot-or-not craze at least had the decency to allow you to opt-in for judgment.
30.Would you have survived in the middle ages? (shamusyoung.com)
28 points by soundsop on May 11, 2009 | 34 comments

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: