hacker news with inline top comments    .. more ..    13 Nov 2012 Best
home   ask   best   7 years ago   
Reddit user captures video of 2012 voting machines altering votes thenextweb.com
1032 points by jipumarino  6 days ago   637 comments top 74
tokenadult 6 days ago 7 replies      
The system here in Minnesota works much better. All ballots are paper ballots that are indelibly marked by voters. My wife and I voted this morning in our busy precinct in Minnesota, where there are some tight statewide contests about constitutional amendments and perhaps the most contested race for our state's House of Representatives of any electoral district in our state. As usual, we voted by marking bubble-shaped spaces on a paper ballot with a black pen. That provides an excellent audit trail for the voting. Machines can count such paper ballots very rapidly, and they are user-friendly for voters, and there is little ambiguity about how to vote. Minnesota has had ballots like this for at least a decade.

But even at that, when a state has a razor-thin margin in an election, it can be maddening to figure out what happened.



The election to the United States Senate from Minnesota in 2008 was too close to call before the election, and even after millions of Minnesotans voted for one of three major party candidates, the margin between the top two candidates, Democrat Al Franken and Republican Norm Coleman, was so close that the margin was only one-hundredth of 1 percent of the votes cast in the election. That election really underscored the slogan "every vote counts."

It's quite indefensible to use a voting system that doesn't leave a literal paper trail. The technology is well proven. But what really gives most election results legitimacy and staying power is a wide enough margin among votes cast by people who show up to vote that the old saying "Vox populi, vox Dei" can apply to the result. The people speak, and even the voters who didn't agree with the plurality have to listen. It's appalling that any state would have a voting system that could obscure what the consensus of the voters is.

AFTER EDIT: Thanks for the several replies to this comment. Reading other replies posted to this thread since I first wrote this comment, I see several mentions of the systems in the Pacific Northwest states of having mail ballots mailed to voters. When I lived in Taiwan, more than a decade ago, I had a post office box there. Sometimes I would receive postal mail from the United States for the previous holders of that post office box, including State of Oregon ballots for two different Oregon voters (who were presumably each other's roommates while living in Taiwan). I always wondered, without giving into the temptation, whether I could have successfully filled out one (or both?) of those ballots and mailed them back from Taiwan to cast votes in an Oregon election. By contrast, I was never able to cast a Minnesota absentee ballot from Taiwan, even the time when I should have been regarded as having a stable permanent residence address here in the United States. So I missed out on voting in both the 1984 election and the ever-so-controversial election of 2000. I have no clear awareness of how mail ballots are authenticated as having been mailed by the voter to whom they belong (a signature on the envelope?) and hope that someone is checking to prevent those ballots from being misused.

kevinalexbrown 6 days ago 8 replies      
If there were one aspect of electronic voting I could change it would be the following: allow electronic votes to be reviewed by each individual at a later date, from two independent organizations. Each vote gets sent to two independent electronic counting organizations, and each let you verify your vote after the election, with an (anonymous) confirmation number issued at voting time.

If enough people cry foul to rule out a large group collectively lying or forgetting their confirmation numbers, fraud would be much easier to establish and localize. Moreover, requiring each independent database of votes to match to within some margin would also decrease the likelihood of fraud by requiring collusion between both organizations.

EDIT: Note that the confirmation number would be issued to you anonymously and sans receipt - there would be no way to prove your vote - you could have found some random confirmation number, and no recourse for a single citizen crying foul. The point, rather, is that if several hundred or thousand individuals noticed that their vote seemed to have changed, the likelihood that they were all making it up or forgetting their confirmation numbers would decrease substantially.

JoeCortopassi 6 days ago 11 replies      
I know that this will remain at the bottom of this thread, because it doesn't have enough conspiracy theory in it, but does anyone really think that this is actual vote tampering?

I mean, why on earth would you tamper with a voting machine so that it stuffs the ballot, but have it update the UI so that the user can see and report the error? This should fall to the way side of failing basic logic, but it doesn't because people want a sensationalist article to argue over. Changing votes would be much easier to do on the back end, and would have the additional benefit of never being detected by the user

beatpanda 6 days ago 4 replies      
This is just the tip of the iceberg, folks. If you're in the U.S. I highly reccomend being a poll worker in a contentious district in a swing state if you ever get the chance. I was in a suburb of Denver last election and saw all kinds of shenanigans, from people pulling fire alarms to clear out the polling places to people walking aaround with laptops "checking voter registration" (actually just lying to people to get them to go home).

There was also this, a few weeks ago: http://www.nationalmemo.com/man-connected-to-virginia-gop-ar...

The fact is that there is a concerted, coordinated effort to tamper with the vote every single election. I have no way of knowing whether this specific incident was malicious, but I sure wouldn't be surprised if it was.

btilly 6 days ago 2 replies      
There have been problems like this in every election with these machines.

More troubling, exit polls and voting results have routinely disagreed with each other since 2000. In most countries that would be taken as proof that the election was not fair. But not in the USA!

http://www.ukprogressive.co.uk/breaking-retired-nsa-analyst-... claims evidence of systemic manipulation of the vote, with the trend strongly being in the GOP's favor. I have not personally verified, but it would not surprise me.

Anyone who has been paying attention this election cycle knows about the attempts by both sides to manipulate rules about who can vote, when, in ways that advantage themselves and disadvantage each other. That happens in a lot of elections but not to the extent of this one. With weird results such as, because of a recent law in Ohio, polling workers have to ASK for ID, but due to a court decision, they can't stop you from voting if you DON'T have that ID. (Confused polling workers are sure to get this wrong.)

The general trend is that Republicans want as many barriers to voting in person as possible, while Democrats want as many to be able to vote as possible. That is because more marginal voters are much more likely to be Democrat than the general population. The stated reason is "to prevent fraud" even though there is very little evidence of such fraud in practice. On mail-in ballots this reverses, since the GOP expects a large portion of mail-in ballots to be from military people who are likely to vote Republican. Fraud has been more of an issue with mail-in ballots, but obviously people are not as worried about that.

Laws get broken as well. For instance the 2000 election was decided in Florida, in part due to a voter purge that the courts decided was illegal. See http://en.wikipedia.org/wiki/Florida_Central_Voter_File for verification of that. The lesson learned is that voter purges work, which is why Florida was trying to do a purge this year at the last minute despite being warned that it was illegal. Because flipping the choice for President was easily worth the slap on the wrist they got afterwards.

There already have been laws broken this year (see http://www.cbsnews.com/8301-250_162-57535950/man-charged-aft... and http://www.tampabay.com/news/politics/national/fbi-launches-... for example), and everyone expects the lawyers to be gainfully employed as a result.

In short, get out your popcorn. When we exercise our right to vote, the vested interests exercise what they see as their right to manipulate the vote, and this time there is a decent chance of fireworks.

morsch 6 days ago 14 replies      
The shenanigans you seem to tolerate during elections are just incomprehensible to us foreigners. The number of horror stories I've heard in the last couple of weeks regarding everything from just weirdness of the system to blatant manipulation is farcical.

It's possible that I'm getting a bleaker picture than reality, I suppose, since I only read about the broken stuff and not the instances where everything just works.

llambda 6 days ago 4 replies      
What I've read[1][2] in regard to this incident is that it is most likely a calibration issue: i.e. the touch screen is improperly calibrated and as a result is not selecting the proper region of the screen. Now this is concerning because it likely means other machines could be or are miscalibrated. However the important takeaway here is that this is not some malicious attempt to rig the vote. If that were the case the likely method would be completely invisible from the UI; why would an attacker bother to actually show a user they were being manipulated? Of course, they wouldn't.

[1] Joseph Hall comments here, also provides a link to further commentary by him: http://gawker.com/5958114/an-expert-weighs-in-on-that-viral-...

[2] http://www.theawl.com/2012/11/the-truth-about-voting-machine...

cloudwalking 6 days ago 2 replies      
I am a red-blooded technologist, but I think voting should be done on paper ballots. Call me a luddite, but it's just too easy to manipulate votes--either at the time of voting or in post-processing--with an electronic voting machine.

That being said, the only conceivable way to have a secure electronic voting process is to use a completely open source system. Open source hardware and software, with publicly viewable results.

salman89 6 days ago 5 replies      
Voting machines need to be a lot better than this or not exist at all, but does anyone actually think that IF this machine was altering votes, it would alter it in this fashion with a UI element tied to the alteration? Seems more like a crappy touch screen.
hcarvalhoalves 6 days ago 0 replies      
I wouldn't attribute to malice what can be explained by a faulty touch screen. These incidents hurt the trust on the election process, though.

The machines used on Brazillian elections are simpler but much better thought out, since it's impossible to input the wrong candidate. You have to input the number of the candidate, review his information and photo, then press "confirm" button. It doesn't present a list of candidates to choose from, so there are no biases. The US should adopt a similar machine. [1]

[1] http://en.wikipedia.org/wiki/Elections_in_Brazil#The_Brazili...

ricardobeat 6 days ago 0 replies      
I can't fathom why would you even choose touchscreens for voting machines. It's a simple interface, mechanical buttons are much better. They are more durable, offer tactile feedback and can be used by people with visual impairment.
ditoa 6 days ago 3 replies      
Looks like a calibration issue. They should have included selecting other candidates in the list. While not good enough (voting machines should be "perfect") calling it "altering votes" is a little much. It shows you that it has registered the wrong candidate, I would call this incorrectly registering input.
cwe 6 days ago 1 reply      
NBC News confirming they've removed this particular machine because of this:


stevenwei 5 days ago 0 replies      
In my opinion, this is very obviously a touchscreen calibration issue, probably caused by the use of a crappy (read: cheap) touchscreen in the voting machine.

A lot of people are dismissing the calibration issue because of the "calibration test" the user described performing:

"Being a software developer, I immediately went into troubleshoot mode. I first thought the calibration was off and tried selecting Jill Stein to actually highlight Obama. Nope. Jill Stein was selected just fine. Next I deselected her and started at the top of Romney's name and started tapping very closely together to find the 'active areas'. From the top of Romney's button down to the bottom of the black checkbox beside Obama's name was all active for Romney. From the bottom of that same checkbox to the bottom of the Obama button (basically a small white sliver) is what let me choose Obama. Stein's button was fine. All other buttons worked fine."

However, this test does does not actually demonstrate anything. With resistive and infrared touchscreens, which are commonly used in kiosks, it is entirely possible to have some subsections of the screen work incorrectly, while the rest works correctly. Therefore the fact that some buttons work fine does not prove that the touchscreen is, in fact, correctly calibrated.

I've done a lot of work with kiosk touchscreens, and the first culprit I thought of when seeing that video was that the touchscreen was miscalibrated. The second culprit I thought of was that the touchscreen itself was faulty.

Resistive and infrared touchscreens are very prone to these types of problems, and I've seen many scenarios similar to this across hundreds of different touchscreens. (Often, just one corner of the screen will go out of wack, while the rest of it works perfectly. I've seen this happen many times.)

The only way to know if the screen was actually correctly calibrated is to re-calibrate the screen and see if the issue persists, and if it does, to replace the touchscreen itself (as it could be faulty, not uncommon among cheap touchscreens either). Neither of these steps was performed by the user, therefore he has no way of concluding that the screen was correctly calibrated. I suspect that once these tests are performed, it will be obvious that the touchscreen is to blame.

There's a lot of outrage here at the idea of the voting machine altering votes, but I think the following quote applies: never attribute to malice that which can be explained by incompetence.

The real outrage should be that these voting machines were deployed with such crappy touchscreens built into them (probably to cut costs for the manufacturer).

WrkInProgress 6 days ago 0 replies      
I wish they had also taken video of them selecting Jill Stein to see if the entire machine was calibrated incorrectly or just the Romney/Obama section.
anonymouz 6 days ago 1 reply      
Even if this is just accidental or some weird calibration issue (weird, because it only seems to affect one button according to the report), it just goes to show how little confidence one can have in these machines. Does anyone think if they can't get the touchscreen right, the remaining parts of the system can be expected to work correctly?

The only positive thing is that such an easy to demonstrate failure might open the eyes of the less technically educated parts of the public to how bad an idea it is to use electronic voting machines.

Any suggested replacement of paper ballots comes with such a huge bag of problems (sometimes inherent in the method, and not merely problems of the implementation), and so few advantages that it puzzles me why anyone would want to introduce them.

maurits 6 days ago 1 reply      
Can someone explain me like a five year old (european) how it is that...

You put a man on the moon, flew the space shuttle, have a rover sending holiday pics from mars, not to mention, your entire computer industrie....

But you can not make or agree a voting machine that actually works beyond reasonable doubt?!

ww520 6 days ago 0 replies      
I think a system of repeatability for voting is important. Once a voter has casted a vote, his vote should be able to be repeated without change in different systems at will to verify that his vote has not been tampered.

The system can work like this:

- Voter is assigned a unique ID, on his voting card issued upon verifying his identity. He can pick a security pin for added security.

- Voter is given a device thumb drive, RFID with some RAM, whatever storage device.

- Voter goes to a machine to vote. The machine cryptographically signs the voting result with his id. The machine writes the result to his storage device, emails him a copy, and/or puts the result on a public website. The machine also sends the result to a central server for compilation.

- Voter can go to any other machine on any other sites, plug in his result, his id, and his pin to see the voting result for verification. Voter can confirm by sending the result to central server. Or submit the signed result to third party website to display it for verification.

- If there's any mismatch, voter raises hell and demands to invalidate old vote (after verifying his identity, id, and pin), revote, and burn the tampering machine.

Edit: Id obviously means a public/private key pair.

forgingahead 6 days ago 2 replies      
This happened earlier as well during the early voting period (though Romney votes were being switched for Obama -- funny how one got coverage whilst the other didn't).

It's not some conspiracy, just a calibration error.

Source: http://www.breitbart.com/Big-Government/2012/11/03/Electroni...

wbrendel 6 days ago 3 replies      
What's wrong with paper ballots again? Serious question.

In my area (northern MA), voters are given a ballot with a bubble next to each of the candidates' names. You use a marker to fill in the bubble next to the candidate you want to vote for, like 6-year-olds manage to do all the time on multiple choice tests in school. Then it gets read in by a machine, leaving a paper trail just in case.

How are these electronic voting machines any better than that? With all the technical/fraud issues surrounding them, wouldn't it make sense to just use paper?

Fargren 6 days ago 0 replies      
Who manufactures these machines? I'm curious whether or not they may be vulnerable to Van Eck Phreaking[1]. Brazil discovered taht the machines they were going to use were vulnerable to it.


BlackNapoleon 6 days ago 0 replies      
I saw this earlier and I noted that news agencies seemed to be reluctant to post it. CNN has been on this from the jump. I think people are afraid of it being revealed as a fake. There is some serious validation that needs to occur if this is the case.
ceejayoz 6 days ago 5 replies      
Everyone's been spoiled by iPads etc., I guess. Old touch screens used to do this all the time. My Palm Pilot had a calibration app I'd have to run every few days/weeks.

If he'd hit Mitt Romney, it probably wouldn't have selected Romney but the blank region above his name.

damncabbage 6 days ago 0 replies      
Potential voter purging in Pennsylvania: http://www.motherjones.com/mojo/2012/11/watchdog-evidence-un...

Oregon worker altering ballots in the GOP's favor: http://www.rawstory.com/rs/2012/11/06/oregon-election-worker...

At least one worker taking votes and putting them under the voting box: https://twitter.com/danicamckellar/status/265907196372594688 https://twitter.com/danicamckellar/status/26590774867435110

... What the hell is going on over there?

nsxwolf 6 days ago 0 replies      
This seems like a fairly poor way to implement voter fraud. The screen gives instant feedback. No Obama voter is going to say "Oh well, I guess I'll just cast my vote for Romney then."

If you were reprogramming the machine, wouldn't you be better off changing it to show Obama had been selected on the screen, but then print Romney onto the paper ballot? There's a better chance a voter won't bother scrutinizing the printout.

bratao 6 days ago 0 replies      
Citing felipeko:
Brazil actually has a very organized election. Aside from bad politicians we have to chose from, the election does not have many problems. We have a judicial system just for election (with judges and clear laws) ready to take actions (and they do take) when something goes wrong. All election occurs in one day, a sunday so everyone can vote, and the results usually come in less than 4 hours, because all vote is electronic.
bryanh 6 days ago 1 reply      
Looks like a touch screen that isn't calibrated correctly.
raverbashing 6 days ago 0 replies      
Obligatory reference: http://www.youtube.com/watch?v=1aBaX9GPSaQ#t=18s

I was surprised to see how similar it was.

pebb 6 days ago 0 replies      
He who casts a vote decides nothing. He who counts the votes decides everything
realrocker 6 days ago 2 replies      
Calibration!! Really?? Any software/hardware developer here worth his/her salt would agree that can't be it. Let's see what could have happened: 1) The Y axis of the screen was maladjusted 2) Touch Sensitivity of the screen was reduced due to incorrect settings 3) Touch area had hair/dust/oil on it. But if you read the voter's story it happened only for Obama's field. Don't they have independent watchdogs looking after this thing in United States? If shit like this went down in India, the Election Commission would have simply closed the whole damn polling booth(for the day) and arrange separate polling on a later day with extra scrutiny and security.
tomflack 6 days ago 0 replies      
Lower house - http://aec.gov.au/Voting/How_to_Vote/Voting_HOR.htm#papers

Senate - http://aec.gov.au/Voting/How_to_Vote/Voting_Senate.htm#paper...

This is how we vote in Australia. I have real trouble seeing any system of computerized voting or punch-card voting as superior having followed the United States' experiences.

What do you guys think? We use preferential-voting, so it's a little different but the idea is solid.

shirro 6 days ago 0 replies      
Why does an otherwise fairly extraordinary country (space missions, amazing inventions, lots of creativity) manage to get basic stuff so completely wrong (bad toilet plumbing, units of measurement, paper currency, health care, dodgy voting). You need a proportional system. On paper. With hand counting by volunteers overseen by party reps. Stop with all the private enterprise technology stuff. Democracy is too precious to contract out to some lowest bidder. The Australian Electoral Commission runs all our ballots here and I have absolute confidence in them. Have a look at how other places run elections.
afterburner 6 days ago 0 replies      
This is serious, but I'm getting a lot of amusing out of news reporters asking questions on Reddit, and have dozens of Reddit users pipe in with jokes.
readme 5 days ago 0 replies      
It looks like the touch screen might need to be calibrated. This used to happen on a POS system I worked with.

I think the title is link bait. The voting machine isn't altering the vote. It's just off kilter. Besides, it's not like the user didn't know what box was being checked!

bane 6 days ago 0 replies      
"It's not the voting that's democracy; it's the counting." - Jumpers (1972)
Xcelerate 6 days ago 1 reply      
I'm not trying to be snarky: could someone explain to me why this is HN-worthy (or at least worth 609 points)? In an election with thousands of voting machines, the probability is high enough that at least a few of them will be defective in some way; it should be expected as far as I can tell.
elbac 6 days ago 0 replies      
How to Rig an Election: The G.O.P. aims to paint the country red
mcantelon 6 days ago 0 replies      
This exact scenario also happened on video in 2008:


FrojoS 6 days ago 0 replies      
I never understood why we would go for electronic voting. I couldn't care less about the discussion here about touch screens or GUIs. Computer should have no buisnes for important, secret elections!

In my opinion the risks and downsides of moving away from pen and paper clearly outweigh any of the laughable advantages - unless of course you profit from a system that is in-transparent and manipulatable.

onli 6 days ago 0 replies      
What do you expect? Opaque source-code, machines produced by companies linked to the Republicans, and all that in a failing state. Stuff like that was obviously going to happen.
ambiguator 6 days ago 1 reply      
Seems like the obvious solution would be to close off the broken voting machine.
mkhpalm 6 days ago 0 replies      
Jeez, I thought HN people were sharper than this about modern technology. I'm not a Romney supporter but these voting machines are basic single touch interfaces with standard fat-finger algorithms. Lets have him pull back on the camera and show the rest of the screen. Specifically, where his other finger is at the time it selects Romney. His video is highly suspect to me.
flyinRyan 5 days ago 0 replies      
Why doesn't the US just buy the system Brazil uses? In Brazil 1) everyone must vote and 2) they have strong reasons for wanting to make sure that no vote can ever be tied directly to the person who cast it.

They have such a system in place for over a decade, it works perfectly. Just buy that and use it instead of reinventing the wheel poorly.

spectrum 6 days ago 0 replies      
In the Netherlands they got rid of voting machines all together in 2008.

A group set out to ensure that the election process in the Netherlands would become as fraud resistant as it was before the advent of paperless voting computers. They demonstrated that the voting machines could be hacked. It wass also a risk because of the small group involved in getting the results out of these computers, with no real possibility to check if they are real (because the source code is not open). Committing fraud would only have to involve a few people.

On May 16, 2008 the Dutch government decided that elections in the Netherlands will be held using paper ballots and red pencil only. A proposal to develop a new generation of voting computers was rejected.

More info at http://wijvertrouwenstemcomputersniet.nl/English

sukuriant 6 days ago 0 replies      
What show was it that discussed what would happen with a large number of very smart engineers and voting? I recall a TV show back in the day that basically said "We don't use electronic voting because it's too easy to game". I think it was one of the episodes of Sliders.
shawn-butler 6 days ago 0 replies      
All this talk of electronic voting and one-way hash, etc confuses me. I know of no aspect of the US Constitution or federal law nor the constitution of any state in which I have resided which mandates a secret ballot. It might be a tradition or something but it certainly isn't a civil right.

I'm sure there is probably mountains of state law on the issue but I would have to wager any guarantee of secrecy would be just that, provided for on a state-by-state basis. I would appreciate it if anybody could correct my misunderstanding with citations.

I think its much more important for an election result to be trusted than for it to be secret. Having both is optimal but not necessary for a valid result under the law with which I am familiar.

ommunist 6 days ago 0 replies      
Oh, how sad the vigilante cannot film the pesky RAM-inhabiting daemon, that summate counting and distributes electronic votes according to the AdSense spending of every candidate. Even the iPhone is not capable of doing that surveillance.
shitlord 6 days ago 1 reply      
Is it too much to ask to just completely open-source these voting machine? These machines decide the future of our country and affect the entire world. The least we could do is allow everyone to verify for themselves whether the machines are secure.
jordanthoms 6 days ago 0 replies      
sakopov 6 days ago 1 reply      
Wouldn't it be a good idea to have some sort of automated remote monitoring system which would randomly ping each machine for diagnostics data and shutdown machines if any issues discovered?
tucosan 6 days ago 0 replies      
For those who are able to understand german and are not from the US, i highly recommend the newest alternativlos podcast for perspective:


dhughes 6 days ago 0 replies      
Canadian here but I'm curious wouldn't it make sense for voting machines to have independent dual screens instead of a single screen where the possibility of a calibration error could exist?
satori99 6 days ago 1 reply      
The US uses a federal agency to collect income taxes, so why won't it do the obvious thing and create one to run federal elections?
jrhorn424 6 days ago 0 replies      
I'm not taking a stand on whether this is some weird edge case bug or whether it's a conspiracy, but I would like to point out that if it is fraud, it's an incredibly inept attempt. Using a checkbox for visual confirmation of a vote means the fraud was easily detectable. It would have been much better to mark the box for Obama but count the vote for Romney, if fraud is your goal.
armored_mammal 6 days ago 1 reply      
Is there any evidence that what it records actually matches the screen anyway?
johncoltrane 6 days ago 0 replies      
What exactly are supposed to be the benefits of electronic voting machines over sliping a piece of paper in an enveloppe and putting it in an urn?
short_circut 6 days ago 0 replies      
It seems to me a way to mitigate this risk of part of the screen not working is to randomize the order with which the candidates are displayed. The error would presumably average itself out. Either way this is unacceptable.
Gabler 6 days ago 1 reply      
I would be more outraged if the video actually showed him tapping the other candidates to prove that they worked correctly. He says that tapping the others worked fine but there is no proof of this in the video.
charlieok 6 days ago 0 replies      
Much worse would be altering your vote without showing you that it did so
doctorpangloss 6 days ago 0 replies      
A $300 iPad does a better job than this $3,500 voting machine.
melkisch 6 days ago 0 replies      
If you don't want to have your vote altered. You can go on https://poutsch.com
The cool thing is that the whole planet can vote there!
blisper 6 days ago 0 replies      
I asked for paper ballot this morning. Many volunteers are cheerful and apathetic, for them its just another gig. Lost on them is the fact this is something fundamental. Scary !!
wallacrw 6 days ago 0 replies      
Is it real, and Republicans are fraudsters? Or is it a fake, and Democrats are fraudsters? Or is a Republican plant of a fake so that I believe I hate Democrats?!? Or maybe even Democrats planted an obvious fake, to make me think Republicans posted the fake, so that I'd know it's fake and end up disrespecting Republicans for the poor attempt at influencing me?!?!?!

Too confusing. I'm staying home.

gte910h 6 days ago 2 replies      
I hope this is a hoax.
ne0codex 6 days ago 0 replies      
This seriously pisses me the fuck off. Just how the hell do we not have the technology yet for accurate touch-screen technology in voting machines?
jjp9999 5 days ago 0 replies      
This is nothing. I was texting on my phone and it changed "Romny" to "Ronny."

Microsoft must be behind it.

tcohen 6 days ago 0 replies      
donerKebab 6 days ago 0 replies      
Why does this matter? The majority of votes is not the decider in this 'democracy'.
csmatt 6 days ago 1 reply      
A bit off-topic, but how do recounts work with electronic voting machines?
aioprisan 6 days ago 0 replies      
that's nonsense, it was just a screen screwup and there's a paper trail on those machines, thank god.
awayand 5 days ago 0 replies      
voting cannot be computerized ever without risk of manipulation. voting will always have to be on paper in the interest of democracy.
jcmoscon 6 days ago 0 replies      
LOL probably just needs to touch a little bit lower on the screen. If you're not smart enough to figure that out, you should NOT be allowed to vote.
jackalope 6 days ago 4 replies      
Obviously staged, obviously edited, obviously fake.
RethinkDB: An open-source distributed database built with love over three years rethinkdb.com
708 points by coffeemug  3 days ago   235 comments top 53
coffeemug 3 days ago 1 reply      
Hey guys, Slava here. I've been up since yesterday, so I'm going to clock out (though some of the team members are still lurking here). I wanted to thank everyone for great feedback. We're working hard to improve Rethink over the next few months. FYI, you can always hop on IRC (#rethinkdb on freenode) or github tracker (https://github.com/rethinkdb/rethinkdb/issues) with questions and we'll help you out.
jedberg 3 days ago 1 reply      
Suggestion: It would be great to have a page on your website that explains why RethinkDB is better than the other prevailing options. Right now I don't know why I'd want to invest time setting up yet another database.
dxbydt 3 days ago 2 replies      
Thought I'll share this with you.

A yc company hired me. I showed up at their mountain view office. The founder said "This is the former office of RethinkDB! I hope we are as successful as them."

I didn't know who/what RethinkDB was, so I said ok, sure.

3 days later he asked me to clear my desk and leave. He said "You are the sort of person who should work in RethinkDB".

So I asked "What does that mean ?"

He said "RethinkDB is trying to solve very deep algorithm problems. They want somebody with CS knowledge to do deep research. That is what you are good at. But here we are just trying to run a business. You are not a good fit for that!".

So I left.

codewright 3 days ago 1 reply      
I'm hoping this'll be a viable replacement for MongoDB. (Sparse/Schema-free is incredibly useful for me, as is JSON-centric modeling)

jedberg already asked for a compare/contrast, but let me provide some specifics I care about that you might be able to answer.

1. Is it fair to say that thanks to MVCC, running an aggregation or map-reduce job isn't going to lock the whole damn thing up like it does on MongoDB?

2. You've got a distributed system that is seemingly CP, do the availability/consistency semantics compare with HBase? Master-slave? Replication? Sharding?

3. Latency is a big one for us and is a large part of why we use ElasticSearch. How does the read-latency on RethinkDB compare with Mongo/MySQL/Redis/et al ?

mmorearty 3 days ago 3 replies      
I don't know much about RethinkDB yet, but I will say that I have been a big fan (online) of one of its founders, Slava Akhmechet, for years. I've never met him, but he wrote some terrific articles on his website, http://www.defmacro.org/ , a few years ago. Start at the bottom of the list of articles, with "The Nature of Lisp."

Slava is a deep thinker, which makes me very excited to take a look at RethinkDB.

pc 3 days ago 0 replies      
This took tenacity. Congrats on shipping.
jbellis 3 days ago 2 replies      
I'll ask the obvious question not in the FAQ: How is this different from MongoDB?
sutro 3 days ago 1 reply      
How does RethinkDB perform when compared to open-source distributed databases built with hate?
tjic 3 days ago 6 replies      
What the heck does "built with love" even mean?

Is this just a hipster marketing term to tell us that it's small and cute and made by people who play ukuleles and ride unicycles in their spare time, and not by evil corporate people who commute to work and have mortgages?

I find a lot of advertising eyeroll inducing, and the current trend of more-hipster-than-thou posturing is right at the top.

erichocean 3 days ago 4 replies      
I find JSON-oriented databases to be a huge limitation for writing applications managing any kind of financial data, due to the lack of a decimal number type and a timestamp/date type, both of which SQL provides (and are used A LOT).

Sure, you can put that stuff in strings, but then you'll run into limitation with queries where you want to, e.g., aggregate a total, or do timestamp arithmetic.

I could do everything with strings, custom map-reduce, etc., if you're inclined to suggest that as a workaround. Still doesn't mean JSON's a good idea.

harryh 3 days ago 1 reply      
If I were you guys I'd strongly consider adding support for hashing of the shard key. There are many cases where you care about distributing your writes(1) a lot more than fast range queries on the PK.


1. Yes, I know there are other ways to do this besides hashing the shard key, but this is often the best way.

continuations 3 days ago 1 reply      
* In the previous incarnation of rethinkdb the focus was on maximizing performance on SSDs. Is this still the case - does rethinkDB perform better than other databases on SSDs? Do you have any benchmark numbers?

* How does rethinkdb compare to MySQL Cluster? Both are distributed, replicated databases with a sql-like query language.

* Any plan to offer a java client?

szopa 3 days ago 2 replies      
Nice work! It seems that you are well aware of the tradeoffs that you are taking and communicating it openly in your documentation (and your choices seem to be very reasonable). I really like the tone of your communication " it seems essentially BS/koolaid free.

1. How much data can you put in one instance before seeing performance degradation? I know that you still working on good benchmarks " but do you have any ballpark figures?

2. How does replication work? Is it closer to row/document or statement based (or something completely different)? How fast is the replication?

3. What is your envisioned used of the replication? Are replicas supposed to serve read traffic, or their goal is to keep the data safe in case of a catastrophe?

4. Can you tell me something more about cluster configuration propagation? The Advanced FAQ answer doesn't get into much detail.

5. Am I correct to assume that you are using protocol buffers? What motivated your choice?

ww520 3 days ago 3 replies      
Congratulate on releasing. Well done!

A few questions:

1. Will secondary indices be ever supported? Range scan with a different order than the primary key is very welcomed. E.g. date range query.

2. Do you support conditional update? Or any kind of optimistic locking or versioning to coordinate concurrent updates from different clients?

3. Related to 2. How can loosely-sequential Id be generated using a table?

4. Will some transaction support be added? Don't need full ACID, just grouping updates (intra-table and/or inter-tables) in one shot would be nice. Should be feasible with MVCC already in place.

5. Do all the clients hit a central server to initiate queries which then farms out the requests to different shards? Or the client library knows how to get to different shards directly? First case has a single-point-of-failure, and bottleneck in scaling.

6. Do you support automatically re-balancing of shard data (data migration) when new shards are added or old ones retired?

7. How are authentication and authorization done? Or any clients can come in?

8. Internal detail. For out-of-date distributed query on the slave replicas, is there a cost-based (or load-based) decision process to pick the most idle replica to do the sub-query?

9. Internal detail. Do you use Bloom Filter to optimize distributed joins?

haberman 3 days ago 2 replies      
Is schemaless a win over an object schema like a JSON schema (or a Protocol Buffer .proto file)?

Schemaless is clearly a convenience win over SQL because SQL's way of modeling nested/repeated data doesn't map as easily onto programming languages. But for all the people who are using JSON-based databases these days, I'm curious how many of them couldn't easily write a JSON schema or a .proto file that describes their de facto schema.

I ask because a lot of things become easier to reason about (and optimize) if you know that a field won't be a string in one record and a number in another. And writing a .proto file (or equivalent JSON schema) would give you an authoritative place to document what all the fields actually mean.

I don't have any actual experience with JSON-based databases, so I was interested to hear the opinions of people who do.

m0th87 3 days ago 2 replies      
How do filters work? They seem pretty difficult implementation-wise since you can write them in any of the language bindings. My first guess is that you pipe all the data in a table to the client, and the client itself does the filtration. But this would be extraordinarily inefficient.
shykes 3 days ago 1 reply      
I am very excited about this. The RethinkDB team is rock-solid and the market is only going to get bigger.

I particularly like the perspective of an easy onramp to get started, knowing that I will never have to leave because of scale or reliability.

Please, please give me a SQL adapter! My marketing team needs SQL. My business app developers need SQL. Give them an adapter and I will get them to use RethinkDB - knowing that 1) my data is safe and I'm not 6 months away from a painful re-architecture and migration, and 2) as my developers hit the limits of SQL they can gradually (gradually!) peel the paint off and start using your more powerful query language.

ch0wn 3 days ago 1 reply      
This looks really interesting. I'm interested to see how their license choice works out. The server is AGPL-licensed while the drivers are under Apache 2.0. This should at least avoid the issues we all know from libmysqlclient.
jamesli 3 days ago 1 reply      
Great work! One question: is there any manual that explains the implementation details of the internals? Some manual similar to those Oracle, MySQL, Postgres, etc. provide?

The only docs I found in the company website that goes deep into the internals are Advanced FAQ (http://www.rethinkdb.com/docs/advanced-faq/). It is more of an architecture view, though.

The reason I ask is that with a good understanding on the internals, the engineers who understand database internals and distributed systems will have an "more" accurate idea on the capabilities and the limits of the features. Thus, if they decide to adopt RethinkDB, the understanding will help them design their applications to take advantages of the benefits and avoid the potential issues (or surprises!). MongoDB was not very good at documentation. It claims this or that feature works smoothly. Then, people found out many potential issues and limitations. That is one reason it leaves a bad tastes to many engineers.

javajosh 3 days ago 0 replies      
What is the business model, if any? (This question is not addressed in the FAQ, and I believe has at least some relevance to the longevity/shape of the reDB community over time.)

Also, have you talked to the Meteor folks about swapping Mongo out for this? Or would this be 'newness overload'?

hcarvalhoalves 2 days ago 1 reply      
It seems very interesting, and having to deal with ORMs daily makes me appreciate the clean API.

I feel being based on JSON is a big con though. While it's popular, it was never meant to be a rich serialization format, just simple. How to implement more complex fields like dates, and query efficiently on RethinkDB?

dkhenry 3 days ago 1 reply      
I don't see much on the documentation on indexes. Also this looks awesome, I would love to see a option to let it be eventually consistent and still keep the great querying ability.
Heff 3 days ago 0 replies      
Congrats on the launch guys!
joevandyk 3 days ago 1 reply      
Why would you use this over PostgreSQL, especially with pg's new json support?
d0m 3 days ago 1 reply      
I absolutely love the website. Congrats on the public launch. In the FAQ, I would suggest a "How do you compare with Mongo?" I've read the intro, the faq and a couple of quick guides to find out what was different (read better). If I'm a happy mongo user, why would I switch to RethinkDB?
jedahan 3 days ago 0 replies      
Last I heard RethinkDB was a tail-append style engine for MySQL that was optimized for SSDs. Interesting to see a drastic pivot like this. Looks good, and good luck.
shin_lao 3 days ago 0 replies      
Congratulations! How do you plan on making money?
perfunctory 3 days ago 3 replies      
Please stop using json as a data model. I have no idea how to represent dates, or timestamps, or colors, or any other unsupported data type.
nnash 2 days ago 1 reply      

  joe@alchemist~$ rethinkdb
joe@clockwerk~$ rethinkdb -j alchemist:29015

Dota player?

pspeter3 3 days ago 2 replies      
Are there any performance tips or information? This looks really cool
bjhoops1 3 days ago 1 reply      
The querying capabilities here look amazing. Having to manually figure out how do joins and group by in something like CouchDB is really a pain, but this looks really slick. Very impressed and I will be trying this out!
wildmXranat 3 days ago 1 reply      
If authors are lurking here, link from github to a quick start page is broken: http://www.rethinkdb.com/docs/guides/basic_quickstart.html

GH issue https://github.com/rethinkdb/rethinkdb/issues/2

edit: fixed already!

gruseom 3 days ago 0 replies      
The most exciting news in quite a while! It will be interesting to hear what people think as they try it out and differences begin to emerge. In the meantime, congratulations on both the release and the open-sourcing.
krob 3 days ago 1 reply      
I'd really like to know why they don't have a PHP library, considering it powers half the web. The key shouldn't be to promote someone elses own language when using infrastructure products but rather to support everyone in using their tool. Mongo supports everything under the sun, so should this.
banachtarski 3 days ago 0 replies      
Would love a comparison of this to couchbase which seems to have a similar sharded distributed setup.

Congrats on shipping!

wildmXranat 3 days ago 1 reply      
Is the package up on Ubuntu PPA already ? it seems that the installation instructions use the ppa, but apt-get doesn't find the package.

edit: Indeed, my architecture i386 doesn't match the only available amd64 binaries. Thanks

ww520 3 days ago 0 replies      
I like their DSL-style query API. It's fantastic!

Disclosure: Ok. I'm biased. :) I've designed a similar DSL-style query API in another project. https://github.com/williamw520/jsoda

l0stman 3 days ago 1 reply      
I was just wondering if you've planned on open-sourcing the code since the very beginning or if the idea came much later. Anyway congrats on launching.
arzvi 3 days ago 1 reply      
Query language and ruby like function-chaining are what I feel the selling factors. I like the ease with which I added a node to the cluster. But naming the version as Rashomon scares me..
aterreno 3 days ago 0 replies      
From the homepage it already looks more usable than mongo, liking the query syntax. Looking forward in trying the performances. Well done.
willytobler 2 days ago 1 reply      
This looks like very interesting. And a nice interface to deal with. But ... I do not find anything about authentication. Whoever wants can fiddle with this 8080 Port.

Did you rethinkAuth or am I just too stupid to RTFM?

eknkc 3 days ago 2 replies      
So, no secondary indexes right?

Will doing a query like "age > 25" perform something equivalent to a full table scan?

jpettersson 3 days ago 1 reply      
Wow, looks great! I'm excited to try it out.

The Github graphs are really interesting too, that's a lot of love/work right there!


Meai 3 days ago 1 reply      
Could you guys offer a C driver? (preferably not c++)
dested 3 days ago 1 reply      
This certainly seems interesting enough to look into!

One note, there's a typo in the code in the tutorial on top

r.table('users).insert({'name': 'Slava', 'age': 29 }).run()

users needs a closing quote.

juzfoo 1 day ago 0 replies      
Congrats guys! Looks great from the specs. Any thoughts on architecting for multitenancy?
tehansen 2 days ago 0 replies      
am I the only one that noticed the lambda at the bottom right of the webpage? :)
goranp 1 day ago 0 replies      
I am a bit late to the game but how does this compare to HyperDex in terms of scalability and sharding?
mcartyem 3 days ago 1 reply      
Are there plans for an Arc driver?
hagope 3 days ago 0 replies      
Great work, can't wait to try it out! :-)
DaemonXI 3 days ago 1 reply      
Will there ever be a 32-bit version?
sergius 3 days ago 0 replies      
No C++ API???
sidcool 3 days ago 0 replies      
Catchy title, I must say.
Why Google Went Offline Today and a Bit about How the Internet Works cloudflare.com
662 points by ColinWright  6 days ago   152 comments top 34
neya 6 days ago 1 reply      
Best explanation ever. Wow, seriously, this person can use the right words to help even the non-technical people understand such a complex situation. Thanks for posting this.
trout 6 days ago 1 reply      
There are some other ways to fix the problem.

Last time with the Youtube problem, they advertised more specific routes. If Pakistan was advertising a /24 network (255 IP addresses) Youtube started advertising two /25 networks (2x 128 addresses). Since they are more specific, they are preferred over the more broad routes. This prevents lack of cooperation, but not malicious behavior. As well, it ends somewhere because many networks will not pass routes smaller than say /24 or /28.

Most service providers also do 'inbound route filtering' to filter out any routes that they do not own. This isn't a simple process, which is why PCCW does not do it. Maybe a few more of these incidents and they will.

There's also AS Path filtering. This allows networks to be more granular in which paths they trust, by inspecting which AS's a route has gone through. If certain AS or AS path combinations become problematic, the internet at large could blackhole them or do manual route filtering. This would be laborious, but possible.

That said if someone can maliciously peer with an active BGP router, the damage to be done is significant. I haven't seen any outage reports from this type of attack, but I'm surprised by that.

duggan 6 days ago 10 replies      
“BGP is literally the glue of the Internet” - I think you'll find BGP is figuratively the glue of the Internet ;)
apaprocki 6 days ago 1 reply      
If you're interested in peering (couldn't resist the pun) behind the curtain, read the NANOG[1] mailing list. These are the real guys keeping the Internet up and running :)

[1]: http://mailman.nanog.org/pipermail/nanog/

rlpb 6 days ago 3 replies      
> When I figured out the problem, I contacted a colleague at Moratel to let him know what was going on. He was able to fix the problem...

I wonder how he contacted his colleague. In this case, I presume that routing to other networks were unaffected. But in the general case, with a future of everything over IP, what will network engineers use to communicate about faults?

jemfinch 6 days ago 2 replies      
Isn't the title a touch sensationalist? Google did not go "offline": it was briefly unavailable for a relatively small number of networks.
lini 6 days ago 3 replies      
And nothing will change. At least not until someone does this with malicious intent - script kiddie A knocks out big site, or a censoring state decides that it should block a free speech site from the entire Internet.
vr000m 6 days ago 1 reply      
There is an IETF WG called SIDR, which is working on solving this problem of invalid BGP announcements. A good summary is available here http://isoc.org/wp/ietfjournal/?p=2438 and technical details are in the related proposals.
stingraycharles 6 days ago 1 reply      
For what it's worth, this is quite a vulnerability in the internet's routing system. It's also the reason Youtube went offline after Pakistan was deliberately announcing the wrong routes a few years ago because it didn't agree with some videos being broadcasted by Youtube.



jhull 6 days ago 2 replies      
Couldn't a rogue government easily take down the internet this way? Seems like if one guy in Indonesia can take out Google by accident, a government entity could do the same.
ybaumes 6 days ago 4 replies      
The author (Tom Paseka) wrote near the conclusion that himself addressed the Google's issue, by contacting a Moratel's engineer. Do you have the same feeling when reading the article? It sounds weird that Google did not triggered a recovery procedure on its own.

Maybe I see bad things everywhere and you may call paranoïd, but could it be some sort of ("false") advertising on the side of cloudfare?

lhnn 6 days ago 0 replies      
DAE think that the whole "BGP is broken!" argument is a bit overblown?

If you're going to have a bunch of autonomous systems/networks operating together, with no central authority, it necessarily comes down to trust and relationships.

Shit will occasionally happen. It's important to look at outages, figure out the cause, and work to prevent it. Perhaps, though, this is a best practices issue, and not some fundamental flaw in BGP.

ChuckMcM 6 days ago 1 reply      
At some point anonymous is going to figure out the bgp 'hack' is actually exploitable, unlike taking the root name servers offline and we see a network routing outage for several days. I wish it wasn't so but sometimes that is the only way these things get fixed
xxcode 6 days ago 0 replies      
To be accurate, google didn't go down today -- your pathway from your computer to google got 'poisoned'. It wasn't Google's fault.
killermonkeys 6 days ago 1 reply      
Why wouldn't PCCW preventing its customers from publishing routes outside its whitelist work? It has been a long time since I worked on BGP but that was common practice from back haul carriers to ISPs even at that point (2003). Given the same back haul provider has allowed this twice, it seems like a reasonable ask.
rdl 6 days ago 0 replies      
I am more curious what caused the 4 minute mid-day outage a few days ago. It wasn't BGP, since google.com was still up, but all personalization was down, and YouTube was down.
ninetax 6 days ago 0 replies      
While this does make sense if I abstract out what a BGP is, I wish I had a deeper knowledge of how the Internet works.

Does anyone know of a book that goes from the basics of networking up to how it's all assembled on a large scale?

A "big book of internet" if you will.

hayksaakian 6 days ago 1 reply      
It really makes one wonder about the fragility of the internet.
runn1ng 6 days ago 6 replies      
Can I ask a pretty newbie question - how is BGP connected to IP, TCP and DNS protocols? Is it sitting "below" them, "on top" of them, or is it somewhere else?
clebio 6 days ago 1 reply      
Since I use DuckDuckGo for searches, I probably wouldn't notice this. Not receiving Gmail for a while wouldn't be noteworthy (at least for the first half hour or so).

I'm confused about the times the author gives, though. The article is dated today (11/6) and he says this happened 'today' at 6:24pm PST / 02:24 UTC. But unless I'm mistaken, that is a time currently in the future (http://time.gov/timezone.cgi?Pacific/d/-8/java). I guess he meant yesterday?

rurounijones 6 days ago 1 reply      
Sidenote: In the comments I saw a reply about nanog.com being a great plce to meet other networking peeps.

http://www.nanog.com/ is currently showing a "Welcome to nginx" message

flannell 6 days ago 0 replies      
halayli 6 days ago 1 reply      
Outage in an ASN != Google went Offline. The title puts the blame on Google which isn't true.
tomjen3 6 days ago 1 reply      
Does this mean that in the future we should ignore all routes comming from PCCW (since they rebroadcast all rules without filtering)?
sneak 6 days ago 1 reply      
"I'm a network engineer at CloudFlare and I played a small part in helping ensure Google came back online."

Uhh, no. Without the "ensure", then maybe.

dangoldin 6 days ago 0 replies      
This is a great write up - thanks for posting. I'm slowly beginning to understand how the internet works day by day due to posts like this.
ambiguator 6 days ago 0 replies      
I don't know much about the processes behind the Internet, but I found this to be a fascinating introduction.
louischatriot 6 days ago 0 replies      
Very interesting explanation, thank you.
yskchu 6 days ago 0 replies      
Haha, I was in HK today, and one of those hit, using PCCW services also
henrymazza 6 days ago 0 replies      
> We use Google Apps for things like email so when we can't reach their servers

Very professional way to do so!

rahasia 6 days ago 1 reply      
27 minutes, 3-5% traffic, it could means thousand of dollars lost for Google, right? (Does it sueable?)
jamesinsf 6 days ago 0 replies      
Great explanation. Good show and great job!
Very smart engineers at Cloudflare!
tcohen 6 days ago 0 replies      
I wish I understood more of this but still really cool!
sunyc 6 days ago 0 replies      
almost all bgp transit provider have prefix filtering,
Nate Silver correctly called 50 out of 50 states plus.google.com
655 points by btilly  6 days ago   269 comments top 30
crntaylor 5 days ago 9 replies      
It's clearly great work by Nate and the rest of the 538 team. However, as has been pointed out, it's not that hard to build a model that gets close to predicting everything correctly.

I built a model in a couple of hours on Sunday afternoon, which simply takes all the most recent polling data, takes an average, does a quick fudge to adjust for the number of polls, and then runs 10,000 simulations to get a probability for each state. The source is on Github:


and the predictions are in this gist:


The result? My model gets 50/51 correct if Florida eventually goes DEM (which looks likely) or 51/51 correct if Florida goes REP.


Edit: full disclosure - with all data up to 6 Nov 20120 it predicts Colorado to be a toss-up, and I manually broke the tie in favour of Democrats, based on earlier models favouring them in that state.

ericdykstra 5 days ago 10 replies      
Nate Silver's calculations are certainly more sophisticated that a simple time-weighted average of legitimate polling numbers, but are they more accurate?

His baseball projection system, PECOTA, was extremely complex, but barely, barely outperformed a simple 3-year weighted average with an age component (Marcel), and some years was worse. Other projection systems that didn't take player comps into account were better overall than PECOTA (CHONE being the best, before the creator was hired away by a team).

dkrich 5 days ago 5 replies      
I've got to say that I've been a cynical admirer of Silver since the last election.

Why cynical? Because I began to notice throughout the Republican nomination process that his observations varied wildly on which Republican candidate presented great values on intrade. I think over time he gave a nod to every candidate, save Michelle Bachmann, Tim Pawlenty, and John Huntsmann. From the outset, Romney was the favorite to win, and not surprisingly, he won. But throughout the nomination process where much less was known, many of his projections proved to be wrong. So despite all of the contrarian opinion on which candidates may pull it out against popular opinion (or perception) these faded away until Romney was the clear favorite, Silver predicted him to win, and eventually he carried the nomination.

Once in the Presidential election, Obama was the favorite. Incumbent Presidents rarely lose, and Mitt Romney was not exactly a compelling candidate.

All that said, he's clearly a brilliant dude, and I give him a lot of respect for the accuracy of his predictions. I just haven't found them to be hugely useful for any practical purposes. I guess people tend to be enamored by the things they don't understand (statistical analysis), and I don't think there's anything wrong with that.

ComputerGuru 5 days ago 5 replies      
I've been a huge fan of Nate Silver since forever, and I must say, I really regret his "acquirement" by NY Times. When it was his own website, it was a much more user-friendly experience.

For instance, though I have an NYT account, every other page view I get redirected to a login prompt if I don't press Esc fast enough (this page has expired? WTF?). It also made him more of an independent, though he is (falsely) discounted on many counts by other parts of media, his affiliation with NYT is yet another facet for them to criticize.

pseut 5 days ago 1 reply      
So, Nate Silver seems to deserve the even higher profile he'll have after this election, but his model is pretty explicitly not predicting the outcomes of any individual states. They're giving estimated probabilities of the various outcomes, and the (presumptive) outcome that happened was given a probability of ~20%, which was more likely than any other particular outcome, but a far cry from "calling the states."

The big difference is that if this were to happen over and over again ("this" meaning that the most likely predicted outcome actually materializes), that would be (weak) evidence against his model -- if the model's right, he should "correctly call" the states only about 20% of the time. No more and no less.

But good for him, because he's had a lot of unjustified criticism for the last month or so, so he's due some (slightly) unjustified praise.

paulsutter 5 days ago 7 replies      
Nate Silver seems like a pretty smart guy, wouldn't it be better if he spent his time doing something more productive? Predicting the outcome of an election may have practical applications in gambling or for a hedge fund, and yes he gets mad publicity and attention from women sure, but aren't there more useful ways to apply statistics?

EDIT: Haldean, your point is excellent and cancels out mine absolutely. Good thinking, you are entirely right. I would add that his attention and publicity itself should increase the credibility of rational analysis in the news, and that alone would be a great accomplishment.

lbrandy 5 days ago 3 replies      
Once California has its results in, I'm guessing his prediction on the popular vote will make it 51/51.
ww520 5 days ago 2 replies      
Hard cold numbers won again.

The venom directed at Nate Silver before the election was astonishing. I guess the pundits had sensed their careers of predication were numbered and fought back hard, but Nate was proved right again. Kudos.

a_bonobo 5 days ago 3 replies      
Doesn't that destroy the allegations of voting fraud in the US? (Not a US-citizen here)

If there was widespread fraud with the voting machines as alleged elsewhere, the voting outcome should have diverged widely from the predictions. The predictions are so close to the actual outcome, and because from what I understand the predictions are mostly based on polling, there couldn't have been much fraud, or am I wrong?

Flippant edit: Assuming of course that Nate Silver wasn't in on the fraud and didn't adjust his predictions accordingly.

brianchu 5 days ago 0 replies      
Keep in mind, however, that we could not have expected Nate Silver's own model to predict 50/50 states. Given that Nate predicted that there was a 50.3% chance that Florida would go to Obama, the only difference between this being a story of predicting 50/50 states and this being a story of missing at least one state is a coin toss. The reasons his model turned out to be 100% accurate is sheer luck.
brownbat 5 days ago 2 replies      
Doesn't that mean he undercalibrated some of his predictions?

If you say 50 events should happen with a 60% probability, and they all happen, shouldn't you have upped your confidence?

That said, since most his naysayers were saying he was OVERconfident at the time, kudos to him for proving them wrong.

epaga 5 days ago 1 reply      
Even with an incredibly exact model, to actually get ALL 50 right really does require a lot of luck in addition to skill. Even if he's 98% accurate for each state (which seems amazingly high to me), that's still only a 1 in 3 chance to get all 50 right.
Kurtz79 5 days ago 0 replies      
I think it's realatively easy, for a smart guy with a solid understandings of statistics to come up with a reasonable model (weight polls by sample size, come up with probability distribution for each state, run x Monte Carlo simulations and take the average of the result...).

But a thing is coming up with a good model, another is to defend it publicly putting your reputation on the line, while it would have been a much safer bet simply to say 'it's too close to call', as many so-called experts did.

Full credit to Nate, he made math cool for a lot of people.

Spooky23 5 days ago 1 reply      
It's a little much to claim that this guy called it. The minor detail of actually conducting the polling was done by others.
tlrobinson 5 days ago 1 reply      
I wonder how much money he could be (is?) making in prediction markets like Intrade.
tmister 5 days ago 0 replies      
Nate's Prediction and actual results side by side http://twitter.com/cosentino/status/266042007758200832/photo...
damian2000 5 days ago 3 replies      
I was looking at the Intrade prediction market a couple of days ago.. I think they got everything correct too.
mhartl 5 days ago 1 reply      
This remains to be seen. As of this writing, Florida and Virginia have yet to be called.
k2enemy 5 days ago 1 reply      
I wonder if having such good predictions is ultimately harmful to the democratic process? If I were only voting on the presidential election, I would not have bothered going to the polls because my state was solidly on one side and the chance of my vote being pivotal was basically zero. But some of our local elections were less certain, so I went for those.

As the prediction models get better, get applied to local elections, and get more publicity, I wonder what it will do to people's incentive to vote? I'm much more likely to go out and cast my vote when the outcome is uncertain and I think I have a chance of being the pivotal vote. But if super accurate forecasts tell me my vote won't matter, then maybe I won't bother standing in line for an hour.

Codhisattva 5 days ago 0 replies      
Silver affirms that public opinion polling is accurate - as long as you know how to read the data.

Not to diminish Silver's work - I'm just saying the data he uses needs to be accurate in order for his models to be accurate.

monochromatic 5 days ago 1 reply      
Why do I have to enter my google profile information to open this?
alexmr 5 days ago 0 replies      
I'd like to see the comparison for -90,-60,-30,-15 days from election too.
hayksaakian 5 days ago 5 replies      
Let's be honest though, the number of likely outcomes was low enough that simply picking the correct one isn't too impressive.

Edit: I meant to say that the prediction itself was unspectacular, however I respect the meticulous-ness of his process.

elbac 5 days ago 0 replies      
I'd like to see Nate run the numbers which would point to districts where there were statistical anomalies on the lookout for election funny business.
mamatta 5 days ago 0 replies      
quick image reference on Nate's predictions versus actual results: http://cl.ly/image/0744432U0S0L
caycep 5 days ago 0 replies      
what is the technique he is using? is it something like a generalized linear mixed model? (i.e. like using R's lme4 module)?
quangv 5 days ago 1 reply      
I'd love for him to go to past elections and see how well our political voting system works...
denzil_correa 5 days ago 2 replies      
Quite impressive. Prediction in any form is difficult; more so when there are a million people involved.
maaku 5 days ago 1 reply      
Including Alaska and Hawai'i, with zero precincts reporting!


Microsoft turns spoken English into spoken Mandarin " in the same voice thenextweb.com
573 points by evo_9  4 days ago   120 comments top 33
tokenadult 4 days ago 2 replies      
To someone who spent years learning Chinese as a second language, and then made my living for years as a Chinese-English interpreter, that was pretty impressive.

The economics of the issue is that a machine interpreter just has to be as good as a human interpreter at the same cost. That's a reachable target with today's computer technology. EVERY time I've heard someone else interpreting English or Chinese into the other language, I have heard mistakes, and I am chagrined to remember mistakes that I made over the years. We can't count on error-free machine interpretation between any pair of languages (human language is too ambiguous in many daily life cases for that), but if companies develop tested, validated software solutions for consecutive interpreting (what I usually did, and what is shown in the video) or simultaneous interpreting (the harder kind of interpreting in demand at the United Nations, where even in the best case it is not always done well), then those companies will be able to displace a lot of human professionals who rely on their language ability to make a living.

Right now a lot of interpreters in the United States make a lot of part-time income from gigs that involve suddenly getting telephone calls and joining in to interpret a telephone conversation in two languages. This is often necessary, for example, for physician interviews of patients in emergency rooms or pharmacist consultations with patients buying prescribed drugs (where I last saw a posted notice on how to access such an interpretation service). The IBM Watson project is already targeted at becoming an expert system for medical diagnosis, and patient care markets will surely provide a lot of income for further development of software interpretation between human languages.

It's still good for human beings to spend the time and effort to learn another human language (as so many HN participants have by learning English as a second language). That's a broadening experience and an intellectual delight. But just as riding horses is more a form of recreation these days than a basis for being employed, so too speaking another language will be a declining factor in seeking employment in the next decade.

paulgb 4 days ago 3 replies      
This is the second time Deep Neural Network research from the University of Toronto has made the front page, the first being when it won first-place in a Kaggle competition http://news.ycombinator.com/item?id=4733335
scrrr 4 days ago 5 replies      
My current client is specialising in speech recognition, speech synthesis and automatic translation. They have something similar, focused on enterprise customers. I find this subject very interesting.

I am a Ruby guy and I only marginally get in contact with their C++ code, but from what I learned so far this stuff is extremely memory and CPU hungry. It also depends on having been fed the right amounts of input. That's why Google Translate is so good. They have tons and tons of data from all the websites they parse, and in many cases the content can be obtained in different languages. Corporate pages are often translated paragraph by paragraph by humans which results in perfect raw data to train these algorithms. Also for example all documents that the European Parliament produces are translated into the languages of all member states.

Everything that has to do with translation has to do with context. I think the software right now is as smart as a six year old kid, except that it has a much bigger vocabulary. But if you say "The process has stalled. Let's kill it." it probably only makes sense if you know you are talking about computers.

It's hard to imagine that computers one day might really understand everything we say. But just by using Google Translate I think they really might. Это является удивительным. (I don't speak Russian. I hope I didn't insult anyone now. ;))

dbul 4 days ago 0 replies      
Translation is as much of an art as it is a science, so I wonder where this project is headed. Le Ton beau de Marot is a great book for illustrating this point.

In college I had studied Japanese and a friend introduced me to the anime cartoon Initial D. His copy had the original Japanese with English subtitles, and so I could assess the translation to some degree -- it was very good. On Netflix you can watch Initial D, but after 2 minutes I had to turn it off because the English dubbing really failed to capture the characters.

As someone noted in this thread, the presenter's synthesized voice in the linked video doesn't seem to reflect his own. If he could have said something like "Wo hui shua putonghua" and had the machine output say the same, it might have been more convincing.

zyb09 4 days ago 2 replies      
Fun thing to do: you can turn on transcribe audio on Youtube and directly compare how Google's speech recognition tech stacks up against Microsoft's.
dchuk 4 days ago 2 replies      
The implications of this kind of technology reaching consumers in the next decade or so are really interesting.

If we can get to the point of having handheld devices that can accomplish live translation of spoken word, what exactly is the point of different languages anymore?

Groxx 4 days ago 1 reply      
Skip to 8 minutes to hear the actual translation.

I'd love some comparison - that doesn't sound like the same voice to me (awfully close to the 'standard' computer voice, IMO), but some of it is crummy recording quality, and showing the flexibility would go a long way toward convincing me.

pbhjpbhj 4 days ago 1 reply      
I was just pondering today why PCs have adopted spell checking as a standard feature but don't appear to use context techniques for word checking or grammar checking yet. Perhaps I'm just using the wrong apps?

The speaker says "to take in much more data" but it gets parsed by the speech-to-text as "to take it much more data" which is such an unlikely phrase I can't really work out why it's not auto-corrected.

The phrase provided doesn't appear to be in either Google's nor Bing's web indexes. Typing "to take i" in to either Google or Bing's search box produces a hit for "to take in" as the most likely match; and within milliseconds.

Similarly (and ironically) with "about one error out of" being parsed as "about one air out of".

That he goes on to say that they use statistical techniques and phrase analysis for the translation makes this sort of error all the more intriguing, why isn't that same statistical approach weeding out these sorts of errors.

Nonetheless an impressive demonstration.

ctingom 4 days ago 0 replies      
Now imagine this on Skype as a premium feature.
zalew 4 days ago 0 replies      
I have no doubt a few more long years will have to pass until those solutions reach the mass market, but this is extraordinary especially for someone like me, passionate about travelling. Our generation witnessed the shift towards cheaper flights, easier accommodation booking and web/mobile tools growing year by year becoming more helpful in organizing our visits and seeking information about places and cultures we don't know. We, or the future generation, will probably witness the fall of the language barrier, it's truly amazing and one of the most important shifts in our global experiences.
polshaw 4 days ago 2 replies      
Near real time speech to speech translation is awesome[1], but the voice sounded more like how i would picture ASIMO speaking (ie a 1980s speech synthesis) than 'his' voice.

1. is anyone here fluent in mandarin to assess the quality of the output?

barista 4 days ago 2 replies      
The big question is when do we see this in a real product. Many interesting innovations have come out of Microsoft research. It will be nice if they reach end users as well
mmuro 4 days ago 0 replies      
It's pretty incredible how far language-to-language technologies have come and how far they still have to go.

Very cool stuff.

joering2 4 days ago 0 replies      
Mark my words; some good changes are happening at MSFT. There are some indicators that suggest this may be a come back. Surface seems to gain momentum, while future of OS Windows will be freemium plus ads (as you can imagine hundreds of millions of "screens" plugged in).
hammock 4 days ago 2 replies      
Putting on my tinfoil hat here, if all it takes to build a speech model to impersonate someone's voice is an hour's worth of them talking... what happens when the wrong person gets that? For example, the government or a corporation (a internet phone service, maybe) uses to fabricate evidence of conversations that never really happened; could also be used to aid in identity theft
aw3c2 2 days ago 0 replies      
bobwaycott 3 days ago 1 reply      
Damnit. This is pretty much the very idea I had in college around 12 years ago. At the time, there was nowhere near the required technology to pull this off. Over the last few months, I'd begun rethinking through the idea again, feeling the time was right to pull this off as a killer idea. Even began trying to investigate how to pitch this to create a startup focused solely on this problem.

Now it seems the time may be too late. Rats.

zmmmmm 4 days ago 1 reply      
As good as this is, it doesn't seem too much of a quantam leap from where Google Translate is, with conversation mode, installable in every Android phone.

I didn't hear the inflections in his voice superimposed on the Chinese voice, so it is just modeling his voice characteristics and reflecting that into output voice. From what I understand the voice modeling happened off line, not in real time, so it is not nearly as sexy as if it was happening as he spoke. In other words, a nice touch, but I don't see it as revolutionary (unless I'm missing something).

tsahyt 3 days ago 0 replies      
This is really impressive, especially the speech recognition part. I can't really judge anything else, since I don't speak a word of mandarin. The speech recognition though is easily the best I've ever seen. This is almost the kind of recognition rate needed for voice controlled interfaces to finally work. Exciting stuff.
telecuda 3 days ago 0 replies      
It's amazing that they can do this, yet there is still no high-quality solution for changing a male voice into a believable female voice. (For example, making a 40 year old man sound like a 16 year old girl)
andrewcooke 4 days ago 0 replies      
you can jump to 6 minutes and read the text to save time. chinese voice starts at about 7:30.

it is pretty neat.

edwinyzh 2 days ago 0 replies      
Very impressed! The translated Chinese is far better than those translated by any other translation tools I've seen on earth in my entire life!
leke 2 days ago 0 replies      
I think the Linux hacker, MetalX1000 on youtube did this a while back using various [ speech to text -> google translation api -> text to speech ] tools.
scep12 4 days ago 0 replies      
My Android phone already does voice-to-text better than the system demoed in that video. Looks like Microsoft's research needs a bit more tuning before it can be declared 'amazing'
sown 4 days ago 0 replies      
I seem to remember on Scientific Frontiers with Alan Alda, back in the mid-late 1990s, him demonstrating something similar but not as performant. Neat.
ronyeh 4 days ago 0 replies      
Pretty cool stuff! Jump here to listen to the demo: http://www.youtube.com/watch?v=Nu-nlQqFCKg&t=7m55s
yaix 3 days ago 0 replies      
Looking forward to the Android app. Five years maybe?
pedalpete 4 days ago 0 replies      
I'd like to see them demo this using a few different voices. The voice still sounded very computerized, but maybe I'm just not used to hearing this speakers voice.
lifeisstillgood 4 days ago 1 reply      
Of course, they cannot do Mandarin to English yet - that's 2.0 :-)
ffk 4 days ago 0 replies      
It looks like a translation we can hear occurs around 8:10. Is anyone able to verify the correctness of the speech? (Also, remembering it's a demo and it has probably been tested multiple times for that phrase).
neotek 3 days ago 0 replies      
Every day, in every way, we get better and better.
tummybug 4 days ago 3 replies      
Couldn't this be easily hacked together using google translate and a text to voice program?
How I made $500k with machine learning and high frequency trading jspauld.com
530 points by jspaulding  6 days ago   307 comments top 61
tarr11 6 days ago 22 replies      
This is just glorified gambling. I am not sure what special insight or advantage he had, other than his own model. Every trader has a model.

It could have easily been called "how i lost 500k with machine learning". Like gambling, it's easy to manipulate statistics to show that you did well in some period of time.

I worked for a large investment bank about 10 years ago, writing trading programs for quant traders who were market makers. The quants called guys like him "retail" investors and they gleefully picked off all those trades. It's how they made all their money.

So, everyone else, beware of making this a case study in how to make lots of money really fast. You are more likely to lose money.

danso 6 days ago 1 reply      
I don't have much experience with finance or working experience with machine learning, but I've always wondered how much room there was for a clever amateur to profit in this space, even as it's crowded with much more sophisticated professionals with much more sophisticated algorithms and machines.

I'm thinking back to Garry Kasparov's piece in the NY Book Review a couple years back:

He talks about a chess tournament in which it was "anything goes"...competitors could be human, computers, or humans with computers. The expected outcome was that a grandmaster using a Deep Blue-like computer would win, but the winners ended up being a couple of amateurs with three computers:

> The surprise came at the conclusion of the event. The winner was revealed to be not a grandmaster with a state-of-the-art PC but a pair of amateur American chess players using three computers at the same time. Their skill at manipulating and “coaching” their computers to look very deeply into positions effectively counteracted the superior chess understanding of their grandmaster opponents and the greater computational power of other participants. Weak human + machine + better process was superior to a strong computer alone and, more remarkably, superior to a strong human + machine + inferior process.

So in HFT, how much room is there for an amateur to profit over professionals by having a sophisticated process?

lrm242 6 days ago 1 reply      
Take a look at the VIX from 2009 until today and you'll understand why you stopped making money.
confluence 6 days ago 0 replies      
A lot of people are stating that this is like gambling - it is - but not in the sense that you think. Firstly he doesn't use his entire bankroll on each trade, secondly he goes long-short consistently over very short periods of time, thirdly he's too tiny to actually move markets, and fourthly he is in and out within a day - where his max var. is 100% on thousands of tiny trades. Think of it like this - he has $100 - he bets $10 of that each day. He can blow that $10 - no problems.

Worst case he runs out of capital over a period of weeks.

He can't blow up in the way that you think - but he can have large drawdowns over a period of weeks.

Markets are eventually consistent scalable systems - and that is why we prefer them over central planning. In the medium term they prices things correctly, cheaply and efficiently (decade+).

In the short term however (sub-decade) - they can't price jack.

Markets are inefficient period - if they weren't, well then P=NP and you could just put your NP-hard problems into a market and get back cheap, quick, accurate results. Oh - wait - protein folding is actually harder than that.

There are 2 major ways to make money in the markets. Value-Growth and statistical arb (often high frequency). The former (Buffett) is highly concentrated bets on the future of business (I'm value - long TSLA/GOOG/Samsung). The latter is looking for thousands of small diversified statistically significant correlations above 50% (random guesses) and trading costs between securities/price movements over short time intervals (aka statistical ghosts in the data - RenTech/Shaw).

Both work. Both work well. And will continue to do so as long as markets exist.

OldSchool 6 days ago 0 replies      
Great work, very interesting to me. Counter to what we're constantly told through the media this stuff can be done. Doing it year after year seems to be the elusive part. Intuitively, once you've proven your technique on 1000+ trades it's not luck.

I developed a fully-automated low-frequency stat arb system that I ran in 2007 based on a perhaps even simpler algorithm. It traded various equities equally to the long and short side regardless of market conditions so widespread rally or collapse was irrelevant. I logged about 20-30 trades/day - much slower.

The results, using no leverage, were +90% in a year with a worst drawdown of 2% and a Sharpe ratio of 2. Total trades were 5000+. Month-to-month the results were very consistent until the uptick rule was nixed in July 2007. August 2007 was a record winner for me, but Sept-Dec 2007 fell flat, not losing, but with greatly diminished profits and the same variation and more frequently getting slammed all-long or all-short instead of a mix that was often near-neutral. Also getting fills better than my orders then completely disappeared, as this was the beginning of the HFT middlemen - including your own brokerage. I shut it down at the start of 2008, keeping the profits intact and moving on to other priorities.

I continued to monitor the theoretical results for a couple of years but the conditions didn't return so I eventually cancelled my data feed.

unreal37 6 days ago 0 replies      
There is a coursera course called "Computational Investing, Part I" that I am taking that aims to build a market trading simulator to test a trading model. It just started so it's not too late to join.


Judson 6 days ago 1 reply      
This reminds me of an AMA from a few years ago. Really interesting if you are into stuff like this:


dmmalam 6 days ago 2 replies      
Being pedantic, 4000 trades a day isn't HFT. This is stil algo trading, of which HFT is a subset.

I consider HFT to be any strategy where speed itself is the what gives the edge. Colocation is usually a prerequisite, though not sufficient. It's a shame HFT gets all the attention, when it's really a tiny portion of trading activity. Algo-trading in general is 70%+ of market activity in the US.

Also limiting trades isn't really adequate risk management. The tech exists to very accurately model your exposures. This is something I see underdeveloped a lot, and what separates the top trading firms from the rest.

Still I commend you creating a model, working out how to test and execute it automatically and actually trading your own money.

I really think more hackers should be actively managing their money, (in general, not like in the article). We have these amazing liquid markets, all time low spreads/commissions, products like ETFs/derivatives to accurately and cheaply execute a given strategy, and a huge increase in tech to model risk, but personal personal investing is the same as the 60s.

rhplus 6 days ago 3 replies      
The charts show he was trading between Jun 2009 and Oct 2010. How much of his gains could be attributed to the market recovery in general? The Dow went from about 7000 to 11000, the Russell from about 600 to 800.
runjake 6 days ago 1 reply      
Relax with the vitriol. The guy is sharing an interesting personal story, not providing a step-by-step HOWTO or recommending people follow his suit. In fact, the article is really an ad for his startup Courseware.
tomp 6 days ago 2 replies      
This article is missing a crucial piece of data: what was the initial investment.. earning 500k with 10k initial investment is genious, with 10M initial investment it's just another year on the stock market.
HockeyPlayer 6 days ago 2 replies      
I run a 12 person HFT group in Denver. This is an excellent description of how an individual can bootstrap themselves into success. Great story, and nicely presented.

The one interesting point that he glossed over is what his indicators were. He wrote, "The indicators that were most useful were all relatively simple and were based on recent events in the market I was trading as well as the markets of correlated securities."

Which doesn't really tell you much.

quant123 6 days ago 1 reply      
There is an air of either incredibility or sheer jealousy in these comments. Nevertheless, I just wanted to tell the OP that he did a great job. Thanks for sharing. I work in the finance industry as a quantitative software developer, and it certainly is not an easy job for one person to do. In fact, I tried (independent of my professional work) doing this myself, and I ended up losing a lot of money. If people are trying to do this, please please be careful. Big companies, like ones I have worked at, have technical and human resources that are vastly more powerful.
padobson 6 days ago 0 replies      
Don't do this with your own money. Found a startup building HFT tools, and then raise money for it, and use other people's money to test your tools.

If the tools work, sell them. If they don't, tweak them, try it again, and sell them until they do.

This is risk management.

jspaulding 6 days ago 8 replies      
If anyone has questions for me happy to answer as best I can.
hafabnew 6 days ago 3 replies      
I've been considering trying HFT myself for a while. I'm competent with Machine Learning and am a Software Developer by day, so I can program and can sysadmin well enough to get something up and running without any trouble at all.

But, every time I've tried to actually get started, I've always found the amount of research required before being able to begin is just staggering.

It seems like the logical course of single-programmer HFT trading being:

- Find sample data

- Build your trading program using sample data

- When you're happy: connect to live API and set your trading program loose

- Iterate.

However, the first step and the third step seem like the ones which require the most research.

Is there somewhere which has a straightforward dump of timestamped market data available to download (free or not), in order to actually develop a working program?

Likewise, figuring out what to actually trade with, and which service to use is also pretty taxing.

stcredzero 6 days ago 2 replies      
Is there a way to do this with Python or Ruby? I could just as well program this in C#, but I have a friend who can code a little, but doesn't really need everything in C# to do what he wants. The value add of offering the simulator, including the taking into account the bid/ask prices and a stochastic model for latency. Combine this with a web based code editor and easy hosting, and I think this would be a viable product.
ChuckMcM 6 days ago 0 replies      
The high point of my trading was October 2009 when I made almost 100k. After this I continued to spend the next four months trying to improve my program despite decreased profit each month. Unfortunately by this point I guess I'd implemented all my best ideas because nothing I tried seemed to help much.

It is of course possible that once you made "real" money with your algorithm it was spotted by the other algorithms which then started working against it. (Aka exploiting it) Having talked with people in that space (hft) I was left with the impression that an insane amount of analysis was done on those trades.

nashequilibrium 6 days ago 1 reply      
Pls do not follow the advice of the OP. I started a hedgefund in 2004 doing HF platform arbitrage and ran it for 5yrs and i can honestly tell you that this is just survivorship bias. This is a very complex field and being off slightly, having a slight bias, a fraction of a point off your execution pricing and a slightly flawed money management system is recipe for disaster.

The biggest issue is the confusion that you can apply machine learning to HF trading. HF trading sub 15min mark is more about playing the deal flow, and only the institutions have an edge on this. This is why goldman had to separate the buy and sell sides in the early 2000's. Above 15mins you are able to find an edge using time series analyses since the market is scaling invariant according to Benoit Mandelbrot and this does not apply to dealflow. Also having access to dealflow allows you to predict volatilty seconds ahead which allows you decrease your risk and increase you reward as well as handle your costs since the volatility will impact your transaction costs even if transaction costs themselves stay the same. There is just so much stuff to cover that a comment will not do justice in explaining what is wrong with this guys logic.

arbuge 6 days ago 2 replies      
I am curious as to exactly why the profitability decreased steadily and rather rapidly all the way to ~zero. The article doesn't seem to expound on that unless I missed something.

Is this a result of bots on the other side adapting in some way to what you were doing? I would have thought you would be too small a player for them to notice.

rbc 6 days ago 0 replies      
I started the infrastructure for this kind of thing a while ago. It's BSD licensed.

It is a software implementation of the Viable System Model (VSM), a model for autonomous systems developed by Stafford Beer. It provides structure, communications, auditing and alerting for autonomous systems.

Part of it is base code for dealing with stocks and options, treating securities positions as autonomous systems that have the scaffolding for running simulations on themselves. It's in Smalltalk and runs under Squeak and Pharo. It can be found at:


I won't try to advertise it as a complete solution, but it might be the start of one.

pdog 6 days ago 1 reply      
Would you be able to open source any of the code behind your trading system? Maybe not the "secret sauce", but it would be interesting to see how you processed the data feeds, modeled the data, entered orders, etc.
nesu 6 days ago 1 reply      
Wait. This is not HFT. There's a huge difference between automated and high frequency trading. What he does is only automated scalping at best (or at the fastest).

Automated trading is more on strategy, while HFT has more to do with volume and speed. With automated trading, you predict price movements. HFT involves being a liquidity provider. You don't use market technical indicators in HFT, you wait for some really huge orders.

HFT firms won't bother him. Those are dealing with an entirely different set of algorithms. He should have contacted brokers instead.

mcarvin 6 days ago 1 reply      
Very important to understand that making $500k speculatively is not evidence of an 'edge', nor is trading frequency evidence of the absence of luck. From March 2009 through much of 2010, the market was strongly bullish - if his algorithm showed a positive market bias then his returns would primarily be a function of timing (read luck: and there are a million variants on the nature of the bias that could be unwittingly responsible for his returns, despite the frequency of trades).

We cannot even tell if $500k is a good risk adjusted return - we have no information on volatility, nature of the exposure or most importantly how much money he started with?

Not exactly shocked Jim Simons didn't return his email. But completely shocking that he walked away from a successful automated trading strategy... the only thing rarer than a free lunch is a man willing to walk away from one. suspect.

stickydink 6 days ago 1 reply      
Looking at your first chart there, is there a reason (other than market conditions) you were making significantly more at the end of '09 than mid '10?
nrmn 6 days ago 1 reply      
Could you comment on how your "curve fitting" algorithm worked? Did you end up with an equation for each curve? Im working on something that requires curve fitting and any kind of tip would be helpful.
wtvanhest 6 days ago 1 reply      
You said "Growth stopped" but your P&L shows negative growth approaching zero. Would it be more fair to say that your profitability turned to zero?
mrchess 6 days ago 1 reply      
Cool article but I hope people don't start trying to follow this path. Ask yourself -- why did he stop?
jcfrei 6 days ago 0 replies      
It is pretty clear from his own graph that this stopped working in october '10. which was an eternity ago in terms of financial markets. algorithmic trading has increased manifold since then, so finding another arbitrage opportunity like he did is only going to be more difficult.
dataisfun 5 days ago 0 replies      
This is an activity that adds no value to our world.
davidw 6 days ago 2 replies      
Looks like it's written in C# - is that correct?
FireBeyond 5 days ago 0 replies      
Hopefully not buried too deep, but any books recommended for getting into day-trading, either manual, or algorithmic? Kindle preferred, but definitely not the deciding factor.
Sharma 6 days ago 1 reply      
Trust me, you earned that much because of your luck. Otherwise Andrew Ng would have partnered with another finance professor and they would have been the richest people on earth!! Imagine trading with their expert systems on global markets.

I traded stocks and Forex for years and my experience says, it is not for everyone. What ever indicators,discipline or model you follow it is going to work only if you have the right intuition or luck!

doki_pen 6 days ago 1 reply      
Isn't profit meaningless without knowing initial investment? I read the first few paragraphs and got bored. Why not say upfront what the bankroll was to start?

edit: I found what I was looking for in the comments.

vinayan3 6 days ago 1 reply      
Have you ever thought of making a trading system that would buy tons of stock when a flash crash happens? It is going to happen again. If your system is ready and you buy before they shut the market down or roll back orders you could make a hefty profit.
sejje 6 days ago 0 replies      
I don't understand trading enough to even understand many of the terms in the article, however I'm curious to one thing: is it possible that a program could be written specifically to exploit yours? And/or is that a potential reason it became unprofitable?
namank 6 days ago 0 replies      
Might've been what it was a couple of years ago but this post, dated today, is the perfect advertisement for the author's current business.

Well done!

PS: no sarcasm intended, it truly is an excellent advert.

iandanforth 6 days ago 1 reply      
I'm glad to see a healthy respect for investment among the hacker community. It's traders like this who commit to nearly a full 10 seconds of ownership that are the backbone of economic growth for this country.
photorized 6 days ago 1 reply      
I am skeptical for two reasons:

1. when you have a good system (even one you cannot "improve" further), you don't talk about it.
2. You don't just stop using it.

There should be more to this story.

amalag 6 days ago 1 reply      
What contracts did you trade? Looks like you did futures contracts? Did you look into forex at all, or was this strictly equites.
junto 6 days ago 1 reply      
Out of interest, how much capital did you start off with?
ianstallings 6 days ago 0 replies      
I could do the same with poker. Or I could lose it all. That variance thing is a bitch.
suyash 6 days ago 0 replies      
@Author ? Can you create an online course and teach us all? Thanks
ww520 6 days ago 0 replies      
Very cool article. Gave a detail explanation of the ENTIRE process. Thanks!
derryl 6 days ago 0 replies      
This might be a dumb question but... what system does your algorithm interface with?

Last time I checked, NASDAQ and NYSE don't exactly publish API's

vincegata 5 days ago 0 replies      
Thanks for the post, it's very inspirational.

Could you explain this part, specifically what do you mean by "bucket"?

"To accomplish this I tracked predicted price moves in 50 buckets that depended on the range that the indicator value fell in. This produced unique predictions for each bucket that I was then able to graph in Excel. As you can see the expected price change increases as the indicator value increases."

vincegata 5 days ago 0 replies      
Thanks for the post, it's very inspirational.

Could you explain this part, specifically what do you mean by "bucket".

"To accomplish this I tracked predicted price moves in 50 buckets that depended on the range that the indicator value fell in. This produced unique predictions for each bucket that I was then able to graph in Excel. As you can see the expected price change increases as the indicator value increases."

dwk9080 6 days ago 0 replies      
If you're interested in working on this kind of stuff in the San Francisco area, send a resume to Headlands Technologies. careers@headlandstech.com
JuDue 6 days ago 0 replies      
"Since I'm no longer running my [half million dollar] program I'm happy to tell all"

This does not ring true.

hnruss 6 days ago 2 replies      
Just because you CAN do it doesn't mean you SHOULD. Even if you don't think of it as "gambling", you're still taking in tons of money without providing any tangible benefit to society.

If you want to make money from investing, why not do so in a socially responsible way? Invest in companies that are changing the world for the better. You might not bring home as much money, but at least you'll be able to sleep well at night.

MonteChristo 5 days ago 0 replies      
The prototypical example of why a tax on financial transactions is urgently needed.
curiousdannii 6 days ago 1 reply      
I'm sceptical that HFT is good for the public. What did you do to ensure your system wouldn't make a flash crash worse?
thisismyname 6 days ago 0 replies      
How much did you start with?
shizzy0 6 days ago 0 replies      
And nothing of value was created.

Just kidding. It was a fascinating article. Thanks for sharing.

hellsten 6 days ago 0 replies      
A rising tide lifts all boats. "Price move predictions" sounds as effective as tea leaf reading.
curationary 5 days ago 1 reply      
how is it "machine learning"? A few if-else doesn't make it "machine learning", or does it? - @curationary
leminhhai 5 days ago 0 replies      
Amazing, love your project
gubatron 6 days ago 1 reply      
of course no firm would respond to his noob low yield model.

The level of the coders doing HFT is beyond the comprehension of this guy, added to the team of Mathematicians, Physicists and computer scientists at your average HFT firm, they probably laugh when they read this.

Good try though, it was awesome that eventually he tuned it to profitability, but there's no way in hell they'd buy that amateur software/algorithm.

Kudos though for taking on the task of learning how to code and making money with ML.

mempko 6 days ago 1 reply      
Wow, fuck that guy. no really. Should be title "How I stole 500k with machine learning and high frequency trading".
loup-vaillant 6 days ago 2 replies      
While this was quite fascinating, I couldn't see this form of trading as anything but a zero-sum game. Some players win, the other lose, like in any other game.

Except finance is supposed to be "serious". In most serious, legitimate activities, extracting money means you provided value somehow. So, what value high frequency trading could possibly provide?

dschiptsov 6 days ago 2 replies      
Basically this is a story about a guy who was smart enough to script up his trading tool (he discovered that there is an API and wrote some code to use it).

He trade other people's money, using other people's (probably employer's) account and resources, I suppose.

His employer have paid all the fees, and, took all the risks - if there is profit - it is mine, if there is a lose - it is theirs.)

The essence of trading is about having a special (insider) position of even being a market maker, who just collecting fees from every trade other people do.)

But this is just my guess.

"I think you will all appreciate this person's commenting style" jwz.livejournal.com
505 points by ahalan  7 days ago   88 comments top 16
saurik 7 days ago 9 replies      
PSD was never intended to be a data interchange format: it is the serialization format of a single program that has more individual unrelated features that actual people rely on than almost any other piece of software and has maintained striking amounts of backwards compatibility and almost unbroken forwards compatibility during its over two decades of existence. This product's "file format" needs to be critiqued in this context, along with similar mega-programs like Office.

I am thereby having a difficult time fathoming why anyone would think that a PSD file is thereby going to be some well-organized file format that they should easily be able to parse from their own application is just naively wishful thinking: even other products from Adobe have limitations while opening these files; to truly manipulate these files you really need to be highly-compatible with Photoshop's particular editing model (hence the conceptual difference between these two classes of file format).

greggman 6 days ago 2 replies      
I'm pretty sure the PSD format chucks are based off IFF spec from 1985


Things were padded to 4 byte boundries because the 68000 processor would crash if you read an unaligned 32bit value. So the length of the actual data was what you find in the size field of each chuck but each chunk is padded. That way you didn't have to work around the 68000 quirks and read a byte at a time.

I wrote a psd reader in 93. It wasn't that hard and still works today. Maybe I chose an easy subset. It only reads the original result (merged layers) that gets saved when you chose to save backwards compatible files in photoshop.


gjm11 7 days ago 2 replies      
Has been on HN before (http://news.ycombinator.com/item?id=575122) but it was years ago. I mention this just in case others are having the same feeling of deja vu as me.
runn1ng 6 days ago 0 replies      
John Nack replied to this 3 years ago on his blog.


hcarvalhoalves 7 days ago 0 replies      
I appreciate the first code comment more after the introduction:

    if(sign!='8BIM') break; // sanity check

"Sanity check" as in "let's make sure it's really a PSD before we go insane".

drivingmenuts 6 days ago 0 replies      
So, I guess embedding a PSD in a DOC file is like putting a Bag of Holding in a Portable Hole?
bitwize 6 days ago 0 replies      
And yet to be considered a non-toy image editor, you must support 100% of this format perfectly.
smosher 5 days ago 0 replies      
This reminded me of just how nice the Doom WAD format is: http://doomwiki.org/wiki/WAD

When a friend complained that he had a hard time figuring out which maps were present in a given WAD, I enjoyed myself while writing a utility to organize them into directories with map numbers. I kept thinking: this is how you serialize data. Looking back on the code now, it's still easy to understand.

simula67 6 days ago 2 replies      
felipc 6 days ago 0 replies      
One of my favorite blog posts from Joel Spolsky talks about this, basically explaining how these formats come to be. For mega-softwares like those, the source code is the de facto file spec www.joelonsoftware.com/items/2008/02/19.html
dschiptsov 6 days ago 0 replies      
This is much better reason to hire a person than 10 resumes.)
brendandahl 6 days ago 0 replies      
If he thinks PSD is bad he should try PDF which is really about 30 inconsistent formats all packaged into one inconsistent format.
drp4929 7 days ago 3 replies      
Is this a comment or rant ?
flebron 7 days ago 1 reply      
I like the 'sanity check' at the bottom. :)
unix-dude 6 days ago 0 replies      
lol'd hard.
joshka 7 days ago 4 replies      
Whilst I enjoy jwz's writings, please follow the hacker news guidelines which can be found at http://ycombinator.com/newsguidelines.html

In particular:
Please submit the original source. If a blog post reports on something they found on another site, submit the latter.
The original source is

Please use the original title, unless it is misleading or linkbait.

Ghost " rethinking WordPress onolan.org
491 points by saltcod  7 days ago   224 comments top 55
photomatt 7 days ago 5 replies      
I really like some of the things John has done in his mockups here, especially on the write screen, and contrary to what he thinks ideas like this are more than welcome in the WordPress community. (For example check out the dramatically revamped media or the dozens of eliminated options in trunk right now.)

The one big mistake in his premise, however, is that only 34% of WordPress users are blogging, the actual percentage is much higher. The survey he quotes me talking about was of mostly people who make their living building WordPress sites (over 20,000) and mostly WordPress.org users. This community naturally focuses (and contributes) more on the CMS and application framework side of WordPress.

On WordPress.com, however, the vast majority of its millions of users blog, and are blogging more every day. If you visit WP.com you will see a simplified and streamlined user experience that is boldly different from the traditional wp-admin dashboard. Already we've seen huge boosts in user engagement from this new experience, and while it's a few dozen iterations from being ready I'm confident the best concepts will make their way back into WordPress core when they are ready.

But overall, I love seeing different people's takes on what the next generation of WordPress will look like, and I wish more people did blog posts like this. We've had 3 dramatic shifts in our evolution before, and the shape the next one will take is a topic that occupies most of my waking hours, mind space, and creativity. And don't even get me started on mobile... :)

ck2 7 days ago 7 replies      
The whole page is images, and it's a non-existent product, it's just a theory/proposal.

Buried in the text is it would be a fork of wordpress.

Net is filled with that sentiment, but it never takes off:


If you want to replace wordpress you need a modern rewrite, not a fork.

The #1 problem of wordpress (among many) is it loads every darn thing on every darn page and it's now a godzilla of a program so it's becoming a huge nightmare. A cache miss in WordPress on a busy server is a horrible, horrible thing.

You cannot escape that problem by a fork.

kijin 7 days ago 1 reply      
> Less Options ... there are still too many options, too many settings, too many things which you have an unnecessary level of control over in the administrative user interface ... Things that many people have never even used. Ghost would get rid of all that.

And you hope to captivate the hearts and minds of the open-source developer community? Haven't you seen what happened with earlier versions of GNOME 3 and Unity? We love options. We love settings. We don't want them gone, we just want them neatly organized and tucked away in an inconspicuous corner so that we can tweak them at lunchtime.

You yourself might have never used an obscure feature, such as posting by e-mail, but other people do use it every day, and will never switch unless they can keep using it. In fact, there exists an entire blogging platform (Posterous) that is based on the premise of posting by e-mail. Even my grandfather, who is utterly lost when it comes to regular blogging, can use Posterous because he knows how to send e-mail. Since Posterous is now on life support, I've been considering migrating him to one or another WordPress platform, precisely because WordPress supports posting by e-mail. If your fork removes this feature, it will fall right off my radar. I'm sure that somebody else will be able to tell a similar story regarding any WordPress feature that you think is unnecessary or unrelated to blogging. For example, "No Comments": excellent, now I need to send all my visitors to a third party who specializes in tracking them across the world wide web. Someone who had a blog about online privacy might consider it a case of hypocrisy.

It's easy to drop options and features that you don't see yourself using as part of "blogging". Anyone can do it, and each person who tries will get a product that fits his or her definition of "blogging". Such products, however, won't gain widespread use like WordPress has. A much more difficult but potentially rewarding task is to reorganize options and features so that casual users get sane defaults and power users can tweak to their heart's content. It takes a lot of careful thinking, planning, asking around, and UX experience to get this right, but once you do get it right, the difference can be stunning. As the saying goes, 80% of people only use 20% of features, but each person uses a different 20%.

One solution would be to organize these "extra" features into easily installable plugins, and to have those plugins ready before you sign off on your first official release. That would prevent the kind of negative publicity that surrounded the premature releases of some Linux interfaces. But another section of your write-up gives the impression that you don't want that many plugins, either.

PS: But you should definitely kill the ability to edit themes using the web interface. It's a security nightmare, leaving so many critical files writable by the web server. Also, the split view looks wonderful.

zacharyvoase 7 days ago 0 replies      

    > Ghost would be developed openly, and it would encourage contribution. Until
> now, Open Source projects have often had an incredibly high barier [sic] to
> entry for contribution, which is so complicated and convoluted that only
> advanced-level developers have ever really had a hope of getting involved.

> Ghost would facilitate open and easy contribution from people with different
> skillsets to help grow and evolve the platform. Because designers and
> developers working together to solve problems always produces a better end
> result.

N.B.: I'm talking from my experience with other open-source projects; I haven't worked with Wordpress before but I think there are some generalizations here that need addressing.

I disagree that there's an ‘incredibly' high barrier to entry with many FLOSS projects, over and above the technical ability to read and understand what's happening in the code (which cannot be made up for through community efforts, or indeed forking). The language used in this passage presents these issues as manufactured or intended, and therefore as problems that can be fixed by simply making different decisions. But they're fundamentally issues of community, and of time/attention management on the part of the core developers, and they require extraordinary patience.

It's very easy to say "get designers and developers working together". But, as I've seen with DevOps (which is the principle of "developers and operations working together"), the phrase "working together" is often used without any understanding of its meaning.

I don't want to come across as a naysayer. But seriously, if you have the answers to the problems presented here, a lot of people would love to know.

onli 7 days ago 3 replies      
You can't make a blog-software without comments. Well, you can try, but it wouldn't be a blog anymore. Letting the most important thing blogs achieve, enabling user-comments, get in the hand of proprietary external companies is totally absurd and a huge loss.

That being said, I like the idea of a focussed blogging software. Probably because I sometimes contribute to one: Serendipity (http://www.s9y.org). And there are so many different blogengines ones out there, including Wordpress-forks, and of course some of them focus on being a blog-software instead of a cms. Heck, like so many even I wrote a blog-software for myself, based on Sinatra, cached and with spamfilter and using browserid, which is already probably quite useable (https://github.com/onli/dsnblog, though the description paints the image of something more, till now it is only an almost complete blog).

avolcano 7 days ago 5 replies      
Have to say, the most intriguing ideas I saw in the concept were the two "split view" concepts - one for managing blog posts, and one for writing posts.

Has any blogging platform implemented anything like that? I know there are Markdown editors with a split view, but I don't know of any that are web-based, nor any that are integrated into existing blogging platforms. And I've definitely never seen any "manage/edit old posts" system as clean and simple as the one in the concept.

Oh, and btw, a brilliant concept that's super easy to miss - being able to type "(image)" in the editor pane and seeing an image upload placeholder in the preview pane. It's a small thing, but one of those things that seems way more obvious than it actually is.

twodayslate 7 days ago 2 replies      
Why is all the text a giant image? (That aside, the system looks great)
krogsgard 7 days ago 1 reply      
These are some beautiful concepts by John. However, I think it's also worth noting that just about everyone that works with WordPress wants to see the interface itself be simplified, even if most of us want to retain its flexibility as a CMS.

Here are some related notes from Matt Mullenweg on a "radically simplified WordPress" http://ma.tt/2012/05/simpler/

I'd like to see something like Ghost as a step two of Matt's thoughts, rather than a fork or separate project.

taylorbuley 7 days ago 0 replies      
Very interesting ideas here, for me particulary in the "free as in Mozilla, not as in Automattic" angle. Some might consider it blasphemy to say Auttomattic and WordPress have divergent goals so I'm glad people are having the discussion.

All that said, I'm not sure I want a CMS from someone who uses images for text instead of actual text


skeltoac 7 days ago 0 replies      
johnonolan I agree with the sentiment that got you there, but not with where you went. Because if you're just going to fork WordPress anyway, all you really need to do is replace the wp-admin theme.

Yeah, I said wp-admin theme. It's not generally considered a theme but that's what it is: the core-provided view of everything you can touch when you're an admin. Try thinking of the back end the same way you think of a front-end theme.

Unfortunately WordPress has not yet devoted a development cycle to making the entire admin area easily pluggable. Any seasoned WordPress developer could hack together a plugin that hijacks wp-admin URLs and displays its own interface. Several have. Wouldn't that satisfy your requirements?

Of course none of that addresses the issues around efficiency and performance. My hope is that WordPress will finally undergo a deep refactoring to remove its worst practices even if it means forcing updates to popular plugins and themes. There is no longer a reason to fear mass defection from the community for pulling that trigger. After the initial shock the changes would be embraced and everyone would enjoy better performance.

EnderMB 7 days ago 3 replies      
I'd almost like to see it go the other way. WordPress is a good blog, but a poor CMS choice for anything but the most basic of websites. I reckon the "66%" that use WordPress use it for personal sites or very small business sites (1-10 visitors a day) on shared hosting. There are huge sites using it, but they seem to be the exception that proves the rule.

I cannot see why people use WordPress over the likes of Concrete5 or a full CMS on any other platform outside of WordPress being accessible for entry-level developers. For this reason, a full rewrite of WordPress to be solely a basic CMS would probably have these novice developers flock to the system, allowing WordPress to scale back down to doing what it does best.

whalesalad 7 days ago 0 replies      
For those of you who might want to follow the dude on Twitter, but tried to copy/paste his username and realized it was an image:


John makes some great points, which is why I'd like to follow him and see the progression of this. One of us (or a few of us) are going to need to just get down-n-dirty and start building it.

The internet is indeed filled with a lot of sentiment for rebuilding WordPress. Most of us who've worked with WP a long time (since b2) have considered it (myself included).

I'd love to roll out of bed one morning and press a red LAUNCH button that releases a fresh new fork of WordPress to the world that's compatible with most of it's theme/plugin ecosystem.

HyprMusic 7 days ago 0 replies      
There's a little bit of contradiction in your desires: you say you want to keep "exactly the same theme and plug-in structure" but you also want to limit backwards compatibility. You also say you want to remove bloat and non-core features yet you want to bundle a load of questionable plug-ins. The nicer interface and UI would be welcomed, but I think if you start going too far you'll detract away from Wordpress's core appeal.

Don't forget there are many alternatives to Wordpress that have more features built-in, but Wordpress has succeeded because it's simple, flexible and easy.

robbiemitchell 7 days ago 1 reply      
Developers just cannot stop building blogging engines.
tibbon 7 days ago 1 reply      
This proposal makes many good points. If I were rewriting Wordpress, here's what I'd think of:

- Seriously consider redesigning the logical layout of the software. Some sort of rough MVC-ish pattern would be a huge improvement over the 'loop' in Wordpress which is almost impossible to deal with.

- I personally dislike PHP, but I do see its benefits in deployment.

- Make it easy to make beautiful typographic layouts. There's a reason this 1-page wasn't done in Wordpress itself; it is almost impossible to make 'hand-crafted-web' looks in Wordpress without deep CSS and HTML diving. Great blog post layouts shouldn't be that hard. Not all content is the same.

nwienert 7 days ago 0 replies      
If anyone is interested, the "refresh" branch of Obtvse implemented this "live preview while editing split screen" that he mocked up.



benackles 7 days ago 1 reply      
His argument about "No Corporate Arm of The Law" seems a little flawed. He compares WordPress to Mozilla and argues that Ghost will be more like Mozilla. Mozilla Corporation is a for-profit arm of Mozilla Foundation. They are nearly identical to the relationship between WordPress Foundation and Automattic inc. Each companies corporate arm generates revenue and reinvests those dollars and development resources back into their open source projects. This is the reason WordPress and FireFox have been such successful open source projects. They have the right balance of leadership, resources and community involvement.
snotrockets 6 days ago 0 replies      
A suggested fork of Wordpress (but not GPLed like Wordpress,) that requires giving external entities control of the comments on your blog, and with nothing but a few mockups in Photoshop to show for?

I'm guessing all the 477 points came from those looking at the pretty pictures but ignoring the text (two extra points could have been awarded by the author and his SO.)

kmfrk 7 days ago 1 reply      
Note to the author: if you throw those images into ImageOptim, you can save at least 15%.

Probably convenient when you get hit by HN - and don't seem to be hosting images on S3.


rglover 7 days ago 0 replies      
So is the argument to improve the visuals of WP, it's functionality, or both?

If I'm grabbing the thesis statement properly, it sounds like the idea is to make WP more flexible as a CMS. If so, that'd be very handy.

I'm not sure how it would work logistically, but it'd be cool if admins could flip a switch (maybe in wp-config) that makes a site either "blog" mode or "CMS" mode. Sort of like what you have to do to make a site networked (i.e. multiple blogs same domain).

I like John's ideas here, and this is something that should be talked about. If John has ties back to WP, though, I would present the ideas and make a case for letting him head up design or experience. The forking thing could get way out of hand (and confuse a lot of people).

Short of that, I'd say take the Ghost name and start building your own platform. It'd be cool to see another open competitor to WP. Especially if it shared a lot of the same principles.

geekfactor 7 days ago 4 replies      
I'd like to see a fork Ghost as a Rails app. Anyone game?
timmyd 7 days ago 0 replies      
It's a super interesting concept because I think more sites are using wordpress as a CMS and the custom skinning for wordpress sites has a spanned a new industry in itself.

As a site note: super +1 for the very last comment, made me laugh.

"i hate it/hate you/hate everything - Noted. Haters gonna hate."

mehulkar 7 days ago 0 replies      
You should change "Less Options" to "Fewer Options". It's one of those things that if you know the difference, you can't stop noticing it everywhere.
EwanToo 7 days ago 0 replies      
Personally, and I know this is a ridiculous dream, I'd rather see a clone of Wordpress functionality which maintained 95%+ plugin compatibility, but which had things like caching built-in (and just more sensible handing of files and databases in general).
forgotAgain 7 days ago 1 reply      
I have this great idea for a really cool new product. It shouldn't take a good coder more than a couple of days. Contact me if your interested.
shell0x 7 days ago 0 replies      
I don't think thats a good idea to outsource comments to a third-party platform. I don't like wordpress much, but one of the few things I like is the native comment function.
mokash 6 days ago 0 replies      
A lot of people are saying that you can't really make any significant changes because that would make a lot of plugins and themes incompatible with it. Well I say, keep Wordpress as it is but create a new version and invite some of the most popular theme and plugin authors to create their most popular themes and plugins for it before 'Ghost' goes out to the masses. Once people see how great it is, others will follow.

I personally think this is a really good idea however, I wouldn't remove the comment system.

I'd like Wordpress to be more flexible than it already is. I see websites like The Verge and Polygon, how they have different styles for different kinds of posts. They create beautiful reviews, very magazine-esque, how it's supposed to be. Giving this amount of control the users would allow authors to be a lot more creative and create even more beautiful and better websites than ever before.

sergiotapia 7 days ago 3 replies      
I'd love for a blogging platform that let me use custom CSS, Markdown (because I post code all the time on my blog) and free hosting.

Where is something like that?

Wordpress, atrocious code support.
Jekyll, too much configuration. I don't want to learn Jekyll I just want to post code.

Where is the middle ground for people like me? Sounds like this hypothetical "Ghost" is just what I'm looking for. Now if someone could build it...

iuguy 7 days ago 0 replies      
It looks really nice and I'd look into it if it existed, but it doesn't. Is there some sort of trend rising in putting mockups of vapourware?

I really like the split screen and markdown support. That would definitely get my interest. But please, ship 0.1 and let us know, don't tease us with vapourware.

BUGHUNTER 7 days ago 0 replies      
The most important thing would be a really good extension system - the wordpress plugin system is so massively broken and there are so many bad plugins - this crap must be sorted out - but it is a good place to study how to produce bad code.

Extensibility is the key factor for any modern web framework / language / system.

Also Wordpress is last-century with deployment options - there are no (built in) options for deployment and a smooth upgrade process including backups and optional rollbacks. The "automatic updates" claim by WP is btw. a good example for the limiting view of marketing jargon and how technical terms can be abused and this way educating millions of flies to eat tthe wrong food. Upgrade without rollback of course does not make sense and is no way "automatic".

Please, if you build a new system, study modern web frameworks before and please do NOT use PHP.

lionhearted 7 days ago 1 reply      
Very cool. Any thoughts on going the other direction -- the dedicated CMS way?
mseebach 7 days ago 3 replies      
"People often say that WordPress is free as in speech, not as in beer"

Do they? What do they mean? Can't you download the full, working source code of Wordpress anymore?

hippich 7 days ago 0 replies      
I guess it will cost me some karma, but...

Yes! Please do it. And put large text saying "This is blogging platform. Please DO NOT build your next e-commerce site using this software." :)

dave1010uk 7 days ago 2 replies      
As someone who makes WordPress sites almost 8 hours a day, what would be the best start is a rewrite of the WordPress core on a popular, modern framework (my vote would be Symfony2). This would bring a breath of fresh air to coding for WordPress. Ideally much of the API would be similar too.
krmmalik 7 days ago 2 replies      
Question for photomatt if you're still reading this comment thread, and since it might be my only chance to get dialog with you.

Are you considering any changes regards the stack, since many installations can have a issues with speed now (not intended as a criticism). So eg something like Postgres, or MongoDB even for the DB Backend?

pjbrunet 7 days ago 0 replies      
I created a custom blog platform from scratch, a real one ;-) I was thinking about releasing it but got busy with other projects. You can see a sample post here:


For comments, IntenseDebate. The backend is just four tables: options, posts, categories & feeds. (Yes, it aggregates feeds too.) Index.php does all the front-end work, another php file for the AJAX server, 4 more php files for the backend pages. Basically, interact with the database using AJAX datagrids. I can edit the blog without clicking Publish ;-)

timdorr 7 days ago 0 replies      
So, this is basically Ghost:Wordpress::Firefox:Mozilla.
nex_ 7 days ago 1 reply      
I like it but please drop "apple" stuff screenshot.
alphex 7 days ago 0 replies      
This is a problem being answered with a half dozen other projects. (I'm, admittedly a drupal guy. But I even know whats wrong with Drupal...)

Symfony, as a core framework for CMS's gives an amazing bedrock to build exactly what you're talking about.

... Just as an example of something else that exists that is working forward towards exactly what you're wanting to build, you should check out Apostrophe, http://apostrophenow.org/

And then theres the 90 other projects that exist on 90 other languages... But yeah, don't fork Wordpress, make something better.

webwanderings 6 days ago 0 replies      
You should also develop a seamless and easy way to migrate blogs off of Wordpress and/or Wordpress.com.

I also agree that they are taking WP to do too much and if you look at the history, it all seems like trying to keep up with the popular trends everywhere.

dylanhassinger 7 days ago 0 replies      
I love this, except for the part about building popular plugins into the core. That sounds like a path to more feature bloat.

Instead, what if there were a small set of plugins that were "Recommended by Ghost". They could be lightweight and specially geared for extending Ghost. But still totally optional. (sort of like Jetpack I guess)

knes 7 days ago 0 replies      
I hate you a little bit. I read the whole website and started looking for a download/signup link until I found out it is just a prototype, I'm very sad now. :(

HOWEVER, your idea / prototype / concept looks awesome and it is something I have been waiting for!

malandrew 7 days ago 0 replies      
Why is the title and the first three paragraphs an image instead of selectable text?
import 7 days ago 0 replies      
Forking WP is not a solution (maybe bad).
If you want to make a revolution write a blog app from scratch.
hevyw8 7 days ago 0 replies      
I was just about to poll my friends about a blogging platform in between Tumblr and Wordpress. Wordpress for my purposes has become analogous of iTunes.
kushti 6 days ago 0 replies      
How much money you got for Macbook ads? They are annoying. And having nothing common with blogging platform idea.
wolfparade 7 days ago 1 reply      
build this on top of jekyll or its a fail.
jfmercer 7 days ago 0 replies      
I would support this (that is, contribute code) if it wasn't written in PHP. Ruby, Python, Perl, node . . . anything but PHP.
JimWestergren 7 days ago 1 reply      
What is needed is a rewrite and not a fork.

But why Open Source? Such a proper rewrite is a big undertaking and I don't see how that could be pulled off without financial compensation. Why not offer it for let's say $19 per domain? I would easily pay for it and I am sure many others. This way you could at least pay salaries to developers working on it.

LittleBuddha87 4 days ago 0 replies      
a really nice idea! I love it! I have in january next year time is there a repository where i can fork and work on it?
sandGorgon 7 days ago 0 replies      
Postgres - and you got my money.
jgv 7 days ago 0 replies      
why is this web page a series of images?
apruss 7 days ago 0 replies      
All the "don't fork it, build it from scratch" and the opposite opinions aside, someone should actually do something about it. WordPress is indeed bloated and needs a solution faster than it takes for the X WordPress version to ship, which might be a year (or two) away.
nickporter 7 days ago 0 replies      
I really like the image drag and drop in the markdown editor!
mars 7 days ago 1 reply      
"wordpress is awesome"... NOT
Colorado measure legalizing marijuana passes coloradodaily.com
455 points by neverm0re  6 days ago   182 comments top 26
scythe 5 days ago 3 replies      
The most important part of this to me is that it generates a huge amount of precedent for the Latin American countries such as Uruguay and Guatemala that are considering legalization. The United States has used its global influence to push drug prohibition in other countries -- see for instance http://www.cannabis-med.org/english/bulletin/ww_en_db_cannab... -- and with these victories -- even if they prove to be merely nominal -- the people of Latin America can see that prohibition is crumbling.

There are some people who like to portray marijuana as a first-world-luxury or sideshow political issue, but for people in the countries most affected by the drug war, it is anything but. This electoral victory may just show some serious positive influence in Mexico, where the realities of drug prohibition have inflicted a lot of suffering on a lot of innocent people, and that's the real victory here.

moistgorilla 5 days ago 4 replies      
As someone that doesn't smoke weed and never wants to. I'm happy that this got passed. I want Cartels to go out of business.
trotsky 5 days ago 1 reply      
In unrelated news, doctors announced unprecedented drops in the number of 20-40 year olds suffering from migraine headaches, irritable bowel syndrome, depression and insomnia.
llambda 5 days ago 0 replies      
Interestingly enough, Washington State's similar initiative, Initiative 502, passed as well tonight. It would seem momentum is growing around legalization. How the federal government via the DEA and DOJ ultimately handle these two victories for legalization proponents may be telling in regard to how close a national concensus is.
pinchyfingers 5 days ago 2 replies      
Alcohol prohibition in the United States underwent a similar process. New York legalized alcohol, while it was still prohibited by federal law. Eventually, enough states had stopped arresting and prosecuting people for alcohol that it was not feasible to continue federal prohibition.

Yes, the DEA may have a presence in Colorado and Washington, but the vast majority of law enforcement is handled by local authorities. When enough local authorities stop enforcing the federal prohibition of cannabis, the prohibition will come to an end.

detst 5 days ago 2 replies      
I'm actually optimistic about civil liberties in this country. Didn't see that coming. Two states legalized marijuana and possibly four more states have approved gay marriage (btw, I rarely smoke and I'm not gay).

Let's keep this going.

46Bit 5 days ago 1 reply      
Provided this actually happens (ie: it doesn't get sabotaged by the DEA), I expect Colorado's tourist numbers and college applications will compete for the largest increase next year.

Not a weed smoker here, but good to see some sanity emerging.

DanBC 5 days ago 5 replies      
Prohibition is clearly stupid and has caused very great harm. Other people have mentioned the death and destruction in Mexico as one example. I am strongly pro legalisation.

But the links between cannabis and mental ill health remain unclear. We don't know how many people have mental illness caused by cannabis; we don't know how many people with an underlying illness have that illness triggered by cannabis; we don't know how many people with an existing illness are self-medicating with cannabis. (Legalisation will help. Researchers now have the ability to do better science.)

Mental health treatment in America is sub-optimal. I am concerned that legalisation and the lack of good health care is a bad combination. But this is just a gentle concern - I am still strongly pro legalisation.

Osmium 5 days ago 5 replies      
As an outsider, I'm not sure I understand what this means. Can someone explain how this will work in practice? in the sense that this doesn't over-rule federal laws, and presumably federal agencies (like the DEA) will still operate in Colorado?
stinky613 5 days ago 2 replies      
This is all well and good, but at this point there's no guarantee that the federal government won't slap it down. My limited understanding of the law suggests there are two avenues for the federal government to do so:

I. - Under the Supremacy Clause "the U.S. Constitution, Federal Statutes, and U.S. Treaties [are] "the supreme law of the land."...and mandates that all state judges must follow federal law when a conflict arises between federal law and either the state constitution or state law of any state." [1]

Whitehouse.gov lists Department of Justice Guidelines for (medical) marijuana laws, stating that "persons who are in the business of cultivating, selling, or distributing marijuana, and those who knowingly facilitate such activities, are in violation of Federal law, and are subject to Federal enforcement action, including potential prosecution."[2]

II. - Under the Interstate Commerce Clause, Congress has the power "to regulate Commerce...among the several States"[3]

A quick example of how the ICC could be applied:
If a farmer in Colorado buys fertilizer from a company in a marijuana-illegal state for the purpose of growing and selling marijuana they have engaged in interstate commerce and may be subject to the ICC.

I just hope that the federal government stays hands-off long enough to see what kind of net change in state government cash this can make.




dutchbrit 5 days ago 0 replies      
Good news! Let farmers grow it and people at home. Sell it, tax it, allow people to buy it in a safe environment instead from dealers that try to get people hooked on other crap. This makes weed less of a gateway drug and more a greatway drug.
at-fates-hands 5 days ago 3 replies      
I think they are plenty of good arguments for legalizing marijuana - however, things like this tend to make me think twice about it:

"In California alone, nearly 1,000 deaths and injuries each year are blamed directly on drugged drivers, according to CHP data, and law enforcement puts much of the blame on the rapid growth of medical marijuana use in the last decade. Fatalities in crashes where drugs were the primary cause and alcohol was not involved jumped 55% over the 10 years ending in 2009.”


seanalltogether 5 days ago 4 replies      
Are there any other instances of this kind of issue to compare this against and see how it's going to play out. I'm trying to think of other instances where something was illegal at the federal level, and states have made that legal?
tubbzor 5 days ago 4 replies      
Living in Colorado, I voted yes on Amendment 64. This was mostly because I think the hemp and 'recreation' industries will pull in a lot of tax revenue (of which, the first $40 million will be put directly into a public schools fund for the state), as well as potential job growth.

I'm not sure about the rest of the state, but Fort Collins and surrounding cities banned dispensaries within the city limits. Will this still be the case despite 64? Or will stores that sell marijuana products no longer be considered 'dispensaries'?

It will be interesting to see if the federal government will even let a hemp based industry get started up at all.

suby 5 days ago 0 replies      
At the time of posting, it also looks like Washington is going to pass their marijuana ballot too.


doctoboggan 5 days ago 1 reply      
This is a pretty big deal. It will be interesting to see how the federal government handles this.
signifiers 5 days ago 0 replies      
Didn't think I'd ever see a .gov page officially referencing: a) a ballot initiative, b) marijuana and c) Cheetos & Goldfish, but here you go: http://www.colorado.gov/cs/Satellite?c=Page&childpagenam...
larrykubin 5 days ago 2 replies      
pioul 5 days ago 1 reply      
The amendment will allow those 21 and older to purchase up to one ounce of the drug at specially regulated retail stores.

I'm glad this passed for the several reasons highlighted in other comments, but doesn't that mean every one of these stores will have to track who buys weed and how much in order to not sell more than one ounce to the same person?

And wouldn't that be very tempting for insurance companies or even corporations to get their hands on these records?

lsiebert 5 days ago 0 replies      
Legalization this is not. It's decriminalization under state law, but that doesn't mean that federal criminal laws go away. The Supreme Court is content to have both laws exist in force, IE, it didn't suggest in Gonzalez vs. Raich that medical marijuana laws are illegal exercises by the state, merely that they don't remove existing federal laws.
HistoryInAction 5 days ago 0 replies      
Can't wait to see the impact analysis from http://www.marijuanamajority.com/

Perry Rosenstein++

Inebas 5 days ago 1 reply      
I am having a hard time understanding the reasons for support here in HN so please help me out. A common reason cited is that it prevents violent crime outside of the US but is that a 'good' reason to support it? Suppose that it is a more powerful drug that is very hazardous to a person exist. Doesn't that speaks to the same situation? Should we legalize that as well?

I can't articulate it well but shouldn't we make the decision to legalize it based on whether it is good for this country? I'm unfortunate that it created a lot of bad side effects elsewhere but that won't ever stop.

With that said, I am for it because I think drugs shouldn't be treated like criminals. They don't 'hurt' anybody but themselves so it's along the lines of alcohol addiction, etc...

piokoch 5 days ago 0 replies      
I'am curious how health insurace companies will react. Would they charge more from people who take marijuana? Would it be legal for them to investigate if someone is cannabies smoker?
sigzero 5 days ago 1 reply      
I am sure the Feds are going to slap it down.
armenarmen 5 days ago 1 reply      
...and im trying to profiteer
black_kiwi 5 days ago 0 replies      
I wonder what the increase in tourism and population is going to look like
Obama's Secret Weapon In The South is 129 Million Years Old npr.org
450 points by weinzierl  4 days ago   302 comments top 26
rayiner 4 days ago 15 replies      
I think this is a great answer to people who ask why we still need things like affirmative action. Here you have a continuing demographic phenomenon that can be traced directly back to slave ownership patterns hundreds of years ago. It should be noted also that the black belt is also a terribly poor stretch of the country.

Unfortunately, it appears that socioeconomic patterns are imprinted more deeply than anyone would want, and more deeply than a lot of people would like to admit.

brudgers 4 days ago 4 replies      
Considering that Obama was trounced in those states and thus won no votes in the Electorial College, it is hardly a "secret weapon." Were it one, the consistency of its Democratic lean in previous elections, would call into question that it was his.

The article just promotes an ignorant sort of racial understanding while missing the really curious relationship between agriculture and his campaigns.

Obama's secret weapon has been Iowa.

andrewtbham 4 days ago 2 replies      
I live in Birmingham AL and the existence of the black belt is common knowledge here. http://en.wikipedia.org/wiki/Black_Belt_(U.S._region)

As a kid, I assumed it was called the black belt because of the black people, not knowing it's because the soil is black.

arethuza 4 days ago 6 replies      
I've been fascinated with geology ever since I realised that it is really history on an epic scale (living in Edinburgh also helps) - one book that really opened my eyes to the subject is Richard Fortey's The Earth: An Intimate History:


kitsune_ 4 days ago 8 replies      
This article is nothing more than blog spam. Yeah, it provides a link back to the original post, but that's about it. Even most of the images are lifted.
wallawe 4 days ago 0 replies      
How is this Obama's 'secret weapon'? There is an electoral college, and he lost these states by a landslide.
brown9-2 4 days ago 0 replies      
I would like to see the red-blue county map compared with a map of how populous those counties are.

Focusing on just the geography of which counties are which color can be very misleading when some counties have a million residents and some have thousands. The focus on county as a unit makes it easy to mistake size of county, and the resulting size of each color, as indicative of the overall vote total.

tzs 4 days ago 0 replies      
Interesting how this got no attention when it was posted 9 days ago, and takes off this time: http://news.ycombinator.com/item?id=4714274
username3 4 days ago 0 replies      
The Republican Party (also called the GOP, for "Grand Old Party") is one of the two major contemporary political parties in the United States, along with the Democratic Party. Founded by anti-slavery activists in 1854, it dominated politics nationally for most of the period from 1860 to 1932.


ctingom 4 days ago 0 replies      
Obama didn't win any of those states, so how is it a secret weapon?
m0skit0 4 days ago 0 replies      
Wow, fascinating. I was about to stop reading when you said it's because of plankton... I'm glad I didn't!
Tipzntrix 4 days ago 0 replies      
I find it pretty funny that it sounds like the author's implying black people will vote for Obama.

Then again, he did win somewhere from 90% to 98% of their vote [1], so the assumption is based in truth somewhere.


flxmglrb 4 days ago 1 reply      
How exactly is this a "secret weapon"? Obama did not carry any of the states in this region except perhaps Florida (it's still being counted), which is not even among the states with these swatches of ancient plankton deposits.

Also, if you look at the map it's clear the blue patches are clustered around major highways and rivers, which is where the population centers will obviously be. As we've seen before, the Democratic / Republican divide is very strongly along the lines of urban vs. rural. There doesn't seem to be any mention in the article of how that factors into this. Obviously there is a bit of chicken & egg thing going on with population and highways, but you would think there could at least have been some discussion of this.

patrickgzill 4 days ago 1 reply      
Summary: a lot of black people voted for Obama, giving him the edge in certain states.
debacle 4 days ago 0 replies      
Obama's secret weapon this Tuesday was Mitt Romney.

John Huntsman, had he have won the primaries, would have won the election.

ekm2 4 days ago 0 replies      
The problem with affirmative action is that it is based on race

The problem with the need for affirmative action is that it was the outcrop of slavery,which was based on race.

stretchwithme 4 days ago 0 replies      
More supporters living in some areas doesn't change the number of supporters. So not sure how this is a secret weapon.
tapertaper 4 days ago 1 reply      
This is more about slavery than plankton.

Fertile land does not equal Obama votes.

njharman 4 days ago 0 replies      
Reminds me of "Connections" TV show.
allenwlee 4 days ago 0 replies      
i don't know about this. this band basically traces the southern coastline. to me the simplest explanation is that coastlines (because they are richer) are largely white, so that inland populations in the south will be more black.
scorby 4 days ago 0 replies      
The butterfly effect in full effect!
xmpir 4 days ago 0 replies      
this is great!
helenvholmes 4 days ago 0 replies      
Huh. Interesting analysis.
readme 4 days ago 0 replies      
AUmrysh 4 days ago 2 replies      
I guess the conservatives get to reap what their racist, pro-slavery ancestors sowed.
stevoski 4 days ago 2 replies      
After an election there are so many stories like this explaining why certain voting patterns were pre-determined, or at least extremely likely.

Strangely, people don't write so certainly _before_ the election.

I'd be far more impressed with this type of story if it was published before the election.

Show HN: Non-Confusing, Visually Correct Slider Toggle UI chrisnorstrom.com
432 points by ChrisNorstrom  7 days ago   79 comments top 31
nnq 7 days ago 8 replies      
...now seriously, what's wrong with good ol' radio buttons and check-boxes? they seem 100x more intuitive and with some effort (yeah, more than it should...) you can make stylish versions of them that will match you design
freditup 7 days ago 1 reply      
The windowed slider panel is a great idea. I couldn't agree more with the author's assessment of how confusing normal switches as shown can be, as I've felt the same confusion in the past, and know others do too. Interesting post and great ideas.
mistercow 7 days ago 0 replies      
>However, there are a few times when a slider is warranted and even a Better UI choice:
>To switch back and forth between two states that both need to be described, such as a slider in your blog's control panel with “Published | Unpublished” as the choices for the article draft you're working on.

But we already have a UI element for that. In HTML, it's known as a "select" input, and it works very well, is extremely compact, and is already familiar to your users.

In fact, if you set the "size" attribute, then it even has the "window" functionality described in this article. The window typically is shown with no border, and it doesn't look as fancy, but other than that, it is exactly the same concept.

taligent 7 days ago 1 reply      
Wow. After all these decades and countless people we would have seen something like this before.

Reminds me of this little change that Apple made and then quickly reverted:


ams6110 7 days ago 0 replies      
To me the whole thing that makes it confusing for me is that real slider switches are labeled externally:


That's much more clear. You could even put a little red "lamp" next to the on which lights up when ths swtich is on and darkens when it is off.

Putting the label under the sliding part of the control is what makes it confusing.

EDIT: just noticed that huhtenberg posted the same suggestion

btipling 7 days ago 1 reply      
His "solution" is just a tab/nav bar with different styling:


Given that a click is simpler and quicker than a drag, I think this suggestion is a worse user experience than a tab bar.

Zak 7 days ago 2 replies      
I don't find the two-position slider switch confusing at all; it looks and behaves like a physical object - one of these: http://cdnsupport.gateway.com/s/POWER/SHARED/q0012508.jpg

The OP's controls are slightly more obvious visibly, but don't look as much like common physical switches and are more visually cluttered. The color-changing version doesn't resemble anything I've seen in the real world, though I'm sure it's possible to do.

mikeknoop 7 days ago 0 replies      
Lockitron also showcases the slider issue in their product video: https://www.youtube.com/watch?feature=player_embedded&v=...
shaunxcode 7 days ago 0 replies      
http://jsfiddle.net/LWFg3/6/ here you go. I call it ouija. Will probably bundle it as a component shortly.
huhtenberg 7 days ago 1 reply      
A simpler option for a binary choice is this -

On | | X | Off

joelthelion 7 days ago 0 replies      
Someone needs to send that link to the Gnome 3 devs :)
saurabhnanda 7 days ago 0 replies      
This seems so obvious in hindsight, yet this isn't what everyone comes up with!
duncanwilcox 7 days ago 0 replies      
You have to think of the constraints that informed the original design. There's very little horizontal space on iPhone and iPod touch, 320 points to fit a descriptive label and the control.

So labels on the sides don't work because of space constraints, on iPhone anyway.

The windowed version is also less space efficient than the stock iOS control but I think it has merit because it shows all possible states. What I'd change is reverse the tinting, to make the active state more visible and the other states shaded.

sturmeh 7 days ago 0 replies      
Take a quick look at ICS/JB on Android, which has already solved this problem.

The current state is written on the sliding bit, clicking anywhere will toggle it, but correctly show the current state.

The slider will also glow blue if it is on the ON state, and revert to grey on the OFF position.

See here: http://i45.tinypic.com/263jypz.png

countessa 7 days ago 1 reply      
It is nice, but to my mind, a slider is different to a switch. The classic "on-off" switch that the author takes on is like a light switch - to that end, it does its job pretty well, I think, telling you what state it is in.
taitems 7 days ago 0 replies      
If you're interested in adding the left/right style example and you're already using jQuery UI, you can use the ones I built here that inherit your slider styles:


troels 7 days ago 0 replies      
I like. The vertical variant looks very similar to a <select> element with the size attribute set. Maybe you could take some clues wrt styling from these elements? Not sure how that would look in a horizontal version though.
radley 7 days ago 0 replies      
It's certainly confusing as is, but a good designer will use other design cues like color and depth to reinforce the state.
gpvos 7 days ago 1 reply      
I think this is more elegant than a radio button.
denzil_correa 7 days ago 0 replies      
Sweet! This is quite nice. Good job. The best part about the solution is the consistency for different type of options like simple on/off options to ones which require long descriptions.
tyre 7 days ago 1 reply      
It certainly was non-confusing to try and slide pictures of sliders.
znaky 7 days ago 0 replies      
I think the way Apple is doing this is much more elegant. The on state is visualized by a contrast background color and the off state is just a gray background. Much more simple and much more visible. This proposed solution with a slightly lighter color as indicator of selection is not very good, sorry.

Also your solution becomes more of a list than a toggle. There are already a lot of similar designed selectable lists.

wangweij 7 days ago 0 replies      
Totally agree. I find it so difficult to tell my parents to switch an iPad slider to ON or OFF, so I simply tell them to make the capsule blue or gray.
nathan_f77 7 days ago 0 replies      
I just gave up on the idea of using a regular slider to toggle between 'Any' & 'All', because I didn't want the selected text to be hidden. This solution would be perfect!
GuiA 7 days ago 0 replies      
Congrats, you can add a paragraph about related work and an Usability section about arbitrary observed metrics on test groups and submit to CHI :)
kalms 7 days ago 1 reply      
Not a bad solution, but I'd still prefer a red or green state (In my experience, color trumps shape).

Of course that doesn't work for more than two options, but I have a hard time finding a decent use case for that anyway.

ieatfood 7 days ago 0 replies      
Wholeheartly agree. I made a mockup of just this issue a few weeks ago: http://dribbble.com/shots/747199-Night-Day-Slider-Switch
kmfrk 7 days ago 0 replies      
Will this work in terms of accessibility?
i_like_robots 7 days ago 0 replies      
Much better, it's obvious in hindsight. Now if you could work some magic on those horrible range inputs…
cheeaun 7 days ago 1 reply      
The sliders on the article seems inverted from iOS's sliders.

The article shows: [OFF [ ]]

iOS: [[ ] OFF]

joeyh 7 days ago 0 replies      
Congrats. You've invented the cursor.
Don't re-elect SOPA supporters on Tuesday nahurst.com
425 points by nathanh  7 days ago   172 comments top 17
tptacek 7 days ago 12 replies      
So, for instance, if you live in Minnesota, this page thinks you should vote for Kurt Bills instead of returning Amy Klobuchar to the Senate, because voting against someone who supported SOPA makes it sensible to vote for someone who supports a Constitutional amendment banning same-sex marriage and who believes we should consider unborn fetuses "persons" and thus ban not only abortion but also stem cell research.


The objections on this thread blow my mind. "But but but what if their opponent also supports SOPA?" How about first you make sure your "alternative" candidate doesn't think we should nuke Mecca? Jiminy Christmas, if you don't already know why you support your Senate and Congressional candidates and can't be bothered to go look up their positions on real issues, please stay the hell away from the voting booth.

sneak 7 days ago 5 replies      
Fuck that, don't re-elect PATRIOT Act supporters. SOPA pales in comparison to losing one's basic human rights.

(Hint: Obama renewed Bush's PATRIOT Act when it was due to sunset.)

The seemingly commonplace idea that popular american liberals are somehow less evil than the GOP is dangerous poison.

PS: inb4 instant-runoff voting

theevocater 7 days ago 1 reply      
If you are in CA, I'm not sure that voting against Feinstein will help you. Emken doesn't seem to have many real positions and her website is lacking in any real substance of her stance on issues. She has a lot of platitudes but it seems she basically just supports the straight Romney line with "repeal healthcare" "job creators" and other nonsense.

More importantly voting on a single issue that never even passed is dumb. Congress people tend to be older folks who don't know much about tech anyway. Supporting the bill should not be this poison pill. In fact, if anything, supporting it and then pulling support once they learned of the opposition should be celebrated as a successful execution of American politics.

Anyway: educate yourselves.




ssharp 7 days ago 2 replies      
I think it's irresponsible to say "don't vote for this incumbent because he/she supported SOPA" without offering any explanation on the alternative candidates' positions on SOPA. It seems probable that some portion of the opponents might also support SOPA-like legislature.
hypersoar 7 days ago 1 reply      
In California, he hasn't taken into account redistricting. If you live in the the new 30th district, your choices are Brad Sherman and Howard Berman - both on this list. There are a lot of people involved in the entertainment industry around there (it's in the San Fernando Valley), so it might be impossible to elect someone not beholden to it.

(I know this because I used to live in Brad Sherman's district. I never expected that area to have a competitive congressional race, and now it's the site of one of the most expensive, bewildering, and viciously competitive races in the country.)

pooriaazimi 7 days ago 0 replies      
But what if they're excellent (in your opinion) in every other aspect? If you agree with them on 20 issues, and disagree on 2, it's better (and IMO, you're being much more responsible) to vote for a pro-SOPA than to vote for someone who's against SOPA but is a complete bozo.

I think you should not decide for/against someone just because you agree/disagree strongly with one of their ideas.

(Note: I'm not in the U.S. and like others disagree with SOPA)

gyardley 7 days ago 0 replies      
Are there any districts on this list that are remotely competitive? I'm sympathetic, but I really don't understand why people bother attacking entrenched politicians in non-competitive districts when they should be identifying more competitive races and directing resources there.

A case in point: TX-21, the district I live in, which is on this list. Rep. Lamar Smith will be re-elected. There is simply no chance of any other result. That didn't stop anti-SOPA campaigners, primarily from Reddit, from sinking tens of thousands of dollars into a challenger in the Republican primary - a challenger who didn't manage to get 15% of the vote. They might as well have lit the money on fire.

jacoblyles 7 days ago 1 reply      
A little bit late on this one. If the internet freedom coalition wants to be effective they need to take a clue on grass roots organizing from the Tea Party and target the primaries. There you need far fewer votes to be effective. And you can recruit someone who you know is good on the issue.
Nursie 7 days ago 1 reply      
This just highlights the main problem with representative democracy as I see it.

I don't care who represents me. I'm not interested in their personality or values, I couldn't give a fig if they're black/white, male/female, gay/straight, republican/democrat/whatever. I care about issues and how they get addressed in legislation.

So what do I do when I'm presented with someone who is pro-SOPA on one side (but also pro a bunch of stuff I like) and someone who is anti-SOPA but pro a bunch of other things I consider abhorrent?

Politics of party and politics or the personality-cult need to end.

btipling 7 days ago 0 replies      
I think this article might have made more sense during the primaries. I'm not happy with Feinstein supporting SOPA, but I'm not going to vote for her conservative opponent who probably also would have supported SOPA.
antidoh 7 days ago 2 replies      
For those who react to not voting for A, because B is worse in some way, there is an alternative: vote 3rd party. Any party, it doesn't matter. You're voting for a message, not a result.
zzzeek 7 days ago 0 replies      
The bigger picture around SOPA is the attitude that large corporations are to be blindly trusted and given ever more power over individuals. No trend pushes this agenda more than privatization. SOPA has its roots in the privatization agenda (see http://torrentfreak.com/the-privatization-of-copyright-lawma...), which I would argue is more of a "big picture" issue where there's a clear ideological difference between Democrats and Republicans. Voting against Democrats, who are at least very skeptical if not opposed to privatization in many cases, in favor of Republicans who are usually 100% pro-privatization in almost all cases, who would also have the same or worse position on SOPA, is at best very ignorant.
givan 7 days ago 1 reply      
I think that there is a big problem with having so few candidates, even for the president there are only two candidates.

This is a very big problem if one supports acta and the other one supports baning abortions or something like it, choose the smaller evil? this is stupid, the system must be changed.

stretchwithme 7 days ago 0 replies      
I for many important things and against others, but one cannot vote on just a few issues the way our system works.

We wouldn't to sacrifice some things for other things if we could be represented by a person of our choosing. And, no, I don't mean choosing between two choices someone else picked.

When you're influence gets watered down and distorted, that means other people are getting more than their fair share of the power.

And no you know how banking works.

zhemao 7 days ago 2 replies      
The problem with this is, how can we be sure that their opponents won't also vote for such legislation if they get into office?
GotAnyMegadeth 7 days ago 0 replies      
perhaps this should be "Don't re-elect SOPA supporters on Tuesday, but make sure you vote for an alternative."
verysquishy 7 days ago 0 replies      
How about this Indiegogo to educate Congress:
Washington voters approve legalized marijuana mynorthwest.com
397 points by llambda  5 days ago   133 comments top 12
ComputerGuru 5 days ago 10 replies      
I'm not someone who would take advantage of the legalization of marijuana, but I am in favor of legalization because I don't think it's the government's job to tell you what you can or can't do. If drinking is legal, smoking weed should be too.

I understand the concept behind a tax on marijuana, but I don't understand a 25% tax on every stage of the process... If you're saying that it's legal to use marijuana responsibly and you're limiting how much you can buy, I don't see the point of a whole 25% tax on top of that.

Is marijuana bad and the government needs to bribed to let it? Are we selling out purely for the economic benefits? Or is neutral and the government are running what boils down to a protection racket?

blackhole 5 days ago 7 replies      
Provided we also legalize same-sex marriage, this voting cycle will make me proud to be a Washington native.
Tiktaalik 5 days ago 2 replies      
It'll be interesting to see what, if any, effect this has north of the border in British Columbia. Marijuana decriminalization and legalization has often been discussed in Canada, but one of the main arguments against a change in the law is that the United States would not approve. Seems like that may be changing.
davidw 5 days ago 0 replies      
It'd be nice if we could leave politics to other sites, please. Pretty please? There are a zillion sub-reddits where you can discuss this stuff as much as you want, but just one Hacker News, which does not need to go political.

(I'm pretty happy with the results too, but that's neither here nor there)

jayfuerstenberg 5 days ago 0 replies      
Congratulations Washington! Today is a day of forward thinking across the United States.

Also, Colorado voted to legalize Marijuana as well.

veidr 5 days ago 0 replies      
Ah, the smell of progress...
numbsafari 5 days ago 2 replies      
This'll take a lot of pressure off of people in Redmond...
exolxe 5 days ago 0 replies      
It's interesting to consider how much of the legislative and voting process actually impacts the act.

A lot of voters probably view marijuana as positive/neutral, though how many were actually swayed by the 25% tax?

In the end there's a larger systemic problem, where you compromise and are either hurting consumers of a neutral/positive product or benefiting as a governmental system by feeding off of a negative product. Either way, regardless of your views it's a forward step for society, though with somewhat perverse implications.

adamnemecek 5 days ago 0 replies      
I just moved here but this seems like a big deal too http://vote.wa.gov/results/current/Initiative-Measure-No-124...
Metrop0218 5 days ago 0 replies      
Moving up next year, makes me happy to see.
hayksaakian 5 days ago 0 replies      
We also got another district this cycle. Hurrah. Northwest peoples!
colmvp 5 days ago 0 replies      
California... shake my head
Alone Together, Again al3x.net
397 points by michaelfairley  1 day ago   108 comments top 21
SoftwareMaven 23 hours ago 13 replies      
I spent so much time trying to organize the life that I thought I wanted. It wasn't the same as living.

Every single time I've tried to push my life in a direction, tried to bend it to my will, it has blown up in my face. So, while I have things I'd like to do and places I'd like to go, I've learned to just let things unfold as they may. I try to influence and guide it, but I don't push it anymore.

I think it comes down to my reaction to the results of trying to push it. When I'm letting it glide, I'm unconcerned about things going in the wrong direction and am happy when they do. If I'm trying to push it, I wind up concerned when things go in the wrong direction and not particularly happy when they do (that was where they were supposed to go, after all).

I learned this lesson at a much older age than I should have.

pdeuchler 23 hours ago 1 reply      
Thank you so much for posting this Alex.

I'm young enough for marriage to seem distant, and my parents are still married, yet more than half of the children I grew up with had divorced parents and I have several separated family members.

It's not uncommon for most of the families on a suburb block to be divorced, especially in certain areas (most of my affluent white friends had antagonistically divorced parents, mainly due to money)[1]. The U.S. still has a large problem with divorce (~50%), and especially with divorce among families with children.

Divorce is far too often considered "taboo", as stated in this article, which is quite a travesty because I've found discussion can provide great benefit to not only those already affected by it, but those contemplating long term relationships. We consider divorce a "failure" in modern society, and in my opinion that's very often not the case. Many times divorce can mean simply a resolution of irreconcilable differences. However the law, lack of openness and general societal pressure can turn even amicable splits ugly.

In the end I've found closure like the OP describes always the most helpful: realization that life continues to go on, and even things that you relate with the old relationship (in this case, technology) will still be there as they always were.

[1] I feel it's important to note that divorce rates are highly variable dependent upon ethnic groups and demographics

colmvp 1 day ago 5 replies      
“Divorce is always good news. I know that sounds weird, but it's true because no good marriage has ever ended in divorce. It's really that simple. That's never happened " THAT would be sad. If two people were married and they were really happy and they just had a great thing, and then they got divorced, that would be really sad. But that has happened zero times. Literally zero.”

Louis CK

sakopov 22 hours ago 2 replies      
This June i jokingly told my fiance "I wish you a great husband" on her birthday. She laughed. I laughed. 2 months later and 1 month before our wedding we separated in the most disgusting, disturbing way possible. The joke was also on me. I was alone and devastated. Then suicidal. Then just hopeless and completely alone. I'm not sure i know how to cope with this. Life as a gigantic lesson, never meant to be completely understood. You have to accept, reflect, move on and hope for the best. I think you've managed to fight at least half of the battle. Very interesting read. I wish you the best. I think you're almost there!
mcav 23 hours ago 2 replies      
Christ, commenters, lighten up. Not every emotional blog post is a heartless grab for attention. If you don't like it, just ignore it and go do something else. Don't punch the guy just for the hell of it.
javajosh 22 hours ago 0 replies      
The point that the OP seems to understand, but doesn't explicitly state, is that no life situation, however apparently solid, lasts forever. The first section has a distinct tone of numbed acceptance, the voice of someone who has just experienced absolute horror, and who's view of the world is far more balanced than an ordinary persons. Most of us live under the delusion that we are safe, that our situation is safe, and that tomorrow will be better. This is comforting, and probably useful as a coping mechanism. But it's not true. No matter how healthy you are, you could get sick. No matter how solid your job, you could lose it. No matter how much you love your wife or you think she loves you, she could have an affair and ask for a divorce.

When pain stacks upon pain stacks upon pain until you can't take it and then it keeps going even more for an unimaginable time, something burns away in you, leaving you a kind of stark clarity about the world and yourself. It is a realistic view, but not a happy one. I believe they call it 'shock'.

What we conventionally call 'happy' is actually a pleasant delusion. (Luckily?) this delusion is quite resilient! It seeps back into us, and we start to believe, once again, that everything is actually going to be okay this time around.

You wouldn't think it, but I think it's easier if you don't suffer this sort of torment alone. Consider the life-bending events of 9/11. Overall, I'd say that New Yorkers recovered emotionally really, really fast, mainly because everyone felt that horror and shock. But personal tragedy like this is tough because our culture tolerates friendship that doesn't tolerate "general unpleasantness". Anyone going through this will be a wreck, that's a given. But so often friends will turn their back, unable or unwilling to endure the unpleasant inconvenience of a friend in dire need. This is, of course, inhuman.

So yes, kudos for a well-written piece, and may you find happiness once again (you will).

gooddelta 23 hours ago 0 replies      
The fast-paced tech industry often has this effect on its devotees. People like Alex live their lives at an accelerated rate. They work hard. They make their money at a young age. They compare themselves and their lives to the people around them -- people often twice their age -- and wonder why they don't have what their elders often have: family, children, a sense of self-understanding. Alex is young; 27 years old, if I'm not mistaken. He's done more, created more, and experienced more than most people his age, including having a four-year marriage. Do you remember what four years of anything felt like when you were his age? It's an eternity. His angst at having lost it and, in part, his realization that the life he was constructing for himself was not the life he wanted, is completely justified.

He deserves immense credit for showing this level of transparency. If you haven't taken some lesson away from this post, then you need to re-read it. It's not about empathy; it's about the importance of self-discovery.

erickhill 21 hours ago 1 reply      
Having lived through a similar experience as Al3x, my biggest take-aways after the fact were:

- If she/he finds enjoyment from it [pick anything] then encourage it. Don't find a fault in it and be an ass.

- Comments and attitudes over time do matter. Don't be condescending. You're not "all that." You may think you are, but you're not.

- Everyone has dreams. They may not align with yours. That's OK, if you aren't narcissistic and an egoist. Look in the mirror from time to time.

Everyone wants to be loved. Everyone wants to be appreciated. All work is honorable.

unoti 12 hours ago 0 replies      
A while back I moved, and my Mom asked me if I felt at home yet. I told her, "I felt at home the moment I plugged in the first ethernet cable."
pyrotechnick 19 hours ago 0 replies      

Thank you so very much for sharing your story. This degree of honesty is far too rare and is absolutely commendable. More appropriately, your story resonates in strong sympathy with mine.

"I owe my life to technology."

Those who've never uttered this are simply unable to grasp the extensive implications of such a notion. Even in those who don't openly admit it, it eventually manifests itself; often in bizarre ways. A friend of mine has the "transistor" symbol tattooed across his forearm; another wears small electrical components as jewellery. Neither are able to readily admit just how much technology has effected their lives; particularly to their partners. This failure of honesty was the downfall of my most cherished relationship, and many since. And I fear, many hereafter.

"I tried to imagine what my life would be like in the wake of all this if I had been living two hundred years ago. Most likely, I would be trapped. I would be living in the scraps of the life that had unraveled around me. I could not seek the support of friends from around the world at any time of day or night. I could not book passage to wherever I felt I needed to escape to. I couldn't work from wherever I happen to end up. Trapped."

The truth is: our fixation on all things technological is merely a symptom of what's otherwise a distinct disease. We yearn for a life less ordain, less automated and yet it's these very concepts we attempt to employ in our escape. We've been sold a lie. In the past, escaping to seek counsel was much easier. There were entire unchartered continents boasting unique foreigners with novel, enlightening perspectives. Sure, technology has made these endeavours vastly more efficient, in terms of both time and work. But at what cost? It is my observation that in our advancements, we dilute our power to transmute our problems into solutions. Meanwhile, technology has not universally transformed the degree to which all members of our species cooperate. The shifting all of our burdens onto what we believe will save us, in this case technology, has been incredibly disempowering for us all. The problem has never been in our technology, or lack thereof; it was, and always will be, in us.

"It is now nearing mid-November and, despite a hurricane and a freak snowstorm and the general insanity that is this place, I'm still here."

That you are. If ever your answer to the question "Am I alive?" is "Yes", then your purpose here on this planet has most certainly not yet been realised.

You are going to make it.

Eyes open. No fear.

_debug_ 10 hours ago 2 replies      
> I packed up what was left, put all but necessities into storage. Sold my car.

(Not directly related to the article, but) : In the West, is it always the husband that has to leave the house? I once saw a movie in which the husband comes home and discovers that he being offered a divorce, and the wife says, "Leave my home". She was a stay-at-home wife, and he was working. I found it odd that she refers to it "my home" rather than "our home" or "the home" or "I think it is better if we both live apart", which is more civil.

If so, it's a cultural dictum, rather than a legal one, right?

(I am from India and I don't know many divorced people).

sneak 21 hours ago 0 replies      
I had the good fortune to meet Al3x this year while he was traveling, before this article was published in The Magazine. I heard most of this story over drinks in Berlin.

Had I heard the same kind of story from just about anyone else, I think it would have been pretty uneventful, but to sit across from someone so undeterred by some of life's largest challenges was pretty moving. I imagine the sort of outward displays of not-really-togetherness I'd probably display under similar circumstances, and Al3x's matter-of-fact and direct way of dealing with it was pretty inspirational. It totally comes through in this piece, too.

What a guy.

saym 23 hours ago 0 replies      
I found myself stopping to digest several phrases. On top of being courageous and open about your experiences, you certainly have a way with words.

Thank you for your honesty. As someone who lacks life experience, I sincerely appreciate your perspective.

themgt 1 day ago 4 replies      
I spent four years telling anyone who asked how we met that OkCupid's matching algorithms must have been off. “We were only a seventysomething percent match, with like a twelve percent chance of being enemies. Guess they need to work some bugs out!” The joke's on me, of course. I emailed the right person at OkCupid to apologize for the years of disparagement.

This about a 4 year relationship? The whole thing reads like someone who needs to do a lot more self-reflection.

datalus 22 hours ago 0 replies      
Probably one of the most human pieces on HN. The comments so far are enlightening.
cageface 22 hours ago 0 replies      
The bright side of course is that the world is open right now in a way it's never been before. I've spent the last two years bouncing around the globe, mostly in SE Asia. Thanks to the internet and a remotable skillset I can land in a new city tomorrow and have income and probably new contacts willing to show me around town.

This kind of thing is always traumatic but it's a great time to be a hacker with no ties.

kafkaesque 11 hours ago 0 replies      
I can relate. When this happened in my life, I listened to Dave Mason's "Look at You, Look at Me" a lot, which is, interestingly enough, from the album Alone Together.
perfunctory 20 hours ago 0 replies      
> Maybe technology made it all too easy to slide into a life I wasn't meant to have. It would be so convenient to think that way. Marriage didn't work out? Blame the dating site.

Some people probably do believe that a dating site is the one to blame. Sad.

pizza 22 hours ago 0 replies      
Busy, busy, busy, is what we Bokononists whisper whenever we think of how complicated and unpredictable the machinery of life really is.
liberatus 15 hours ago 0 replies      
"It is taking time to make things whole again..."

Try saying: 'It is taking time to make things "feel" whole again.'

I know it's a small difference, but it provides (imho) a more accurate perspective. Perspective is a lot, if not everything.

Point is, you're already whole, but it takes time to feel it.

diminish 18 hours ago 0 replies      
can we hack divorce, hack life, hack being alone?
Python Libraries you should know about doda.co
391 points by trueduke  18 hours ago   60 comments top 22
llambda 13 hours ago 3 replies      
I'm only surprised to not see any of Kenneth Reitz' work on this list, e.g. Requests. In fact in that vein is rauth, an OAuth client lib built on top of Requests (https://github.com/litl/rauth). Full disclosure: I'm the author of rauth. :)
leftnode 13 hours ago 1 reply      
One I'd like to add is Docopt: http://docopt.org/ and https://github.com/docopt/docopt

It makes it very simple and intuitive to build command line apps.

Permit 14 hours ago 3 replies      
Is PyQuery fast? The whole premise of the first point was that BeautifulSoup was too slow, but then he didn't provide a comparison between them.
mercuryrising 9 hours ago 1 reply      
Since everyone is asking (and no one is doing), I put together a simple benchmark for pyquery, bs4, and lxml (cssselect/xpath).


All it does is grab paragraphs from python.org's html a couple thousand times.

    ==== Total trials: 100000 =====
bs4 total time: 31.6
pq total time: 9.3
lxml (cssselect) total time: 5.4
lxml (xpath) total time: 4.3
regex total time: 8.9 (doesn't find all p)

What does it mean? Unless you're running thousands of queries for parsing, it doesn't matter which library you choose. My computer old and slow. Pick which one is the easiest, that you'll fight the least with. Don't put energy into unnecessary optimization. Using a good library is like choking someone, they'll fight for a little while until they pass out. (you'll remember this analogy next time you want to switch libraries, do you really need to choke someone to get your job done?) After they pass out, it's smooth sailing and you don't have to worry. Don't rock the boat unless you have to.

bjourne 14 hours ago 0 replies      
When compiling lists of the best Python libs, one definitely has to check out Pocoo: http://www.pocoo.org/ They are a bunch of dudes who are incredibly skilled at putting together great API:s. All their libraries, from pygments, jinja2 to sphinx are well-documented and extremely simple to use.
takluyver 15 hours ago 2 replies      
The very first suggestion complains that BeautifulSoup is too slow, but as of version 4, it's actually just a navigation layer on top of your preferred parser. So it's as fast as lxml, and as easy to use as, well, BeautifulSoup.
marcofucci 15 hours ago 2 replies      
You should probably add requests http://docs.python-requests.org. Anyway great list! I'm already using most of them and they are awesome.
reinhardt 5 hours ago 0 replies      
If you do any non-trivial work with decorators, the `decorator` module is a must: https://micheles.googlecode.com/hg/decorator/documentation.h.... Think of it as @functools.wraps on steroids (though this probably doesn't do it justice). FWIW I think it should be in the standard library.
roryokane 8 hours ago 0 replies      
Here are some Ruby libraries I've used that are similar to those Python libraries:

pyquery equivalent: Nokogiri (http://nokogiri.org/). Lets you select elements with jQuery-like selectors. Uses libxml2 as its parser.

watchdog equivalent: watchr (https://github.com/mynyml/watchr). Run code when the filesystem changes.

path.py equivalent: rush (http://rush.heroku.com/). Provides a far better API to the filesystem than the standard library.

I also found this equivalent to fuzzywuzzy, but I've never used it: amatch (http://flori.github.com/amatch/)

think-large 13 hours ago 0 replies      
I <3 you OP. So much right now. I didn't even know i needed these until I read this post and now I know and I'm so happy.

I know matplotlib comes with Python(x,y) but that's a pretty awesome one too.

JeffJenkins 7 hours ago 1 reply      
The coolest part of dateutil isn't the parser, it's the recurrence rules and recurrence rule sets. Doing that on your own is extremely error-prone if you have a non-trivial recurrence.
polm23 2 hours ago 0 replies      
No mention of pandas or nltk?

I'd never heard of pattern before, and while it looks like it's a nice bundle of features, I'm concerned by the fact it references pyWordNet by name even though it hasn't been an independent project since 2006 (http://osteele.com/projects/pywordnet/). Has anyone actually used it?

dm8 4 hours ago 1 reply      
Excellent collection! I will add one more.

Python Imaging Library - Today's web is full of images and PIL makes it easy for image manipulation. Although, it's not extremely performance efficient at very large scale.

Tloewald 14 hours ago 1 reply      
Speaking as someone with approximately 4h of Python experience -- great list. I'll be using the sh lib right away.
rabialam 11 hours ago 0 replies      
Great list. In particular, fuzzywuzzy and pattern caught my eye in a "how-have-I-not-heard-of-these" kind of way.
chewxy 5 hours ago 0 replies      
The latest BeautifulSoup uses lxml (version 4+). How does it compare to PyQuery?
denzil_correa 17 hours ago 0 replies      
Thanks for sharing. These are a nice set of libraries I never used. I am bookmarking this page.
jnazario 11 hours ago 0 replies      
for fuzzy date work i tend to relay on the parsedatetime module:


it seems to accept syntax similar to the 'at' command does (and obviates the need for my python C module to do that parsing based on the scheduler parser for 'at'). examples include "1 day ago", "ten hours from now" and the like. very useful.

nathan_f77 9 hours ago 2 replies      
This is quite a cool idea:

>>> path('a') / 'b' / 'c'

It would be fun to have that in Ruby!

brunoqc 8 hours ago 1 reply      
You have a typo. Search for 'PyQyery', twice.
mochizuki 18 hours ago 1 reply      
I have a few scripts that could benefit from PyQuery, didn't know about that one. Also path.py looks like it will save me some time to. Thanks!
the1 12 hours ago 1 reply      
watchdog is pretty buggy on linux at least.
The Best dcurt.is
388 points by jordanbrown  5 days ago   294 comments top 72
mapgrep 5 days ago 36 replies      
This is empty madness. It is, very literally, a celebration of total materialism.

What is ultimately important in life are people -- messy, filthy, bacteria-and-disease-laden, imperfect, emotional, sweating shitting cursing crying screaming laughing farting people and the connections we build to them.

This celebration of spending insane amounts of time choosing the perfect flatware or the perfect wallet is sick. Steve Jobs spent eight years discussing furniture with his family before buying a sofa etc (http://www.newyorker.com/reporting/2011/11/14/111114fa_fact_...). I will never do that, and I will never have flatware as nice as Dustin Curtis', and I will never have sound as good as an obsessive audiophile, or the perfect car.

I won't even write a particularly convincing Hacker News comment on this very topic. I've got to go. Life is too short for this shit.

onan_barbarian 5 days ago 1 reply      
It's almost beyond parody: "when you have trust in everything you own, you don't have to worry about anything. It's liberating and an amazing feeling. My life was markedly better because of it."

Right, because sane people would otherwise spend a lot of time sitting around worrying about their stuff.

It reminds me of a Louie CK routine:

"I need the best Blu-Ray! What are you, the King of Siam? You deserve the absolute best everything? These machines are all the same, made by the same Asian suffering."

Swizec 5 days ago 2 replies      
Dustin thinks he's discovered something new, instead he's just a product of this generation. The generation new york times once characterised as "Would rather own one pair of $100 jeans than ten pairs of $10 jeans".

Our parents are mystified. Their parents much less so.

atourgates 5 days ago 3 replies      
Finding "the best" of a product is an obscure hobby. And I'm all for finding joy in an obscure hobby. But I have a hard time believing that Mr. Curtis is any more liberated by the flatware that he spent 6-months researching than I am by the set I happened upon at Crate and Barrel.

I wholeheartedly admire people like Sori Yanagi who work hard to create "the best" of anything. I also wholeheartedly believe that trying to pin virtue on the process of being a consumer of "the best" of anything is little more than pretense

oz 5 days ago 4 replies      
This is the age-old debate of maximizers vs satisficers:


In a nutshell, Dustin is a maximizer.

Regarding flatware, my views have changed as I've grown older (I'm 26). A few years ago, I didn't care. Now, for some reason, I always reach for a specific knife/fork combo: I like the weight (most are too light for me), the balance between the handle and the blade/tines and the industrial design. Eating with them just feels better.

amix 5 days ago 0 replies      
I think this kind of obsession (about things that don't matter) was best portrayed in American Psycho's business card scene: http://www.youtube.com/watch?v=qoIvd3zzu4Y
gfunk911 5 days ago 0 replies      
“Who are you the King of Siam, you got to get the best one? Who cares? They're all the same these machines. They're all made from the same asian suffering.” - Louis CK
scarmig 5 days ago 1 reply      
Perfection is meaningless when it comes to material goods. They're always a means to an end.

Dustin would probably argue that finding a well-designed product is a better means to the end (of forming relationships, living, loving, friends, experiences, adventures). It's a plausible point, but it's empirically wrong.

No one in the history of the world has ever gone, "the one thing I regret most is not spending 40 hours researching to find the perfect set of flatware."

Following this advice is difficult for me. I usually find it very difficult to not do the same: obsessing over the best bed sheets, the best cutting boards, the best computer, the best Linux distribution, the best jeans, the best bike, the best books, the best newspaper, the best way to cut onions, the best suit, the best $MATERIALGOOD.

Because of a recent housing disaster, I lost virtually everything. It has been very liberating. All those hours spent obsessing over stupid shit? Worthless. The friends, family, and relationship that helped me get through it? Worth everything.

A shopping list, Target, Ikea, and Amazon can get you everything you need to live a materially comfortable life in 10 minutes. Everything else is just a means to playing an unwinnable status game.

wamatt 5 days ago 4 replies      
Mr Curtis could do worse than watching Gladwell's Ted Talk from a few years back:


tl;dr when one asks a question involving people, and you want the most fitted data, then you need to consider grouping/segmentation of the population into clusters of preference.

What is the best spaghetti sauce?

It's a flawed question, as it contains an invalid assumption.

Thus what Curtis seems to be describing is a (great/awesome/very good) etc set of knives, but not 'the best'.

Very good = a maximization of universal requirements

Best = maximization of universal && local requirements (population segmentation preferences, spacial and temporal context etc)

Those forks may be best for Curtis at his dinner. They are certainly not best for me, on my camping trip. Or best for a tribe in Africa with different shaped mouths and habits etc. Or best for someone eating Chinese takeout. etc

marknutter 5 days ago 0 replies      
I wonder how Dustin would react if he discovered that the company he bought the cutlery from was actually mass producing them and floating the whole "Japanese product designer from a family that made Samurai swords" story to help sell their product. Would it matter to him? Is he buying great silverware or a great story?
brianwillis 5 days ago 2 replies      
I agree with Dustin's point that life is "markedly better" by having the best available. In saying that, I'm often happier to outsource some of the responsibility for deciding what is the best product to someone else than do the leg work myself. I just can't bring myself to get excited about televisions, cars, and most household appliances.

Would I find a product that better matched my sensibilities by carefully researching the market? Sure, but buying a product that's a 97% fit for twenty minutes of work is better than buying one that's a 99% fit for twenty hours of work. Or at least in my head that's how the cost-benifit analysis works out (this sort of thing is deeply personal, and I'm prepared to accept that other people's values are different).

The Wirecutter is great for this sort of thing (http://www.thewirecutter.com). Need a set of headphones? What's your price bracket? OK, get this pair.

marknutter 5 days ago 0 replies      
When I was in fourth grade I bought a tri-fold leather wallet from target. My older brother wanted me to give it to him because he would need one for his permit some day but I refused. I've went on to use the wallet for 20 years before I finally retired it. It held my money and cards perfectly every day of those twenty years and I spent maybe 2 minutes picking it out. I paid around $20 for it.

The point is, almost everything we buy these days is of pretty high quality - even the cheap stuff. Far more often do we throw away of give away perfectly good objects because we want to upgrade or because we no longer have a use for them than we do because they have stopped working.

I can see the appeal of owning what you perceive to be "the best" of a particular item, but you're kidding yourself if you think it's somehow fulfilling. It's just stuff.

esolyt 5 days ago 0 replies      
Impressive. Dustin Curtis has now developed the ability to praise Apple without mentioning Apple.
collypops 5 days ago 0 replies      
In the past week, Dustin has posted a few articles [1,2,3] that have gained a massive amount of attention here, which all try to drill home the point that we should be out there living our lives as if they're going to end tomorrow. We shouldn't put off decisions, we should act on impulses that will make our lives better in ways we won't even realise. In summary: Life's too short, so get on with living it.

Now he gives us this. Cutlery.

He should take his own advice and get out of The Waiting Place, get back in The Fight and Do more than obsess over subjective things that even his own opinion will change about in time.

[1] http://dcurt.is/the-fight

[2] http://dcurt.is/the-waiting-place

[3] http://dcurt.is/do

jwb119 5 days ago 1 reply      
Can't help but think of that scene from Fight Club.

"It's just, when you buy furniture, you tell yourself, that's it. That's the last sofa I'm gonna need. Whatever else happens, I've got that sofa problem handled."

grecy 5 days ago 0 replies      
While I try very hard to own a minimum set of possessions, always buying "the best" rings very true for me. Here in The Yukon we have 20+ hours of daylight for activities in the summer, and regularly see -40C/F in the winter.

Quite simply, if you don't buy "The Best" of anything, it will break or fall apart very quickly.

Kia cars last at most 2 winters up here.

Cheap canoes and kayaks won't last one summer.

I bought $200 hiking boots that were destroyed in one month walking to work at -40C

Gore-tex? freezes solid, cracks and is destroyed after -35C

The motto is very simple. Buy it right the first time.

calinet6 5 days ago 1 reply      
Props for the URL - http://dcurt.is/the-best

My bet is he dreamed up the title and then wrote an entire meaningless post just to sneak it in. Y'all just been trolled good.

waxjar 5 days ago 1 reply      
This does not belong in the top spot on Hacker News. Quality stuff is nice to own, woop-dee-fucking-doo.

Just because Dustin Curtis wrote it, doesn't mean you instantly gotta hit that tiny little triangle. I very much doubt this little article would have collected more than 10 upvotes if it were written by some 20-year old that happened to stumble upon r/minimalism.

I've seen a few of his articles now that are upvoted mindlessly and don't have the slightest relation to technology or startups. It makes me a little bit mad.

kiba 5 days ago 0 replies      
There is no best in everything, only tools that meet specifics requirement.

For example, there many kind of hammers for so many different purpose. One doesn't just use a hammer for everything that a hammer could do. Some hammer you use for smashing, others for driving a nails in, some to shape objects, and some to bash the opponents' head in battle.

Likewise, there's no perfect single piece of flatware. The Victorians, for example, loves to buy tons of silverware just to make eating elegant and perfect for every single dishes. They could have solved the problem of eating by merely washing their faces and their hands afterward, but custom dictates. Instead, they spent thousand of dollars on the many variations of fork, spoon, knife designed to meet different challenges of each particular dish.

driverdan 5 days ago 2 replies      
Dustin and I walk similar paths. Last year I got rid of everything I owned, sans a medium daypack of stuff, and traveled for 6 months. A year later I own more things than can fit in my backpack but am very much a minimalist.

My philosophy of ownership is simple. If I need something I'll almost always get the best I can afford. Why not understand what you own? Why not own quality? I don't mean spend hours researching every small purchase but certainly spend a little time looking into something you'll use over a period of time.

I don't need a cabinet full of plates or a closet full of clothes. Why not own higher quality, fewer items?

ruswick 5 days ago 1 reply      
This reeks of pretention and arrogance. It's fairly obvious and intuitive that expensive things are nice and that you should pursue them. However, the overwhelming majority of people have neither the time nor the means to spend hours researching silverware or dropping $50 per set.

Finding and paying for the best of anything requires more time, patience and income than most have. To me, it sounds as though Dustin has way too much time and way too much money, and hasn't a clue how to productively spend either.


mcantelon 5 days ago 0 replies      
Man, those times my cutlery failed were rough. Glad someone's figuring out the big problems of life.
1as 5 days ago 3 replies      
I like Dustin, and I love what he's doing with Svbtle, but he has this " as I see it " irrational need to own and experience "the best". Maybe there is such a thing as the best cutlery, and maybe the cutlery he bought is it...but it seems like such an empty, odd, materialistic goal. 'First world problems' writ large.

I first noticed it from this tweet (http://twitter.com/dcurtis/statuses/246843440179056640) where he asks about "the best ramen in Tokyo". Anybody with any cultural, historical, or indeed culinary understanding of ramen can see that this is totally missing the point.

My question is, why continuously talk about and seek "the best" as opposed to, say, "really good"? There's a kind of arrogance entrained in such a mode of thought.

trotsky 5 days ago 0 replies      
i respect a guy who doesn't give a shit what he owns about a million times more than this example of privilege and loneliness run amuck.
pvarangot 5 days ago 0 replies      
I'm sorry for you Mr. Curtis whoever you are... guess you'll never be able to learn how to play the violin.
kiskis 5 days ago 0 replies      
Some guys just don't realize how artifical the problem is they pursue.

I'm wondering how much time will they devote to try to find the perfect coffin.

I mean, "some of the things that matter in coffin design are obvious, like the material and weight. Other things, which are arguably more important, are seemingly never even considered, like how the wood feels against your bones and skin, for example, or how the weight balances under the tombstone. The long term durability of each plywood is also important."

tnuc 5 days ago 2 replies      
Is this an advertisement for cutlery?

Tune in next week when we will be told what the best toilet paper is.

pulplobster 5 days ago 1 reply      
I have never even given flatware or towels any thought. They both have minimal impact on my life and thus don't need optimization. My laptop has a great impact on my life, so I think it's reasonable to spend time researching what you need and paying for the best if that makes sense. My wife is a terrible premature optimizer. She pinches pennies on the most obscure things like toilet paper, just to turn around and spend hundreds on a bag. My view is that I would cut that bag out of my purchases, and then it doesn't matter if I optimize my toilet paper or not.

Oh well, people are different.

tlrobinson 5 days ago 7 replies      
I love the idea of having very few things, but getting rid of the stuff I already have feels daunting.

I'd be happy to donate most of it, but I'd have to sort through everything, figuring out if each thing is worth selling, donating, or throwing away, then figuring out where to sell, donate, or throw it away, then actually doing it.

Anyone who has gone through the process, do you have any suggestions?

olalonde 5 days ago 1 reply      
I have the completely opposite experience. I find it much more stressful to own things that are high quality and expensive because I tend to worry more about such things. In general, I prefer to buy cheaper things knowing that I can easily afford to lose or break them.

Anecdote: as a kid, I hated going over to some of my relatives' houses - the ones that owned a lot of expensive stuff. They always seemed so stressed out about me breaking something and got pretty angry when it happened. I don't want to become that kind of relative I guess.

chewxy 5 days ago 0 replies      
Not sure if this is helpful, but I wrote a long response to The Best: http://blog.chewxy.com/2012/11/08/the-best-really/

In this I raise the point of "the best" being a meaningless measure as we're actively bombarded by lack of information and other factors that make us terrible in making calls on whether something is "the best".

I think it's rather hollow to claim that one wants 'the best' and yet doesn't discount in factors that makes one perceive something as 'the best'

jcromartie 5 days ago 0 replies      
I was going to say that not everybody can drop $200 on 4 table settings worth of flatware...

But yeah, that's pretty much it. People living paycheck-to-paycheck really just can't afford the best because they have needs that pop up and make it next to impossible to save a lot of money when you can just as easily buy flatware that will last for years for $10 from a thrift store.

dnos 5 days ago 0 replies      
I think the author is getting at something, but I don't think he articulated his thoughts too well -- or at least not well enough to be analyzed by the HN audience.

To me, it came off as just pure garbage, spewing from a wealthy and/or insane person who cares more about the things he owns than what he actually does with those things, with a means of not necessarily communicating with others, but a way to convince their own self that it's OK to spend many hundreds of dollars on a flatware set.

The type of thinking the author seems to be making an argument for can consume you. You will NEVER be happy if you filter the world like this. Sure, there's a time and place for it, but don't try to convince me that it was "liberating" when you spent $50 or whatever for a fork.

rdl 5 days ago 0 replies      
I like to optimize, but also optimize on price. In ~2007, I felt proud to buy a $21500 new Lincoln LS V8 (loaded) which I bought for $23k less than sticker the day they got discontinued, in UAE, since it was essentially a Jaguar S-Type. It made me happier than buying a $45k stripped BMW would have.

I also put a lot of effort into getting great headphones, great keyboard, etc., and a chair that I like.

I didn't put weeks of research into buying bowls. I saw they were cheap on slickdeals, noticed I needed bowls, and bought some on sale. I don't really research who makes the best bottled water at Costco, I just get whatever is cheap at the time.

Pick your battles.

ben0x539 5 days ago 1 reply      
Couldn't someone have editoralized that title? It's not very informative.
rodolphoarruda 5 days ago 0 replies      
My ex-girlfriend developed this obsession for having "the best" of every possible thing... I realized it by the time she dumped me...
goblin89 4 days ago 0 replies      
> These might seem like stupid things to worry about, but when you have trust in everything you own, you don't have to worry about anything. It's liberating and an amazing feeling. My life was markedly better because of it.

Partly I agree, but I would simplify the statement: “You don't have to worry about anything. It's liberating and an amazing feeling.”

While not worrying, if you notice your wallet falls apart, you may momentarily feel uncomfortable and next time buy a better wallet to avoid losing money.

Should that be a reason to worry that you're using not the best wallet?

That might be true for certain things. Losing money can make you significantly uncomfortable, depending on various factors. There's probably a good enough wallet, but buying the best might just save some time.

Otherwise, IMO in the end it's up to you whether you worry or not. We can choose to alter the environment to be happier, or alter our outlook to achieve the same. I think it's mostly under our control, although may be limited by environment a person was raised in.

vertr 5 days ago 0 replies      
"The result"being able to blindly trust the things you own"is intensely liberating."

It seems somewhat pathetic that psychological liberation should come from choosing the correct personal possessions. I think a better form of liberation would be to shift focus away from possessions entirely.

ChristianMarks 5 days ago 0 replies      
He died in 2011 but his flatware lives on. A whole year. OK.
Steko 5 days ago 0 replies      
Call me crazy but imho "most functional set of flatware in the world" will not have 2 forks and 2 spoons.
rhizome 5 days ago 1 reply      
What is this, dcurt.is week? There were two on the front page yesterday.
antidoh 5 days ago 0 replies      
Or: you're gonna lose it anyway, so don't sink too much into it.

The only things I'm willing to spend serious money on are shoes and teeth.

ftwinnovations 5 days ago 0 replies      
I bought some flatware... A spork made of titanium. Why? Because I saw an ad on a nerd gear website. I've had it for years, and eat everything I can with it. But I don't have a strange obsession with everything being the best. But I love my titanium spork.

To each their own I guess.

zerostar07 5 days ago 0 replies      
Buying the best stuff, i have no problem with that. Being the guy who always buys the best stuff, reminds me of that phrase about the things that end up owning you.
DanBC 5 days ago 0 replies      
Eh, I prefer the cutlery from Pott. (https://pinterest.com/pin/278519558175121239/)

Guy DeGrenne does nice cutlery too. (https://pinterest.com/pin/278519558175121407/)

The worst? (http://pinterest.com/pin/278519558175126518/) - this abomination.

Pinterest links used because, let's be honest, that's the best place for this kind of stuff.

nadam 5 days ago 1 reply      
It would take an extreme amount of time and quite a lot of money to apply this philosophy if you have a family with small children (like me).
I am quite minimalist and selective in my work, but do not (and cannot) apply the same philosophy for my life.
jwilliams 5 days ago 0 replies      
That flatware has design issues. I went through a lot of knife/fork combinations. The little "nubs" on these serves a few important purposes.

1. It gives an easier point to grip, particularly for people that have problems gripping.

2. It stops liquid (e.g. a juicy steak) from dribbling down the fork on to your hand.

Of course, it doesn't look at cool...

chrischen 5 days ago 0 replies      
I also think it's a consumer's responsibility to seek out the best and do a little research. It sends the wrong signals to competitors if consumers do not do that.
milroc 5 days ago 2 replies      
I don't understand why there is so much talk of this article being so very materialistic. It's kind of the mentality of a good number of individuals who did or are wanting to try a very minimalistic style of travel (others exist obviously: ignore certain needs (for me: don't bring a computer; for others: only the clothes on your back); buy and throw away each time you're somewhere new (only works in certain areas of the world with certain high budgets); etc. This however is the majority view point for vagabonding. Invest in key items that meet your exact needs (knowing your needs is an important aspect of this). If you do this beforehand you won't be stuck in some country without a passport because it fell out of the hole in your siblings old backpack.

If you ignore the anecdote about flatware you realize that the article describes minimalism at it's core. Ensuring all your needs are met with the minimal amount of goods. There is one flaw with this concept of "The Best" that individuals who follow this mantra tend to lose sight of another very important aspect - time. While Daniel Curtis clearly showed his obsession by buying 20 different sets to determine which is the best for him. I imagine that others don't have that amount of time to invest in this decision.

I am this way with most purchases; if you have something that will significantly improve the quality of life you have or something that while not necessarily a need but has moved to a desired addition to your lifestyle, spend the time to find the best fit for you. If it is not worth the time to look for what is the best fit for you; don't purchase it because you merely want it.

giblfiz 5 days ago 0 replies      
This post makes me think of many of the concepts from "zen and the art of motorcycle maintenance".

For those who haven't read it, it focuses heavily on the nature of quality (how it is both somewhat universal, and somewhat a matter of taste) and the spiritual nature that quality can contain.

to mapgrep, the first poster, I would suggest that not all things concerning or focusing on physical objects are materialism. One could even argue that dcurt is attempting to _avoid_ having to think about material objects once he has bought them, that this is what he means by "trusting" the things he owns.

mrknmc 5 days ago 3 replies      
He should post a list of such things.
kidfropro 4 days ago 0 replies      
As an aspiring minimalist, I agree with Dustin's premise but not in his universal application. I believe the goal is to maximize the utility of a purchase, including the cost of information.

Spending an amazing amount of time researching features and the subsequent benefits and the combinations there of are extremely valuable for objects or services upon which we thoroughly rely. For anything less, it is just as important give equally less energy, if any at all.

mbubb 4 days ago 0 replies      
Made me think of something that I havent in years. Kant's 'purposeful purposelessness' - a definition of the aesthetic purpose.

Buying 20 sets of cutlery is most definately hyperbole (or no tit doesnt matter) - I think mapgrep is mistaken to link this idea to Steve Jobs and the couch... It is one thing to be an audiophile to have the best stereo; it is another altogether if you love sound.

I like the idea from the article. Made me think of the process of selectign a 'go bag' but not for emergencies, for eternity.

I am glad such madness exists and I am not insulted by it. I am no there but I get the impulse.

Donch 5 days ago 0 replies      
American Psycho.
grinich 5 days ago 0 replies      
Buy the best, cry once.
MortenK 4 days ago 0 replies      
232 comments and counting, I never knew $10 utensils could be such an intriguing and polarizing subject.
seeingfurther 4 days ago 0 replies      
I don't know what all the fuss is about. Dustin is clearly a minimalist and his essay flies in the face of our modern disposable economy. Maybe he didn't spell that out explicitly but it's implicit in his argument. I too won't own a product unless it markedly improves my life and I know it will last the test of time (maybe not socks). I think people are confusing a pervasive cultural obsession of having to own the latest and greatest of EVERYTHING, with Dustin's idea of owning the perfect amount of the perfect thing.
brasmasus 4 days ago 0 replies      
Wow, polarizing. Seems like the opposition is mostly reacting to the idea of intensively researching to find 'the best'...but why not let Dustin and those that think like him do what they want with their time? Once you find someone like that, you can take their advice instead of doing the research. And all this grief is pretty ironic considering the love for tech fetish sites like anandtech and tomshardware.

Moreover, given the option, why _wouldn't you_ want to surround yourself with art that you appreciate at every glance?

SonicSoul 4 days ago 0 replies      
i tend to agree with this philosophy. although i don't spend as much time as OP in selecting the perfect item, I do agree that finding something of great quality will pay dividends for years to come. My dad bought the very best Sony tv he could find when he came to America in the 80's, and that thing was still in use (and looking good!) up until a few years ago. In this example it actually saved us money, but in other cases (i.e. my first nice car), it just brought lots of joy to use it every single day.
alexmr 5 days ago 0 replies      
I like the loosely follow this philosophy without it taking over my life. finding a person/source you trust a ton and buying what they say is helpful, for example thewirecutter.com
Peteris 5 days ago 0 replies      
Reminding me of that Motorolla Droid add with the guy living with his devices and bed in an open concrete square house. Thoroughly optimal design is neutral, soulless and impersonal, it is frightening.
Fando 4 days ago 0 replies      
I love the philosophy! Many miss the point because they take the article literally. It's not about materialism, the article is about the benefit of cultivating a behavioural trait regarding the process by which one attains knowledge. It can pertain to something as simple as the craft of a fork or to a more abstract and complex idea such as the structure of industry. Thanks for the read.
heed 5 days ago 0 replies      
>What is ultimately important in life are people

What's important in life is whatever you define is important.

namank 5 days ago 0 replies      
I would be wary of your 'intrinsic side effect' carrying over to your relationships and human interactions.
adebelov 5 days ago 0 replies      
i think this is an incredible post. We rarely embrace the art and quality it takes to build things that we use everyday (toothbrushes, wallets, backpacks, forks, etc.), but in search for them, you encounter people that built them and an incredible story behind them.

Very inspiring to strive to surround yourself with best of everything.

negamax 4 days ago 0 replies      
Is anybody else surprised by the hate mongering in the comments and losing the essence of the post altogether?
leeoniya 5 days ago 1 reply      
who is upvoting this? why? hackernews has gone to shit.
Myrmornis 4 days ago 0 replies      
Neurotic materialism. Or a joke.
shurcooL 4 days ago 0 replies      
Am I the only one who has seen this article before?

Maybe it was a draft or not public (doubtful, because Dustin isn't close to me), but I'm sure I've read it or a similar version about a year ago.

andrewartajos 4 days ago 0 replies      
The best is usually expensive.
aldopinga 4 days ago 0 replies      
hn algoritm...
javajosh 5 days ago 1 reply      
If one attacks the OP for being materialistic, then one misses the entire point.

This post is about minimizing hypocrisy. Too often we do not pay attention to the things that others have built for us. We, the builders and the makers, do not pay enough attention to the builders and the makers that influence our lives! Don't we wish that our customers would pay close attention when they are deciding whether to use our products? Of course we do.

Dustin's materialism is the symmetry to the Hacker ethos of making, and if you think he's doing something wrong than you sir are no hacker.

Ratchet: Prototyping iPhone apps in simple HTML, CSS, and JS github.com
381 points by uggedal  7 days ago   82 comments top 35
minikomi 7 days ago 1 reply      
Super hipster site:


HN top page, parsed by webscript.io, hosted by site44.com, using ratchet :)

Edit: pattern matching a little off.. Only 28 results showing up

brianr 7 days ago 2 replies      
Looks great, guys.

Slightly off-topic... the name "Ratchet" seems to be getting pretty crowded. In addition to this, there's also:

- Ratchet the websockets library for PHP: http://socketo.me/

- http://ratchet.io - error tracking (my startup)

- Ratchet the consulting company (acquired earlier this year), which owned ratchet.com

netghost 7 days ago 3 replies      
I was pleasantly surprised when I realized that as I scrolled the example on the right changed. Really nice site guys.
ayanb 7 days ago 1 reply      
Interestingly, one of the creators of Ratchet is @fat, who is a co-creator of twitter bootstrap, so he would know a thing or two about adoption of new frameworks.
jyap 7 days ago 2 replies      
I was playing around with jQuery Mobile the other night to create a simple iPhone compatible web form.

I found the WYSIWYG builder Codiqa on their web site was really handy. It was literally 5 mins of building, download, and then tweak the HTML file and I was done.

Perhaps that is the next step for Ratchet? A drag and drop WYSIWYG editor.

zem 7 days ago 1 reply      
my first thought: i have no real interest in building iphone apps, but this looks like it would be really nice to develop mobile-specific webapps and even pages. are there any non-obvious reasons this couldn't just be used to develop and deploy a webapp?
superasn 6 days ago 0 replies      
This is really impressive. I'm tempted by the idea that combined with AngularJS directives[1], this can really work wonders for iphone development. So instead of all the divs and css, the code can be really boiled down to this:

<button-prev />
<image src="1.jpg" />

On the backend you can have something like:

   angular.module(...).directive('titleBar', function(){ 
template: '<header class="bar-title"><h1 class="title">{{title}}</h1></header>'

Will make writing the code much easier and intuitive.

[1] http://docs.angularjs.org/guide/directive

icambron 7 days ago 2 replies      
Maybe I'm missing something, but it looks like you could extract just the CSS and build an HTML5 app with it (as in PhoneGap or trigger.io), without all of the push.js stuff. It looks really nice, and would be good for more than just prototyping.

Edit: clarifying what I meant by HTML5 app.

justinph 7 days ago 0 replies      
This looks a lot like Zurb Foundation. Nice work.
bluetidepro 7 days ago 1 reply      
Did you guys build your site using Bootstrap or at least Bootstrap as starting point? It looks like a lot of similar components function like Bootstrap ones. If you did, amazing work taking the bootstrap design and making it unique to your product and not "just another standard Bootstrap design!"

Also, great product! It looks beautiful and makes for fast prototyping! I can't wait to try it out! :)

perfunctory 6 days ago 0 replies      
I don't understand how the word "simple" can go together with "html, css, js"
jahewson 7 days ago 0 replies      
The attention to detail is superb. This is the first complete set of mobile widgets which I would actually use on a website, as well as for prototyping.
marizmelo 7 days ago 0 replies      
Ratchet powered site fetching HN rss feed:
DenisM 7 days ago 1 reply      
Looks good.

To help put things in perspective - how is this different from Sencha?

Cyranix 6 days ago 0 replies      
Bit of a shame that it doesn't use the slider style that made waves yesterday: http://news.ycombinator.com/item?id=4742535
matb33 7 days ago 0 replies      
Just tried this on my iPhone, the buttons feel native, impressive. Awesome work! Already have a use case for this
yannski 6 days ago 0 replies      
A few typical "global" layouts would be nice! Like the famous "off canvas layout" http://www.zurb.com/playground/off-canvas-layouts
rcchen 7 days ago 1 reply      
This feels a lot more lightweight than jQuery mobile while retaining the look/functionality needed to work on a mobile web app. Does this seem like a suitable replacement for jQM for a basic mobile web application?
yesimahuman 7 days ago 2 replies      
Combined with the component set and push.js, it looks like a similar framework to jQuery Mobile. Thus, it would be great for building straight up mobile websites or HTML5 mobile apps. Am I right, or missing something?
michaelmior 7 days ago 0 replies      
Looks very cool. It would be nice to see closer parity to what's available with native UIKit, but super fast to get started and looks pretty nice. Great work!
continuations 7 days ago 0 replies      
Is this only for prototyping and not for production use?

What would you recommend for production use then?

deepGem 7 days ago 0 replies      
One of the best User interfaces I've seen, period. Scrolling is the best part. Kudos guys.
alpb 6 days ago 0 replies      
Awesome job from awesome guys. Really liked it but I don't get why you haven't reused Bootstrap resources. Really small and neat toy. Really good to see all the stuff packed in 50 KB stuff!
hdra 6 days ago 1 reply      
Really cool stuff there,

Does anyone know of similar project that are built with the Android's UI in mind? It seems like almost all of these kind of projects are built with iOS' UI in mind... wonder why..

jeffehobbs 7 days ago 2 replies      
I would feel better about this framework if the demo site worked on an iPad. I know that is shallow, but there you have it.
pspeter3 7 days ago 1 reply      
This is awesome. Thank you so much
denzil_correa 6 days ago 0 replies      
Wonderful home page!
jennyshen 7 days ago 0 replies      
Ah you beat me to it. Ratchet is a great tool...now only if you can build a mobile web app with something like this...
ghostblog 7 days ago 0 replies      
You say no to a rapid prototyping environment for iPhone apps using familiar web technologies . . . . JUICY J CAN'T
unfuddle 7 days ago 0 replies      
It would be great if you could create an app with Ratchet, not just a prototype.
duked 7 days ago 1 reply      
it's a nice product I wish it would come with a visual editor to compete with codiqa
deepuj 6 days ago 0 replies      
So much cleaner than jQuery Mobile. Cool!
kidfropro 7 days ago 0 replies      
Love it. Keep up the good work.
davj 7 days ago 0 replies      
this changes everything
pootch 7 days ago 0 replies      
iUI gets a reboot, and its just as clunky? I think you can do better,
Meet the new Light Table chris-granger.com
351 points by bergie  6 days ago   101 comments top 31
Sidnicious 6 days ago 3 replies      
It looks awesome but the new user experience was a little rough for me. Here's what I did:

1. Click in the command bar. The autocomplete menu popped up.

2. Click "new". The menu disappeared and the command bar loses focus.

3. Click in the command bar again and type "new", hit enter (it's pretty common to be able to create new, unnamed files in editors). This message shows up in the upper right hand corner of the window:

    Uncaught Error: Doesn't support name: (file:///Users/sidney/.lighttable/js/bootstrap.js:10616)

4. Click in the command bar again and type new, then hit space. Ah, OK, I'm supposed to pick a filename. Type one ("foo.clj") and hit return. A tab opens up with the file.

5. Type some code. Nothing's happening on the right. Isn't that supposed to be the big thing about Light Table? (Also, the error message from the beginning is still hanging around. Huh.

6. I go to the command bar again, find the `connect` command. "Connect to a project", sounds right. I type "connect" and hit return. "Connecting" shows up in the bottom right of the window for a few seconds, and then this message pops up over on the left:

    Could not find project.clj file at ""

7. Okay. I run "connect" again with my filename. Similar message.

8. I go back to the welcome page and notice the command+shift+enter command, ah, OK. I hit it and a dialog shows up.

9. I don't have a project so I click "start a local client". The "connecting" message shows up for a few seconds, followed by "Connected to Light Table server". Awesome!

10. …nothing's showing up on the right side of the window, the "connected…" message disappears. Huh. I type command+shift+enter again, and get the same "You're not connected" dialog as before.

11. I relaunch and try again, same result. I'm stuck. I look at the screencast again and try the instarepl command. Everything works, nice!

aoe 6 days ago 7 replies      
Looks like a good concept, but I really cannot see how this would work for functions with side effects? What if I write `File.rm("something")` and press enter?

And how would this work with, say, Ruby on Rails development?

Can anyone throw some light?

joakin 6 days ago 3 replies      
I'm really curious about the architecture and stack of lighttable. Please Chris if you could answer some questions it would be great.

How does it work internally?

What are the 'under the hood' differences between 0.2 and 0.1 and why?

Could you share some of those things learnt through all this time building this interactive platform?

How are you doing to get a cross platform desktop app with web tech? (I guess you still use cljs for it)

I'm really curious, and I wonder myself why nobody asks this kind of questions

why-el 6 days ago 3 replies      
I love what Chris is doing, but I have yet to understand what Light Table does differently from say Emacs's own lisp evaluation mechanism.
RKearney 6 days ago 2 replies      
Chrome alerted me that this file is not commonly downloaded and may be dangerous. Might want to look into why Chrome is flagging your Windows download as potentially hazardous.
kami8845 6 days ago 3 replies      
Any idea when we can expect first traces of python support?
NathanKP 6 days ago 1 reply      
I like the idea of Light Table but what is a deal breaker for me is that it feels like there is an ever so slight lag between pressing a key on my keyboard and the character appearing in the Light Table editing area.

I am very picky about the way typing feels in an editor, and if it feels slightly laggy or slow then that editor is not an option for me, even if it does have all sorts of other awesome features.

Does anyone else feel this or is it just a problem with the app on my MacBook?

sergiotapia 6 days ago 0 replies      
Competition is good and benefits the consumer (us developers) greatly! While I cannot see how this would work and be useful for languages like Ruby/Python/PHP, maybe the Light Table creator does - and I'm excited to see what's coming.

I can't wait to try the finished product!

squidsoup 6 days ago 1 reply      
First of all, I love this project and await vim keybindings with bated breath. Light Table + Clojure make me feel like I'm programming in the future.

One issue in this new build, the stacktrace/error widget feels a bit awkward e.g. http://i.imgur.com/RVYHU.png
Is this likely to become 'dockable' at some point?

Meai 5 days ago 1 reply      
I think you need to be more direct with what Light Table does. I tried creating a C file and executing it, it prompts me to start a "local client" (whatever that is).
Obviously I could be doing more to inform myself but skimming the first few paragraphs of this article didn't give me a better idea, neither did the software.
The scrollbar is also very hard to click on. The minimize and maximize buttons look to have the same color on my screen. I'm assuming I have a cheap setup, but that's how it is in the real world (I hope I'm not adding snark here, but it really is). A tooltip on what they do would be nice as well.
If you get this working with a language like C# or Golang, you'll probably get a customer with me because I like the general idea of working with functions instead of files. Maybe you can add powerful addon functionality if you don't plan to do this yourself.
martinced 6 days ago 0 replies      
Could Light Table, from the start, think about a "server mode"? Eclipse can be run in server mode (even headless if you want) and you can then connect to Eclipse using, say, vim + eclim or emacs + emacs-eclim.

This would be great because I don't doubt there are going to be features from Light Table that I'm going to love and that I'm going to want.

But I also don't doubt that there's no way that the "text editor" part of Light Table will come anywhere close to what vim and/or Emacs do provide.

yuchi 6 days ago 1 reply      
Perfect, now edit that T in the lettering to match the reversed L in the logo ;)

EDIT: name -> lettering

MatthewPhillips 6 days ago 1 reply      
Looks good, one suggestion: the 3 circles in the top left corner need icons. It is non-obvious to me what they do, even after testing them out.
gary4gar 6 days ago 3 replies      
I get the following error:

  $ ./LightTable: error while loading shared libraries: libsmime3.so: cannot open shared object file: No such file or directory

Instruction in how build/install LightTable on Linux? What the the dependencies or configuration directives?

samspot 6 days ago 0 replies      
I've been using the instarepl to learn clojure and I'm liking it a lot so far for that purpose. However I still can't grasp how to use the project features. I'd like to humbly suggest you do some hallway usability testing and work on the learnability of the UI.
nagnatron 6 days ago 0 replies      
How can I buy the shirt?
agentultra 6 days ago 0 replies      
I liked the post "All ideas are old ideas." Looking forward to seeing how you've been inspired and what the result will be in Light Table.

Happy hacking.

ckluis 6 days ago 0 replies      
This project makes me happy. Can't wait for it to be extended to other languages.
filipncs 6 days ago 1 reply      
How do I open files in a project after connecting to it?

Nothing seems to happen after I get the pop-up that the connection succeeded, and if I open the files manually I still get an error when I try to evaluate them (missing connection).

This is on Windows 8, I'll try from a mac later.

Btw, drag-and-dropping a file into the window breaks the program.

geuis 6 days ago 1 reply      
Please consider increasing the brightness of your text. It's dark grey on light grey background is very straining to read.
Cowen 6 days ago 0 replies      
That's convenient. I was just looking up Light Table last night when seeking a decent IDE for my Chromebook.

I see that it's moved to a native app now, which makes it Chromebook-incompatible. Is there still a way to access the browser prototype that it started as?

jared314 6 days ago 0 replies      
Is a plugin API available yet?
After using SublimeText 2, I want the fuzzy search, the ST2 "Goto Anything" search box, in every IDE I use.
nathell 6 days ago 1 reply      
On Windows 7, I'm getting:

CreateProcessW: The system cannot find the file specified.

after C-k instarepl -> Start a local client.

AYBABTME 6 days ago 0 replies      
My I dare asking where we can get those awesome tshirts?
eckzow 6 days ago 1 reply      
vim keybinding support?
dmvaldman 6 days ago 1 reply      
Crashes on open for my Mac OS 10.7.2 Anyone else?
rodrigoavie 6 days ago 0 replies      
Thank you Chris!
elrzn 5 days ago 0 replies      
Wonderful, I'm using it to learn Clojure and work on 4clojure problems.

What I really miss for this purpose is having some kind of live doc feature.

z3phyr 5 days ago 0 replies      
Its standalone, now I call it a real IDE...
I am happy.
z3phyr 5 days ago 0 replies      
Is it writern in clojure or clojurescript?
icholy 6 days ago 0 replies      
MongoDB Gotchas and How To Avoid Them rsmith.co
341 points by ukd1  7 days ago   89 comments top 26
Pewpewarrows 7 days ago 4 replies      
Very good summary of what to look out for. Here are a few others that I ran into back when I was still entertaining the idea of using Mongo in production:

1. The keys in Mongo documents get repeated over and over again for every record in your collection (which makes sense when you remember that collections don't have a db-enforced schema). When you have millions of documents this really adds up. Consider adding an abstraction mapping layer of short 1-2 character keys to real keys in your business logic.

2. Mongo lies about being ready after an initial install. If you're trying to automate bringing mongo boxes up and down, you're going to run into the case where the mongo service says that it's ready, but in reality it's still preparing its preallocated journal. During this time, which can take up to 5-10 minutes based on your system specs, all of your connections will just hang and timeout. Either build the preallocated journal yourself and drop it in place before installing mongo, or touch the file locations if you don't mind the slight initial performance hit on that machine. (Note: not all installs will create a preallocated journal. Mongo tries to do a mini performance test on install to determine at runtime whether preallocating is better for your hardware or not. There's no way to force it one way or the other.)

T-R 7 days ago 2 replies      
An excellent and practical article. I do want to emphasize one thing, though, since I feel like the article almost seemed to downplay its significance:

MongoDB does not support joins; If you need to retrieve data from more than one collection you must do more than one query ... you can generally redesign your schema ... you can de-normalize your data easily.

This is a much larger issue than it seems - nested collections aren't first class objects in MongoDB - the $ operator for querying into arrays only goes one level deep, amongst its other issues, meaning that often-times you must break things out into separate collections. This doesn't work either, though, as there are no cross-collection transactions, so if you need to break things into separate collections, you can't guarantee a write to each collection will go through properly. (Though, I suppose if you're using the latest version, you could lock your whole database)

codewright 7 days ago 2 replies      
I'm one of the people that like to make fun of MongoDB from time to time, but that's mostly from proximity producing contempt.

Nevertheless, a rundown of the gotchas and how to avoid them based on experience beyond simply running apt-get install mongodb is one of the most useful pieces on MongoDB I've seen of late.

The only new-news for me was that SSL support isn't compiled in by default. That's pretty irritating. I wonder if that applies just to 10gen's packages or also to distribution provided mongodb packages.

23david 7 days ago 2 replies      
There are some good things here, but on a systems level there are huge oversights that are absolute showstoppers on production systems. Maybe there is a level of Mongo proficiency above MongoDB Master? I hope so.

1) Make sure to permanently increase the hard and soft limits for Linux open files and user processes for the MongoDB/Mongo user. If not, MongoDB will segfault under load and when that happens, the automatic recovery process works incredibly slowly. It's a bit tricky to get this right, depending on your level of sysadmin knowledge. 10gen doesn't emphasize or explain the issue very well in their docs: "Set file descriptor limit and user process limit to 4k+ (see etc/limits and ulimit)" That probably makes sense to just about 0.1% of the people setting up MongoDB: http://www.mongodb.org/display/DOCS/Production+Notes#Product...

2) Make sure to disable NUMA. This 10gen documentation note is a great example of clear documentation: "Linux, NUMA and MongoDB tend not to work well together ... Problems will manifest in strange ways, such as massive slow downs for periods of time or high system cpu time." Massive slowdowns and mysteriously pegged cpu usage on production database systems are definitely 'strange'. I would probably choose stronger and more precise language, but 10gen clearly knows what they're doing: http://www.mongodb.org/display/DOCS/NUMA

tl;dr If you have problems with MongoDB, you aren't using it right. Read the documentation more carefully, and then when that doesn't work, hire an expert.

etrain 7 days ago 1 reply      
Good to see some constructive advice on how to configure mongo, instead of just bashing it.

Even if it's not your favorite technology, sometimes you end up in a position where the rest of the company is using something, and you need to work within those constraints. It's important to understand the technologies you're building on, their configuration options, and to understand the best practices way of working with them.

This, by the way, is not restricted to mongo.

dschiptsov 7 days ago 2 replies      
Any one else noticed a striking similarity to PHP - every feature is broken somehow?)

I thing this will be a good slogan - 'We are PHP of storage engines.'

mason55 7 days ago 1 reply      
One of the more useful Mongo articles I've seen here. You might want to clear up "You cannot shard a collection over 256G" however. The limitation is that if you have an unsharded collection that grows over 256GB you cannot make it a sharded collection. The way it's written now makes it sound like sharded collections can't grow over 256GB (at least to me) which isn't true.
sjtgraham 7 days ago 0 replies      
OP knows his stuff. I met him at a hackday and learnt an insane amount from talking to him at dinner. I'm keeping this post bookmarked for reference. Great stuff.
bitdiffusion 7 days ago 1 reply      
Here is one to add to the list - if you delete records and/or entire collections, you won't reclaim the associated disk space automatically. Once the space is allocated, it remains allocated and will be reused when more data is added later. If you want to reclaim the "empty space", you need to run a repairDatabase() which will lock the entire database while it's busy.
ukd1 7 days ago 4 replies      
If I've missed anything from the article, feel free to let me know! :-)
whitej 7 days ago 1 reply      
I see the "32-bit vs. 64-bit" issue appear in many rants about MongoDB. There are two types of people that fall off the 2GB cliff.
a) People who say "what just happened... oh, I get it... 32-bits, memmapped files... I'll switch to 64-bit"
b) People who say "WTF.. #MongoHate.. going to blog about how @#$#%! a DB this is"

Some people understand the tools they work with. Some people know just barely enough to throw things together and don't tolerate it when something doesn't work out of the box. Worst of all, this second group tends to be very vocal on the interwebs.

I'd almost like to see 10gen not publish the 32-bit package at all. Source is still there. If you want 32-bit, cool, compile it. But forcing the user to compile the 32-bit version assures at least a minimum bound of technical proficiency (an "I understand what I'm doing, why it's not the default and what the limitations are").

rgarcia 7 days ago 2 replies      
The solution is simple; use a tool to keep an eye on MongoDB, make a best guess of your capacity (flush time, queue lengths, lock percentages and faults are good gauges) and shard before you get to 80% of your estimated capacity.

Any recommendations for such a tool?

fredsters_s 7 days ago 1 reply      
It's interesting to get a rundown of Mongo's limitations from someone who clearly knows what they're talking about. Thanks.
paulsutter 6 days ago 0 replies      
Also worth mentioning that performance is much more predictable when the data fits into memory (or the working set, but that may be harder to convey).
ianrose 7 days ago 1 reply      
"However due to the way voting works with MongoDB, you must use an odd number of replica set members."

So what happens if I have 2 sequential failures? Suppose I have a replica set of size 5 and the master fails? The remaining 4 would elect a new master from amongst themselves, right? But then what if this next master also fails? The remaining 3 nodes are still a quorum (3 > 5/2) and thus (theoretically) should be able to elect a master. But am I to understand that they won't be able to do so?

netvarun 6 days ago 0 replies      
Thanks for the great article.
A gotcha I have come across:
Document keys can't contain the dot character. If you are storing a complex document (hash-of-hash-of-hash-etc..), you would need to recursively clean up and ensure that none of the keys contain any '.' char.
vertis 7 days ago 0 replies      
Really great list of gotchas.

I have been using MongoDB for a long time, unfortunately mostly this has been small applications, so you don't really get to test how MongoDB scales.

On that same note, I would love to see a list of gotchas for Riak (assuming some exist). I keep hearing recommendations for Riak, it would be nice to know how it fares in a large production environment.

fideloper 7 days ago 1 reply      
I have a suspicion that this seemingly popular sentiment about so many people hating MongoDB is untrue.

Or people are careless about what systems they put into production?

Also, awesome article!

cjc1083 7 days ago 2 replies      
On the same token, albiet a bit off of the trail. Does anyone have any suggestions for effectively storing fields which can contain BIG5 (IE non utf-8) chars in them, but usually do not? IE Email subject lines or senders.

JSON is picky in this regard, and I don't want to convert the whole string to B64 etc encode/decode it going in and out, as I would like to retain regex search capability for the 99% of email titles and names which are not Chinese within mongo from my php application which lives on the front.

aledalgrande 7 days ago 1 reply      
SSL support is not so easy to set up if you are on Suse Linux Enterprise. There is basically no support for it. And for some reason it doesn't work for me.

But the thing I don't understand is, if people use replicasets, how comes they're not using encryption? It would be easy to sniff data off the instances. But yet, when I search on stackoverflow/serverfault, there are close to no people using SSL with Mongo.

alexmic 7 days ago 2 replies      
Here's two:

(1) There's no need to add a "created" field on your documents. You can extract it from the _id field by just taking the first 4 bytes.

(2) If you are storing hashes (md5 for example), you might want to consider storing them as BinData instead of strings. Mongo uses UTF-8 so every character will be at least 8 bits whereas you can get away with 4 bits per character.

CliffFarr 6 days ago 0 replies      
I have recently wrote a similar blog post (same idea but different set of "gotchas" here: http://blog.trackerbird.com/content/mongodb-performance-pitf...
gianpaj 6 days ago 0 replies      
I believe you mean 'sharding' not 'sharing':
"Unique indexes and sharing"


"Process Limits in Linux"
If you experience segfaults under load with MongoDB, you may find it's beacuse of low or default open files / process limits

stbrody 7 days ago 1 reply      
"For setups that are sharded, you can use 32-bit builds for mongod" - I don't think this is accurate. Whether or not you are sharded has no effect on the limitations of a 32-bit mongod. Did you mean to say that you can use 32-bit builds for the mongos?
ndepoel 7 days ago 1 reply      
Bottom line: MongoDB is not an RDBMS and you shouldn't try to use it as an RDBMS. Something with trying to fit a square peg into a round hole. MongoDB requires a different mindset and if you're unable to adapt, then you should simply stay away.
pjd7 6 days ago 0 replies      
I stopped reading when you said up to 1tb of data like that was a large number.
Uses for cURL httpkit.com
326 points by KrisJordan  3 days ago   71 comments top 24
yread 3 days ago 1 reply      
If you're on windows and don't feel like using the commandline you can click around in Fiddler to achieve similar things. The help is much shorter

I wasn't able to change the Host header successfully, though. A workaround is needed:

bentruyman 3 days ago 5 replies      
I would strongly suggest HTTPie for the majority of these tasks: https://github.com/jkbr/httpie
k33l0r 3 days ago 3 replies      
> If you only care about headers use the -I flag and the response body will be hidden

That is actually wrong. The -I flag set the request method to HEAD. So in some cases it will return different headers than a normal get request (and some servers don't implement HEAD responses at all).

laktek 3 days ago 0 replies      
Nice. I like the way examples were constructed.

BTW, here are some more cURL tips I noted down a while back, which I found to be useful for daily work. - http://laktek.com/2012/03/12/curl-tips-for-daily-use/

swang 3 days ago 1 reply      
The site does not work on the iPhone at all if you want to zoom in to read the text. If you start to touch and scroll the menu that was hidden away on the left decides to rear its ugly head and makes the site completely unreadable.

I'm pretty frustrated with sites that don't just have a basic two column layout. Is this a template theme? Otherwise why would you waste so much time on a left column that reflows and messes up the browser experience? Or better yet why not test this on an actual mobile browser?

I am not trying to harp on this site or the author specifically because there are certainly other offenders. This site though is quite annoying because once you finally think yougot that stupid menu out of the way, BOOM it pops right back an ruins the site again.

This is both a rant and a notice to the author since most people probably got too fed up to tell him about this problem.

cypherpunks01 3 days ago 1 reply      
This title is a bit misleading. I was assuming that I'd be reading about how to use something that wasn't curl?
bryanlarsen 3 days ago 2 replies      
I knew 8 of the 9, but the one I didn't (testing virtual hosts) was worth the cost of reading the entire article. Thanks.
eik3_de 3 days ago 0 replies      
> Test Virtual Hosts, Avoid DNS

> With cURL just point the request at your host's IP address

It's not even necessary to manually look up the IP, since options have precedence:

  curl server1.example.com -H Host:\ www.example.net

looks up server1.example.com and connects to that IP with the given Host: Header. Just try the "-v" option to see what's going on.

antihero 3 days ago 0 replies      
Fantastic, there's also a grand tool called httpie that's a bit nicer than curl https://github.com/jkbr/httpie
no_more_death 3 days ago 0 replies      
I generally use wget myself. For basic HTTP debugging needs, I run ":%!wget -Sd http://www.example.com inside a new vim buffer. Then I can read the Varnish headers or whatever and figure out what's going on.

I ran into an issue where the SSL implementation was a bit dated, though, and didn't recognize how a GoDaddy cert implemented multiple hostnames -- but it turned out to follow the standard. wget was just lacking in its implementation and reporting an error when the cert was fine.

randomfool 3 days ago 1 reply      
Real HTTP from the command line is 'telnet localhost 80'.
scrrr 3 days ago 0 replies      
This can be combined well with http://news.ycombinator.com/item?id=4762444 :)
RoryH 3 days ago 1 reply      
Curl is great to have, but remembering all the options flags is a pain. Nowadays I use:

Chrome: "Postman" extension

Firefox: "REST Client" addon

...both great utilities for creating and saving any HTTP request you need.

drivebyacct2 3 days ago 2 replies      
Why do people like cURL? I've regularly found it to have stupid defaults compared to wget. Is it because it's default on Mac and wget isn't?
tomchristie 3 days ago 1 reply      
I'm sure there must be other sites documenting this too, but that's a very well written and prioritized bit of documentation - nicely done.

Your echo service is pretty nifty too.

goronbjorn 3 days ago 0 replies      
This is a great resource. We use curl for sample API calls in our docs (developers.box.com/docs) because it's ubiquitous, but we've come to learn over time that knowledge of how to use curl is not ubiquitous.

Thanks for making this!

sravfeyn 3 days ago 0 replies      
I never learnt cURL, or for that matter missed many of command-line tools because of the laziness to read boring long man pages. This is a perfect example of how a man page should be. All the options explained one by one with simple examples! It took me hardly 5 minutes, now I feel confident in using cURL for my next use.
stephenhuey 3 days ago 1 reply      
And if you prefer Ruby, try out htty: https://github.com/htty/htty
agi 3 days ago 0 replies      
Nice!!! Here is one more when it comes to working with the Internet Of Things: http://cosm.com/docs/quickstart/curl.html
And using this I was inspired and managed to do this: http://www.agilart.com/blog/agilart-programs-using-cosm #YAY
nodesocket 3 days ago 0 replies      
`curl --head http://google.com` is useful just to get the response headers back.
alpb 3 days ago 0 replies      
I can add -I parameter to these. It sends a HEAD request, which only returns headers, works better when you don't need the response body as in -i.
boggzPit 3 days ago 0 replies      
Does someone knows how to use Google Analytics API with cURL?

btw: nice overview!

hoka 3 days ago 0 replies      
Helpful. I 'know' these, but this is a good cheat sheet to save around.

Really like the casual plug of your new project; I signed up :-)

caludio 3 days ago 2 replies      
I hope tomorrow I'll see an even more useful article on sending email from the command line! Wow. /sarcasm
The definitive guide to forms based website authentication stackoverflow.com
319 points by mmare  5 days ago   73 comments top 25
UnoriginalGuy 5 days ago 2 replies      
I'm normally highly sceptical of anything which is essentially a how to guide on security of, well, anything but I have to say whoever this author is they absolutely know their stuff.

Normally security advice is just 1980s circle-jerking of the same meaningless "sound good" concepts (e.g. "At least one upper-case, number, special character") but actually, no, not in this case.

Instead he is giving advice which is modern, which is based on how people actually use these systems, and also the common mistakes developers make while building them (e.g. not hashing forgotten password keys).

He even linked to NIST Special Publication 800-63 and THEN talked about login attempts over time. This dude is just incredible. I literally couldn't have written a better article than this.

mdemare 5 days ago 1 reply      
Well, this is weird. I created this question when StackOverflow was just out of beta, hoping to steer it to more broader questions - guides, if you wish. This question really took off, but the format didn't, and SO mostly became a stack of incredibly specific questions and answers.

And now somebody, but not me, has submitted this question to HN. Under my name. I'm puzzled...

DenisM 5 days ago 1 reply      
As a rule most security advice on stack overflow is dangerously wrong. It's just not a good topic for the site, because consensus if often wrong in such complicated question.

I don't see anything obviously wrong with this particular article (aside from challenge response or SSL choice - one should just always use SSL, and if you can't, then seek professional advice), however I am still apprehensive of the hive mind.

WayneDB 5 days ago 4 replies      
Why do maximum security sites always disable auto-complete for username and password?

That seems less secure to me. If I always have to type in my password, chances are that I'll choose a password that can be easily remembered or I'll be forced to write it down somewhere.

(Personally, I use plugins to get around this anyway. My computer, my rules.)

y0ghur7_xxx 5 days ago 0 replies      
Where I work we use something simple like kerberos/basic/digest/custom http header authentication on our apps, and then put Apache with mod_auth_form in front of it (or ISA server).

I even wrote an authentication reverse proxy[1] in java in my spare time, so I can use that to publish my apps, and have SSO across all of them (until BrowserID becomes mainstream that is). This way I centralized the cookie auth problem, and don't need to care about it in every app.


dochtman 5 days ago 1 reply      
Added a mention of/link to Mozilla Persona.

IMO, it's the easiest way to handle authentication today, fully decentralized, secure, and with nice privacy guarantees. With it, you don't have to care about user names (just use email addresses), passwords and secure storage thereof, it mostly just works (and once it'll get linked into the big email providers in December or so, almost everyone will already have an account).

optimusclimb 5 days ago 1 reply      
2 points by sreeix 160 days ago | flag | discuss

316 points by moonlighter 457 days ago | flag | comments

jicktroyat 5 days ago 2 replies      
In the article they talk about the 500 worst passwords of all time. Here is a gist listing those passwords. https://gist.github.com/4033452

Might be useful for some of you.

nsxwolf 5 days ago 1 reply      
I still have no idea what a "Remember me" checkbox is when I encounter one. It certainly doesn't seem to be a "keep me logged in" function. I don't know if it has something to do with form autofill, because my browser seems to do that wether it is checked or not.

Can anyone demystify this for me?

jonalexr 5 days ago 5 replies      
Regarding website authentication, I've been looking for some feedback on a new auth scheme.

Instead of using a standard password (all characters are allowed, min 5 characters, common passwords not allowed), you're able to login with a 4 digit passcode. I know someone just cringed at that thought, but the idea centralizes around improving user experience on the website.

First, all normal precautions would be taken (no common digit patterns - 1234, 1111, 2222, etc). There would also be a limit of two attempts before the passcode is reset. The reset procedure would be them receiving a new passcode via SMS, and them having to reply "yes" before the account is unblocked. The passcode is also reset every month, and a new one is sent via SMS to your phone (you can reply to change the passcode to something else).

Now for the issues I would need to address before this is even a possibility:

1) Users on the website login with their phone number, so one obvious attack would be someone cycling through all possible phone numbers with the same passcode (for example 8237). One suggestion in the article was detecting average error rates and comparing them to see if the entire website login should be throttled.

2) If someone somehow gets a hold of the database, all passcodes would be easily crackable. Now usually this would be a huge issue, but this is because normally people could use the email/password combination to login to other websites the user might use. Since they're using 4 digit passcodes, this wouldn't apply.

3) Someone could write a script to try phone number/passcode combinations until the entire website has their passcode reset, but this would fall under 1) where the error rates would exceed the normal limits and the logins would be throttled.

4) What would be an appropriate way to throttle? I mentioned it twice above, and in the article it was referring to a timeout, but the user experience of this would negate all benefits of a 4 digit passcode. Someone could keep trying combinations, and keep throttling the site every day. I could block the ip's, but what if those ip's were also sources of legitimate traffic and stopping users from logging in/signing up.


eze 5 days ago 0 replies      
I hope this gains traction before it's closed as subjective or such...
hayksaakian 5 days ago 0 replies      
Two things that stood out to me:

Given that the most common 50 passwords are known, why not reject them outright? Simply state to the user: your password is too easy to guess.

Passwords should always allow spaces in order to allow people to use easier to remember passwords, a la xkcd.


novaleaf 4 days ago 0 replies      
I'm jaded, but the first thing I thought when I read this was:

"If I asked this question, 5 minutes later it would be closed as subjective"

danielwozniak 4 days ago 0 replies      
It says if your going to use captcha, use reCaptcha because it is "by definition hard for ocr". I think it is completely mistaken.

Two words are shown for reCaptcha, one that is "by definition" ocr easy and one that is hard. You don't need to "solve" the one that is hard. In-fact, you can put anything for the hard one. You only need to solve the part that is "by definition" ocr easy.

dools 5 days ago 0 replies      
Shouldn't this be called the definitive guide to session based authentication?
frasierman 5 days ago 0 replies      
Quick note about CAPTCHAs... A more accurate rate is $1.50 per 1000, and that's even a tad expensive.

If you buy in bulk, it's much cheaper.

Source: Security researcher.

madjar 4 days ago 1 reply      
The first answer mentions a couple of time that any token given to the user (for remember-me login or password reset) should be hashed in the database.

Would it be possible to replace the whole storing by signing the token with some private key, so that the validity of the token can be checked without having to compare it to some stored value ?

duncans 5 days ago 1 reply      
> I see multiple, severe problems with this old question from 2008 and I am tempted to delete it outright -- primarily because the most highly voted answers read more like blog rants than actual "answers".


thefsb 5 days ago 1 reply      
it's mostly good. NIST abolished their algo for pasword entropy estimation some time ago. i do not much like any password strength tests, most of which rate any number of terrible passwords as strong. as such i think they give a false sense of security. maybe consider cracklib.

as DenisM said, always use SSL for all traffic if security matters and don't trust SO for security advice.

led76 5 days ago 1 reply      
What do people think of services like https://www.loginprompt.com/? (provides logins as a service for your startup)

Isn't this sort of security something we wish we didn't have to learn? And for people who don't take the time maybe it's best to let a third-party handle it.

duncans 5 days ago 2 replies      
> if an attacker got his hands on your database, he could use the [persistent login cookie] tokens to log in to any account

If an attacker gets his hands on your database, it's kind of game-over already.

zobzu 5 days ago 0 replies      
Its full of good info, but most of the time now, i'd just put persona and be done with it
nicolaus 4 days ago 0 replies      
criswell 5 days ago 1 reply      
I love the attention to usability in the first answer.
bjhoops1 5 days ago 0 replies      
Fantastic resource. Just what I was looking for.
InternalFrameInternalFrameTitlePaneInternalFrameTitlePaneMaximizeButtonPainter bugaco.com
310 points by heydenberk  1 day ago   146 comments top 31
nostromo 1 day ago 11 replies      
Someone on StackOverflow suggested we think of ugly Java class names as poetry; he provided an example:

  InternalFrame InternalFrame

Title Pane,

Internal Frame

Title Pane.

Maximize Button Window,

Not Focused State.


jacquesm 1 day ago 7 replies      
I just did a quick analysis of a system with a large number of globally exposed names written in C.

About 1000 functions in all (so that's just the globals), of those a hundred have names > 30 characters. There are some real 'gems' in there, consistency - even if self enforced - has a price. The record holder weighs in at 53 characters, it (fortunately) drops off quickly after that.

There are only 2 things hard in programming, cache invalidation, naming things and off by one errors.

Personally I think this name is bad because in spite of the enormous length it still doesn't tell me what it actually does. It just uses a lot of characters to indicate its spot in a hierarchy.

Names like these are what gave rise to jokes like 'Q: What is the spelling of bureaucracy? A: J-a-v-a'. Which of course does a dis-service to java the language and the community behind it.

I can see why they're funny, but you have to realize that when you get out of the trivial program length domain into projects that are 100's of thousands of lines that this problem will sooner or later rear its ugly head. And I have not yet seen any really good solutions.

The things that can help you to extend your runway a bit in this respect are:

   - be consistent

- reduce scope wherever possible

- pick short names for primary objects

But even with those rules you'll have a 53 letter name in there somewhere... I'd be very wary of casting stones in situations like these without knowing exactly how the person that picked it originally made their choice. Chances are there were a whole pile of external factors dictating this monstrosity and the guy or girl (or the code generator!) that did it never was happy about it either. Laughing at others that have tackled some problem is easy. Coming up with real solutions and doing a better job of it is a lot harder.

espinchi 1 day ago 2 replies      
Also, in the package com.sun.java.swing.plaf.nimbus, there lies the infamous class InternalFrameInternalFrameTitlePaneInternalFrameTitlePaneMaximizeButtonWindowNotFocusedState (http://codenav.org/code.html?project=/jdk/1.6.0_22&path=...). Quite a precise name for a class that has only 36 lines.

Talking about design patterns, the folks that develop the Spring framework apparently tried to put as many of them together as they could: there is a class named AbstractSingletonProxyFactoryBean (http://static.springsource.org/spring/docs/2.5.x/api/org/spr...) in the aop package. And, the class description is no less than "Convenient proxy factory bean superclass for proxy factory beans that create only singletons".

Take that, GoF.

SCdF 1 day ago 1 reply      
You can find quite a few of these, and every time I see them linked I shake my head in confusion.

I don't understand what I'm supposed to take away from this. That there exists in the world badly named Java classes? And? Is the implication here that because you found an example of a clumsily named Java class the entire language is an usuable write-off? Or that it's somehow indicative of all Java applications?

I know Java isn't cool, but I don't see what is achieved by staring, pointing and giggling because you found an example of its use that is ungainly.

beambot 1 day ago 4 replies      
Almost as good as Microsoft Office's tristate enum with 5 states (three of them not supported), where 0 is False and -1 is True:


markokocic 1 day ago 3 replies      
Seems like automatically generated class name. You shouldn't ever see that as a Java developer unless you work for Sun, since this is internal package. The name, though long, seems pretty consistent with the rest of the names in the package [1].

If you look at it once more I guess that it is used as a Painter for MaximizeButton located in InternalFrameTitlePane of InternalFrameTitlePane of InternalFrame.

How would you name such thing?

[1] http://javadoc.bugaco.com/com/sun/java/swing/plaf/nimbus/pac...

evmar 1 day ago 3 replies      
Here's a query for [\w{60,} lang:java] on Google Code Search:


E.g. TraversableResolverSpecifiedInValidationXmlNoDefaultConstructorGwtTest , DeleteContentTypeXmlDocumentResponseDeleteContentTypeXmlDocumentResult , and so on.

throwaway64 1 day ago 0 replies      
My personal favourite comes from apple

    AVPlayer *player = <#A configured AVPlayer object#>;

CALayer *superlayer = <#Get a CALayer#>;

AVPlayerLayer *playerLayer = [AVPlayerLayer playerLayerWithPlayer:player];

[superlayer addSublayer:playerLayer];


javajosh 1 day ago 1 reply      
This is not a code smell, but something larger, and much worse. Java is fundamentally an imperative language, and these names are evidence of the disconnect between that nature and what people think Java is.

One can argue that this is the result of ignorance, that "good" Java programmers will avoid this trap. And yet, for all it's restrictions, it doesn't give much refactoring guidance. The proliferation of patterns (both for creation and relation) in Java is a weakness, not a strength, and the result is monstrosities like this. Training, experience and convention avoids these traps, but why do we create new languages if not to reduce the amount of training, experience and convention that a programmer needs to learn in order to be productive with an environment?

twp 1 day ago 1 reply      
You've most likely already seen this, but, if not, it's a relevant, great read:
imglorp 1 day ago 1 reply      
As good or bad as the Java language may be, I think plenty of people are turned off by the Java culture that encourages this to happen. This is a little bit of an understatement since Sun setting the defacto coding standard gives a very strong message to followers.

The rest of the world might simply say blah.bah.frame.paint and be done with it.

anthonyb 1 day ago 2 replies      
Ah, naming things. One of the two hard problems left in Computer Science.
jakubp 1 day ago 4 replies      
I've only touched Java a bit, but AFAIK it has quite strict package hierarchy system that allows naming and grouping things nicely.

Why then people keep creating long class names in the first place? I get it that this particular example might be a generated name, but still, why not just create package hierarchy that represents the code properly?

Also wouldn't using package hierarchies automatically lead to a bit better design (more modular, more understandable)?

ww520 1 day ago 0 replies      
Some people like to document their code with long name instead of comment. It's an internal class anyway. Why would anyone care?

JDK has a superb auto document building tool to extract all the classes in JavaDoc and letting people to find internal classes easier.

joshfraser 1 day ago 1 reply      
Or ififtpiftpmbp as I like to call it for short.
orangethirty 1 day ago 1 reply      
I think Javascript also suffers from something like this: functions inside functions inside functions inside functions. If Java is the king (queen?) of horrible naming conventions, Javascript is the prince(ss) of horrible code structure. It might be why both are named Java...

    var foo = function(foo, bar){ 
var bar = function ( function (x) {
this.something = function (z) {
return function (y){}}}}};

//or something like that. Only a fool would
think the code above is real or even correct.

huskyr 17 hours ago 0 replies      
This was obviously generated using the Enterprisify your Java Class Names tool:


Evbn 1 day ago 0 replies      
Yes, let's all make fun of Java because it can be used to build (and then name) things we don't know how to make.
1010011010 1 day ago 1 reply      
When I saw the title I thought, _that has to be java_. If it had included a "Factory" or "Manager" in there somewhere I would not have needed to look at the link to verify.
jongalloway2 1 day ago 0 replies      
I'm pretty sure this was generated by a Hidden Markov Model gone haywire.
bjculk 11 hours ago 0 replies      
Never mind the fact that this is in the com.sun package, and as such should never really have to be dealt with. However, I do agree that anyone who makes a class name longer than three or four words is somewhat demented.
endymi0n 16 hours ago 0 replies      
I think this Class looks okay, but it's definitely still lacking an AbstractProxyInstanceFactoryDecorator.
drawkbox 1 day ago 0 replies      
They should have run it through the class namer: http://www.classnamer.com/
krob 21 hours ago 1 reply      
Wow, think they could make that any longer? I mean, I don't think it was long enough. 78 characters isn't long enough, I think it should be at least 96.
Cieplak 1 day ago 0 replies      
Reminds me of the FactoryFactoryFactory pattern.
bjhoops1 13 hours ago 0 replies      
Not sure whether to laugh or cry about this.
bbayer 1 day ago 0 replies      
creating inheritance by using name conventions is really good idea!!
mudumh 1 day ago 0 replies      
really long name!
Mamady 1 day ago 1 reply      
Why? Because Java is awesome.

But seriously, this just highlights one of the downsides of following "coding standards" religiously.

Sergey Brin Calls On Politicians To Abandon Political Parties techcrunch.com
296 points by jaredtking  6 days ago   140 comments top 32
cletus 6 days ago 13 replies      
There are two important points to remember when it comes to political parties:

1. Political parties are brands. Just like buying a widget from Apple is done based on certain expectations based on the history of previous widgets, a political party instantly tells most voters what that person is for or against.

This is incredibly convenient to the vast majority of voters; and

2. The current state of politics in the US I think reflect's Hotelling's Law [1]. The parties have converged on the middle so they each get roughly half the vote. With such close elections and narrow balances of power in the House and Senate things are going to stay ugly.

Look no further than the current distribution of seats in the Australian House of Representatives [2] where the Gillard government clings to power with the support of 3 independents and 1 Green (76-74), a change of a single seat could change the government.

This has inevitably led to some bitter disputes [3] [4] that would be non-issues or much smaller issues if the government had a large working majority.

The problem with the US is not the electoral college or that only swing states matter (which largely misses the point). Popular vote deciding the president would be a fundamental change to the system that would (IMHO) ultimately lead to disaster when a close enough election repeated the turmoil of the 2000 Florida recount across the entire country.

The problem is that:

1. Voting isn't mandatory and the population is apathetic;

2. Voting is too hard being on a weekday and involving long waiting times. I would also argue that the long waiting times are symptomatic of (1). Partisan election officials have a vested interest in deterring or encouraging the vote in certain areas;

3. The FPTP (first past the post) system reinforces the two-party system whereas preferential voting systems allow "protest votes" without them being wasted or, worse, an effective vote for the other side;

4. Here's the big one: people are too predictable in how they vote. Of those that vote, 40% vote Democrat, 40% vote Republican and 20% decide the election. The Biggest electoral landslides in history (Reagan in 84 and Nixon in 72) have both garnered less than 60% of the popular vote.

This problem is so bad that in the redistricting process [5] there are maps produced of political persuasions that are used by the incumbent state government to redraw boundaries to maximize "their" Congressional delegation. This process is incredibly accurate because people are so predictable.

IMHO the choices in this election are pretty terrible. Romney, with his 47% and his "binders full of women" is a joke. Obama is the most IP-friendly and consumer and tech hostile president in history, from championing in secret a treaty (the original ACTA) that would've raised file-sharing to the level of terrorism and turned the FBI into the RIAA and MPAA's enforcement arm to filling the DoJ and judiciary with RIAA lawyers to his stance on software patents.

My advice? Given bad choices, which seem to abound, vote against the incumbent. The one thing politicians seem to fear is losing office with all the power and perks that come with it.

If this means you vote for a party you otherwise wouldn't, consider this: it's also important that your party doesn't take your vote for granted.

[1]: http://en.wikipedia.org/wiki/Hotellings_law

[2]: http://en.wikipedia.org/wiki/House_of_Representatives_(Austr...

[3]: http://www.boston.com/news/world/asia/2012/10/09/australian-...

[4]: http://www.bloomberg.com/news/2012-10-23/australian-lawmaker...

[5]: http://en.wikipedia.org/wiki/Redistricting

bryanlarsen 6 days ago 5 replies      
Many people agree that there are many problems with first past the post voting. IMO, that's an artefact of voting districts. With modern technology, it's possible to make our representative democracy truly representative.

During an election, you give your proxy to anybody who is willing to be a representative. Each representative votes in Congress with a vote weighted by the number of proxies they received. The top 500 or so representatives get to sit in Congress. Those who didn't reach the threshold must pass their proxy on to another.

Nobody is no longer "represented" by somebody they didn't vote for. You can be represented by somebody who much more closely matches your interest. "Districts" will still be represented because many people will choose a local candidate, but everybody is free to choose someone who will represent them better if no local candidate does.

This won't eliminate political parties, but it will significantly weaken them as strong representatives will no longer be as dependent on the party machinery.

phillmv 6 days ago 3 replies      
I feel like I can't contribute much further than Yglesias did,

>Political partisanship is kind of like representative democracy itself"a terrible mess, but clearly superior to the alternatives. After all, we don't need to guess at what representative democracy without political parties would look like. Just examine almost any American city council"be it New York, DC, Chicago, San Francisco, whatever"and you'll see a legislative body that's so overwhelmingly Democratic that partisan politics don't drive outcomes. The result of this isn't a utopia of good government and sound policy, it's an orgy of hyper-localism.

>Political parties are organized, for better and for worse, around clashing visions of what's better for America. The quest for partisan advantage is, among other things, a quest for the opportunity to build a better society. Absent parties you get a situation where instead of a clash of visions of what would be best for the city as a whole, council members give undue preference to strong local interests. In city government, that means NIMBYism. In Congress it would mean endless gobs of the much-derided pork barrelling.


specialist 6 days ago 0 replies      
#1 - We have two political parties in the USA because of our winner takes all form of elections. No matter how big the pie, two sides will each attempt to form the smallest winning coalition.


#2 - Anything that weakens the political parties strengthens the monied interests. The American experiment has always been wealth vs democracy. Bad as our parties are, plutocracy is worse.

This may change with the rise of issues-based political organizations.

#3 - In the USA, we vote on everything, and we are not homogeneous. My local Republicans would be considered Democrats else where.

#4 - Don't be distracted by the party politics. Reforms which would most improve our democracy, in order, are:

a) Fair redistricting, meaning maximal competitiveness, minimal incumbency protection.

b) Universal voter registration, just like every other western democracy.

c) Public financing of campaigns.

d) Restore the fairness doctrine.

That's pretty much it. A good start. Everything else is just rearranging the deck chairs on the Titanic.

(I've got a separate list for election integrity reform.)

robomartin 6 days ago 2 replies      
I'm trying really hard not to get into political discussion. I really am.

Here's a cold-hard fact: We can argue Republican or Democrat; Romney or Obama; More taxes or not; Unions or no unions; Electoral college or popular vote, and we can argue these and many other topics until we all vomit in disgust. And the truth will still be that our system of government has run its course and is in dire need of sensible and effective reform.

Can't change it? Well, women and blacks didn't use to be able to vote either. Of course we can change it! It just isn't easy. And it shouldn't be.

We can continue to bicker about all of the above and more while our country continues accelerating down the slippery slope that marks the decline of what was once a great society.

It is politicians for politicians and by politicians. It is special interests and unions. It is idiot voters who rubber-stamp parties without any thought given to the consequences. It is about the incursion of hyper-religious sects into government. It also is about the enslaving of the masses through never-ending, ridiculous and abominable social programs that have managed to keep entire generations of people in poverty and ignorance while eroding any semblance of self-determination and the drive to succeed and advance.

That's where we are. That's the truth. Believe what you want. The fact remains that you are unlucky enough to be living through a slow-motion train wreck and it is US who are allowing it to happen. And, while I don't advocate, condone or propose violence of any kind I remain surprised that people have not taken to the streets to take their country back from a political class that deserves a swift kick in the ass, at the very least. Morons. All of us.

As far as I am concerned, there's only ONE criteria that should guide your decision of who to vote for over the next ten to twenty years: Economic Recovery.

Virtually nothing else matters. Social issues are great when you are prosperous. And they are extremely important. That said, what do you think happens to social issues in places like Greece when people are rioting in the streets, burning-down buildings and destroying infrastructure?

The luxury of a number of social programs can only come out of economic prosperity. You can't buy your kid an Xbox if you are not making any money. Well, we can't throw money around as a country when our economy is on life support. We can't grow and we can't advance.

Economic prosperity has to be the single unifying criteria that drives us as a country for at least the next decade, if not a lot more. We must pull out of the nose-dive we are in. We have to. Or it will get really ugly here very quickly.

As cool and fun as Obama is, he simply wasn't and isn't qualified for this job. Back in 2008 not one of you HN entrepreneurs would have hired him to run any kind of a startup. He wouldn't have been hired to even run a cookie baking operation. He simply did not have the skill set and life experience. Why is it that we ignore the facts and substitute our own imaginary reality with these people? Are they so good that they truly CAN sell ice to Eskimos?

He wasn't qualified then and isn't qualified now. Would you have hired him to run your startup in 2008 and given him all of your life savings and all of your parent's, uncle's and friend's life savings? Unless you are in love with the idea of Obama, as opposed to seeing the reality of Obama, the only possible answer to that question is: No.

We desperately need someone at the helm that can focus on Economic Development 100% and --this is important-- comes to the office with the skill set and life experience to navigate those waters. You don't learn to sail in a storm. You must be an experienced sailor if you are going to have any chance whatsoever to survive a storm.

I wonder, how would a VC feel if the CEO of a company they are backing plays over 100 games of golf while the company continues to loose more and more money for four years? And, what would they do to that CEO if he (or she) refused to balance the budget and insisted in burning cash (and borrow more cash) while playing golf, taking vacations, singing and dancing? This is serious business folks. This ain't some bullshit Hollywood movie.

In my opinion, this country desperately needs the guidance, outlook and vision of a seasoned business person. That's why today, my family and I voted for Mitt Romney. And, while I fear that my vote will not count because I live in California, I had to vote for the idea of a better potential future for both myself and my kids. One never knows.

If you have not voted yet I urge you to consider the idea that nothing will improve your life more than our country being guided into a path of steady and significant economic prosperity. Today, I think, nothing else matters.

mmanfrin 6 days ago 2 replies      
Parties are not the cause, they are the result. A first-past-the-post system like ours will always tend towards a two party system.
senthil_rajasek 6 days ago 1 reply      
There is an error in the paraphrasing, Sergey Brin is not calling for all politicians to abandon their political parties. He is suggesting the "victors" to withdraw from their party affiliation while they are governing. There is a big difference.

Here is his original post,


jhuckestein 6 days ago 0 replies      
In Germany we have a multi-party system and it works a little better than in the US but it's not a silver bullet either. After each election, the elected representatives vote for our chancellor (similar to the American president). Because we have so many parties and the two largest parties usually get only 20% to 40% of the vote, they need to form alliances with the smaller parties in order to gain a governing majority.

Sometimes our conservative party will team up with the liberals, sometimes our social democratic party will have to team up with a right-leaning party and sometimes the two big parties will even form an alliance.

This works fairly well, especially because each state government has a different set of governing parties so there's not as much bitterness and more people get to work together. That said, within each office, parties still consider themselves to be either governing or the opposition and fall into opposition mode for a few years, just like they do in the US.

Wilduck 6 days ago 2 replies      
I don't want politicians to denounce their political parties. Instead, I would rather see an adoption of elements of proportional representation into our political system.

For example, Party List PR[1] in the House of Representatives would provide an avenue for third parties to actually get elected on the national level. This may seem like an extreme example, in that it is highly unlikely to happen any time soon, but it is not an extreme system of voting. The German Bundestag, for example, combines a system of First Past the Post voting and Party List PR to achieve proportional representation in their legislature[2].

Even less extreme would be ditching the Electoral college, and moving to a Single Transferable Vote[3] for presidential elections. At least under these systems you're not "Throwing your vote away" when voting third party.

There is evidence that proportional systems of representation increase voter participation, and voter confidence. I would love to see prominent technologists espousing these sorts of changes.

[1] http://en.wikipedia.org/wiki/Party-list_proportional_represe...

[2] http://en.wikipedia.org/wiki/Bundestag_(Germany)#Distributio...

[3] http://en.wikipedia.org/wiki/Single_transferable_vote

hooande 6 days ago 1 reply      
I think that a Liberal vs Conservative two party system is inevitable in any large group. This assumes that most humans fall into broad liberal (counts on government, believes in helping the poor, open to new ideas) or conservative (dislikes taxes, believes in personal responsibility, likes free markets and the past) modes of thinking.

Sooner or later, the smaller groups on one side are going to realize that they can push elements of their agenda further if they all vote together. They might not get all of the things that they wanted, but they'll gain more leverage over the people who have a drastically different world view. Once this has happened, all of the people of the other mode of thinking will realize that they now have to band together in order to compete. And wallah, parties are formed.

The problem this presents to american voters is that a vote for a third party is effectively a vote for the other side of the ideological divide. Every vote cast for Garry Johnson is directly aiding the cause of Barack Obama. I bet Al Gore hates Ralph Nader to this day. The idea of "what will happen if the other side wins?" is a very real motivating factor in the voting booth.

I'm not defending the two party system. I'm saying that like free markets, it's an emergent property of human behavior. Working together with common cause is the best way to get something done, even if it means associating yourself with a group of people that you don't entirely agree with.

brackin 6 days ago 1 reply      
I found the original Google+ post more striking. If anyone wants to access that directly: https://plus.google.com/u/0/+SergeyBrin/posts/B9VnJXd6Rir

This is a good move from Brin in my opinion, even though he can do little more than speak about the matter. There's nothing more dangerous to a stable democracy than a two party system. In Britain with more prominent parties (Even though only two really get elected) I still feel like my politics aren't being represented.

vidarh 6 days ago 0 replies      
Is he really that naive?

It is not in the interest of any politician that wants their agenda to be successful to abandon political parties. Political parties were created to serve a purpose: People who believe their view of the world is right band together to increase their chance of changing things to fit their world view.

Even if they were to all abandon political parties tomorrow, they would still have their allegiances and their respective world views and would seek to forge alliances to push their agendas. The end result would be the same.

He should look instead to a voting system that so dramatically favour a strongly polarized two party system.

javajosh 6 days ago 0 replies      
People are not reading enough into Brin's suggestion. You can't just ditch parties and expect to win an election. But parties are pretty bad. The solution is to really democratize American politics. I think we need a completely new system, where, oh, five candidates are chosen by a random lottery, and then after a few months of preparation (which would make great reality TV) a general election.

This is the kind of participatory government that our modern information infrastructure can enable. And tell me that the American people wouldn't love this!

The cool thing is that we can graft this onto the current system by asking people to agree to a pact where they agree to write in the selected candidate. This would have to be conditional, of course, on getting enough people to agree to the pact. 10 million or so would be a significant number.

Of course there's no reason to start off with national politics with this. I think it would be fine to start with local races and demonstrate feasibility. But of course, I want it to choose the next President. :)

jusben1369 6 days ago 0 replies      
So are we complaining about the electoral college or the two party system? Way to smudge together two very important, but separate issues.

I would argue that the problem in the US is that the two party system is too weak, not too strong, especially at the Federal level. More party discipline would mean majorities would drive through meaningful legislation that would create real change and make voters understand that the one thing they won't get (like today) is inertia due to partisan politics. Today there's very little party discipline in Congress so all legislation becomes multi animal sausage and no one ends up liking the watered down and confused taste.

Nursie 6 days ago 3 replies      
I'd rather not have politicians making the decisions at all. Why do I need to pick someone who poorly represents my views and will probably vote against my interests, when I could easily vote on actual issues.

We'd still need executives, but legislature should be reduced to putting bills before the people.

debacle 6 days ago 0 replies      
"Old Man Yells At Cloud" would have been an equally compelling headline.
hnriot 6 days ago 2 replies      
How naive of Brin to suggest this, and some might easily suggest that the best thing politicians can do is spednd their time sticking it to each other, that way they meddle less and avoid doing any real damage. Seriously though this post really shows how little Brin understands about how political systems work.
bitcartel 6 days ago 1 reply      
In the UK, only 1% of the electorate are members of a political party. Or put another way: "between them the three main parties now have fewer members than the Royal Society for the Protection of Birds"


What happens as party membership continues to decline? At what point does it become farcical?



anon808 6 days ago 1 reply      
I call on all developers to abandon employment at mega companies and work independently.
pan69 6 days ago 0 replies      
This is just my take on it; I don't think there anything wrong with the notion of a political party. It's just a bucket under which like-minded people can group together.

My problem with politics is that politicians seem to be more focused on politics rather than governance. It's the back-stabbing, lying and foul mouthing that I start to detest more and more as I get older.

A lot of young politicians start their career out with a lot ideals and will to chance the world they live in. But then they grow up a little and suddenly they have a young family to look after. Their ideals chance and what comes out of their mouths slowly starts to turn into "blah" simply saying what people want to hear. I.e. politics. Their once good intentions slowly turn into self interest.

I think the first thing that any sane democracy should do is to take away the self interest among politicians. I would say that if someone decides to go into politics that this person can have no ties and interests to the commercial world what so ever. Not sure how this would exactly work in the real world but I think it could do some good to our political system.

kwamenum86 6 days ago 0 replies      
"It is ironic since whenever I have met with our elected officials they are invariably thoughtful, well-meaning people."

Maybe they come off as thoughtful and well-meaning because many of them are sociopaths. Indeed, politicians are much more likely to be sociopaths and psycopaths; they're great manipulators.



ebbv 6 days ago 0 replies      
Hey while we're making ridiculous claims that will never happen let me call on all billionaires like Sergey Brin to give away 99.999% of their money to charity immediately, not wait until they're 60 and realizing their only legacy is being an asshole.
no_more_death 6 days ago 4 replies      
The problem is the idea that a single elected official can somehow represent the entire United States. Can one person understand and represent 300 million people?


At least, impossible on a deep level. Such understanding is possible only in a very general level, for issues that are very broad.

Therefore, government should be as small, localized, and focused as possible. As much power as possible should be invested at the local level.

A lot of Europeans don't get this. European countries are already small and homogeneous (apologies for a huge generalization). They already have a fairly local government. The USA needs to work differently because it's the third most populous country in the world and because it's so enormously diverse. Government should be as close to the people as possible. Then if you don't like your municipality or state, you can move a few miles away to get a different municipal / state government.

I'm much more concerned about electing people whom I've met personally and had the chance to interact with at a town hall. Grass roots movements are much more effective at understanding people in a deep way. From a conservative perspective (my perspective), the Tea Party is a movement that has had great success enforcing accountability and toppling incumbents. There are similar movements in other political camps as well.

Here's the point: localized government increases freedom and choice. It puts local government in a position where it has to compete with other governments (municipal or state). That kind of competition can potentially squeeze out corruption and increase accountability.

pathjumper 5 days ago 0 replies      
Funny, I was just talking about this...

Political parties are a bad idea. George Washington himself went to great pains to explain why in his farewell address.

The gist of it is, political parties divide us, and the goals and motives of the party start to take precedence over the goals and motives of the people the party is supposed to represent. To bring this home, if you think the choice between two political candidates amounts to a choice between the lesser of two evils, then the parties have failed us completely and ought to be ousted. Both of them.

I highly recommend every American read it. The prose is beautiful. [Here's the full text.](http://avalon.law.yale.edu/18th_century/washing.asp)

A couple of excerpts concerning the warning against political parties:

>One of the expedients of party to acquire influence within particular districts is to misrepresent the opinions and aims of other districts. You cannot shield yourselves too much against the jealousies and heartburnings which spring from these misrepresentations; they tend to render alien to each other those who ought to be bound together by fraternal affection.

Political parties are deceptive and divisive...

>They serve to organize faction, to give it an artificial and extraordinary force; to put, in the place of the delegated will of the nation the will of a party, often a small but artful and enterprising minority of the community; and, according to the alternate triumphs of different parties, to make the public administration the mirror of the ill-concerted and incongruous projects of faction, rather than the organ of consistent and wholesome plans digested by common counsels and modified by mutual interests.

Parties can get co-opted by those with the time and means to do so. For example, the 0.01%. The Koch brothers, etc. And government becomes a fight between the parties instead of an operating government. Sound familiar?

>However combinations or associations of the above description may now and then answer popular ends, they are likely, in the course of time and things, to become potent engines, by which cunning, ambitious, and unprincipled men will be enabled to subvert the power of the people and to usurp for themselves the reins of government, destroying afterwards the very engines which have lifted them to unjust dominion.

People who control the parties may become ladder kickers. Removing the things that helped them rise to power, so that they cannot be easily usurped once ensconced. Like the Romney family. Mitt's father was a beneficiary of the social programs Romney claims to want to terminate. The very definition of a ladder kicker.

>The alternate domination of one faction over another, sharpened by the spirit of revenge, natural to party dissension, which in different ages and countries has perpetrated the most horrid enormities, is itself a frightful despotism. But this leads at length to a more formal and permanent despotism.

Democrat vs. Republican.

>The disorders and miseries which result gradually incline the minds of men to seek security and repose in the absolute power of an individual; and sooner or later the chief of some prevailing faction, more able or more fortunate than his competitors, turns this disposition to the purposes of his own elevation, on the ruins of public liberty.

Yeah, he saw [this](http://3.bp.blogspot.com/-2nzBwb5Cea4/T9KJYicYRFI/AAAAAAAARt...) coming too. Parties take precedence over the people themselves, and when coopted by special interests, such as our 0.01%, or big business, turn into a nightmare.

>Without looking forward to an extremity of this kind (which nevertheless ought not to be entirely out of sight), the common and continual mischiefs of the spirit of party are sufficient to make it the interest and duty of a wise people to discourage and restrain it.

Keep an eye on political parties.

>It serves always to distract the public councils and enfeeble the public administration. It agitates the community with ill-founded jealousies and false alarms, kindles the animosity of one part against another, foments occasionally riot and insurrection. It opens the door to foreign influence and corruption, which finds a facilitated access to the government itself through the channels of party passions. Thus the policy and the will of one country are subjected to the policy and will of another.

[These are now called wedge issues.](http://en.wikipedia.org/wiki/Wedge_issue#Wedge_politics_in_t...) Ostensibly issues everyone cares about, but really a tool to separate us into chunks and have us at each others' throats while those actually in power do as they please while we are fighting amongst each other over issues that ought not be the government's business.

Velveteen_Mask 6 days ago 0 replies      
As stated here, 2 party system is corrupt and self-destructive. When you listen to Jill Stein or Gary Johnson, you hear rational people talking about real problems and real solutions.
I urge EVERYONE who is not in a battleground state to vote 3rd party, so that the news covers them more, and more voters hear their positions. This is the soft way to break the duopoly. The only other way I know involves bloodshed.
brownbat 6 days ago 0 replies      
For what it's worth, in the US (as opposed to, say, the UK), party politicians aren't tightly bound to their party's policies. This partly explains why some Republicans on the West coast could be considered "too liberal" to win in the Midwest, while some Southern Democrats from the last decade formerly endorsed segregation.

And the parties encompass so many issues, it's nearly impossible for anyone to be a partisan down the line while remaining consistent. Isolationists and libertarians will clash in the Republican's tent, while union supporters and environmentalists might clash in the Democrat's tent.

Parties aren't awesome, they often get distracted by short term tactical goals that hurt the country rather than pursuing long term strategies to refine public policy. But I think that's a vision and leadership problem, not a problem with parties themselves. The wide range of views within each party should at least provide some reassurance that the parties aren't always just giant soul-crushing machines.

Just sometimes.

lifeisstillgood 6 days ago 1 reply      
Can I suggest creating a new party? There must be enough Republicans sick of being associated with the Tea party, and enough Democrats who would quite like to be able to pass a law, any law, that a centrist counter balance would be quite feasible, and play the part of kingmaker.
kdsudac 6 days ago 0 replies      
I'm sympathetic to Sergey's views but I'd think he of all people would understand the utility of political parties as huge marketing machines. The DNC and GOP have a) eyeballs/audience which leads to b) donors/money.

Although imperfect, there is some substance in this analogy
Political Parties:Elections::Search Engines:Online Marketing

grandalf 6 days ago 0 replies      
I question the judgment/intellect of anyone who affiliates with one of the major two parties in the US.

I don't think parties themselves are necessarily a problem, but the US system has converged on a two-party equilibrium that is destructive to the democratic process.

jfoster 6 days ago 0 replies      
In the absence of a political party imposing partisanship onto politicians, is it possible that a new source of control over politicians might emerge?

Independents (whether politicians, startups, or any organization that isn't big) are always cash strapped and in pursuit of a voice.

mdlm 5 days ago 0 replies      

This is exactly what our YC application is about: "Thete builds tools for people who want to create new countries...We ask whether politicians are a necessary part of a political system."

:-) :)

jcslzr 4 days ago 0 replies      
Political Parties should be illegal. They just end up as gangs of charismatic people.
Stolen Money on Gittip, Part 1 gittip.com
285 points by heathanderson  7 days ago   162 comments top 28
shawnee_ 7 days ago 6 replies      
The most unfortunate thing about this whole situation is that it was poor Chad himself who ended up discovering and shutting down the fraudsters. This should not have been the case, and I apologize on behalf of my former employer. I sincerely wish I would have been able to help catch this before it got out of hand. (Disclaimer: I am the former Operations / Support / Fraud Investigator for Balanced Payments).

As it turns out, the CEO of BalancedPayments is (there is just no nice way to put this) an unethical bag of scum. He recently went on some kind of insane power trip, completely disregarding the needs of his customers, putting me on unpaid leave for ... reporting an incident of fraud to a bank. I reported an incident exactly like the one Chad discusses here, but the dollar amount stolen was much higher, and the fraudster a repeat offender.

Anyway, after that last meeting where he was sneering and enjoying way too much the power trip of getting to "fire" somebody, I can confidently exhort that Balanced should not be trusted.

It's important that any company a marketplace entrusts its financial data with is an ethical one. So, yeah, looks like I'm on the job market; ping me : http://lnkd.in/NuBGDY

brandonb 7 days ago 2 replies      
My company (Sift Science) helps sites fight credit card fraud. We work with a few large ($100m+ revenue) marketplaces, and here are some things I've learned.

First off, strictly speaking, this is most likely to be a stolen credit card (i.e., fraud) rather than money laundering. You do NOT benefit from fraud, because when the cardholder notices the charges, they'll call up their bank and issue a chargeback. The $488.15 in your account will actually be removed and given back to the original cardholders. In addition, each fraudulent charge carries a $15-$25 fee, which you're liable for.

What's worse, chargebacks can take 60-120 days to reach you, since there's delay at every step: the customer's bank, the credit card networks, your payment gateway, and the acquiring bank (your bank). Unfortunately, that means you won't know how much fraud you have today until February (!). It's a broken system, but that's how all the major card networks work, so it's something that everybody who sells online has to deal with.

If your fraud rate is higher than about 2% for two months in a six month period, Visa and Mastercard reserve the right to block payments entirely to your (or Balanced's) account unless you prove you can get the chargeback rate down. This is called an "excessive chargeback program."

In terms of heuristics, fraudsters adapt rapidly to whatever counter-measures you use. The half-life of a good heuristic is maybe a couple of months. The best approach is to evaluate hundreds of different signals, using a machine learning algorithm to constantly adapt to changing fraud patterns. My company is running a private beta of exactly this technology and we're happy to help: http://siftscience.com. Even if you don't use us, I can recommend other services or give you general pointers.

Hope that helps! Let me know if you have any questions: brandon@siftscience.com.

dsl 7 days ago 4 replies      
This isn't money laundering (from your initial github ticket its obvious that is what you were looking for, so thats what you found).

Before selling stolen credit cards, bad guys have to verify them. This is often done with small (<$10) donations to charities or small purchases of intangible goods that are considered low risk merchants.

With Gittip they found a way to get the low dollar amounts to come back to them, but since this wasn't really the goal to start with, you'll likely see donations to random leaderboard members that are unaffiliated with the fraud itself in the future.

ig1 7 days ago 3 replies      
Pull this post and talk to lawyers if you haven't already.

Depending on where you're based you'll have legal obligations that'll define what you should be doing at this point. This may well involve lawyers, your regulators and the police.

Some countries make it a criminal offence if you let a criminal know that you suspect them of money laundering or similar offences (this is known as "tipping off") so you should be very very careful about what you're disclosing both to your users and the general public.

davepeck 7 days ago 1 reply      
This is unfortunate, but quite common. If you accept credit cards online, you're at risk. The specific kind of fraudulent behavior you see will depend on several factors (the nature of your business; whether you enable transfer from users to just yourself, or whether you push money from one user to another.)

Credit card companies will, some time later, probably notice the fraud. At that point, you'll get a chargeback: you'll have to pay back the money you charged in addition to a fixed penalty per fraudulent charge (usually $15.) Especially if you're enabling a marketplace, like gittip does, these fees can be devastating. Regardless, if chargebacks become too common, your merchant account may be suspended.

I've written some about my company's experiences with fraud, if it's of interest:



dmethvin 7 days ago 3 replies      
Openness about the problem is good, but I am not sure that it helps to provide that much detail about the ways you detected the fraud. That just give the attacker more information about how to circumvent your detection.
flibble 7 days ago 2 replies      
Looks like you have just discovered chargebacks, something that just about every merchant discovers at some point.

What to do? Some options to reduce your fraud are
- outsource the problem by using an indemnified payments system (a payment processor who do their own fraud checks and don't pass on any chargebacks to you). Pros: easy. Cons: expensive and lots of valid payments will be refused.

- Use an e-wallet that usually has few/no chargebacks, eg Skrill & Neteller. Pros. Easy, not too expensive. Cons: more difficult for people to make payments as they need to create an account with the e-wallet first.

- Use services to help with your fraud detection. Eg. Iovation. Pros: you can keep it easy for your customers to make payments. Cons. a lot of work to implement (relatively speaking).

- Use bitcoin, eg bitcoin247.com. Pros. no chargebacks ever. Cons. about 0.00001% of your customers use Bitcoin.

Edit: I forgot to add:
- require 3D Secure / Verified by Visa payments. This removes the chargeback liability from the merchant in most cases and shifts it to the card owners bank. Pros. much fewer chargebacks. Customers can still deposit directly on your site using their card (apart from the 3D redirect). Cons: entering 3DS details another barrier to making payments so will reduce payments. Plus I'm not sure of the penetration of 3DS cards in the US.

singingwolfboy 7 days ago 1 reply      
Kudos for being open and honest about this sort of thing. Publicly acknowledging difficult issues makes me support a company even more.
VBprogrammer 7 days ago 4 replies      
I'm impressed at how quickly the criminal underground pivots. To identify Gittip as a potential money laundering scheme while it is relatively unknown even with Tech circles is, in a slightly discussing way, actually quite impressive.

It does make me wonder, did the bad agent happen across Gittip independently or are they active within Tech communities?

hcarvalhoalves 7 days ago 1 reply      
Welcome to the nightmares of dealing with money.

Any good payment gateway should be managing the risk of stolen credit cards, but it's likely that because Gittip works with small recurrent payments instead of big upfront payments, it doesn't trigger any red alerts.

davidu 7 days ago 0 replies      
Good catch. You'll be fine.

For what it's worth, a little bit of fraud is a good thing. It means people are using your system and it's growing. Too much fraud and people will lose confidence and your payment processors will punish you. Too little fraud and your system is probably too complicated to be useful to anyone, including fraudsters.

japhyr 7 days ago 0 replies      
I am a strong supporter of Gittip. I think it is an important funding model to make available, across a variety of disciplines. I hope there are some people around with experience identifying money laundering patterns, who can keep Chad from having to reinvent the wheel on this.
huhtenberg 7 days ago 1 reply      
> My heuristic boiled down to the following:

So that's that for that heuristic. They will adapt now.

zzzeek 7 days ago 2 replies      
what's the responsibility of Balanced in this regard, isn't it on them to ensure the validity of credit card numbers?
jacquesm 7 days ago 1 reply      
Any system handling funds should be approached from the angle of minimizing the potential for fraud. If you don't do that right from day one there will be a lot of hard lessons which are more than likely to kill your company. Please team up with a company that has the experience to deal with this, balanced (which should have been your first gatekeeper here) dropped the ball in a terrible way, their anti-fraud measures should have definitely tripped over this so clearly they're not in control of the situation. From your posting and the comments here it is clear that you have the right general idea but you lack the relevant experience and tools.
olalonde 7 days ago 2 replies      
Another alternative would be freezing money transfers for 30 days or so. Or use a payment processor that is used to deal with high risk websites (for example, CCBill).

> The uncomfortable truth is that Gittip, Balanced, and our legitimate users are financially incentivized to turn a blind eye to laundering, because we have benefitted and are benefitting from it.

That's only true until you start getting chargebacks.

splicer 7 days ago 0 replies      
My GF just found out a few hours ago that she was the victim of a similar scheme. Someone used her Amazon account (which has her credit card info) to donate to a Kickstarter account. Unfortunately, she has no way of finding out which Kickstarter account. Luckily, her credit card company took care of everything without a hassle. She also spoke with Amazon customer service, and they "were completely useless and almost hung up because they didn't know what Kickstarter was."
PeterisP 7 days ago 0 replies      
This is why banks frown upon offering CC merchants to "marketplaces" - anyone who is not charging cards for their own business, but allows one user to give money to another.

You didn't get money laundering, but if your volumes would be larger, you would get also money launderers.

kmfrk 7 days ago 0 replies      
This is always a concern when new value exchange services are invented.

None have been as open and ethical about this as you, though, so it's very comforting to know that gittip won't be a free-for-all bonanza for asshats.

tkahn6 7 days ago 0 replies      
IANAL but isn't this one of those things where you need a lawyer?
driverdan 7 days ago 1 reply      
Nice job being proactive and catching on quickly. Have there been any chargebacks? Chargebacks are usually what alerts people to credit card fraud.
noeltock 7 days ago 1 reply      
This doesn't seem to be a case of money laundering, but credit card fraud. Thanks for the share!
sdrgalvis 7 days ago 0 replies      
The link is broken. the tumblr page is down. you can still read the post at Altavista's cache at
Codhisattva 7 days ago 1 reply      
So basically this is the most popular article about Gittip?
loceng 7 days ago 0 replies      
Best of luck. I imagine noone imagines themselves being in this situation.
noagendamarket 7 days ago 0 replies      
Should have used bitcoin :X
maplesyrupghost 7 days ago 1 reply      
looks like Bitcoin could prevent this.
arjunbajaj 7 days ago 0 replies      
Looks like Tumblr can't handle HN! The site is down. :(

That's why i'm never gonna use Tumblr! :P

Great design from Apple on an interaction with Siri 37signals.com
281 points by joeyespo  5 days ago   108 comments top 25
minikites 5 days ago 10 replies      
That's one of the things I liked about the Android alarm app that I miss on my iPhone; when you set an alarm and tap "Done", it would say "Alarm set for 9 hours and 22 minutes from now" (or whatever), a quick sanity check to make sure you didn't confuse A.M. and P.M. or accidentally put in the wrong day.
markbao 5 days ago 3 replies      
It's all about the little big details that reduce friction in user experience. This attention to detail:

1) reduces errors and user frustration,

2) substantiates the thought in the user's mind that "the software will do what I want", and

3) teaches users that the software will accomodate them, instead of requiring the user to accomodate the software.

It would have been better, actually, if the dates also mentioned the day of week, like "Thursday, October 21 / Friday, October 22". I'm more familiar with what the day of week it is, but not necessarily what the date is.

If it mentioned the weekday, I would be able to answer "Thursday" immediately, since I know that I intended it for Thursday, but I wouldn't necessarily know that it was the 21st without looking at my watch.

Firehed 5 days ago 1 reply      
This is what causes my love-hate relationship with Siri: when it works, it's a fantastic experience and gets little details like this spot-on; when it doesn't, it's off by a mile. More frustratingly, it doesn't seem to improve much between major iOS releases despite being mostly a thin client to Apple's services.

To be fair, I generally prefer obvious failure rather than quietly doing the wrong thing (which is what probably would have happened here), but even really simple stuff like "take me home" only seems to work as expected half the time.

(I'm ignoring situations where the voice recognition fails outright, since that's a totally different problem - this just relates to handling of correctly-interpreted commands)

Like many others, I wonder what Apple's QA and user feedback processes look like with Siri. Unlike Maps, there's no way (AFAIK) to report a crappy Siri response, so while I'm sure they have stats on low-confidence speech-to-text results, I'm not sure what they do to determine "you heard me right, but you did the wrong thing" or "doing X instead of Y would have been a lot more useful". As such I assume most of it is internal QA process, and Apple's secrecy around new features (fortunately Siri no longer qualifies as such) definitely hurts QA that requires a lot of real-world usage.

whalesalad 5 days ago 3 replies      
My only complaint with this is that I often have no idea what day it is. I'd love it if it added the day of the week as well. "It's after midnight, did you mean today, Tuesday, or yesterday, Monday the Xth day."

I too have seen this a handful of times and thought, "Wow, that's really clever Siri!" only to realize a few seconds later that Oct 21st vs Oct 20th does not help me and I am still screwed. Then I cancel out and go look at the calendar day and then re-sirify it.

Then again I am not that smart.

esolyt 5 days ago 4 replies      
Actually, this isn't the best possible design. As others here have already pointed out, a better design would be presenting the options as:

4 hours from now

28 hours from now

This one doesn't require me to know the current date and also works as a sanity check to make sure I'm not confusing AM and PM.

zaidf 5 days ago 0 replies      
Boy I can't wait for the day when we look at this screenshot and chuckle that it was even needed. My problem with Siri and others is that if I have to look at the screen after every command, it kills away a huge chunk of the benefit. If Siri was a human, it is the equivalent of having the human repeat what he heard every time you made a request to confirm he understood you correctly. That would be annoying. And often just easier to do it yourself.

This is one area there is massive room for innovation. I'd give it a few years before we can say a command like "hey iphone, text mom that I am home" and within seconds, hear back "done!". I'd know with confidence that the right message was sent. Even more importantly, I'd be able to do all this without needing to lift my phone, or have to get closer to the phone or speak too much louder than whispering the request to an assistant.

acangiano 5 days ago 1 reply      
Discussion on Reddit from a month ago: http://www.reddit.com/r/apple/comments/10f3al/clever_siri_if...

In that thread, I commented:

In my opinion a much better question would be "Do you mean in 9 hours?". If you say yes, set it for today. If you say no, then it's tomorrow.

keltex 5 days ago 2 replies      
Does anybody know how "Google Now" handles this?
sturmeh 5 days ago 0 replies      
Whilst that may seem like intellegent design, you'll notice that you can't see the current date anywhere on that screen without making assumptions.

This screen would make me feel uneasy and over-analyse the options. (Does it mean yesterday or today? today or tomorrow?)

It would be nice if it also showed the day of the week on each option.

pws5068 5 days ago 0 replies      
I've also benefitted from this condition once but it would have been helpful to show a day of the week beside the date for added clarity.

Did you mean Sunday October 21st, or October 22nd?

runemadsen 5 days ago 5 replies      
I wonder what the workflow is in the Apple teams that allows them to catch stuff like this. Is this the work of a single, smart programmer, or a good QA team?
ComputerGuru 5 days ago 0 replies      
I just want to point out that this must be a recent innovation, because only two weeks ago I got screwed over by telling Siri to create an appointment "tomorrow" after 12am, and she booked it for the day after and told me she created the appointment for "tomorrow" (no date).
S_A_P 4 days ago 0 replies      
Maybe this was apparent to everyone using Siri, but today I asked it/her "Who is my girlfriend?"
it replied what is your girlfriends name?
I told it
It then set the alias "Girlfriend" to her and now I can say
"Siri send a message to my girlfriend saying I love you"

which I think is totally awesome. Im late to the Siri party though...

epaga 4 days ago 1 reply      
One time I had to set my alarm for 4am (early flight) and Siri said, "OK, but don't wake me up!". On the one hand that's pretty funny of course, but on the other hand, I think it's a helpful sanity check for you to make sure you didn't actually mean 4pm.
jonmc12 5 days ago 0 replies      
This particular feature may been less a function of Apple design philosophy and more a function of Siri being built on top of a contextually-sensitive disambiguation engine.
tbrock 5 days ago 0 replies      
I constantly check this website for nice little touches that usually go unnoticed: http://littlebigdetails.com/
altrego99 5 days ago 0 replies      
This seems common sense to me, I would most likely have done it this way if I were designing a voice operated alarm module. Hence it follows Apple is already likely to have a patent on it.
corwinstephen 5 days ago 0 replies      
I wouldn't call it great design. I'd call it lack of bad design. I feel like asking which day you're referring to is an extremely obvious step in selecting a time. The fact that we're surprised by it is a testament to how terrible most productivity software is.
IheartApplesDix 5 days ago 0 replies      
I love this post so much. Please upvote onto front page so more people can be made aware that Apple and Siri exists, and they are the bestest.
cecilpl 5 days ago 4 replies      
This is the difference between a programmer's understanding of "tomorrow" and a user's.
daladd 5 days ago 0 replies      
When I first saw the Siri Query, I was anticipating it would try to disambiguate A) remind me (to inflate my tires tomorrow) (at 9:00) vs. B) remind me (to inflate...) (tomorrow at 9:00). I guess I was overthinking it.
aviswanathan 5 days ago 0 replies      
Someone once said that the best things about good software are the things you don't notice but improve your life. Case in point here.
jheriko 5 days ago 0 replies      
This is why everyone should test things... stuff like this falls out of good testing if you miss it on a first pass. :)

some people could learn from that idea - even if they already hire 1.5 testers for each programmer.

(yes i mean microsoft)

pmtarantino 5 days ago 0 replies      
Excellent. I would love to know who, from Apple, suggests this details.
jamesrcole 4 days ago 0 replies      
Yeah, it's not about the literal details, but how the user perceives the details.
Inside the Secret World of the Data Crunchers Who Helped Obama Win time.com
278 points by sek  5 days ago   133 comments top 17
zeteo 5 days ago 11 replies      
I think polling on such a detailed level is fundamentally changing the democratic process. In the past, politicians had to be leaders - present a vision that was quite possibly unpopular to start with, and persuade people to come around to it. (See e.g. JFK and the space program.) Nowadays they're becoming expert hagglers: keep this mini-group barely content, say exactly the right nice things to the other, ignore a third altogether because they're 10% over in enemy territory. I don't know where this is leading to, but it's definitely a big change.
ryanwaggoner 5 days ago 9 replies      
I find this really interesting, but I'm unclear on the proof that this made a big difference for Obama's campaign success. I'm sure Romney had people crunching the numbers as well, and he actually raised more money than Obama.

This was a pretty narrow victory, there are a lot of structural, ideological, and demographic biases at work here, and Obama did worse among most groups than he did in 2008.

Put another way, is there any evidence that Obama would have lost or even done much worse without this data crunching effort?

downandout 5 days ago 6 replies      
The gist of this article is that Obama was able to use a combination of data mining and creative marketing to pinpoint impressionable voters in crucial areas with a view toward manipulating the electoral college system to his advantage. This is yet another reason to toss the electoral system in the garbage and set it on fire. In no event should a relatively small subset of the population in a handful of states be responsible for choosing the President of the United States.
RyanMcGreal 5 days ago 2 replies      

I somehow got added to the Obama campaign mailing list, and their recent fundraising emails politely noted that their records did not show me having donated any money (I'm not American and don't live in the US). They also said that their records might not reflect my donation if I had made it through a different channel.

However, this article suggests that all the channels go to the same database. I wonder whether one of the following scenarios is correct:

* The database has eventual consistency (maybe my donation through channel X would take some time to be reflected by the campaign team);

* The message was a ruse to throw off independent and Republican analysts to the sophistication of the database;

* It was CYA in case something had gone wrong.

soupboy 5 days ago 0 replies      
http://www.slate.com/articles/news_and_politics/victory_lab/... - Slate article from Jan 2012 "Project Dreamcatcher
How cutting-edge text analytics can help the Obama campaign determine voters' hopes and fears."
plinkplonk 5 days ago 2 replies      
Does anyone have any info about the tech stack?
brown9-2 5 days ago 1 reply      
A similar profile from Mother Jones pre-election: http://www.motherjones.com/politics/2012/10/harper-reed-obam...
azernik 5 days ago 0 replies      
Nate Silver made an interesting point a while back when he compared the political data revolution to the Sabremetrics revolution in baseball.

In baseball, the journalists and pundits were way ahead of the professional operators in moving from gut calls to data-crunching, while in politics, it's the opposite - what Silver and other public number-based forecasters do is commonplace inside the campaigns.

binarray2000 5 days ago 1 reply      
Fascinating stuff... and something I want to learn more about.

Can you please recommend me books/software applications/online courses for doing the work these guys were doing for Obama campaign?

(Just to clarify: I am a developer and I grok SQL. So that part is covered. Other parts... less so.)

clarkmoody 5 days ago 2 replies      
What this article seems to show is that the election was not about political ideology. It was about getting out the vote. The Obama campaign fine-tuned its message to scientifically increase returns in those targeted groups. The Romney campaign played the 'smoke-filled room' game (for all we can tell).

In none of the presidential debates did either man speak in depth about his governing philosophy (or the Fed for that matter). Their talking points rang loud and clear over and over, and finger-pointing abounded, but neither spoke of his core convictions. The campaign speeches were much of the same. For all of the complaints about Romney's lack of details in his economic plan, the President didn't do any better, simply offering a 'stay the course' message (he learned something from Bush).

Therefore, given this article and the lack of ideology involved in the campaigns, I conclude that the voters were not persuaded by philosophy. They were targeted by the campaign so that the powers that be could keep their power.

Looking back to the electoral college results of 1980 and 1984 shows what a strong, clear ideological message can do. Those familiar with Reagan's speeches will know why.

So for those who say that America has embraced any certain ideology, I say that it has not, since ideology hasn't been on the ballot for a long time. People have embraced a man, and the philosophical debate has reached a new low.

wilfra 5 days ago 0 replies      
Too bad the single biggest piece of data here is going to be ignored. If they started competing with Silicon Valley for talent and put thousands of these guys to work in a building somewhere to fix this country, they'd quickly become the 'nuclear codes' of the USA. But they wont bother, they'll immediately forget all of this until the next campaign and go back to politics as usual.
harshaw 5 days ago 0 replies      
I'd sure like to know more about their methods and algorithms. What exactly "is" big data is glossed over so much that I can't tell if they are doing something unique here or simply applying a large degree of automation.
fatbat 4 days ago 0 replies      
Anyone have additional insights to what is meant here?

"...the campaign's Quick Donate program, which allowed repeat giving online or via text message without having to re-enter credit-card information, gave about four times as much as other donors. So the program was expanded and incentivized."

- How did the Quick Donate program work? Like Amazon's 1-Click checkout?

- What was the call to action for Quick Donating again?

- How was the program expanded/incentivized?

lukethomas 5 days ago 0 replies      
It's interesting that they mention email lists - I tried unsubscribing several times from the President's list, and it never worked. Anyone else notice this?
andrewkkirk 4 days ago 0 replies      
Want a future in campaign management?

Cut your chops with an e-commerce company. While there learn big data, how to test, and read into behavioral economics, and you're set.

f137 5 days ago 0 replies      
"A politician thinks about the next elections " the statesman thinks about the next generations."

There are no leaders anymore.

patrickgzill 5 days ago 2 replies      

What gave PA to Obama was the blocking by the courts of the Voter ID act that the legislature passed.

Note that in all the praise about individual contibutors in the article, there is no mention of "bundling" and the routine use of cutouts, both rather unsavory practices that both sides use.

EDIT: this site may prove a useful antidote to the above article: http://www.washingtonpost.com/wp-srv/special/politics/campai...

Romney raised more than Obama in total $$$. Even without the SuperPAC contributions that gave Romney more money, the two campaigns were within about 10% of each other in terms of what they raised.

Steam for Linux Beta Now Available steampowered.com
269 points by mukyu  6 days ago   87 comments top 12
drv 6 days ago 8 replies      
Here's a list of games available via Steam for Linux currently: http://store.steampowered.com/search/?os=linux

The link provided just redirects to the front store page for me: http://store.steampowered.com/browse/linux/

viraptor 6 days ago 2 replies      
> “An overwhelming majority of beta applicants have reported they're running the Ubuntu distro of Linux”

I'm sure the survey results were really valuable and contained only true answers after they announced that "ubuntu" is the "right" answer for the first beta... I hope they don't take them too seriously.

pdknsk 6 days ago 6 replies      
If you're not in beta, but still want to play around with the client (without games), install Steam and start it like this.

  wget http://media.steampowered.com/client/installer/steam.deb
sudo dpkg -i steam.deb
steam steam://open/store/ &

This bypasses the beta check (but still requires Steam account).

Next right click the Steam icon in the Unity launcher and pick Store. Pin the icon to directly pick Store next time.

mukyu 6 days ago 3 replies      
http://media.steampowered.com/client/installer/steam.deb Ubuntu 12.04, supposedly is only supposed to work for people in the beta
sown 5 days ago 1 reply      
If you break your ubuntu 12.04 install because nvidia driver 304 breaks, here's how you fix it. Hopefully you made backups of your x config files (it's a selectable option when you install new nvidia drivers). If it's x is truly broken, then you won't see any windows or GUI. Hit ctrl-alt-F1 and login to your user, then do this

   sudo service lightdm stop
sudo nvidia-uninstall
sudo apt-get install --reinstall nvidia-current

viraptor 6 days ago 0 replies      
For users of Arch Linux: https://aur.archlinux.org/packages/steam/ - it was also a very quick hack:

First Submitted: 2012-11-06 19:06

trotsky 5 days ago 0 replies      
I guess we all have to pay more than the average to get left 4 dead 2 added to the bundle.
jiggy2011 6 days ago 1 reply      
I run it and it strongly recommends that I install a new nVidia driver that is marked as "experimental".

I know that it's not fair to dump on a beta but the interface is really unresponsive even compared to the Windows version and half the time I can't even drag windows around.

Looks like this still has some way to go.

doki_pen 6 days ago 0 replies      
So annoying that I keep clicking on steam articles and I still can't use it on Linux.
husam212 6 days ago 0 replies      
This is great for a closed beta, I thought its gonna be a farm of bugs with almost nothing working ... I really appreciate steam team for their hard work, I hope we see hardcore gamers soon using Linux.
JamesArgo 5 days ago 0 replies      
Who would have expected this two years ago? And Nividia finally released a decent driver.
thedangler 6 days ago 3 replies      
I know it is only in beta but all this "how can I get it to work" talk makes me think it is not user friendly yet.

Windows and Mac it is simple as download and go.
But with Linux there seems to be issues and work arounds.

Still not for the average user.

Look at all the comments.

Rampant Abuse of Push Notifications Is Ruining Them For All Developers anylistapp.com
259 points by dirtae  9 hours ago   118 comments top 36
nostromo 8 hours ago 11 replies      
I wish spam prevention was a bigger part of Apple's culture.

I get spam robocalls on my iPhone and have no way to block them. I have recently started getting unblockable requests to Facetime with strangers on my Mac -- a service I didn't even know I was logged into. I have an Apple email address that is way behind Gmail on spam prevention. And as noted in the article, iOS notification spam is now an issue.

In contrast, Google has anti-spam as a core corporate competency. They know that where there is a profit motive, there will be spam. They truly think like hackers -- "if I were a bad actor, how would I abuse this feature?" Apple needs to pick this up.

slapshot 8 hours ago 1 reply      
That's a nice commons you've got there. It'd be a tragedy if something happened to it.

As has been extensively discussed, there are lots of drawbacks to the App Store model. But if they actually enforced limits on push notifications (or maybe even charged developers for them), it'll slow the tragedy of the commons a bit. I agree that individual users could do the same, but the marginal spammy app still has every incentive to be spammy.

mamoswined 8 hours ago 4 replies      
The most hilarious one on my phone is a local transit app, which is sadly very useful so I'm keeping it, with an irate developer who uses push notifications to angrily respond to negative reviews in the App store. I get notifications like "Response to Gregory's negative review."

I actually read them sometimes because they are mildly amusing things like "Gregory's Review: 1/5 stars, didn't work. Developer comments: HOW ABOUT FILING A REAL BUG REPORT SO I CAN HELP YOU INSTEAD OF LEAVING A VAGUE BAD REVIEW."

raldi 7 hours ago 0 replies      
I recently had to disable notifications for Words With Friends (it took two tries). The "nudges" were bad enough (I'll make my move when I have some free time, damn it) but the final straw was when they started holiday spam -- e.g., "Why not celebrate Halloween by playing a word like SPOOKY, WITCH, or DRACULA?"

No, fuck you, Zynga. And Dracula shouldn't even be a playable word.

ck2 10 minutes ago 0 replies      
What I love on android is I can just strike-through any privilege I don't want an app to have, like internet access. This might be a cyanogenmod-only feature though.
rm999 8 hours ago 1 reply      
I remember the day Draw Something started abusing push notifications: the paid version was sending me ads for other zynga games. What sucks is push notifications are almost essential for the functionality of the game: without them, you have to constantly check if it's your turn. I and many other people deleted the app as soon as the ads showed up. Talk about destroying a very valuable network effect for a quick profit-grab.

I'm now part of that group who reflexively rejects notification requests. I agree with this article that Apple should take action, but app makers should also realize the cost of abusing their customers.

btilly 8 hours ago 1 reply      
The right solution is to have every single push notification have a "Silence this" link on it. That takes you to a screen naming the app and asking if you want to turn off its ability to do push notifications. This fact is tracked across users.

Add a warning from Apple that any app that is turned off by too many people will be deemed to be too spammy, and taken out of the app store.

This would completely solve the problem. In the absence of any such mechanism, all incentives point towards continued abuse of the feature.

drivebyacct2 8 hours ago 3 replies      
For all the weird ad/spam accusations I've heard against Android, it shocks me how much this seems to be an iOS issue. I can say I've never, ever had a problem with this in Android, and if I did, most every app that I use that I can think of allows me to enabled/disable different types of notifications (FB/Twitter/etc). It's also a tiny bit amusing that one of the solutions is to make the Settings more sane and make them live inside their application like Android.
S_A_P 7 hours ago 1 reply      
The same goes for Notification bubbles!!!!!!

I have deleted some games from my system because they display notification bubbles above the icon or app folder. That drives me insane. A few examples I can call out are Halfbrick studios. Jetpack Joyride and Fruit Ninja both do this too often for my taste and have been removed from my phone because of it. These are particularly bad examples because of how many taps it takes to actually show and clear the notification. I wish there was an opt out with these things as it disturbs my OCD to have a clean desktop and no notification bubbles.

kylelibra 8 hours ago 1 reply      
At the very least they should ban apps that have a way where no matter how many times you check it, the icon always has the little (1) on it. GetGlue was doing this for a while, but it appears they stopped.
jeffclark 8 hours ago 0 replies      
"As a result, users are starting to reflexively reject app requests to send push notifications."

Source? An actual, non-vague stat? Proof?

lazyjones 7 hours ago 0 replies      
First reaction to this: "Wow, that must be annoying, I'm glad I don't have these apps. What were the developers thinking, how do they get away with these shady practices?"

Second reaction: "Perhaps they are doing something right and we should be doing that in our apps. Perhaps younger people actually like such things, after all they get dozens of sms every day and it makes them feel important/liked?"

mikeash 6 hours ago 0 replies      
The conspiracy theorist in me wonders if this is intentional. A big problem with computer security is that people just blindly click "OK" to any sort of authorization prompt. Ever since push notification abuse started to get bad, I've been much more careful about reading the authorization prompts that my phone throws up, after authorizing some apps for push notifications without thinking through the implications, then having to manually turn them off later.
dsl 7 hours ago 0 replies      
The Instacart notifications are just insane. I got into the early beta and never used the app a single time because of the sheer volume of annoying pushes I'd get.
boctor 7 hours ago 0 replies      
OK, so there is gratuitous use of push notifications, but it's also unfair to compare push usage between a utility app and apps that are trying to convince you to try something new.

How about we compare the pushes to email campaigns by companies?

I for one am constantly amazed at how much users tolerate these emails.

So I say, yes, make it easier to stop the pushes just like it's easy to unsubscribe from email campaigns. It could be as easy as making sure users know that the pushes stop when the app is uninstalled.

But I think outside of other app developers and the tech community, users may not feel as strongly that this is abuse.

bstar77 8 hours ago 1 reply      
The one that's been killing me lately are the notifications from the new He-Man game for iPhone. I have yet to figure out how to turn off push notifications for this app, it's not in the in-game settings or in the Settings app and I know I never enabled them in any dialogs. I just randomly get random messages about how I'm not doing a good enough job saving Eternia. If I can't figure this out soon the game is gone.

Isn't this the kind of abuse that the app store approval process should be addressing? If notifications are supported, then they should be required to be configurable in the Settings app, no exceptions.

SquareWheel 8 hours ago 1 reply      
The same is true of in-app purchases. How many scammy "buy 3000 mojo points!" apps are out there now? At this point I don't even bother with an app if I see in-app purchases. Shame for those who use them correctly, like Alien Blue.
gourneau 8 hours ago 0 replies      
TaskRabbit was abusing them as well. We should do our best to shame any organization that sends spam via push notifications.
phil 8 hours ago 3 replies      
Just tap Don't Allow.

Edit: More seriously, all four of those suggestions are very good, and I'd like to see them too. For #4, a deep link to the app's notification settings would be good enough, and probably more likely than getting a notification settings controller in UIKit.

rossjudson 7 hours ago 0 replies      
Apple needs to start engaging in Pagerank-style ranking of applications in the store, and including metrics like "number of push notifications sent, per user" in the calculation. Please also include "number of applications per developer".

And please revise the guidelines such that if in-app purchases are turned off on the phone, showing the user a catalog or purchases screen is grounds for rejection.

frankus 7 hours ago 0 replies      
As mentioned before, Local Notifications can be equally spammy, are impossible to turn off, and are visually indistinguishable from push notifications.

The are also not subject to a strict interpretation of the app review guidelines.

The only limitation is that they need to be set ahead of time when the app is active, or triggered by one of the background modes (geofencing, significant location change, task completion, Bluetooth LE, etc.)

rsl7 8 hours ago 0 replies      
I hate all notifications except my morning alarm clock. I don't want to be interrupted.
krickle 3 hours ago 0 replies      
This is the number one reason I find my iPhone irritating (in practice) -- apps keep abusing even local notifications and those should be off by default unless I allow it.
zaidf 8 hours ago 0 replies      
Same is also true for facebook notifications. I recently got a notification that said "Blabla has given you a free movie on Flixster." Now, I am actually down to try a service that gives me a free movie rental. But because of my past experience with fb notifications, I immediately hit 'Ignore' thinking it was another gimmicky spam.

Facebook has focused so much at Games that I think it will begin to hurt them when more well-known businesses in other categories try to use their platform to distribute offers.

flurp 6 hours ago 0 replies      
I've been calling Facebook Notifications the Push Notification of the Web, they are great, maybe just as good as native Push Notifications. But they have also "solved" (it's new and yet to see) the spam problem recently by implementing harsh restrictions on how you as a developer can send them. It would be interesting if Apple and Google copied this behavior. Basically Apps that send > 50000 notifications a week have to maintain a 17% Click-To-Impression ratio. However I find the 50K an oddly picked number which should instead be based on installed user base.
marknutter 8 hours ago 0 replies      
I rarely allow apps to send me push notifications. Only very selectively do I allow it and even then my patience is short. For the average user this may be an issue but I've found my approach handles the situation very nicely.
kmfrk 7 hours ago 0 replies      
I can't for the life of me figure out how to disable Embark NYC's push notification.

My biggest problem now, however, is getting push notifications from Letterpress at 4AM, because the person I play with is on the other side of the continent.

There should be an adittional setting to require permission for a specified window of time like, say, 1AM to 8AM.

grandalf 6 hours ago 0 replies      
I don't think there are really any good reasons to use push notifications. I have them disabled on all the apps I install and don't feel like I'm missing out on anything.
zobzu 7 hours ago 1 reply      
Those notifications are the "fucking horror". I uninstall any app (on Android, mind you) that does that.

heck, i even dislike the notifications when the app is on the foreground (specially the apps begging for rating on the market: when i get one, i just go put one star). but the background ones are TRUE EVIL. :P

jdavid 5 hours ago 0 replies      
I think this could be solved with a simple like/dislike button for notifications.

If that type of notification is unwanted you could, dislike it and it would suppress notifications of that type for ... x days. If you do it enough, it would disable it. If enough of the apps notifications are disliked then the apps notification privileges get suspended all together.

xoail 6 hours ago 0 replies      
May be developers should provide the frequency (x) of push notifications at the time of requesting access. And Apple should ensure not more than x notifications were sent to a device? Something along the lines: XYZ App would like to send you push notifications. Freq: 2/day, 1/week, User set [Allow] [Deny].
cousin_it 8 hours ago 1 reply      
This, and the crapware problem on Windows, seem like two instances of the same underlying problem. What could a general solution look like?
Wistar 2 hours ago 0 replies      
First thing I turn off on all apps. If, after a spell, I find that I miss push notifications on a given app, then I will turn it on.
zerostar07 5 hours ago 0 replies      
Facebook apps went through the same problems years ago. I don't think facebook ever managed to settle on a solution.
caycep 6 hours ago 0 replies      
i generally say no to notifications. I don't have anything mission critical on email that I need to know "right this second" and twitter and fb updates I only want when I want them, otherwise they're a huge distraction..
chrisdevereux 8 hours ago 0 replies      
Would a simple "stop showing me these" on each notification work?
GNOME (et al): Rotting In Threes igurublog.wordpress.com
254 points by EdiX  4 days ago   198 comments top 31
acabal 4 days ago 2 replies      
On one hand, I agree that these projects (Gnome, Unity) are going in bad directions, for much of the reasons the post outlines.

On the other hand, I understand the practical necessity of limiting the number of moving parts in a project. If Gnome thinks developer manpower is better spent in a place outside of the theme framework, then that's just a symptom of not having enough developers. It's the practical reality: some parts of the OS get more love than others.

I also don't get his Launchpad example either. Canonical never built it for anyone but themselves. Why complain that they won't give open it up? They wrote it, they can do what they want with it.

What I think this article is truly complaining about isn't lack of choice or branding, but the core cause of those things: the slow creep of "I know better than you do" design. Personally I blame two actors for this: Steve Jobs and 37 Signals. Steve Jobs made a zillion bucks cramming his design decisions down peoples' throats. 37 Signals was the developer's darling for many years, and were the big early proponents of "opinionated design." Both of these things appeal greatly to a human being's ego:

"Yeah, Steve Jobs is right! I'm such a great designer, so if I want to make a zillion bucks, I must realize that users are idiots and my beautiful product will make them love their lives again, and if they don't like it they, can suck it!"

"Yeah, 37 Signals is right! I'm so smart, I can decide what my users want, and if they don't like my opinion, they can suck it!"

Well, there's no doubt that those models worked for Steve Jobs and 37 Signals. Both are very successful. But when they start preaching that stuff to regular developers who lack the luck and talent to become a multi-million-dollar success, what we get is projects like Gnome 3 and Unity. People acting like design dictators--Steve Jobs--but forgetting that he was a once-in-a-century genius. People acting like their opinions are the best and different ones can suck it--37 Signals--but without the special sauce and determination that made that team successful.

Folks: You are not Steve Jobs and you are not 37 Signals. With few exceptions the cult of design dictatorship is the worst thing to happen to fledgling software projects in the past decade. Good designers (both graphic and architectural) can succeed as dictators, but good designers are few and far between. What the cult really does is give bad designers an excuse to be always right. And when bad designers are always right, bad design becomes par for the course.

graue 4 days ago 3 replies      
This was a depressing read. But I noticed there was no dirt on the Xfce project. They continue to produce a useful, stable, customizable desktop environment that doesn't radically change every 6 months or try to force its way on you. And so, I continue to give Xfce my highest recommendation for anyone interested in running desktop/laptop Linux.
josteink 4 days ago 2 replies      
I guess you have to decide if you are a GNOME app, an Ubuntu app, or an XFCE app

That's it. Gnome has peaked.

No point supporting people who are unable to grasp the idea that they work in a software-community and that pieces, even ones they don't use or make, will need to fit together.

dkhenry 4 days ago 4 replies      
So two things I would like to point out.

1. Gnome is at 3.6 they have many things that are changing rapidly. I don't expect them to limit the things they can do to make the DE _better_ just so that they have a stable API for themes.

2. I actually find myself liking gnome3 and gnome shell better then Xfce ( my fallback for the early days of gnome3 ).

The workflow they introduced hurt at first because it was different and scary, but its so natural now I find myself missing it when I work in Xfce or KDE. I know there are some developers who value above all else the freedom and ideals espoused by the FOSS movement and want a system stack that is true to those principles above all others. I am actually enjoying a well _designed_ and coherent desktop experience. Also I have the source code if something really is bothering me I can change it, but I am finding after 15+ years of tweaking config files to get everything to work the way I wanted it to I am now content to just have something that works out of the box even if I have to acclimate myself to some of its nuances. It turns out most of the time what I thought was a problem actually works better for me once I get used to it.

PaulHoule 4 days ago 1 reply      
This is news?

GNOME killed the Linux desktop on the day it was started.

KDE was a real start to a Linux desktop that could have been competitive with Mac OS and Windows. Red Hat didn't like the license, and ever since, Linux has had a plurality of broken desktops and none that work.

The oddest thing is that the developers just haven't realized how bad their products are, or that the Linux desktop experience has been consistently getting worse over time.

Look at Unity in Ubuntu. All the most basic things, like cut and paste, scrollbars, and window resizing are FUBAR. Rather than recognizing the world-class nature of the shell environment and providing a better -term application, we just get bloated terminals for which cut-and-paste almost works.

(I'll admit the system monitor app that comes with Ubuntu is pretty, but I wonder how it makes the CPU go to 25% on a machine that's capable of high-end gaming)

This year I learned how to make a "Linux desktop" that's better than all of them. I run Windows 7 or 8, then I install Ubuntu inside of VirtualBox. Most of the time I ssh into it with a putty terminal, which is much better than any -term in Linux? (Why? Why can't Linux make a *-term that's better, or at least not worse, than xterm was in 1993?) Most X Windows apps work great with the cygwin X server, getting managed by Microsoft Windows.

The biggest problem is that the people developing this garbage don't have any idea of how bad it is. Mac OS and Windows have been getting better over the last ten years, but Linux enthusiasts won't admit that Linux has been getting worse.

opminion 4 days ago 3 replies      
Two golden quotes from a Gnome dev. Beware, they are taken out of context:

I guess you have to decide if you are a GNOME app, an Ubuntu app, or an XFCE app


for the first time we may have ability to really shape the user experience and form an identity for the GNOME platform

Why would the windows manager be a "brand", rather than the distribution? (Red Hat, Ubuntu).

There is no point (for them) in people "recognising the install" if they don't have easy access to it.

Having wasted enough time configuring appearance, I now would be in one of two scenarios:

1. Install a Linux distribution such as Ubuntu or Red Hat and then use whatever comes as a default (and avoid fiddling around to save my time for more important things). Won't use Gnome if it is not the default.

2. Install whatever allows me to use the same appearance as in the other machines. SuSE/KDE used to have a "Redmond" theme that looked and behaved like Windows Classic. Do the same in the Windows machines.

likeclockwork 4 days ago 1 reply      
I find myself thinking about the historical criticism that has been aimed at the Linux ecosystem, that it lacks design awareness and doesn't have a unified aesthetic principle..

Then I see something like this and I wonder if in a way that wasn't a strength.

I mean "brand coherence"? I can't imagine what that has to do with Linux. Everything has always been so configurable, that in a way a lot of aesthetic decisions were left to the user and the app developer. People used Gnome 2, and other desktop environments to design their own desktop.

I used Gnome 3 for a few months last year when I was making my swing back to using Linux full time with Fedora. I found it usable enough, but it's lack of configuration options became frustrating because it didn't allow me to fine tune my GUI workflow, it also handled multiple monitors terribly and being unconfigurable didn't allow me to adjust that.

I was initially excited about Gnome 3 but it was pretty shallow. KDE 4 is an amazing desktop environment, with lots of configurability and in keeping with letting the user design their own experience. I made a good long stop there, for about a year, optimized my windowing workflow (one size simply does not fit all) then ended using xmonad but running some KDE apps..

It looks like GNOME and Unity are turning against the traditional spirit of the Linux community. I don't think that's for the better. The answer now to the question "I don't like it." for these Desktop Environments is "If you don't like it, tough." where as before it was "If you don't like it, change it."

I don't think Linux devs should ape Apple, Google, or Microsoft. Linux can be, and is, for everyone.. but it's especially for hackers and for people who like to tweak their experience. A project like a DE is huge and by turning away from hackers they're going to limit their ability to pick up new devs and devs are going to turn away from the GTK.

For some people Ubuntu IS Linux, Gnome IS Linux.. but for others not so much.

I don't develop desktop applications currently but I would like to. I don't see myself wanting to start a new project or get intimately involved with one that is dependent on the GTK at this point though.

aes256 4 days ago 7 replies      
GNOME is clearly trying to imitate OS X. That much is plain to see.

In doing so, it seems the devs have adopted the Apple approach; dictatorial design. In many respects this is a good thing. It gives them the good sense to say "no" to certain proposals; I'm sure there are active GNOME contributors who would prefer Nautilus to have five customizable toolbars, and the system menubar to have a mind-boggling array of system stats. No.

Obviously, haters gonna hate. People who get a kick out of relentlessly customizing their desktop environment will no longer feel welcome. GNOME sold out, it went mainstream, whatever. Don't let the door hit you on the way out.

This is a victory for ordinary users. This is giving the developers focus. A lot of user suggestions are just pointless distractions from the core goal, which is apparently to imitate OS X as much as possible without being called on it.

VMG 4 days ago 6 replies      
Lots of hilarity and conspiracy in the comments - evidently Google is behind the decline of Mozilla and Redhat is killing Gnome.

Gnome3 has it's problems, however I as a user much prefer having one pretty theme and a changing API instead of a stable API and a forest of ugly themes.

Despite all the ranting and foaming of mouth, Gnome3.6 still is the best DE out there in my opinion.

mercurial 4 days ago 2 replies      
This was posted on r/linux too. While I completely understand that you can't make a UI to please everybody, it's not an excuse to ignore user feedback and sacrifice everything to branding.

I had wanted to check out Gnome 3, actually, just out of curiosity, but being one of these people who actually like to select their terminal emulator, I realized I'm not part of the target demographic.

supar 4 days ago 3 replies      
I wouldn't normally care about the state of GNOME, but as a developer myself I'm in a really sorry state of affairs regarding GTK itself.

At some point with 2.x, GTK stopped being GIMP's toolkit and became part of GNOME. Fortunately it remained more or less self-contained, but it's no longer the case with GTK3.

As an user, I cringe about the usability and responsiveness of GTK3 applications. I really dislike how the built-in dialogs have become. I don't like how some widgets now work. No (easy) theming (as a reversed color theme user) is also a major letdown.

I always considered GTK a nice toolkit from the user's perspective, and up to GTK 1.x it was also considerably faster than QT. GTK2 killed that, and at the same time removed any support for exotic OSes. I had 1-line patches refused under pretty much the same reasons you read in the article.

But as an user I still preferred GTK because of some nice unix-centric features (tear-off menus -- that disappeared at some point, column-based file browsers -- again killed later, user-customizable key bindings on any application -- can you still do that? I don't even care anymore, low memory, fast engines, etc).

But now QT is just superior in any front. QT has native support for OO and nice, consistent, multi-platform API, whereas GTK3 still depends of the shitty glib stack that pretends to be an OO framework (and doing a poor job at it). Ever got random glib warnings by GTK applications on the console? My xsession-errors is full of them. As a developer I just cringe at GTK. It was always bad from day 1, but now it doesn't really make any more sense. Whenever I need to consider a toolkit for a C-only based program (where QT or FLTK is not an option), I usually go for UIP. It's a shame that the looks of these toolkits do not integrate in the rest of the UI.

Right now I actively remove any GTK3 application. Whenever an application gets rebuilt I switch to a QT counterpart, which is usually more responsive and more stable over time. GTK didn't deserve this.

acqq 4 days ago 3 replies      
Here's my vote to "Reintroduce location/path bar toggle button." I really need the location edit box in file dialogs, and those %$£% removed it. Now I can't simply paste the whole file path to open or save the file, no, I have to click, scroll, click, scroll for every path component, instead of just one paste. %^$#

I also don't understand this "brandmaking" by alienating as much people as possible. Depressive read.

api 4 days ago 1 reply      
I like Gnome 3. It strikes me as incomplete, but what's there is good and does not look like cluttery crap. KDE is more feature-complete but looks like a clutterbuck 90s desktop. I can't stand it. After using Apple products for a while (I use both OSes) clutter makes me want to claw my eyes out.
vacri 4 days ago 0 replies      
I am really concerned about this effort to encourage and sanction themes and extensions.

Sanction is a great word - it's an antonym of itself!

silentmars 4 days ago 1 reply      
Another article in what has really become a vast sea of Gnome criticism. I definitely appreciate the extensive quoting of Gnome and Ubuntu people, though, which is not too common in these kinds of articles.

The thing is, Gnome is focused on an idea of "user experience." What's implicit in this pursuit is their mental model of the user. Who is Gnome for? Well, if you're reading HN, it's probably not for you. They're making it pretty clear that if you're an old school linux person, if you like customization ability, if you like options, then you're not the user they have in mind. For those of us who are not "the users they're looking for," we have to be ok with that, accept that's what they want to do, and make our choice accordingly: we can suck it up and use it anyway, we can use something else, or we can fork Gnome.

At the same time, I suspect that they don't really know what they're doing, and the "user" in their "user experience" is largely illusory; the product of the imagination of a few Gnome designers. They seem prepared to double down on this concept though - I think this is the only explanation possible of their arrogance in the face of widespread denunciation from almost every corner of the traditional linux community, including typically scathing flames from Linus. The Gnome people seem to feed on this negativity, like it's validation of their plans. "It is not for you, it is for 'them'" - whoever "they" are.

I wonder if their concept of who they're targeting as users couldn't be boiled down to a fairly basic distinction: traditional linux stuff is for people who enjoy using computers, and Gnome is designed for people who don't. Or put another way: people who use computers, versus people used by computers - the latter group belonging to a sort of corporate mindset.

Regardless, this mindset is being taken to far in its application to GTK, which for a large number of reasons should not be taken as simply another part of Gnome. It leads to almost a Kubuki Theater situation in which Gnome devs try to push around apps like transmission, which merely uses GTK, to fit into their Gnome user paradigm, while pretending nothing else exists. "I have never heard of XFCE" - come on.

mpyne 4 days ago 0 replies      
rekonq is not the default KDE browser, and is not shipped with the KDE Software Compilation or KDE Platform.

Instead, it is a valued KDE-community-developed browser available from our "Extragear" repository.

However I will say that even we at KDE are not opposed to configurability in general (especially to the extent listed for GNOME 3 and Unity... as far as I know we don't have a stick up our collective asses regarding the "brand experience").

But we have to maintain patches we accept (e.g. in the case of the task manager). LUCKILY we are quite happy to have even our core components ripped and replaced by something better. E.g. there is Craig Drummond's "Icon Tasks" taskbar available for Plasma (which I use).

As far as SVG themes, that was a 10 steps forward, 1 step back kind of thing... overall the desktop is much improved by having those as an option, even if it makes it more difficult to implement color toning. But if someone were to submit a patch implementing "themed color variations" (so that you as a user could choose the "light" color, "dark" color, etc. and the rest of the theme remains unchanged) then I would be very surprised if that were to be rejected outright.

josteink 4 days ago 4 replies      
After reading the full piece, it's obvious Ubuntu and KDE are not that much better than Gnome. Should we say 2012 looks like the year Linux "lost" the desktop after a few years of prosperity?

For someone running Ubuntu 12.10 with "basic" desktop needs, can anyone come up with some recommendations for a more open, forthcoming distro and DE? Someone to reward for their efforts?

It seems like using and supporting Ubuntu, Gnome etc at this point would be sending out the wrong signals.

kzrdude 4 days ago 0 replies      
> It is my hope that you are a GNOME app…

I can't really wish this guy anything other than good luck and good bye.

f4stjack 4 days ago 1 reply      
This is so true. And, unfortunately, this rot is not limited to GNOME only IMHO. In the good old days the desktop environments used to be cool and functional. I mean look at kde 2 and compare it with windows 98. Or take kde 3+compiz and compare it with xp and windows vista. Those desktop environments were different, has an unique style and blowing the minds of the windows + mac users. I mean compiz for god's sake. A lot of my friends' eyes go wide when I started rolling my desktop left and right and said it is all native, and uses this much of ram.

Having said all of that, let's take a gander to kde 4 and gnome 3. Can you really see that kind of difference and coolness? I, for one, can't see it. What I see is desktop interfaces which tries to macify themselves, which is sad.

kayoone 4 days ago 0 replies      
There is alot of unnecessary Windows bash in that article, mainly because most of the arguments applied could also be said about Apple eg:

"...as I read some of the GNOME developer comments below, I was given to believe that this breakage stems from a Microsoft-like climate of preventing users from customizing their systems..."

gpvos 4 days ago 1 reply      
All this "we have simplified the interface" makes me think of the Emacs antinews file...
compilercreator 4 days ago 1 reply      
I disagree about KDE4 not being customizable. While the earlier iterations of KDE4 (such as 4.1) were lacking in options, newer iterations like KDE 4.8/4.9 are really customizable. See also Linus Torvalds' recent post where he also praises the configurability of KDE4, saying that it may even be too configurable.
bkor 4 days ago 0 replies      
Allan Day is a designer, not a developer. Obviously he's not involved in GTK+ development. It is true that GTK+ is not much tested on any other theme than the default theme, but that is a matter of focus and lack of manpower.

IMO easier to be honest about it (no focus).

drivebyacct2 4 days ago 0 replies      
On the one hand, I don't like Gnome's attitude. On the other hand, I love elementary OS even though it has a similar approach and it builds on Gnome. I think I excuse the behavior because they actually pull off the experience well :/
nxn 3 days ago 0 replies      
Not only are Windows users moving to Linux, but Windows devs seem to be arriving as well, bringing their diseases with them " corporate ‘kill off the competition' mentalities that don't serve Linux, merely exploit it.

Delusional is the only way to describe this statement. It almost resembles the garbage Fox News has been giving for reasons why Romney lost the election. First of all, developers in a "corporate" (I emphasize "corporate" because this has nothing to do with windows development) environment generally aren't the ones with the "kill off the competition/brand" mentality. This mentality lives higher up in the corporate chain where business decisions are made. Developers themselves don't make these choices, they simply execute them because that's what the business has decided needs to be done. If the claim was instead that CEOs, VPs, etc, are switching to Linux and getting involved in the management of Gnome, the claim would still be wrong, but at least it could have made some sense.

donniezazen 4 days ago 0 replies      
Gnome is heading to its demise. I don't really understand their point. They keep messing up with power menu. 3.4 was shipped without all power options. 3.6 doesn't have logout or hibernation/suspend. Notification system is messed up. It is always hidden and you can't really right click.

Ubuntu Developer's are also thinking of switching from developmental build to stable build for Ubuntu. Nautilus has been put on hold. I will not be surprised that Ubuntu will fork Gnome and develop its own variant.

Transmission developer sums it up.

Tmmrn 4 days ago 3 replies      
> > 2.) A close button on the corner of the bubble as soon as a mouseover
> > occurs (like Growl, instead of disappearing away)

> Same. The design of Notify-OSD is specifically not clickable, and we
> would NOT accept patches to change that.

Excuse me, Mr. Shuttleworth, but have you tried using blueman? When you get a pairing request blueman expects you to click "accept" in a notification...

eric_bullington 4 days ago 0 replies      
This is exactly why I moved to Linux Mint (Mate or Cinammon, your choice) on my desktop and crunchbang linux (with openbox) on a relatively low-powered laptop (even though Linux Mint would run fine on it -- I like a little diversity).
josephlord 4 days ago 2 replies      
Thankfully Ubuntu 12.04 is the Long Term Stable release. I think I'll be sticking with it for a really long time partially due to all this nonsense.

If 12.10 was the LTS I would probably have looked at switching distros.

micaeked 4 days ago 1 reply      
so, i read through some of that, the complaints about api changes and the developer responses. i did not read the entire thing

however, from what i read, i agree with the developers. they want a certain thing, so they are making it. they don't want people changing their ui/ux. if you don't like that, don't use it. use something else. or, fork it. make it what you want it to be

hnasarat 2 days ago 0 replies      
ignorantGuru (the author of that article) ended up talking to Benjamin Otte, the lead developer behind GTK+ currently, about ignorantGuru, about the issue of themes breaking.
Otte explained the reasons behind this, and acknowledged not ideal communication and developers and encouraged more to get involved to steer the project in a way that they find desirable.
As they say, put up, or hack up.
       cached 13 November 2012 05:11:01 GMT