Ask HN: How does the US manage to have no bribery at lower levels? - <AUTHOR> I moved to US from India about 9 years ago. I appreciate all gov departments being corruption free ( as far as interaction points are concern). India is far from it, I do believe it's part of evaluation and India will be like this one day. but just wondering how it happened here? <comment><USER2> A mixture of cultural norms and legal norms. As to cultural norms, I'll give an example. Go to a Starbucks and note how people don't crowd around the bar area where the drinks come out. People will stand in a wide circle around the bar, because nobody wants people to think that they're not waiting their turn. This attitude is indoctrinated from elementary school, where teachers chastise kids for cutting in line or not "playing fair." That same attitude inhibits corruption. Taking a bribe isn't "playing fair." It's shameful and socially ostracized in a way that it isn't in India or Bangladesh (my family is Bengali). In India, everyone will crowd around the bar because _appearing_ like you're "looking out for yourself first" is much more socially acceptable.

As for legal norms: bribery and kickbacks are prosecuted strongly in the U.S. The federal government being separate from the state governments means that federal prosecutors have no inhibitions about going after state and local government officials. Moreover, low-level things like bribery are easy to prosecute because it's easy to prove that money changed hands.

<comment><USER3> This reminds me of a great study about the relationship between cultural and legal norms in looking at corruption. Because of the UN, nearly every country has a diplomat in New York, and because of diplomatic immunity, none of them are responsible for their parking tickets. So you effectively had to rely on their own cultural norms about how to behave with your car, rather than legal enforcement. They found that there was a strong correlation between the number of parking tickets issued to diplomats from a country and independent measures of corruption in that country, showing that the norms really were an important part, and carried over even into a different environment.

You can find the whole paper here: [http://www.nber.org/papers/w12312](http://www.nber.org/papers/w12312)

<comment><USER4> So what does it say that US diplomats have the most unpaid congestion charge in London?

[http://www.bbc.co.uk/news/uk-23266149](http://www.bbc.co.uk/news/uk-23266149)

<comment><USER5> Since the article only quotes total amounts owed (US diplomats owing 7.2 million out of a total of 67 million), it probably just says the US sends more diplomats to the UK than most other countries.

</comment></comment></comment></comment><comment><USER3> This is a very popular topic in development economics, and there's a rich literature looking at India specifically and developing countries more generally, but there isn't one definitive theory on the origins of corruption. Here's a quick primer from the World Bank that goes over a number of potential causes: [http://www1.worldbank.org/publicsector/anticorrupt/corruptn/...](http://www1.worldbank.org/publicsector/anticorrupt/corruptn/cor02.htm)

Outlining a few, in no particular order, that are probably relevant to your comparison between the US and India (although I don't know India as well): 1) Public sector employees in the United States are relatively well compensated, such that they don't need to supplement their income with bribes, and the fear of losing their job is a significant deterrent.

2) There are laws that prevent politicians from firing civil servants and giving the jobs to their supporters (this was not the case 200 years ago), so patronage networks are less powerful.

3) There are relatively effective checks on large scale corruption through independent layers of law enforcement agencies and a separate judicial system.

4) The state has relatively less control over the lives of ordinary citizens, so there are relatively fewer opportunities to extract rents.

5) There is a very engaged, sophisticated civil society in the US with interests in keeping the rules of the game consistent and fair. Significant corruption will cause a significant backlash from these stakeholders.

6) The institutions in the United States are more established, and have spent more time developing the necessary checks, balances, and management norms that keep them free from corruption.

7) Cultural norms play an important role. There is a theory that knowing the rules of the game and consistently applying them is more important than the level of corruption. In many countries, corruption is simply "the way things are done."

<comment><USER6> "There are relatively effective checks on large scale corruption through independent layers of law enforcement agencies and a separate judicial system."

...unless you have money. then you're untouchable. i.e. the financial industry.

<comment><USER7> I know you think you're being smart, or cute, or whatever, but this is completely off topic and irrelevant to the conversation at hand.

</comment></comment></comment><comment><USER8> We had a discussion a while back on this piece: [http://ftp.iza.org/dp5584.pdf](http://ftp.iza.org/dp5584.pdf) titled "The Empire Is Dead, Long Live the Empire! Long-Run Persistence of Trust and Corruption in the Bureaucracy". It discussed how European communities once under the rule of the Habsburg empire were, many decades later, very much lower-corruption places than very similar places that were not. The paper is relevant to your interests.

"Do empires affect attitudes towards the state long after their demise? We hypothesize that the Habsburg Empire with its localized and well-respected administration increased citizens' trust in local public services. In several Eastern European countries, communities on both sides of the long-gone Habsburg border have been sharing common formal institutions for a century now. Identifying from individuals living within a restricted band around the former border, we find that historical Habsburg affiliation increases current trust and reduces corruption in courts and police. Falsification tests of spuriously moved borders, geographic and pre-existing differences, and interpersonal trust corroborate a genuine Habsburg effect. "

\--

Previous discussion: [https://news.ycombinator.com/item?id=2618993](https://news.ycombinator.com/item?id=2618993)

<comment><USER9> Yeah but the US and India, which the OP is comparing were both part of the British Empire.

Indeed former British holdings span all extremes of corruption from the Sudan to New Zealand and every flavor in between.

<comment><USER10> It's helpful to remember that the British took very different methods of governance among different colonies at different times. They very much used different means depending upon the local situation and what they were trying to get out of a colony. Also colonies that were populated by British people (US, Canada, etc.) have a very different cultural and social heritage than the colonies where Britain showed up in a pre-existing society with established norms.

</comment></comment></comment><comment><USER11> 1\. Bribery absolutely exists at the lower levels of US agencies, it is just less prevalent than it is elsewhere. The people at the DMV or IRS are not going to blatantly ask for a bribe, but from time to time you can hear news of some low-level worker being arrested for accepting payments for illegal transactions.

2\. Auditing is strong. It is hard to spend "off the books" money in the US, except in very tiny amounts. This is such a serious problem for criminals that the mafia has been known to _play the lottery_ as a form of money laundering.

3\. Government salaries are sufficient for the things bribes might buy elsewhere: your own apartment, a functioning car, the cost of children, an occasional vacation, etc. The incentives to take bribes are lower here.

[EDIT: Also worth mentioning is that the incentives to _give_ bribes are lower. You do not need to bribe anyone to get a passport, a plane ticket, permission to buy or sell a car, etc. It is only when you start looking at things that most people never deal with that you will start seeing bribery: permits to build large buildings, exemptions from environmental rules, etc.]

[EDIT: Example for point 1:

[https://www.nydailynews.com/new-york/eleven-arrested- driver-...](https://www.nydailynews.com/new-york/eleven-arrested-driver- license-scam-article-1.1467800)]

<comment><USER12> "This is such a serious problem for criminals that the mafia has been known to play the lottery as a form of money laundering."

I wanted to comment on this that if you are referring to what I think you're referring to, it's not quite how you make it seem. The expected yield on a lottery ticket is somewhere in the magnitude of 50-70%, meaning: if you buy a lot of tickets, you will probably get a net yield of something between those numbers. However, the large amounts of tickets you have to buy / check / redeem do not make this a viable laundering strategy. You'll leave traces if you do this at scale, for example if you bought the owner of a local bodega to get you tickets 'wholesale', like boxes at a time; then the lotteries will easily spot patterns of sellers doing unusual transactions.

What I think you are referring to, is the (alleged) practice of criminals paying above-market prices (in cash) for casino chips or lottery tickets. Let's say you win $100. For a criminal, if he pays you $110 for that ticket, he has a laundering cost of only 9%, because he can redeem that ticket as 100$ in clean money. 9% is quite cheap; it's not uncommon to account for 30, 40% in costs when laundering money. And since lotteries and casinos are about big amounts, you only need one such transaction to launder sizable amounts. As the original winner, you end up with more than you won, but you can spend it only on holidays, restaurants and other cash-friendly activities.

(all examples are ignoring taxes etc, for which you'd have to correct to make the numbers work in reality)

</comment></comment><comment><USER13> Many reasons in my opinion (having lived in both countries)

1\. Income disparity: Gov. officials are mostly lower middle class even from Indian standards. So they are probably making a few thousands Rupees which is not quite there with the cost of living there specially in cities. Some people however are so rich that they can easily pay the bribe which gets the job done in no time. Again, there are efforts to bridge this gap but not easy for a country of the size of India. In the US, income disparity b/w rich and poor is not that bad (even though it seems like the gap is increasing b/w the so called super rich and rest)

2\. Enforcement of law: In India, there is pretty much a law for everything like any other developed country but the enforcement is almost none. So people taking bribes are less scared and more confident that no one is going to do anything. Yes people are trying to fix that but it's a long haul.

3\. Resource availability: Most basic resources like cooking gas etc. are a big pain to get. Lot of smaller cities/towns and villages still rely on getting cooking gas cylinders from the vendors etc as one example. There is no integrated pipeline. Thee is a fight for pretty much everything even when you have the money. It is changing as well but not there yet.

4\. Mentality: Indians are brought up seeing bribery as part of a life. Most of them don't even realize how bad it is until they get exposed to more developed countries like the US etc. So there is this saying "chalta hai" which literally translates to "it's ok to do this".

</comment><comment><USER14> Hong Kong, today one of the least corrupt places, was a few decades ago one of the MOST corrupt. What changed? They set up an independent commission to investigate and prosecute corruption and made it independent of most of government. Things were dicey for a while, but eventually corruption all but disappeared in daily life. The United States has as one of its founding principles that powers must be separated, so here if you do take a bribe, there are multiple independent agencies that can come after you, and most importantly, send you to jail and take away your ill-gotten wealth. This simply doesn't exist with equivalent force in India.

Oh, btw, please spare me the bs about Anglo-Saxon moral superiority. The history of India and indeed the world is replete with so many broken Anglo- Saxon promises that this is simply a joke. There's a reason it's called "perfidious Albion".

</comment><comment><USER15> IANA Sociologist! However, I think culture, history, and habit are more important than economics in generating the phenomenon you describe. It will be difficult for any polity to transfer from one corruption regime to another.

My theory is that in USA big corruption drives out little corruption. We have the systems in place for massive transfers from the public to the bureaucracy, to government vendors and their lobbyists, to the "elect". (Which transfers are "leaky": lots of money is extracted at each step, but there's still plenty left over.) Those systems are jealous, and they punish nonconformity. Individuals may only be "entrepreneurial" in approved ways; e.g. cops may not take bribes on the side of the road, but they're encouraged to feather their nests through forfeiture and hardball union tactics. Lawmakers can't just stuff fat stacks of bribery cash into their refrigerators, but they're totally free to sign up for sweetheart "investment" deals. Then again, there is basically nothing that officials at the Treasury Department aren't allowed to do. Maybe that's the exception that "proves" the rule?

The system is "superior" to China's, for example, because there the extensive low-level corruption focuses attention on corruption on every level. If the "communist" Grand Poobahs don't get a handle on the low-level stuff the whole edifice might come crashing down around them.

</comment><comment><USER16> I think one of the biggest deterrents is the distribution of wealth. The gap between rich and poor in the US is much smaller in the US. In India, you might have a low-level government official making $300/mo and a millionaire businessman applying for a permit. A $100 bribe to speed along the process is nothing for the millionaire, but significant for the official. In the US, that same official would make $5000/month, so you'd have to make that bribe more attractive to risk losing his job and going to jail.

The same with police officers. In the Philippines, my brother-in-law was pulled over for speeding. He offered the cop PHP100 ($2.50) and we were on our way. Cops make $50-100k per year where I live, so you'd have to bribe them at least a few hundred or thousand (and take the risk that they arrest you for offering a bribe). You'd be better off paying the speeding ticket which is only $100-200.

<comment><USER17> > In the US, that same official would make $5000/month, so you'd have to make > that bribe more attractive to risk losing his job and going to jail.

Which a millionaire can _still_ easily afford to bribe him with a third of his monthly salary ($1700). If you go grab the Freedom House rankings or another such measure of corruption, you're not going to find that per capita income or Gini explain all of the variation from country to country.

<comment><USER18> Correct, but the point is that $5000/month is more than enough to get by on, so even getting doubling your income with a bribe has less marginal utility, especially when you're risking your job.

In contrast, an extra $100 for someone who is just scraping by could be make or break for that month.

<comment><USER17> > Correct, but the point is that $5000/month is more than enough to get by on

This is completely ad hoc and the interest of most people in acquiring ever more money suggests there is no saturation point.

</comment></comment></comment></comment><comment><USER19> There are different categories of corruption:

1\. Bribes for government service

2\. Government officials siphoning off resources

3\. Government officials offering lucrative contracts/appointments to their friends or to people who bribed them.

I am no sociologist, but I can offer hypotheses for the first 2.

1\. I think relative inequality might have a lot to do with this one. Although inequality is higher in the US than it is in India, people in the lower income bracket are able to afford a relatively decent standard of living. Also most government officials make middle class income. The marginal benefit of a bribe is very low and the marginal risk is very high. In India, some of the lower level civil servants/policemen make below-middle class wages (or maybe middle class by Indian standards.. I don't know). The marginal benefit of even a small bribe is very high. The marginal risk (due to factors I can't quantify... ie chance of getting caught, consequences, etc) is very low.

2\. In the United States, a much higher portion of the population pays federal, state, and local taxes. In India only 2% of the population pays taxes. This is not quantified but I have a hypothesis: Countries where most people pay taxes have citizens who expect greater accountability from their elected/appointed officials because it is THEIR money. In India the average voter has no remote reason to demand his/her elected official to be accountable because its not HIS/HER money being wasted.

3\. This might be the same reason as above. I don't really have a hypothesis for this one.

Once again, these are just hypotheses that I have. I am not an economist, sociologist, or an academic of any kind and I do not have any data to back it up. Just anecdotal evidence.

<comment><USER20> I think the best hypothesis for 3 is political corruption - companies in the US can give money to Political Candidates during elections, and elected officials typically don't hurt, and indeed actively and vocally endorse, the interests of their donors - and this is not frowned upon.

</comment></comment><comment><USER21> In the US, the risks from bribery outweigh the rewards.

In India, if you don't bribe, you may not get your water turned back on. And if you don't accept the bribe, you may not be able to put food on the table because your low salary _implicitly_ expects you to take the bribe. In that sense, a bribe is more of a tip.

I have heard plenty of stories of people in India being pulled over by cops only to slow down the car, roll down the window and slip a bill equivalent to $1-$4 without ever stopping the car.

<comment><USER22> Funny; I've always considered a tip to be a form of bribery.

As with tipping, everything is in the 'social norm'.

</comment></comment><comment><USER23> Historically it was a cultural thing. Many of the institutions in US government are designed around neighbors being part of the system on an elected basis. If you have a sense of community, you look out for your neighbors. So if someone is breaking into your neighbor's house you might call the police, similarly if you've been elected to a local council and someone is taking bribes which is making your neighbors lives less "good" then you prosecute that.

Unfortunately, as the sense of community has worn thin, corruption has become more common. Politically fostering a 'us' (people) and 'them' (government) attitude seems to correlate with increased incidence of government malfeasance. And the number of incidents has risen according to statistics published by the FBI.

I believe the only counter agent we have is for wider participation by the population which is intolerant of corruption.

</comment><comment><USER24> Many good answers here. I also moved from many years ago, and noticed the same trends. Just to add additional points:

1) I think the lack of low-level corruption not just in US, but even developed Asian countries like Singapore, South Korea, Taiwan, Hong Kong and Japan also indicates that reducing the wealth gap, govt. salaries (esp. Singapore), rule- of-law etc.. has a factor.

Some of these countries have similar cultural histories and affinities to India, and yet they have been able to overcome these weaknesses.

It will be good to hear what folks from these countries think about their own experiences here.

2) In US, lot of things that are considered 'corruption' in other countries are somewhat legalized - e.g. lobbying and so forth. Granted it is more at a higher level with much larger amounts in play, but even here, there is some degree of transparency.

</comment><comment><USER25> International comparisons of corruption, such as those by Transparency International[1] may suggest some reasons why countries vary in their level of corruption. Rule of law and an independent judiciary appear to help, and I'm still mulling over what cultural factors (for example, most commonly followed religion in one country or another) may have to do with differing levels of corruption.

[1] [http://www.transparency.org/whatwedo/publications](http://www.transparency.org/whatwedo/publications)

</comment><comment><USER26> I think this is a very good question, worthy of discussion.

I believe the main reason is that the establishment of the U.S. Government held strongly to a principle of Checks and Balances, which trickled down to local governments. We have police and we have police of police (so to speak).

Of course nothing is perfect, and lately it seems like things may not be working quite as well as they had. e.g. Cops have gotten very trigger happy and no one has called them on it; plea deals have become the norm in court; and unwarranted wiretapping has grown to scary levels.

</comment><comment><USER27> Just a week ago I returned to US after three week visit to India and Japan.

Based on my recent experiences, I will say bribery problem in India is due to:

1\. Lack of sense of community in 'givers'. For example, when a group of people are waiting for something, they don't feel sense of community of 'waiting together'. Everybody is looking a way to be not part of that community enabling 'takers' to solicit bribery so that someone doesn't need to wait with others.

2\. Too many laws and bureaucracy that enable more points of solicitation by 'takers'. For example, while traveling on a tourist bus, the bus was stopped by a cop. The cop solicited bribe from driver because the first-aid kit had a partially used tube of ointment and some passengers were hanging newspapers and shawls on windows to block out sunlight. There is no reason to create laws for every little thing giving more opportunities for 'takers'.

But there were some positive signs. It appears younger generation is becoming less tolerant for bribery and corruption. It was nice to see that some young people on the bus were trying to take picture of 'corrupt' cop using mobile phones to post online. Of course, these young people and driver were scolded by older people on the bus (lack of sense of community) for delaying the bus as cop took driver far away from bus to avoid being photographed.

</comment><comment><USER28> I'm paraphrasing and probably not being perfectly accurate, but when I took comparative politics in school (only time I studied this), one of the things that came up as factors influencing corruption was quality infrastructure so that citizens can move around without having to involve government (which, in general, is a goal of the American system).

</comment><comment><USER29> Corruption is correlated to genetic relatedness (inbreeding/consanguinity)[1].

I've seen a hypothesis that the introduction of Christianity in North/Western Europe changed mating patterns and reduced consanguinity, thereby enabling the rule of law that European society was known for developing in the early modern period[2]. A caveat - while I find the hypothesis intriguing, I'm not sure how well this hypothesis explains other areas of the world that have developed low-corruption society, and I don't know the consanguinity of India.

[1] [http://hbdchick.wordpress.com/2012/06/11/consanguinity- corru...](http://hbdchick.wordpress.com/2012/06/11/consanguinity-corruption- correlation/)

[2][http://hbdchick.wordpress.com/start- here/](http://hbdchick.wordpress.com/start-here/)

</comment><comment><USER30> Has anyone mentioned free media?

In the US you rise to the top of the media pile by dishing the dirt.

Naming and shaming does amazing things.

</comment><comment><USER31> TL;DR

Top-down control and decent pay.

Long Version

Compartmentalizing access and control to important processes makes it hard for anyone at a lower level to take a bribe. For instance, you couldn't pay off somebody at your local DMV for a license or ID, since the clerk has to enter your provided values (SSN, forms of identification) into a system that is out of their control. It's not impossible, just difficult.

Paying employees enough (government employees are typically overpaid when comparing their salary / job duties to similar private sector positions) to keep the difficulty/risk:reward ratio moderately high reduces, using basic economics, the risk of corruption.

On the Contrary

Keeping controls at a high level, and removing discretion puts the power in the hands of the few. And, as we've all heard before, power corrupts. Worth noting, however, is that power doesn't so much corrupt as does the intrinsic problem solving skills of the human mind. The idea that power corrupts is a false attribution fallacy applied to something that is grossly noticeable (nobody notices when somebody speeds a little or steals a pen from work, but when it's something large (affected by somebody in power), it becomes noticeable). The point is that the lack of corruption at a lower level indicates a mathematical inevitability of corruption at a higher level (e.g., the cozy relationships between Fannie May and Freddy Mac and various Senators, namely our current president)).

</comment><comment><USER32> I don't know about the US, but I live in Canada, where we have very little to no corruption. By contrast, my wife comes from one of the world's most corrupt nations, which I have visited. A few factors I've seen:

\- Wage disparity. In corrupt nations government officials are poorly paid. In a place like Canada, they make a liveable salary, with good job security for unelected (ie. service) workers.

\- Enforcement of laws - our police force is well-paid, and politicians are subject to the law like any citizen.

I think the biggest difference is culture though. Maybe because of our immigrant roots, there's a culture of working for what you have. Not breaking the rules. Canadians are hesitant to break even social norms that aren't law. Maybe because of how we're brought up, we've learned to respect the 'social contract'.

Even my wife, who grew up with corruption being a part of everyday life (in her country something as simple as getting the police to respond to a crime in progress requires bribery - many communities have gangs that keep the peace in the absence of the police), had quickly adjusted to Canadian life (even when I met her I didn't know she was an immigrant), and sees the benefits of following laws, even when they're easy to break.

And another theory that may have weight - the weather. Where I live it's winter for half the year. As I write this our city is a cold, snowy wasteland. Survival means cooperation. It's quite possible that this spirit of cooperation has been instilled in the culture, preventing widespread class- conflict, and cooperation between immigrant cultures that normally wouldn't get along in their home countries...

<comment><USER33>
        > .... I live in Canada, where we have very little to no
        > corruption...

Or it could be that Canadians rarely hear about corruption, and think that everything is fine. As the saying goes: _" Absence of evidence is not evidence of absence."_

[http://www.cbc.ca/news/canada/montreal/revenue-canada- corrup...](http://www.cbc.ca/news/canada/montreal/revenue-canada-corruption- feared-over-400k-cheque-to-nicolo-rizzuto-1.1868426)

<comment><USER32> I'd wager that we're still one of the least-corrupt nations. In this case, people have been fired from their jobs and charged with crimes.

[http://www.transparency.org/cpi2012/results](http://www.transparency.org/cpi2012/results)

And there still is no comparison with India or other 3rd world countries in how prevalent corruption is...

</comment></comment></comment><comment><USER34> I am reading the question as what historical accidents made it socially acceptable.

Here is a factor that I think might play a role: there is a lot more power in the sub-continent at lower levels of government. Specifically, the SP/DCP system allows the local policeman to act as a unilateral mini-judge, often settling disputes to his (rarely are they female) liking. [http://en.wikipedia.org/wiki/Superintendent_(police)](http://en.wikipedia.org/wiki/Superintendent_\(police\))

This inordinate power gives them a lot more scope for corruption. This system was set up specifically because the British needed to control a vast country with a few people that had to be posted to various regions.

I also agree with the other people who point out that poverty plays a role.

</comment><comment><USER35> I know of an instance in India where one of my friend's friend had to leave his executive government job (while in the initial two years of appointment after after graduation and clearing a tough entrance exam) because he wanted to stand by his principles whereas there was constant pressure to budge in many instances. He chose to stand by his value system and doing some other job less powerful but more lucrative in the corporate sector.

This is a repeating theme of officers who standby the truth not able to withstand the system.

Another thing I wish that can change is the "jugaad" attitude. This was popularized by some of the management thinkers [1]. In its most benevolent it can mean "frugal innovation" or "make things work with the available resources". In its every day use though, it means "getting things done - regardless of the means - that is through connections or influencing through money etc.,". The idea is to get things done quickly somehow.

Understandably, this attitude leads to lot of "quality-less" work being passed on for what it should not be otherwise. Things are not looked at from a permanent solution perspective.

I wish people learn the right attitude from childhood (not cutting into lines, managers treating employees as people and not take them for granted etc.,) and do things right and well rather than do some "jugaad" and quickly be done with it as a temp fix only to stare at the problem again in a shorter time than it is supposed to last.

Of course, there are towering well known counter examples like Gandhi and not- so-well-known to western audience like Kamaraj [2] and Kakkan[3]. These were self-less political leaders who were honest to the core and died almost penniless. Somehow slowly the quality has been diluting over 50+ years and reached a stage of stasis as it is now.

Edit: added qualifier on references 2 and 3.

[1] [http://en.wikipedia.org/wiki/Jugaad](http://en.wikipedia.org/wiki/Jugaad) [2] [http://en.wikipedia.org/wiki/K._Kamaraj](http://en.wikipedia.org/wiki/K._Kamaraj) [3] [http://en.wikipedia.org/wiki/P._Kakkan](http://en.wikipedia.org/wiki/P._Kakkan)

</comment><comment><USER36> There's also the issue of the historical economic legacy of the Licence Raj - state planning often leads to built in corruption as circumventing state bureaucracy becomes the only way to get something done. It gets overlooked semi-officially because officials like the results it yields. Just because you change to a more freer economic system system doesn't mean that ingrained culture of corruption goes away. Russia was very similar in the 90s.

</comment><comment><USER37> "Why Americans Are the Weirdest People in the World"

[http://www.psmag.com/magazines/pacific-standard-cover- story/...](http://www.psmag.com/magazines/pacific-standard-cover-story/joe- henrich-weird-ultimatum-game-shaking-up-psychology-economics-53135/)

... culture probably plays a strong role. Americans have a very different standard of fairness than a lot of the non-western planet.

</comment><comment><USER38> There is a great book that you might want to read, which gets at the thought process at the individual level. It's about a cop who stood up to corruption in his precinct. The movie is good too:

[http://en.wikipedia.org/wiki/Serpico](http://en.wikipedia.org/wiki/Serpico)

I'm sure there are lots of reasons, but idealistic people like this must be one of the factors.

</comment><comment><USER39> America is corrupt TO THE CORE. Unlike India however, the corruption does not take place in front of you.

A belief in anything else is irrational.

</comment><comment><USER40> One of the main reasons is the existence of a developed Bureaucracy. While Bureaucratic institutions are inefficient and inflexible, the trade off is that they are generally fair. Bill Gates waits in line at the DMV just like the rest of us. There's no way around it.

<comment><USER41> India has a highly developed bureaucracy, which is indeed inefficient and inflexible. But there is a way around it, bribery.

Actually though, high degrees of automation make bribery hard. You cant bribe a computer program.

<comment><AUTHOR> I agree with you 100% . A program, for example to do property transaction will solve problems in that sector. Unfortunately its a chicken egg problem. policy maker won't let a program replace manual processing which has high opportunity of doing wrong and get away with it.

On a side note Yes, Train reservation system is much better now compare to what it was back in 1990s. There is no room left of corruption. I guess India need a strong leader which is not in for profit and he/she may do such small deed which will help India evolve out of current state

</comment></comment></comment><comment><USER42> Wouldn't it be appropriate to generalize to Anglo-Saxon countries rather than only the US?

</comment><comment><USER43> "It is easy for a rich man to be virtuous" \- Indian Prime minister Morarji Desai said, when a journalist asked him the same question during his US visit. So, simple answer - Reduce poverty.

</comment><comment> marco-fiset They manage it by making you _believe_ that there is no bribery ;)

</comment><comment><USER44> We make up for it at the higher levels. ;)</comment>


10 Most Coveted Cars That Aren't Made Anymore - <AUTHOR> http://www.huffingtonpost.com/entry/10-most-coveted-cars-that-arent-made-anymore_us_57b49e81e4b0b3bb4b089cac <comment><USER2> Someone hasn't been looking at prices on VW Westfalias, then. Maybe it's just the Pacific Northwest, but unless it's a rust bucket you'll pay more than they went for new. For example, we paid (admittedly, overpaid a bit) $17K for an '81\. They sold for $14K new. You wanted the four wheel drive version? Prices _start_ at $30K. They sold for $25K new.

But in the end I'm arguing with a mostly-pulled-out-of-the-author's-ass listicle. I mean, one cannot seriously argue that people are clamoring for a Toyota Matrix now that they're not made anymore. You know _why_ they're not made anymore? Because no one was buying them. In contrast to, for example, the Westy which isn't made anymore because it wouldn't pass a crash test (your feet practically touch the front sheet metal on that rear engine vehicle).

</comment><comment><USER3> This analysis isn't particularly quantified but it's interesting to see how many of these cars are on the practical end of the spectrum (240sx and s2000 notwithstanding) I for one miss basic 4wd trucks and cargo vans for under $25k

<comment><USER4> Cash for clunkers brought an end to the "beater truck" era. All of the cheap used trucks vanished, used truck prices shot up and therefore manufacturers figured out they could raise the price of new trucks.

<comment><USER5> I still see plenty of large beater trucks on the road. However, the midsized and low frills pickups (read: cheaper) were largely killed by CAFE standards:

[http://jalopnik.com/5948172/how-the-government-killed- fuel-e...](http://jalopnik.com/5948172/how-the-government-killed-fuel- efficient-cars-and-trucks)

</comment></comment></comment><comment><USER6> How about the Honda Element? Or Subaru Justy? Or a full size Jeep wagon?

The sad thing is that it seems to me that most cars are now trying to look like the Lexus RX350: minivan-like crossovers. That's fine for lots of use cases, but something a little more funky would be nice once in a while.

Also check out [http://jalopnik.com/lets-celebrate-the-50th-birthday-of- amer...](http://jalopnik.com/lets-celebrate-the-50th-birthday-of-americas- worst-tax-977715943)

<comment><USER5> The Element was really an uglier version of Scion xB, in my opinion. Though now the xB has been killed as well, so that leaves the Kia Soul (a pretty good car, mind you) filling this gap.

The Subaru Baja, now there's a car I wish I would have purchased before its demise.

<comment><USER2> _The Element was really an uglier version of Scion xB, in my opinion._

It was, but there was more practicality in the Element. As an original style xB owner, as well as dog owner and outdoorsy type, I kinda wish we'd bought the Element (which was on the possibles list before we bought the Scion) with it's hose-it-down interior, slightly more space, and optional 4wd.

As for aesthetics, no one wins in an argument between the two. Maybe if you threw a Pontiac Aztek into the contest.

</comment></comment></comment><comment><USER7> The Nissan Altima Hybrid (2007-2011), the more efficient, better performing cousin of the regular Nissan Altima: [https://en.wikipedia.org/wiki/Nissan_Altima#Hybrid](https://en.wikipedia.org/wiki/Nissan_Altima#Hybrid)

This is one I'd like to see come back.

</comment><comment><USER8> This article loses all cred cuz it does not have the toyota supra even on the list

<comment><USER9> It does. See Celica, Toyota Celica Supra.

I tried to cut and paste but the site doesn't let you do that, 1999 style, no right-click copy. The V6 Celica Supra looked amazing in the late 1990's, not sure it has done so well with the passage of time. The early 70's Celicas have greater kudos IMHO, particularly if inside with the massively high centre console bit.

<comment><USER10> Supras quit being Celica based in 1986, while the ones people covet are from the 90's.

</comment></comment></comment><comment><USER11> RIP Dodge Magnum</comment>


Stock Selloff May Have Been Triggered by a Trader Error - <AUTHOR> http://www.cnbc.com/id/36999483

<comment><USER2> maybe so, but the fear has been building for some time now. Look at how much the yield on 30 yr. treasuries has dropped in the last month or so:

[http://finance.yahoo.com/q/bc?s=^TYX&t=3m&l=on&z...](http://finance.yahoo.com/q/bc?s=^TYX&t=3m&l=on&z=m&q=l&c=)

</comment><comment><USER3> This is probably Fed spin to calm the mark by providing a non-economic reason for the sell off. No surprise CitiGroup is involved -- the Fed's Plunge Protection Team is going to need to hide their tracks better if they hope to continue to perpetuate their fraud.

</comment><comment><USER4> Accenture? <http://www.google.com/finance?q=acn>

</comment><comment> joe-mccann This is complete horseshit. The "trader" was a "computer".

</comment><comment><USER5> s 10b aapl <RETURN> go for coffee ...

</comment><comment><USER6> What's a few billion shares among friends?

</comment><comment><USER7> Is xkcd not yet standard reading for developers in finance? <http://xkcd.com/327/></comment>


Ask HN: Websites with well-done dark mode - <AUTHOR> I'm looking for sites that have implemented a dark mode in an exemplary fashion. I'm interested in sites that feature a dark mode in contrast with a light mode and not sites that just sport a dark theme only.<p>Dark mode seems trivial at first but there are many subtleties and I seek good examples to follow and learn from. <comment><USER2> Shameless plug: [https://preslav.me](https://preslav.me)</comment>


You Will Soon Be Able to Buy a Car at Walmart - <AUTHOR> http://jalopnik.com/rejoice-for-you-will-soon-be-able-to-buy-a-car-at-wal-1791509892 <comment><USER2> You already can at Costco, so this seems logical. Many customers will always prefer a "non-dealership" due to the long history of pushy shady salespeople, which if my last 3 visits tell me anything, is still very deserved ( in north america ).

<comment><USER3> For that matter, a lot of us aren't comfortable with haggling and are only willing to buy a car if we can buy it like any other appliance at Walmart or Costco.

The demise of Saturn means I'll probably never own a car.

My only hope is that some Chinese or Indian company will come to the US and strike an exclusive contract with Walmart or Costco to be the exclusive retailer (the contract will specify that the term "dealership" will never be used) of their cars in the US with a nationwide policy of only selling at MSRP.

<comment><USER4> There are some no haggle dealerships though I don't know how common they are. I bought my last Honda from one.

Honestly though. If you can detach the financing ("Got the cash. Nope. Not interested in talking monthly payments.") and trade-in ("If you don't give me X, I'll just donate it.") whether or not either of those things are true. Then look up the dealer cost on Edmund's or whatever. Add $500 and tell them to take it or leave it.

It's still a bit of a hassle and you may not totally optimize your purchase but there need be very little actual haggling involved.

The issue with your suggestion BTW is that manufacturers probably couldn't sell to them because doing so would violate their contracts with existing dealers.

<comment><USER5> Another nice technique is to pit dealers against each other. Pick a dealer, ask them for a quote on whatever car you're after. Be specific about exactly what you want. Once you get a number, ask the next dealer if they can beat it. Repeat until you're tired of it or salespeople start saying "wow, I can't beat that" in a defeated voice.

Of course, the process can still suck. They'll still give you a spiel about how you _must_ have the undercoat or extended warranty or whatever. There's room for other shenanigans too. Last time I bought from a dealer they managed to overcharge me $1.25 (originally it was $20 over but I fought that, but figured $1.25 wasn't worth it) and then they filed a lien on my title even though I didn't finance with them, which I didn't find out until I tried to trade the car in much later. Untangling that mess was quite entertaining.

<comment><USER6> Yeah, a lot of dealers in CA will have you sign the loan paperwork even if you are paying in cash; this causes a hard query on your credit report even if they don't file the lien. If you say "but I'm paying with cash" they say something like "well we have everyone do it." If you get up and walk away you magically no longer need to sign it though.

<comment><USER5> I don't _think_ I ever signed anything like that. But since I didn't find out what had happened until much later, there was plenty of time for memories to fade.

<comment><USER4> I'm pretty sure I didn't sure you're not wrong. I can't remember signing anything like that last time I bought a car.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Walmart has been trying to get into the car biz for a long time. Here's an example from 2002:

[http://usatoday30.usatoday.com/money/retail/2002-04-23-walma...](http://usatoday30.usatoday.com/money/retail/2002-04-23-walmart- cars.htm)

Here's an example from 2008:

[http://adage.com/article/news/wanna-buy-a-car-head- walmart/1...](http://adage.com/article/news/wanna-buy-a-car-head- walmart/133447/)

(Nitpick, but it's "Walmart" not "Wal-Mart".)

<comment><USER8> They are still officially Wal-Mart Inc, so either would be accurate.

<comment><USER9> Offically, they are "Wal-Mart Stores, Inc., doing business as Walmart".

</comment></comment></comment><comment><USER10> I have now bought two cars through a broker, in my case "Autoland". I got a price over email, we chatted on the phone to confirm, they delivered the car to credit union where we signed papers on the pre approved loan. No bullshit, took 45 minutes I think to transfer the car, which was exactly to spec. Will never buy a car any other way.

</comment><comment><USER11> I'd still rather go like this:

[https://en.wikipedia.org/wiki/Carvana](https://en.wikipedia.org/wiki/Carvana)

I remember the old iMotors experience. It was nice. Too bad in some states, car dealers are still ridiculously powerful. (ahem. Texas.)</comment>


New immigration rules to allow 33k-53k entrepreneurs into United States - <AUTHOR> http://www.vox.com/2014/11/21/7260067/immigrant-entrepreneurs

<comment><USER2> The language covering these "entrepreneurs" is pretty broad. No doubt this will end up being a euphemism for cheap labor.</comment>


Shellshock protection enabled for all customers - <AUTHOR> https://blog.cloudflare.com/shellshock-protection-enabled-for-all-customers/

<comment><USER2> Everything was pointing towards free TLS for everyone, but thank you. I won't be using this with Windows Server.

<comment><AUTHOR> This is an extra thing, not the big announcement that we've been talking about. That comes Monday (California time)... not long now.

<comment><USER2> Well, great! I sometimes forget timezones. It's already Monday here.</comment></comment></comment>


Paul Ceglia's Big-Firm Lawyers Just Ditched His Case Against Facebook - <AUTHOR> http://paidcontent.org/article/419-paul-ceglias-big-firm-lawyers-just-ditched-his-case-against-facebook/

<comment><USER2> Part of me wonders if the big name firm was only a PR stunt to generate news and angle for a settlement. My other theory is that they found out something about their client that made them want out of the case. There could be other reasons, too, of course, but it makes me wonder.

<comment><USER3> Great PR to jump in a high profile case and then let everyone see you walking out on your client!

</comment></comment><comment><USER4> Ouch. It seems Ceglia's old firm agrees with Facebook's. This case is basically over, what with Facebook coming right out and saying it can prove the documents are forgeries.

</comment><comment><USER5> So whether his claims are true or false (obviously they're incredibly likely to be false), he stands no chance now. No other firm is going to touch his case with a ten foot pole.

<comment><USER6> Except, perhaps, the firm of Jeffrey Lake of San Diego.

Have you read the article?

'The document filed in court today indicates that Ceglia has acquired a new lawyer, Jeffrey Lake of San Diego. Contacted about the change by paidContent, Lake didn't say anything about why the change took place, but did say in an email that he would have a press release out tomorrow, adding: "In the meantime we are pleased to confirm that our firm has been retained to represent Mr. Ceglia to bring this case to trial so that a jury may review the evidence and decide the case on its merits." '

<comment><USER5> Busted. I didn't read the whole article. I should have qualified my statement to say 'big name' law firm.

<comment><USER7> I'd recommend just reading the article next time. It is much easier than coming up with each and every asscovering phrase you might need.

<comment><USER5> I just checked. I read 1/2 the article including this paragraph:

>It's generally not a good sign when a plaintiff or defendant in a lawsuit keeps changing law firms. It can suggest there's problems with either the case or the client is particularly tough to deal with. In the course of the past year, three different law firms have signed on to Ceglia's case, gone through the evidence—and then dropped it.

I hardly think I can be accused of not RTFA. The new lawyer bit should have been flagged somewhere in the top half.</comment></comment></comment></comment></comment>


Ask HN: What's the most valuable blog post you've read? - <AUTHOR>

What is the most valuable blog post you have read for your personal & professional development in the web industry? Any that had an impact on you specifically? <comment><USER2> [http://highscalability.com/blog/2012/11/5/gone-fishin- buildi...](http://highscalability.com/blog/2012/11/5/gone-fishin-building- super-scalable-systems-blade-runner-mee.html)</comment>


What is the biggest lesson you have learned in the corporate world? - <AUTHOR> http://www.quora.com/What-is-the-biggest-lesson-you-have-learned-in-the-corporate-world?share=1 <comment><USER2> That you can make a meaningful contribution to the world as an employee.</comment>


Gboard: Search, GIFs, emojis and more from your iPhone keyboard - <AUTHOR> https://googleblog.blogspot.com/2016/05/gboard-search-gifs-emojis-keyboard.html <comment><USER2> I've been using this keyboard on and off for a few months and overall really enjoy it, but is not without its downsides.

Pros: Glide is really well done if you like it. I'm not a glide person (and haven't taken the time to get used to it), so it's nice you can disable it if you'd like. Emoji auto-suggest is pretty fun, I've been tempted to use it in emails but avoided it for now. :) The dictionary it populates from your commonly used words is fairly aggressive (which I like), so it picks up on unique words quickly (and it is easy to clear/reset this list at any time). Being able to send people animates gifs with ease over txt message or whatever service is pretty fun. Overall it's pretty easy to type on, just takes a little getting used to compared to the default iOS keyboard (finger detection differs slightly), but I'm able to type just as fast on it.

Cons: Most of my issues are really due to the API limitations Apple has in place. This keyboard is disabled on password fields (as are all 3rd party keyboards). There is no voice dictation (siri or Google's). You have to paste in images from the search (the keyboard can't auto-insert images for you, but text only search results can be auto-pasted with "share"). Landscape mode on an iPhone 6s takes up lots of screen real estate.

 _The opinions stated here are my own, not necessarily those of Google._

<comment><USER3> "3D" touch for placing the cursor doesn't seem to work either. Probably my favorite feature

<comment><USER4> Instead you can just swipe the spacebar left or right. It works much better than the iOS 3D touch cursor movement, which seems to false-negative on my force touch very frequently (at least half the time, for me).

<comment><USER5> Thanks for the hint on swiping the spacebar. I still miss the ability to move the cursor vertically and select with the trackpad but this at least makes Gboard usable for me.

I think I had the same false-negative problem you are describing with 3D touch trackpad, but it seemed to get a lot better for me with the iOS 9.3 release. Maybe I'm imagining it, but it seemed like there were improvements to whatever algorithm determines a user's intention for normal vs 3D touch.

On the other hand, maybe I trained myself to their algorithm. It seems like starting with light contact and increasing pressure is a more reliable trigger than just going in with firm pressure right away.

<comment><USER6> From my experience, the force touch trackpad cursor only works if you wait 1s between the last normal touch and the force touch.

</comment></comment></comment></comment></comment><comment><USER7> The App Store page addresses my immediate concern with giving Google access to every single thing I type on my phone:

> What Gboard sends to Google:

> When you do a search, Gboard sends your query to Google's web servers so > Google can process your query and send you search results. Gboard also sends > anonymous statistics to Google to help us diagnose problems when the app > crashes and to let us know which features are used most often.

> What Gboard doesn't send to Google:

> Everything else. Gboard will remember words you type to help you with > spelling or to predict searches you might be interested in, but this data is > stored only on your device. This data is not accessible by Google or by any > apps other than Gboard.

<comment><USER8> What I'd like to know is if anything searched for is tied to my google account. Even if this keyboard doesn't require you to log in, Google can get your user info from any other google app you are logged in to (gmail, maps, etc)...

<comment><USER9> I'm not sure why you're being downvoted for this. It's one of my concerns, as well. The idea of inviting Google into my text messages, which is a far more private and unfiltered place than my Google searches in a browser, makes me a bit uneasy. The parent's notice that it wasn't transmitting everything one types is helpful. I send a lot of GIFs, so this would only make my workflow faster, but I don't want to have everything I do with a keyboard tied to my Google account because I'm using a keyboard.

It makes me a bit sad to recognize that my first thoughts and reactions to many Google announcements these days—even silly and playful ones—is to start ticking off and formulating potential vectors for identifying and collecting things about me that can be turned into juicy bits for advertisers.

</comment></comment></comment><comment><USER10> This is a fantastic strategic move from Google. At the moment, in the mobile advertising space, Facebook has the upper hand, with much faster growth and way more DAUs and average daily in-app time. Facebook also threatens Google's search ad rev if they can build a Messenger based personal AI assistant that becomes people's go-to for service and product queries.

On Google's Q1 2016 earning call, Ruth Porat described how they were seeing lots of growth in mobile, but a compression in net margin. This was because traffic acquisition costs (TAC) on mobile are higher. Gboard could be a really effective measure to reverse that trend.

Gboard gets Google onto the iPhone almost at a "hypervisor" level. Every app with text input (especially Facebook, Messenger, WhatsApp, Instagram) will have Google branding when the keyboard is up and all the features that Gboard brings. Google is doing really well in the AI space as well, so expect to see more intelligent features integrated into Gboard as it matures.

Great move.

</comment><comment><USER11> Really great keyboard, but I don't agree with the decision to replace San Fransisco with Roboto. The weight and position of the type is off on the keys, and it makes the keyboard feel less native than it should.

<comment><USER12> Google apps on iOS are a clusterfuck. You should see YouTube, for example.

<comment><USER13> YouTube is the same clusterfuck on Android as well.

</comment></comment></comment><comment><USER14> I just installed this. It's a _really_ good keyboard: responsive, and "glide" typing and corrections work implausibly well. I haven't tried the search features yet, but it's winning me over from the stock keyboard.

<comment><USER15> Security would be an issue, but I'd really like to be able to have a lastpass button that allowed me to copy passwords without leaving the app.

<comment><USER16> 3rd party keyboards can't be used on password fields; it's an OS-level restriction.

</comment></comment></comment><comment><USER17> It's very odd to me that Google would release this on iOS first. I understand the value of iOS market share but when you have your own platform...

I think this looks really good, doesn't seem to be in the UK App Store yet or I'd have installed it already.

<comment><USER18> Android has had these features for a long time. Google published their own keyboard (with glide typing / etc) in June 2013 - [https://plus.google.com/+android/posts/caeWaRkUyrE](https://plus.google.com/+android/posts/caeWaRkUyrE) , but glide typing keyboards have existed on Android for many years before that.

The searching existing on-screen context / inserting relevant data is actually MUCH better on Android in the form of Now On Tap, which came out with Android M around this time last year - [http://gizmodo.com/google-now-on-tap-hands-on- contextual-awe...](http://gizmodo.com/google-now-on-tap-hands-on-contextual- awesomeness-1707588235) . It has the added benefit of looking at what's on your screen to figure out what you want vs the new iOS keyboard where you have to click the G, then type in whatever you were interested in again.

This app is basically just trying to cram as much as they can into the keyboard, since they can't offer an option like Now On Tap on iOS due to Apple restrictions.

<comment><USER19> It has those features indirectly - if i want to text my wife a picture of a typing dog, i can hit Now On Tap, search for the picture, hit share, hangouts, wife, and insert a picture of a typing dog, but it isn't rolled up in to the keyboard app like the IOS Gboard being shown here. (Unless I'm missing something...)

<comment><USER20> It's also worth noting that regardless of which keyboard or combination of apps you're using on Android, it's not possible to send an animated GIF as an MMS attachment without dropping so many frames that the clip becomes essentially unwatchable.

If you're sending a Hangouts message (Google account to Google account) it works just fine. Otherwise, even if you roll all your SMS/MMS activity into the Hangouts app, no dice.

</comment></comment></comment></comment><comment><USER21> Wow this is a really interesting way to make inroads into chat apps. Plus since it's at the keyboard level it transcends to all installed apps.

Anybody familiar with the iOS APIs for this to know if it's an "always on" type of thing? i.e. can they use this to track everything typed everywhere as long as the keyboard is enabled or does it require the "G" button like in the pic?

<comment><USER7> If you grant a keyboard "Full Access" in iOS (which is required for network access) then it does indeed have the ability to transmit everything back to a host. But Google says they do not do that:

[https://news.ycombinator.com/item?id=11683215](https://news.ycombinator.com/item?id=11683215)

</comment></comment><comment><USER22> Interesting one thing the keyboard is missing is the ability to switch to dark theme for some parts of iOS and some apps. It makes it look out of place an awkward in some contexts. I imagine this is some system level limitation in API. Other then that its quite good! I could really see this as new way for me to use Google more often. And Im loving the swipe to text!

</comment><comment><USER23> I just gave this a try, and I have to say, I'm impressed. I'm a very good touch typist on a keyboard, but I'm nothing special on a touchscreen. This definitely ups my accuracy, even in quick bursts (I realize it's not in the title, but the overall keyboard is much more responsive, it's not just the added functionality).

</comment><comment><USER24> When I installed this, it wanted me to "Allow Full Access", which then came up with a pop-up from iOS saying: "Full access allows the developer of this keyboard to transmit anything you type, including things you have previously typed with this keyboard. This could include sensitive information such as your credit card number or street address."

This seems pretty sketchy.

<comment><USER25> I'm not sure how this keyboard could work any other way - the whole value prop is that you can search from the keyboard, and it would be pretty hard to send your search queries to google if it couldn't send the things you type to google.

the app store description is pretty clear on what it actually sends to google, and it's actually _less_ than what most keyboards send - swype, the standard google keyboard on android, and i think most others send everything up to their respective servers so they can sync personalized predictions across devices, this keyboard only sends the queries that you explicitly ask google to search for.

<comment><USER26> That seems antithetical to the Apple statement about "This could include sensitive information such as your credit card number or street address." Anyway to confirm the only keystroke that google can access are the ones submitted to its search query?

<comment><USER25> Apple only has one permission level for keyboards that send stuff over the network: full permission. There's no way to determine what exactly they send using apple's keyboard permissions API, and apple doesn't know what they send. They just know it's a keyboard that _can_ send anything you type over the network, and warn you accordingly.

You have to either trust that google isn't flat-out lying, or try to MITM and analyze the traffic using something like wireshark, which would be difficult assuming it's properly encrypted.

</comment></comment></comment></comment><comment><USER27> >Get it now in the App Store in English in the U.S.

What a shame. I know plenty of people here in Poland who have their phone languages set to English for convenience. Let alone the English speakers in other English-speaking lands - I guess I can understand local English variants presenting a few minor issues, at least.

</comment><comment><USER28> I can't use this yet (because it's region locked to the US grr), but can you turn off the search part? I really miss the android keyboard on iOS and swype/swiftkey are just similar enough that I find their quirks compared to it incredibly annoying.

No real interest in the search part, though.

<comment><USER29> Yes, it's disabled by default.

</comment></comment><comment><USER30> I tried to install it, but it's US only. Any idea why that would be? This seems like something that could easily be rolled out worldwide. Is it a language support issue? (i.e. in Canada, they would have to support the French keyboard).

</comment><comment><USER31> I wish that Apple would still allow the force-touch trackpad feature on 3rd party keyboards. I've gotten so used to having it that it makes it difficult to consider using any other keyboard other than the stock one.

<comment><USER32> you could do that in the space bar

</comment></comment><comment><USER33> Very sleek and fast -- loving it! Was on Android for a number of years then went back to an iPhone and this was the #1 thing I missed.

For anyone interested, you do NOT need to "Allow full access" to use the general swiping feature of the keyboard. I think that permission is to allow the keyboard to collect data, do searches with it etc...

Personally, I don't feel comfortable with that option enabled despite the convenience of virtual keyboard based search. Very smart move by Google, though. Another door opens to get your eyes on those ads.

</comment><comment><USER34> Couldn't they release it also in English in the rest of the world? :/

</comment><comment><USER35> Surprised that no one has mentioned Slash keyboard which has been out much longer and has more features. They even won Product Hunt product of the year. They also have an Android app. [http://tapslash.com/](http://tapslash.com/)

<comment><USER36> Shameless plug

<comment><USER35> No affiliation to Slash. Just a user but surprised that a tech-savvy crowd here could've missed it.

</comment></comment></comment><comment><USER37> I love that you can also slide on the spacebar to move the cursor left or right. I like that feature from Nintype, but Nintype is always not all that stable.

If this keyboard proves to be more stable than other slide keyboards (SwiftKey / TouchPal), then it stays!

</comment><comment><USER38> Meet the new Google toolbar. GG Sundar Pichai

<comment><USER39> Woah, I forgot Google toolbar existed. What time to be alive - you'd go over to {insert technologically incompetent relative}'s house and each time there'd be a new toolbar installed.

<comment><USER38> Yeah, young enough to just barely recall it :) Anyways, this is again a nice strategy, or better call it data grab. (Although, I haven't use GBoard)

</comment></comment></comment><comment><USER40> I just switched to Microsoft's Flow, but the search and emoji search caused me to switch to this. Very nice!

</comment><comment><USER41> Interesting how they don't use Hangouts for iOS in the screenshots huh...

<comment><USER42> Not really. More iOS users, like myself, use iMessage 10X more than Hangouts. Actually since Telegram came out I haven't really used Hangouts at all.

</comment></comment><comment><USER43> That's amazing. However, what a big pity, I can't used it in China.

</comment><comment><USER44> Here's hoping that Microsoft adds Cortana to SwiftKey, this looks pretty exciting, but I don't own an iPhone...and I don't particularly want to use Google services.

</comment><comment><USER45> This seems far less buggy than SwiftKey. Sad as the prediction is SwiftKey is second to none but I have to choice reliability over all else

</comment><comment><USER46> I really hope they incorporate Google Input Tools at some point. Most of the supported languages only have very poor iOS keyboards.

</comment><comment><USER47> Anybody know the list of emoji autocomplete? Some things like taco works but boat doesn't.

</comment><comment><USER48> Apple really is incapable of providing software this useful. Am I right?</comment>


Why Rust, or a Trip Report from My Satori with Rust and Functional Programming - <AUTHOR> https://christine.website/blog/why-rust-2020-02-15 <comment><USER2> I honestly didn't find anything of interest in this post. If you already know that rust / fp in general tend to have safe and sound type systems which enable developers to encode complex relationships in the type system to prevent race conditions and catch memory leaks at compile time then there is not much for you here. I suspect a lot of HNers who would be interested in this post already know that.

</comment><comment><USER3> This is an incredible basic article, and there's a lot of issues with it to boot which is surprising considering the author has performed talks at Go conferences:

Go's equivalent to Rust's Vec should have simply been []int64 instead of using list.List (which is a doubly-linked list, aka std::collections::LinkedList in Rust). And yes, I read the blurb at the end where they say they know slices exist. The issue is that they proved nothing useful by not using them. You don't need to recreate how slices work because _they already exist_, and is well-known it's all currently compiler magic (until they introduce generics).

In the JSON unmarshalling example, the reason you need struct tags in Go is because the JSON field name is different from the one given in the Go code. You'd have to do the exact same in Rust if they had named it similarly to the Go example ([https://serde.rs/field-attrs.html](https://serde.rs/field- attrs.html)).

The other stuff about catching concurrent issues is true, but working with concurrency in Rust is a testament to one's patience as well (especially when working with multiple processes/threads), so you're trading off usability with safety—and to be frank, it's pretty easy to remember that the only things that work concurrently are either atomic, use locks, or some sort of queue.

</comment><comment><USER4> So I found this analogy a little shallow. The tl;dr is:

Some languages are dynamic (Lua being ht example here but obviously there are many others eg Python). The author then chooses to differentiate types of statically typed languages to those with generics (Rust being the example) and those that don't (Go being the example).

I'm not sure that's a useful distinction because all type systems have limitations and there are many orthogonal dimensions. A language can have (or not) generic types while separately being able to define enumerated types (or not), as just one example.

The interesting thing (at least to me) about Rust is that Rust goes beyond describing types to describing (at compile-time) ownership of data. There is a developer cost to this and a compile-time cost. Personally my view is:

\- Compile time errors are cheaper to debug and fix than run-time errors. That's the whole point of having a type system: to catch errors at compile- time. Better that than a segfault. Rust is novel in that it eliminates a whole class of problems with data ownership, lifetimes and access. Not every problem of course.

\- Memory-safety is just too important such that Rust will increasingly fill a niche because this is just too easy to get wrong in, say, C/C++.

You do have to jump through hoops go properly describe ownership semantics so the Rust compiler can satisfy safety constraints. Like a type system, there are limitations to this and you can intuitively come up with examples that you know are safe but are hard if not impossible to describe to Rust. Rust does get better with this as time goes on.

Whatever the case, I'm very bullish on Rust.

<comment><USER5> Well as much as Rust covers all the main benefits and features compared to other languages, some companies can afford to switch to it but others think more carefully if such a switch is more trouble that it's worth.

It no doubt that the barrier to reading / learning Rust is still higher compared to other languages despite the languages safety guarantees and performance. It is still a new language that some large companies can afford to invest their time using it. However if a senior dev that pushes for a rust codebase and ends up leaving the project, the team would probably revert back to the second-best language that everyone knows rather than continue. It doesn't make any sense to use Rust for the sake of Rust or even strangely: "because everyone else is using it".

Even as a Rust user myself, the author has failed to mention about the quality of the crates ecosystem which mostly still have pre-1.0 libraries and aren't even stable yet and even a popular few had and still have unsafely issues.

In a typical production software house of 2025 for new server-side software, I would use Rust over C++ and JavaScript (Node). But for 2020? Kotlin/Kotlin Native sounds like a safer bet for some companies over Rust due to leveraging the existing Java ecosystem and being a safer alternative to Java.

<comment><USER6> > But for 2020? Kotlin/Kotlin Native sounds like a safer bet for some > companies over Rust due to leveraging the existing Java ecosystem and being > a safer alternative to Java.

You should consider plain Java tbh. Java 15+ is basically Kotlin anyway at this point. It's much easier to hire or outsource Java developers.

<comment><USER7> It's easier to find Java devs, but whenever I've been in contact with any they're also on average the lowest quality developers you can find. It's the language everybody learned at uni, so you get a lot of people that never did more than the bare minimum.

<comment><USER8> Just like any other language.

Are you aware that there are outsourcing projects doing Haskell, Scala and C++ as well.

Hint, the deliverables aren't usually what one would expect from the skill levels usually required by average users of those languages.

</comment></comment></comment></comment></comment><comment><USER6> "list" in Go is not equivalent to Rust vec. List is a linked list of boxed entities. Of course they can have different types because it is a linked list; each cell lives elsewhere on the heap. The Go equivalent to vec is an array or a slice, which does enforce the type.

As for the second example, it's more of a complaint about the library. There are libraries that enforce stricter checking. Or you can code gen or roll your own deserialization logic.

> but then the job of ensuring the sanity of the inputs is shunted to runtime > rather than stopped before the code gets deployed

It's always runtime, even in Rust. You get some blob from the network to deserialize, it will return an error if it's bad, just like in Go if you try to Unmarshal bad input to a struct.

Seems like people think Rust has this magical ability to prevent errors. Big expectations lead to big disappointments.

<comment><USER9> The complaint about interface{} is very legit in practice. Author says he deliberately picked on Go stdlib to illustrate. I suspect one had to struggle with the same to really get it.

How "stable" is Rust, libs and tooling ecosystem though.

<comment><USER6> Rust is getting better. It recently got async/await which imo is a much cleaner and undeniably faster way to do concurrency than Go's channels/CSP. It's not really fair to compare Rust's ecosystem to Go's because Rust doesn't have a trillion dollar company's halo effect. For the foreseeable future you will always be more likely to use Go than Rust at work.

</comment></comment></comment><comment><USER10> the first example is ok, everyone knows this is by design in go though. second one is grasping, what if you want different metadata on each property? it will end up looking similar, albeit more strongly typed than a string. its a little myopic rust task force feeling though

</comment><comment><USER11> AFAIK the only unique feature of Rust is a borrow checker, right? (compared to other feature-full languages, i.e. not Go)

Regarding the main example of author, it's great that the progressive side of Go team won, so generics are coming in Go 2.

<comment><USER12> Can someone explain to me (like a five yo) how the borrow checker is different to Go's -race flag for compilation?

Genuine question.

<comment><USER6> -race detects data races at runtime. Rust's borrow checker works at compile time. Borrow checking prevents data races by making it impossible for two threads to have read/write access to the same memory. (But there are many ways around it.)

</comment></comment></comment><comment><USER13> tldr: I am going to present Go in the worst light possible by pretending it doesn't support typed containers. Hopefully you'll gloss over this and support my viewpoint.

Rust doesn't need an 'assist' but articles like this will certainly damage the, otherwise sterling, reputation of it's community.</comment>


Scala 2.8.0 final - <AUTHOR> http://www.scala-lang.org/node/7009 <comment><USER2> Someone needs to write an intro to scala that assumes no prior java experience. I know Ruby, C, C++ and others on a *nix quite well, but I have no clue about anything Java-related. This is a problem when I'm trying to figure out how to deploy a self-contained scala application.

<comment><USER3> I googled for an answer to your problem and found this: <http://www.scala- lang.org/node/1305>.

The link basically recommends that you learn Java first :). For better or for worse, Scala relies a ton on Java, and no one has created Scala-specific tools to simplify some of these things you can already do with existing Java tools.

If you want to create a self-contained jar, the following URL has people discussing how to do this with SBT and Maven: <http://www.scala- lang.org/node/6750>. I wouldn't wish the curse of Maven on anyone, let alone someone who hasn't been force-fed it by the Java community for a while, so I'd recommend trying to learn sbt and then port the solution posted in the above link to your own sbt project. I really wish the solution were simpler, but Java tools have always focused more on server-side web deployment and have always been weaker in the area of client-side deployment.

<comment><USER4> * I wouldn't wish the curse of Maven on anyone, let alone someone who hasn't been force-fed it by the Java community for a while, so I'd recommend trying to learn sbt and then port the solution posted in the above link to your own sbt project. I really wish the solution were simpler, but Java tools have always focused more on server-side web deployment and have always been weaker in the area of client-side deployment.*

I've only ever used maven for Scala projects, but I've come across this sentiment a few times -- it always strikes me as odd, given that I have very few significant maven complaints.

It has all sorts of great tools for automatically fetching dependencies, and doing "the right thing" via some fairly simple conventions. It's really easy to wire up something like tomcat:run to run a war in-place -- or your own custom self-contained code.

I also really like being able to have a local maven repository where we can store our own build products (and declare dependencies against them); server software like Artifactory makes this very nice: <http://www.jfrog.org/products.php>

Maven isn't wonderful, but build tools never are. I don't understand why you would hate it. Why do you hate it?

<comment><USER3> I agree with most of what you said. I like the idea of Maven's dependency management and repositories. It's also nice to have a lot of plugins to take care of common build system use cases for you. I just happen to hate the rest of it. Fortunately, I can get the best of both worlds. Buildr, Gradle, Ivy, and sbt can all work with maven repositories. So I can take the best of Maven, a.k.a, the one and only really good thing about it, and use it with better build tools!

Now, as to why I hate maven, these several-year-old posts explain it better than I do.

[http://labnotes.org/2007/05/03/buildr-or-when-ruby-is- faster...](http://labnotes.org/2007/05/03/buildr-or-when-ruby-is-faster-than- java/)

[http://labnotes.org/2007/04/18/introducing-buildr-or-how- we-...](http://labnotes.org/2007/04/18/introducing-buildr-or-how-we-cured-our- maven-blues/)

And of course on StackOverflow Daniel Spiewak gives an excellent example of how Maven just falls flat.

[http://stackoverflow.com/questions/1015525/why-use-buildr- in...](http://stackoverflow.com/questions/1015525/why-use-buildr-instead-of- ant-or-maven)

Really, it boils down to the fact that I believe that the philosophy of the Maven creators about build systems is fundamentally flawed. They say "when you want to script you know you're doing something wrong". I say, I'm a mature programmer, so give me a mature tool that enables me to get my job done.

Case in point. For a simple side project I was using JAXB to create an xsd from java classes. JAXB wanted me to maintain a flat text file listing all of the classes I wanted included in the xsd. I knew for a fact that every single java file inside a particular directory (recursively, of course) needed to be included in that xsd.

If I were using Maven, I would properly just resign myself to the fact that there is no JAXB Maven plugin to do what I want. I would therefore just manually update the file every time I added, deleted, or renamed a java class in this directory, which turned out to be very frequently during development. I certainly wouldn't feel it would be worth the herculean effort of writing a maven plugin and figuring out how to wire the file dependencies together so that the required tasks only run when needed.

Fortunately, I was using buildr, and 50 or so lines of scripting code later I had a perfectly efficient and automated solution to my problem. Now this was for a simple side project. Imagine a real product created by a real company. Do you really think that company won't ever have any custom build needs that go beyond the provided maven plugins?

Why waste your time with a limiting, clunky, slow, XML-based build system when you can use one that is designed better from the core and therefore easier to use, more flexible, more maintainable, and, best of all, faster because developers can afford to spend more time to wire things together efficiently?

</comment></comment></comment></comment><comment><USER4> Scala isn't perfect, but it's a great language to have on the JVM.

However, the lack of API and ABI compatibility is a really big failure. I can't believe that they're shipping what is supposed to be stable software and we can't rely on our code to continue running, much less building.

We had to do a fair bit of work to fix our projects' 2.8 compatibility issues, and it's causing us all sorts of grief in terms of having to do lock-step upgrades of all libraries from 2.7 to 2.8.

<comment><USER5> Would you rather Java? Where everything is shit because of backwards compatibility?

They've put a hell of a lot of work into making everything as compatible as possible with 2.7. At some point you need to say, enough is enough, we're going to upgrade out and people will have to make minor changes to their source code to get the new features. They had 7 release candidates, so they've made a commitment to quality and given people time to upgrade leisurely.

<comment><USER4> _Would you rather Java?_

Is that a real question or were you just setting up your false dichotomy via some well-placed rhetoric?

 _Where everything is shit because of backwards compatibility?_

Oh, so that's why Java is so bad? Because it has some stagnant corners in which they're maintaining backwards compatibility? That's silly.

Backwards compatibility isn't holding back Java the language, or even Java the VM. Bad design decisions and an almost knee-jerk opposition to _any_ forward progress holds Java back. You don't have to break compatibility to implement closures, you just have to herd cats until you can get people to agree on a proposal and implement it.

 _They've put a hell of a lot of work into making everything as compatible as possible with 2.7_

But it's not actually compatible. And it may not be again in the future. And it's really easy to introduce binary incompatibility due to the implementation of traits.

If you look at other production programming environments, from C# to Objective-C, the maintainers bend over backwards to maintain binary and API compatibility across releases because it's bloody expensive to upgrade everything in lock-step, force all your customers to upgrade, wait for all your vendors to upgrade, and move the entire ecosystem to a new version in one gigantic step.

 _At some point you need to say, enough is enough, we're going to upgrade out and people will have to make minor changes to their source code to get the new features. They had 7 release candidates, so they've made a commitment to quality and given people time to upgrade leisurely._

Upgrade leisurely? To a release-candidate quality language release? Are you joking? Even if we wanted to upgrade to an RC release (and we didn't!), we'd had to wait for the libraries we depend on to be updated too (and wait for time to block development while we upgrade all internal components in lock- step).

<comment><USER6> That's an excellent response, and I'd mostly agree with you.

I'd only add two things; firstly, I got the impression at Scala Days and from mailing list discussions that there was a little bit of a feeling that 2.8 was the last chance to fix some design choices that the designers didn't like. That Scala is big enough and well used enough now that they're not going to get away with the same behaviour for 2.9 or 3.0 and that there will be a lot more concern for compatibility in future. Whether it happens remains to be seen I suppose.

Secondly (although you might disagree with this), there are no glaring problems with 2.7 so there's no need to rush to upgrade to 2.8, there shouldn't really be a problem with waiting 3-6 months for your dependent components to release (stable) 2.8 versions. I think that we're lucky that we don't depend on many external libraries so we'll be upgrading pretty soon, but it wouldn't be the end of the world if we had to wait a few months.

</comment></comment></comment></comment><comment><USER7> Does anyone know if there are any plans to update Odersky's "Programming in Scala" book? I'm intending to buy it in order to learn Scala, but if there's a second edition pending I'd rather hold off.

Alternatively, if someone knows a better community that could field this question, I'd really appreciate being pointed in that direction. One thing I've not really grokked about Scala is where to go to ask such things!

<comment><USER8> AFAIK, there are no plans to update "Programming in Scala". But most (if not all) code examples from PinS should work with Scala 2.8.

The scala-user mailing list (<http://listes.epfl.ch/doc_en.cgi?liste=scala- user>) is the best place to ask (and get answers for) newbie Scala questions. Using the "scala" tag on StackOverflow also produces good results.

<comment><USER7> Thanks for that. I've been using StackOverflow for a few simple questions, but I'll check out the mailing list too!

</comment></comment></comment><comment><USER9> Fantastic, is this release safe to run in production?

I recall there being a few missteps w/ earlier releases. Actors in 2.7.4 didn't seem to be thoroughly vetted.

<comment><USER8> Scala 2.8.0 went through a very long RC process (7 RCs over the course of several months) to try to prevent a repeat of 2.7.4.

</comment></comment><comment><USER10> Martin Odersky's plans:

[http://codemonkeyism.com/scala-unfit- development/#comment-30...](http://codemonkeyism.com/scala-unfit- development/#comment-305659)

 _In fact I am about to take a leave from university and found a startup to do commercial Scala support. I am taking some of the key Scala developers with me._</comment>


Brains not brawn, matter most in the next war and we aren't being smart about it - <AUTHOR> https://thehill.com/opinion/national-security/466679-brains-not-brawn-matter-most-in-the-next-war-and-were-not-being <comment><USER2> So, the Hill already expects "The Next War", do they? Who's going to get it this time? Or - is it Israel's next war, another invasion of one of its neighbors and a pulverization of civilians, housing and infrastructure?

The author explains how "The Israel Defense Forces ... handpicks the best and brightest graduating high schoolers ... and converts them into cyber warriors"

Yeah, great, that's just what a society needs, right? Brainwashing teenagers into supporting, and fighting, wars? And don't forget - it's conscription, not volunteer service in Israel.

The author then goes on to explain how the elite of the Israeli economy comes out of the ranks of those war-minded youths, not from civilian society; and how perpetual war is also reinforced by a continuing close bond between the military and the private sector.

And this is the model Mr. Zakheim, and the Hill, suggest for future US society. To those US'ers among the readers: Please reject that sad vision.

<comment><USER3> The odd thing is that Israel's lesson learned form the 2nd Lebanon war was that boots on the ground win wars.

It found major shortcomings in its capabilities due to reliance on its Air Force as the go to solution for any problem and the emphasis on counter insurgency and essentially border security when it came to its ground forces made them unable to perform as well as expected in modern combined arms warfare.

Their solution was to restructure all of their reservist battalions, put emphasis on combined ground operations when it came to training institute new large scale military exercises each year in order to have an effective ground force which is capable of taking over and effectively controlling territory something that the IDF forgot how to do.

Their opinion was that all the intelligence and smart bombs in the world can't decisively win an engagement, only ground troops can.

So in the coming war especially against a conventional or semi conventional force the US still has the advantage of being the ones who wrote the book on maneuver and combined arms warfare and having what is without a doubt the best trained and equipped professional army in the world.

<comment><USER4> There's a bit of interview from an old History Channel documentary that has always stuck in my head. Sadly, I think the source is lost to the mists of time; this was back in the Roger Mudd era when there were no rednecks, Jesus, or Ancient Aliens on the lineup. Maybe a Modern Marvels on future weapons...

But in any case, they were interviewing a crusty old veteran of WW1, and he said something to the effect of "You can have all the planes and tanks and new gizmos, but you're still going to have some poor bastard in the mud to winkle the other poor bastard out of his foxhole and make him sign the armistice."</comment></comment></comment>


'Apocalyptic' island of waste in the Maldives - <AUTHOR> http://www.bbc.co.uk/news/world-asia-18073917

<comment><USER2> So landfills are not very pleasant places, and Maldives, like almost every country in the world, operates one. This piece seems overly sensationalist to me. Imho waste handling has more important places to shine light on, like the practice of exporting waste from western countries to 3rd world ones, where poor people then try to recover anything precious, often working without any protection from the toxic substances.</comment>


What programming language would you use to teach someone to code? - <AUTHOR> http://rbsn.me/11/teach-someone-to-code/

<comment><USER2> I would introduce them to scratch regardless of their age. <http://scratch.mit.edu/>

When you don't have to deal with syntax and can concentrate on nothing but logical components it becomes much easier to understand.

<comment><AUTHOR> Scratch is a great! I do worry that people would then begin to learn a language and be frustrated by it's syntax. I don't know?

<comment><USER2> You have to deal with the syntax of a language regardless.

It's a lot easier to deal with that once you've learned how to program. This is why more experienced developers have an easier time picking up a new language.

They already know what purpose an if statement has or how to combine a few conditions and a loop to do xyz. These are things much easier learned in an environment that scratch provides you.

</comment></comment></comment><comment><USER3> Ruby is a great start because it provides syntax, can be run locally on command line and also has many widely available examples you can read and bootstrap quickly.

</comment><comment><USER4> JavaScript. Even with its pitfalls and numerous headaches. The first language I learnt was JavaScript and it made it so much easier to learn others afterwards.

</comment><comment><USER5> Logo, really gives the fundamentals in an accessible way.

</comment><comment><AUTHOR> I would probably choose JavaScript, Python or Ruby.

</comment><comment><USER6> Python. If the person is a statistician R

</comment><comment><USER7> C++ is the best language to understand the basics of programming, its not easy, but its not that hard either. It will make one's foundation strong from the get go.

<comment><AUTHOR> I agree that C++ gives you a great understanding of programming, but I don't think that people with little or no understanding of programming should have to worry about types, compilers amongst other things. I feel that C++ is a great choice for your second, third or even fourth language.

</comment></comment><comment><USER8> Lisp</comment>