Ur-Fascism by Umberto Eco (1995) - <AUTHOR> http://www.nybooks.com/articles/1995/06/22/ur-fascism/ <comment><USER2> What an insightful piece. It is interwoven with Eco's experience as a kid in Fascist Italy, but written 50 years later. At the end is a little listicle of typical characteristics of a Fascist movement, with a careful indication that not all will be present.

Being written in 1995, the training set is independent of the test set, and one is thus free to find parallels in the current moment:

"Irrationalism also depends on the cult of _action for action's sake_. Action being beautiful in itself, it must be taken before, or without, any previous reflection. Thinking is a form of emasculation."

"Ur-Fascism grows up and seeks for consensus by exploiting and exacerbating the natural fear of difference. The first appeal of a fascist or prematurely fascist movement is an appeal against the intruders."

"To people who feel deprived of a clear social identity, Ur-Fascism says that their only privilege is the most common one, to be born in the same country. This is the origin of nationalism."

<comment><USER3> It's pretty trivial to apply these signals to nearly any collectivist social movement.

1\. Action for action's sake - Black Lives Matter protests to block highways.

2\. Exploit the fear of difference - Those horrible racist uneducated people are nothing like us, we can't let them take the country! This is basic tribalism and it applies to every major social movement.

3\. Rewritten: "To people who feel deprived of a clear social identity, Anti- Fascism says that their only privilege is the most common one, to be good, moral egalitarians. This is the origin of anti-fascism."

Here I've applied them to Western progressivism, but if you deny the basic assumptions of any collectivist social movement you could apply them. Scientology, communism, socialism, fascism. Switch a few unimportant words and there you are with the same meaningless parallels.

The human mind is a great pattern matching machine but has a problem with false positives.

EDIT: It's important to remember when comparing Trump to old fascists that the people who defeated those fascists enacted Trump's policies. For example, in 1945, immigration policy in all western countries was effectively, "whites only".

So if you're gonna notice parallels between Trump and Hitler, you have to notice even closer parallels between Trump and the people who defeated Hitler. You should also notice the differences: Trump is an isolationist who wants to start wars less than Hillary - a lot like pre-WW2 America.

<comment><USER4> Your points are valid, but that kind misses the major thrust of the argument... which is that facism isn't based on a shared set of common principles or political thought, facism is in the authors opinion not linked to specific beliefs...

as for trump being a facist, i think the primary reason he wouldnt be a facist is he doesnt really seem to have any strong interest in athoratarian centralized power... in fact if anything unless kaisich is actually just flat out lying, he is pretty open about wanting to minimize his day to day control and be more of a symbol for the movement... thats extremely un-facist

<comment><USER5> Actually, the Kasich offer makes his fascist tendencies clearer to me. Trump is _not_ interested in actually governing or implementing policies, he's interested in having a massive adoring audience.

Like historical fascists, he doesn't care what policies get him that power and adoration. He'd be happy running an isolationist government, but just as happy militantly dropping nuclear bombs in the Middle East.

The one consistent in Trump's political "career" is a worship of power. He's obsessed with winners and losers, and if you're winning he likes you. If you criticize him, he hates you and will try to destroy you, whether it's legal or not. I don't think he could, as president, tolerate a free press.

</comment></comment></comment></comment><comment><USER6> Along similar lines let me recommend a couple of Adam Gopnik pieces on Trump and fascism:

[http://www.newyorker.com/news/daily-comment/going-there- with...](http://www.newyorker.com/news/daily-comment/going-there-with-donald- trump)

[http://www.newyorker.com/news/daily-comment/being-honest- abo...](http://www.newyorker.com/news/daily-comment/being-honest-about-trump)

This in particular echoes Eco:

 _The arguments about whether [Trump] meets every point in some static fascism matrix show a misunderstanding of what that ideology involves. It is the essence of fascism to have no single fixed form—an attenuated form of nationalism in its basic nature, it naturally takes on the colors and practices of each nation it infects. In Italy, it is bombastic and neoclassical in form; in Spain, Catholic and religious; in Germany, violent and romantic. It took forms still crazier and more feverishly sinister, if one can imagine, in Romania, whereas under Oswald Mosley, in England, its manner was predictably paternalistic and aristocratic. It is no surprise that the American face of fascism would take on the forms of celebrity television and the casino greeter's come-on, since that is as much our symbolic scene as nostalgic re-creations of Roman splendors once were Italy's.

What all forms of fascism have in common is the glorification of the nation, and the exaggeration of its humiliations, with violence promised to its enemies, at home and abroad; the worship of power wherever it appears and whoever holds it; contempt for the rule of law and for reason; unashamed employment of repeated lies as a rhetorical strategy; and a promise of vengeance for those who feel themselves disempowered by history._

<comment><USER7> > What all forms of fascism have in common is the glorification of the nation, > and the exaggeration of its humiliations, with violence promised to its > enemies, at home and abroad; the worship of power wherever it appears and > whoever holds it; contempt for the rule of law and for reason; unashamed > employment of repeated lies as a rhetorical strategy; and a promise of > vengeance for those who feel themselves disempowered by history.

What is the difference between this, and North Korean or Soviet Communism? Is there a difference?

<comment><USER8> Soviet Communism, while _also_ a totalitarian system (and thus sharing those features that fascism has not as _unique_ to fascism, but as common to all totalitarianisms) differed in some key ways from that list; notably, while it certainly did not _erase_ pre-existing Russian national pride, embraced internationalism and global class-identity as opposed to glorification of the nation.

<comment> guard-of-terra > certainly did not erase pre-existing Russian national pride

It did. Crushing pre-existing Russian national pride was central to Soviet dogma, they called it "великодержавный шовинизм".

[https://en.wikipedia.org/wiki/Korenizatsiya#Against_Great- Ru...](https://en.wikipedia.org/wiki/Korenizatsiya#Against_Great- Russian_chauvinism)

<comment><USER8> > Crushing pre-existing Russian national pride was central to Soviet dogma

Dogma and reality often differed quite a bit in the Soviet Union; I would say that the evidence is that the USSR _did not_ actually crush pre-existing Russian national pride, although they managed to temporarily transfer the outward expression of that pride into what was, at least superficially, expression of pride in the Soviet State rather than the Russian nation. This still, though -- despite the internationalist orientation of the Leninist ideology -- retained a substantial nationalist tinge, even if oriented around a new and somewhat broader national identity.

</comment></comment></comment></comment></comment><comment><USER9> It would be the height of insanity to not read this piece and be wary of the combination of ideologies that can lead to fascism, and to draw parallels to modern times. I can't comment much on the individual points because I've never lived in a fascist country, but they do seem to lead to a combined ideology that would further the reaching powers of an aspiring fascist.

As an American, however, I can't help but think that the increasingly bold steps that our government is taking towards authoritarianism is making this piece all the more relevant: both parties are guilty of increasing the strength and powers of the government, as well as unnecessarily using the might of the military for nebulous gains. No longer do political candidates debate individual issues; instead, they appeal to a persona that the populous wants to see. Some might simply call it "entertainment", not "politics." This is an unnerving trend.

Were our federal government less powerful overall: financially, legally, etc., pieces like this would be less pertinent due to the "spreading out" of power that Italy nor Germany never had.

<comment><USER10> Here's a novel thought:

At least some of the points Eco mentioned _do not require_ an authoritarian government to implement. For example, selective populism and racism were alive and well in the South prior to the 60's, and happily administered in a democratic system. It took, yes, a powerful government to break it up.

Removing all power from the government transforms a nation into a state of nature that empowers such fascist and elitist groups to suppress marginalized groups in the same way an authoritarian government would. This is why many neo-fascists and alt-righters pay lip-service to libertarian (or classically liberal) ideals and the two groups often overlap in practice, because a truly stateless nation would allow the "weak" to be dominated by the "naturally strong", ie., this or that better poised group.

Counter-intuitively, a state is required to maintain individual liberty, I think.

PS: To be fair, I think most people who are libertarian do not want the state of nature. For example, libertarians, AFAIK, want a government that protects property rights for example. Yes, I think if one considers Snowden's revelations, these developments don't enable the state's protection of individual liberty arguably. As we've seen, they haven't been very effective while instead are very compromising of individuals' rights.

It comes down to details, but blanket removal of all power the state just places power in the hands of the de-facto elites. It's a delicate balance we have to strike and yes debate.

<comment><USER11> "Counter-intuitively, a state is required to maintain individual liberty, I think."

Why is this counterintuitive to so many people? This was one of the prime reasonings by almost all Enlightenment-era thinkers for the reason for a government, including it being beautifully laid out in the Declaration of Independence:

"We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness.--That to secure these rights, Governments are instituted among Men, deriving their just powers from the consent of the governed, --That whenever any Form of Government becomes destructive of these ends, it is the Right of the People to alter or to abolish it, and to institute new Government, laying its foundation on such principles and organizing its powers in such form, as to them shall seem most likely to effect their Safety and Happiness."

The key line is "That to secure these rights, Governments are instituted among Men".

<comment><USER12> It's like people forget how govt. evolved, just completely ignore feudalism, monarchism, tribalism etc. The reason we have democratic govt. is as a reaction to systems like that - creating an entity more powerful than all single groups but accountable to all (in theory). Of course, it turns out power always finds a way to concentrate, but that's just life, and why it's so important to have a strong and critical civil society as a bulwark against the concentration of power.

</comment></comment></comment></comment><comment><USER13> OK, so this was obviously brought up because of the parallels with Trump, but while reading I noticed another group that strongly aligns with these principles: ISIS. I've mostly thought of them as a regressive, extremist theocracy, but they really do match up with every one of these points. You have the cult of tradition and rejection of modernism, action for action's sake, a fear of difference, obsession with violence, and most especially the cult of heroism (martyrdom).

I wonder if this is just coincidence, or if the recent explosion of Islamic extremism is a new variation on Fascism.

<comment><USER14> I think this is a very fair comparison. One important way that I think people miss is their demographic similarity. Fascism was largely a movement of young people, especially men. This is true of ISIS.

To be clear, I don't think how you deal with ISIS is the same as Nazi Germany because they are also quite different in practical and ideological terms.

It's worth considering that ISIS is at least nominally a globalist, not nationalist movement– they have a vision of umma/Islamic community that means to include all races. This is not true of the Third Reich.

<comment><USER13> ISIS has two faces: the globalist terrorist group that organizes out suicide bombings and shootings all over the world, and the sectarian militia group which conquers and holds territory. The nation-state component is very much like Nazi Germany: it's going around conquering its neighbors, persecuting minorities, and there is active resistance from those they have conquered.

Though, as a nation-state ISIS is rather weak; most of its perceived strength comes from the global terrorist attacks. I wonder what would have become of the Nazis if they hadn't taken control of Germany, or if they failed to amass enough military power to invade other nations. Perhaps they would have switched to guerrilla-style tactics and terrorist attacks?

</comment></comment></comment><comment><USER15> At least for me, the most novel item in here, the one thing that makes the whole article invaluable, was the 14th point on Eco's list: the use of Newspeak and simplified language. I had never heard of this, but it's not surprising; it's internally consistent with the rest of what I know about Naziism and Fascism in general. It also reminds me of "Kids Against Trump", founded by a 9-year-old who could understand every word in Trump's speeches and was, accordingly, thoroughly creeped out. ([http://www.theatlantic.com/education/archive/2016/07/why- are...](http://www.theatlantic.com/education/archive/2016/07/why-are-third- graders-afraid-of-donald-trump/491567/))

Of course, Trump isn't likely to murder dissidents, and he has no desire for us-against-the-world unwinnable wars of conquest; likewise, I don't see a timeline in which Marine Le Pen revives Napoleon's ambitions, so the current alt-right moment has its advantages over historical fascism. (Alt-right-ness in general seems to be about staying home and hating/expelling foreigners, rather than looking for glory outside one's borders.) But these are unsettled times, all the same, and if you'd told me in the 1990s what I'd be seeing in the 2010s, I would never have believed you...

<comment><USER16> "Of course, Trump isn't likely to murder dissidents..."

He has expressed great enthusiasm for locking up dissident journalists and committing war crimes against those he considers enemies, and boasted he could murder someone in the street and remain incredibly popular.

So, no, he hasn't quite outright expressed a willingness to murder dissidents, but seems to get a little closer to this line every day.

<comment><USER8> Perhaps more to the point, he's specifically said it was a problem that there weren't "consequences" to protesting any more, lamenting that "nobody wants to hurt eachother any more", and that "In the good old days, this doesn't happen because they used to treat them very, very rough, and when they protested once, they would not do it again so easily", blaming the present tolerance for protest on the fact that "we've become weak".

</comment></comment></comment><comment><USER17> I remember this essay being widely cited a few years ago in Russia, as being more and more relevant to the recent changes in our politics.

Now it is becoming more and more relevant to the rest of the world.

Russia: pioneering the world's social change since 1917.

<comment><USER18> That's a really interesting and overlooked point. If correct (that is, if populist/proto-fascistic tendencies in modern Russia exist and have something in common with their equivalents in the West), it almost seems to overturn the commonly accepted theory that the rise of dangerous populism in everywhere is mostly due to economic stagnation -- since by comparison, Russia have done quite well in the past decade up until the drop of oil prices.

</comment></comment><comment><USER19> I've read this years before, but reading it now I can't help to feel it very relevant to current state of Polish (and probably not only Polish) democracy.

There is minority, but growing "cultural Catholics" that don't particulary care about the dekalog, anticonception and all that, but will leash on you for "LGBT propaganda", demand that Catholic symbols are prominent everywhere, and Islam/whatever other symbols are removed.

They consider the current pope "too leftist" because he quotes Jesus on refuges. They "are not antisemitist, but these damn Jews control Poland". It's connected with Polish nationalism, EU-scepticism, and outright racism sometimes, and for a few years already it's "cool" to be a nationalist in 15-25 age group.

They are also persuaded nationalism is the default state, in each country, and it's only the leftist media conspiracy that covers that up.

And these people are actively encouraged by current conservative government (probably with their noses held, but what that changes?) because they are the obvious demographics that can help them against the main centro-liberal opposition parties.

Their propaganda is anti-intellectual, refers to "common sense" against scientific theories, ignores all subtle distinctions and paints very "we vs them" world, calls everybody disagreeing with them "traitors", and sees a conspiracy of Soros and leftist behind everything.

It's very sad to see how bad political luck and cynism can undo so much progress in so short time.

</comment><comment><USER20> I know people are inclined to read this in terms of Trump, so let me just remind people of this: Berlusconi entered the political arena in Italy in 1994, so this piece, from 1995, might have been very likely inspired by a somewhat similar situation.

EDIT: not in the sense that B. was an evil fascist, but in the more important sense of "Freedom and liberation are an unending task"

<comment><USER21> Agree. '90s Italy was in a state of turmoil: the economy was tanking, public finances were in disarray, the Balkans were exploding producing waves of refugees, old political parties were dying... in the newly-empty ideological landscape, Berlusconi saw an opening and took it. Rivers of ink were spent analysing that phenomenon, under the fear that we were witnessing a new Mussolini. In the end he never went full-fascist, his movement self-deflated under the weight of its own contradictions, and he buried his head in sexual escapades.

The experience of living my formative years under Berlusconi makes me optimistic on Trump. "The Donald" does not control the media landscape to the degree that Berlusconi did (or could have done); his conflicts of interest are minor; his platform is much more confusing and badly put together; and even most of his own footsoldiers don't take him too seriously, which is why he had to get a fundie for VP. Silvio was in a much better position, with more fanatical followers and widespread support from the establishment, and stil achieved very little, because the country stubbornly refused to bow to his demands. I expect Americans will similarly drag their feet. You can't dig a moat if people won't pick up their shovels.

<comment><USER22> I tend to agree on Trump, as someone who has been studying him and the campaign closely.

In the final analysis, if he were to be elected, I think he would be a fairly typical Republican president, and one that seriously toned down the GOP's cultural conservatism.

From looking at his history and my take on his personality, if he were to take office he would want to 'win' at the job.

I think that for him 'winning' at president would be measured by economic metrics and his approval numbers.

I went into the cycle outraged at the fascistic overtones of his campaign, and fearful. Now I think it was mostly showmanship and an effort to win the votes of the rubes in the GOP base.

I think he would approach the job as being CEO of America, and focus on economic growth and negotiating better 'deals' for the country.

He will quickly find that the ISIS problem is intractable, and that he has seriously overpromised on that front. The situation is going to escalate no matter who takes office. There is no sizable cohort in America working on de- escalating tensions with the Islamic world, no peace movement to be found.

The West has a serious empathy deficit in regards to the Middle East. It just can't see past the religious identity of the terrorists, and see it as essentially a desperate and weak revenge effort by people that feel transgressed against and humiliated. This blind spot means more aerial killer robots, and more pissed off people on the other end of those hellfires.

Both Trump and Hillary will inevitably play right into the hands of the extremists, and the diabolical ISIS plan of eliminating the grey zone will no doubt work, as Europe's social cohesion is on the brink and repression against the Muslim population will no doubt increase due to these grotesque asymmetric terror attacks. This is a very sad state of affairs for liberalism, and the chance for peace in our time.

Tragically, it's going to be counterproductive military action from the West, and insane, lunatic barbarism from the Islamic side in response.

The current phase of this conflict really kicked off when I was just 17, on 9/11/2001, it heated up during my 20's and got seriously out of control around when I turned 30.

Lately I've been pondering the fact that I've never been the victim of a terror attack, and I've never fought in a conflict overseas. My entire interface with the horror show has strictly been through the media, and just the images and knowledge has effected me very negatively. I could have just avoided the news and lived in safe and tranquil ignorance. Instead I've endured this impotent worry, a feeling of something terrible happening to people all around the world that I could do nothing to save.

I'm now resigned to this stupid conflict continuing for my entire life.

<comment><USER23> > and one that seriously toned down the GOP's cultural conservatism.

That's not going to happen. The GOP's 2016 platform is its most anti-LGBT platform ever, and it's going to gain traction because a GOP president isn't going to do anything to block the GOP's legislative agenda. Even if Trump doesn't personally do anything to advance the GOP's anti-LGBT agenda, the fact that he won't even try to stop it will cause untold damage to our rights. He's not going to veto his own party's bills.

Also, remember that some of the most important advances to LGBT rights in the last few years have been the result of Obama using Title IX and the EEOC to fight discrimination. Trump isn't going to continue that.

<comment><USER22> I wasn't aware of the GOP's platform this year, and now that I've looked into it I see what you mean.

My take from watching the RNC was what seemed to me to be a new found inclusiveness of the GOP, with Peter Thiel's prominent speaking spot, and several speakers including Trump himself vowing to include and defend LGBTQ Americans.

I took it as the strength of the civil rights movement and it's victories over the last eight years. Just from watching the convention I took away that the LGBTQ movement has won, and even the historically adversarial GOP seemed to have to concede.

It seemed that the GOP had changed, but from the party platform it seems that the producers of the RNC and the rank and file power base of the GOP are at odds.

</comment></comment></comment></comment></comment><comment><USER24> It's interesting to see Trump being mentioned here (I'm not american, so I read the article from a very distinct perspective and background). Eco lists 14 features of Ur-Fascism. Do you find more than one in the Trump Campaign?

<comment><USER25> All of the features are pretty vague and certainly up for debate, but here's my shot at the potential links to the Trump campaign:

1\. Cult of tradition. This, I think, has the weakest link to Trump; obviously the "Make America Great _Again_ " slogan speaks to nostalgia, but I do think Eco here is talking about a particular kind of primordial, ancient tradition that is present in European fascism. America doesn't really have the sense of a people dating back thousands of years, so we avoid it.

2\. Rejection of modernism. Again, Eco is speaking here to some specific aspects of the Enlightenment vs pre-modern ways of thought, but I do think there is a connection here to Trump's focus on a manufacturing/manual labor- based middle class vs. a service sector, educated economy. He "loves the uneducated" and "wonders why we don't make anything anymore"; the modern world is too abstract and irrelevant a place.

3\. Cult of action. Uh, absolutely. It's honestly hard to find a place in Trump's rhetoric where this doesn't appear. Universities are filled with effete snobs, and thinking is a form of emasculation; Trump will take action, won't listen to the so-called experts, will consult his gut, etc.

4\. Disagreement is treason. Again, definitely. Trump's said repeatedly that he attacks anyone who attacks him ten times over, be they other politicians or members of the media, and promises to inflict harsh penalties on members of the press who criticize him.

5\. Fear of difference. America is under attack by Muslims, Mexicans, and China, all of whom are broad categories to be feared and met with strength.

6\. Appeal to a frustrated middle class. Trump's base of support are those who have seen other groups make greater strides in recent years, the white, largely (at least nominally) Christian, less-educated manufacturing class. They're definitely suffering feelings of humiliation, in part warranted, that Trump's tapping in to; he is against the free trade agreements blamed for their job loss and the social mores that have propped up other races, genders, and identities.

7\. Obsession with plot. At its most obvious, there's Trump's famous view of global warming as a Chinese conspiracy to hurt manufacturing, and his perception that Obama is not born in America, and may be cooperating with terrorists ("if he's so smart, something else is happening.") Still, I'd call this debatable; Trump certainly doesn't have the obsession with conspiracy of the Nazis (although who did?) and the particular place of the Jews is different in a modern American cultural context. Not that people who _are_ obsessed with Jewish plots aren't big Trump supporters, of course.

8\. Shifting rhetoric; opponents are both humiliatingly strong and too weak. I think this is again reflected in his rhetoric on Obama; he's a weak President who isn't respected, but also a dictator trying to control your lives. This also isn't as strong, though.

9\. Life is struggle. Not always a big theme in the campaign so far, but lots of Trump statements from books and interviews say, pretty directly, that he believes life is a constant struggle and you always need to be the strongest and the best. He hasn't taken this to the warmongering lengths that traditional fascists do, though; it's more of a philosophical theme than a declaration of actual war. Again, we're in a very different geopolitical context to that of early fascists, and all-out war is harder to sell.

10\. Popular elitism. Hard to say. A component of fascist societies, rather than a particular trait of the leader, and we don't know what Trump's America will look like, and how much of that will have to do with Trump.

11\. Cult of heroism and death. Not really. We're going to win and keep on winning. (A boot against a human face--forever!)

12\. Machismo. Yup. Disdain for women and need for strength and dominance. Well-attested.

13\. Selective populism. Absolutely. Trump is the voice of the people, in his own words, and derives his legitimacy from having been elected through a pretty bizarre process. Trump supporters are the real Americans, his enemies are not a part of the populace he wants to lead. "The emotional response of a small group of people" has been selected. "Wherever a politician casts doubt on the legitimacy of a parliament because it no longer represents the Voice of the People, we can smell Ur-Fascism."

14\. Newspeak. Debatable, as fun as it is to link Trump's simple vocabulary to simple ideas. I'm less in the Sapir-Whorf camp than Orwell; I think Trump's use of simple sentences is more a reflection of a simple worldview than cause. But, I suppose it is hard to debate him when he has such vague positions, and those vague positions are established with the use of basic language. We're going to win. How? We're going to do it right, that's how!

I'm at work right now (oops) so this is poorly sourced and mainly based on memory. I definitely think you can apply these categories in lots of ways, depending on your political bias, and as much as I adore Eco, he shouldn't be taken as the final word on fascism and politics in general. That said... there's a lot of fascism in Trump.

<comment><USER26> > This, I think, has the weakest link to Trump; obviously the "Make America > Great Again" slogan speaks to nostalgia, but I do think Eco here is talking > about a particular kind of primordial, ancient tradition that is present in > European fascism. America doesn't really have the sense of a people dating > back thousands of years, so we avoid it.

I disagree. As other posters pointed out Fascism infects with it's own unique flavor of the host country. In the US, post ww2 was an idilic time (not really, but there's so much rockwell imagery). It's post slavery and genocide. It ends with landing on the moon.

The mythic version of the post war boom is appealing. High paying jobs. A house with a white picket fence. A new car every few years. Everyone lives in a small town and knows their neighbors. Kids go fishing with grandpa. it's a fantasy, it avoids so many deep problems, but it's easy to see the appeal.

I would expect trump to knock off "morning in america" [1] for his positive ads. (if he winds up having positive ads).

[1] [https://www.youtube.com/watch?v=EU- IBF8nwSY](https://www.youtube.com/watch?v=EU-IBF8nwSY)

<comment><USER27> >High paying jobs. A house with a white picket fence. A new car every few years. Everyone lives in a small town and knows their neighbors. Kids go fishing with grandpa. it's a fantasy

...can you tell us a little bit more about how you see the fantasy part? Is that something you think is unobtainable for most people? And the reason is automation, or globalism, or climate change, or X. (I'm just curious to get another/urban/foreign perspective, since my kids just got back from two weeks of fishing with Grandpa, but we don't have a picket fence).

<comment><USER26> When my mother was a little girl, she traveled with her grandmother across the country, probably 1958 or so. They stopped at a gas station. My mother went in the "wrong" bathroom. It created an awkward situation.

The post ww2 boom had some wonderful effects. There were, and still are some ugly aspects to that time that are easy to gloss over. IIRC, it wasn't legally possible to rape a spouse. The Cuyahoga River was so polluted it would catch on fire, the largest in 1952.

There were some very ugly parts to that time. if you weren't a white man with a good job, i think it was pretty rough. The nostalgic view tends to wash away those ugly parts.

 _edit_

This is probably a harsher reply than was warrented by your question, but... it's easy to be misty eyed about that time. I wasn't around, but i think it sucked for a lot of people.

<comment><USER27> Ah, I misunderstood what you said, and the fantasy part is the overlooking of historical problems. Any thoughts on the white picket fence as an aspiration nowadays?

<comment><USER26> I'd hope people do what they like. You want it, go for it! But if you really want a little apartment with a cat and stacks of books, go for that. I think there's was a pressure to get married, buy a house and start having kids, at least through the 80's. There's nothing wrong with that, and it makes lots of people happy. I could do that, but i don't want the commute.

</comment></comment></comment></comment></comment></comment></comment><comment><USER28> The article compares the term "fascism" to the term "game" in that it names a family of things that may not share any given trait.

If I say the stock market is a game, I have some hope people will understand I'm saying there are winners or losers. If I say commenting on HN is a game I have some hope people will understand I'm saying it's more for amusement than for any other purpose.

With the term "fascism" I have no such hope. Nobody understands if I say "Trump is fascist" or "Hillary is fascist" unless we're already thinking along the same lines, in which case I'm not communicating anything new.

My conclusion is that "fascism" is not a useful term for discussion.

<comment><USER5> > Nobody understands if I say "Drumpf is fascist" or "Hillary is fascist" > unless we're already thinking along the same lines, in which case I'm not > communicating anything new.

I think you're right when it comes to Internet commenting, but it's possible.

I've personally convinced a few people to support Johnson instead of Trump by pointing out the distinctively fascist elements of his campaign. Thinking people are entirely polarized and unwilling to listen to respectful points just enhances polarization.

</comment></comment><comment><USER29> Speaking of modernism, this encyclical from 1907 has very interesting things to say about the subject. Interpreting fascism's relation to modernism in this light, and interpreting Eco's essay in this light, are fascinating.

[http://w2.vatican.va/content/pius-x/en/encyclicals/documents...](http://w2.vatican.va/content/pius-x/en/encyclicals/documents/hf_p- x_enc_19070908_pascendi-dominici-gregis.html)

<comment><USER29> Also this interesting note about "games" and irrationality and how they relate to Eco:

[http://rorate-caeli.blogspot.com/2016/02/the-real-umberto- ec...](http://rorate-caeli.blogspot.com/2016/02/the-real-umberto-eco-how- deeply.html)

</comment></comment><comment><USER30> fourteen defining features for fascism; i think that's a lot, some of them are framed very broadly, and i don't quite see how they all interconnect.

I wonder why it does not include 'readiness to suppress your political opponent', i would have thought that this is the defining feature of fascism; you can be all of the fourteen features, but as long as you don't smack your political opponents you are not a real fascist.

<comment><USER31> I think that's covered by point 4, dissent is treason.

<comment><USER30> you still need to be prepared to actively punish the traitors; for instance any religion would view non believers in their congregation as some form of traitors, but not all religions would be ready to burn them at the stake or do anything about it.

</comment></comment></comment><comment><USER32> Anyone else remember this (very beautifully written and interesting) piece being rolled out during previous elections?

Interesting that Clinton is stumping with the Bushes (the previous boogeymen) now: [https://www.yahoo.com/news/hillary-clinton-invokes- unlikely-...](https://www.yahoo.com/news/hillary-clinton-invokes-unlikely- allies-000000292.html)

<comment><USER8> > Interesting that Clinton is stumping with the Bushes (the previous > boogeymen) now: [https://www.yahoo.com/news/hillary-clinton-invokes- > unlikely-...](https://www.yahoo.com/news/hillary-clinton-invokes- > unlikely-..).

She's not stumping with the Bushes, and that article doesn't indicate that she is.

</comment></comment><comment><USER33> For a slightly different perspective from Mussolini:

[http://legacy.fordham.edu/halsall/mod/mussolini- fascism.asp](http://legacy.fordham.edu/halsall/mod/mussolini-fascism.asp)

[https://archive.org/details/MyAutobiography](https://archive.org/details/MyAutobiography)

Primary sources are important, they give you details and textures that are smoothed over in a retelling or distillation.

My personal opinion, since this story has basically become about whether or not Trump represents an American Fascist movement, is that crying fascism all the time is very much a 'boy who cried wolf' scenario. I don't think Trump is a fascist per se. Moreover, considering that fascism was a term adopted by the left to describe the heretical forms of syndicalism, socialism, etc that split from Leninism in the early to mid 20th century and was used for the POUM[1] as readily as Hitler's SS[2] I submit that the term in fact means nothing. Fascism has no central character because it's a bogeyman of self described antifas who want to import European style street brawl politics[3] into the United States.

Instead of trying to conceptualize and denounce Trump in terms of the past, I think it would be more effective to point out the concrete dangers he represents to domestic and foreign policy with his actual stated politics, or his hypocrisy, or any of the other many traits you can go after with him.[4]

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

[2]: They are after all the National _Socialists_. Though by the time Hitler was appointed Chancellor the actual 'socialist' wing of the party had been purged to win over the minds of wealthy donors.

[3]: [http://www.latimes.com/local/lanow/la-me-ln-neo-nazi- event-s...](http://www.latimes.com/local/lanow/la-me-ln-neo-nazi-event- stabbings-capitol-20160627-snap-story.html)

[4]: For example, compare this ([https://www.youtube.com/watch?v=OOJrYxHQO-E&nohtml5=False](https://www.youtube.com/watch?v=OOJrYxHQO-E&nohtml5=False)) Ted Cruz ad to John Kaisch's invoking Godwin. ([https://www.youtube.com/watch?v=m_isVZN65Ss&nohtml5=False](https://www.youtube.com/watch?v=m_isVZN65Ss&nohtml5=False))

<comment><USER34> [http://www.etymonline.com/index.php?term=fascist](http://www.etymonline.com/index.php?term=fascist)

<comment><USER33> Yes. Which is why where my post originally said 'invented' I changed to 'adopted'. (In all probability you read the version which said 'adopted', since I made that change soon after I wrote it.)

</comment></comment></comment><comment><USER35> I wish the article had some more historical treatment of fascism. It starts with nazi germany and WWII, but fascism started earlier in Germany, going back at least as far as the "Pan-German League" (1891-1939), who essentially laid the ideological foundation on which almost all modern rightists build their theories.

EDIT: Make my point clearer.

<comment><USER36> I think the author was less interested in describing the ideology from a historical perspective, and more interested in pointing out warning signs that could signal an ideological movement is trending towards fascism.

His point is that a future rise of fascism might not look like the path from the Pan-German League to the Nazis, but it will have some ideological hallmarks that we can detect.

<comment><USER37> Right. This is comparative rather than historical - looking at a few fascist movements in recent times and distilling a common core.

</comment></comment></comment><comment><USER38> Few object to fascism when it was _their_ fascism. When you use it as a catch- all euphemism for evil, sure it sounds bad. But more often than not, fascism is a trope held up to make otherwise totalitarian ideas seem moderate.

I have no love for people who identify as fascists, as to me they are just morbid personalities fixated on a nostalgia for ugliness. Same type of people who like slasher/torture films.

But, some alt-right'ists (trigger warning) have put some recent thought into the topic: [http://www.jack-donovan.com/axis/2013/03/anarcho- fascism/](http://www.jack-donovan.com/axis/2013/03/anarcho-fascism/)

It is fairly well considered. These days, Eco is an old hack doomed to the museum/prison of being a national treasure. He has become too precious to edit, and his books are mainly didactic posturing for middle brow book clubs. His criticisms provide a kind of hall of mirrors for people who already believe in them, and don't provide actual illumination.

</comment><comment><USER39> Mods, can we get a (1995) on here?

<comment><USER40> Sure, but the ideas described are largely timeless.

<comment><USER41> I think it is important to understand that this was in 1995 looking forward, as opposed to trying to create things that describe the current situation and cherry picking details to fit the narrative. I have often expressed the opinion that Donald Trump's campaign, and his vision for the country, is reflective of a fascist ideology. That is hard for someone to hear who doesn't consider themselves a fascist but supports Trump because it challenges them to see that both statements that they hold to be true, can not be true. To sway their feeling of cognitive dissonance they attack the facts and assert bias and cherry picking.

Umberto Eco knows nothing of Trump's campaign as he writes, so he cannot be cherry picking his facts out of the current affairs. That is why I consider it important to know this was written in 1995.

<comment><USER27> >That is hard for someone to hear who doesn't consider themselves a fascist but supports Trump because it challenges them to see that both statements that they hold to be true, can not be true. To sway their feeling of cognitive dissonance they attack the facts and assert bias and cherry picking.

I wonder what people's thoughts are about a "crying wolf" type of phenomena developing? What if people just started shrugging their shoulders, and saying if I support Trump and that's fascist, then I'm a fascist, oh well? Kind of like "racism" as a term is starting to lose its sting. People just say, "I thought everyone was racist", and "I thought there is no such thing as race (so therefore you can't be a racist)".

<comment><USER42> _I wonder what people 's thoughts are about a "crying wolf" type of phenomena developing? What if people just started shrugging their shoulders, and saying if I support Trump and that's fascist, then I'm a fascist, oh well? Kind of like "racism" as a term is starting to lose its sting. People just say, "I thought everyone was racist", and "I thought there is no such thing as race (so therefore you can't be a racist)"._

I definitely believe this is happening. The Left is overplaying their hand because their targeted adversary is doing reasonably (and unexpectedly) well. So they are deploying out the big words like "racist" and "sexist" and now, "fascist".

And lots of American voters are reading his platform and policies and thinking, "hmm, that policy seems like common sense - does that mean that (1) the Left is in error in labeling Trump a fascist or (2) I, myself, am a fascist and maybe fascism is not really that bad?"

Ultimately, a single word is too reductive to apply to a candidate and his policies. But lots of voters are too lazy to read or listen to full sentences and paragraphs, so we are locked into these simplifications.

<comment><USER40> > _But lots of voters are too lazy to read or listen to full sentences and > paragraphs, so we are locked into these simplifications._

I would say you could take it for granted that a large majority of people are like that most of the time. And I think it's very likely that this phenomenon was consciously and cynically exploited, and therefore facilitated the lowering of standards and the rise of bullshit in American politics in the last 20 years or so.

</comment></comment></comment></comment></comment></comment><comment><USER43> (1995)

</comment><comment><USER44> i guess we're supposed to wax angry about trump here ...</comment>


World's first driverless rail transit system unveiled in Hunan - <AUTHOR> http://en.people.cn/n3/2017/0602/c90000-9223523.html <comment><USER2> It isn't the first. The Gatwick Airport driverless transit system carries an estimated 3.6 million passengers per year 1.2 km between gatwick airport's North and South terminals. [https://www.youtube.com/watch?v=4btM9b8LoBM](https://www.youtube.com/watch?v=4btM9b8LoBM) and of course there's [https://en.wikipedia.org/wiki/List_of_automated_urban_metro_...](https://en.wikipedia.org/wiki/List_of_automated_urban_metro_subway_systems)</comment>


Everything old is new again: Terminals in 2011 - <AUTHOR> http://www.cbc.ca/news/canada/calgary/story/2011/02/25/comptuter-sharing-alternative-classrooms.html

<comment><USER3> I really hate that these types of articles always bust out this weird dichotomy of "centralized" vs "decentralized" arguing. I don't know why this is, perhaps there are historical reasons for doing this, since at one point it was a big divide -- really defining the types of available arguments. Now however, it is 2011, and the world is a bit different.

Mostly, the centralized/decentralized divide is now a big mushy space called "networking". Those of us who have grown up with the idea of both PCs and Servers and Mainframes, don't look upon them as religions so much anymore. There are very good reasons for each of these architectures, and they map to different problems.

Further there are many times solutions from centralized or decentralized space work equally well in terms of technology, but not so well in terms budget. For example, where I work we all carry around MacBooks as our primary working computers. We recently have needed to do a bunch of development using .Net on windows. We decided to buy a very powerful server box, (24 cores, 140GB Ram etc) to be the main computer for windows dev. This allows several developers to remote in, and run VS2010, is pretty fast, and cost about 1/3 of the equivalent in new resources for each dev. It works for this case.

Conversely we decided to buy lots of cheap little machines for our test lab, and cluster them as needed, rather than a single big iron machine using VMS, because the flexibility was more important than cost.

These decisions never involved a tech flamewar, just a "what things will actually solve the problem, what tradeoffs exist, and how does the budget work best with them".

tl;dr -- sometimes terminals are a great solution for the cost, don't exclude them based on an old, mostly irrelevant anymore, religion.

<comment><USER4> _Conversely we decided to buy lots of cheap little machines for our test lab, and cluster them as needed, rather than a single big iron machine using VMS, because the flexibility was more important than cost._

I'd imagine finding an Alpha or VAX to run VMS also contributed to this decision.

<comment><USER3> :) I meant VMs (as in Virtual Machines).

</comment></comment></comment><comment><USER5> Well, it has a mouse, so it's more like an X terminal than a plain old serial terminal like a VT220.

<http://en.wikipedia.org/wiki/X_terminal> \-- notice the mouse; working on one of these was "almost" indistinguishable from having a display/kbd/mouse connected directly to the server.

<http://en.wikipedia.org/wiki/VT220> \-- no graphics or mouse here, just CURSES.

Back in the 90's X terminals were considered perfectly adequate for most desktop computing tasks (short of CAD, I guess) provided the server was powerful enough. I guess the proliferation of cheap Intel/ Windows boxes was what did them in.

</comment><comment><AUTHOR> I think one of the important items to pick up from the article is that Userful has packaged up a technology - that any one of us is familiar with - <USER2> created a consumer product from it. Much like Dropbox has done, the average consumer is very interested in a solution that abstracts away their problems and "Just works"

No doubt there are a ton of opportunities in those spaces.</comment>


Robotic Surgery: No Evidence It Is Better - <AUTHOR> https://www.nytimes.com/2019/03/11/health/robotic-surgery-cancer.html <comment><AUTHOR> A disquieting article. I had robotic surgery a year ago to remove a kidney. From the patient perspective, the robotic surgery was clearly the better choice because it was non-invasive with a quick recovery.

<comment><USER2> In your case, the robotic surgery might be okay. The article is concerned with robotic surgery being performed on cancer patients, which has not been approved by the FDA.</comment></comment>


Country IP Blocks database needs your help - <AUTHOR> http://www.countryipblocks.net/

<comment><USER2> This is one of the applications for which I really like small couch dbs. Build it in one place, replicate all over.

I converted something from that to a couchdb in a couple of minutes and set up a view to reproduce their CIDR export data. For example:

[http://dustinphoto.couchone.com/country_ip/_design/views/_vi...](http://dustinphoto.couchone.com/country_ip/_design/views/_view/by_code?group=true)

Pull a single country, bogons (XA) in this case. It looks slightly funny since I used the CIDR address as the key since I can extrapolate pretty much everything else from it:

[http://dustinphoto.couchone.com/country_ip/_design/views/_vi...](http://dustinphoto.couchone.com/country_ip/_design/views/_view/by_code?reduce=false&key=%22XA%22)

This model means I can rate limit to near nothing without affecting people because they can just replicate <http://dustinphoto.couchone.com/country_ip/> and use their own infrastructure while keeping the data fully synchronized.

I've got another similar database where I integer encoded the keys so they sort numerically so a reverse limit 1 sorted search by integer key will return lat/long data at whatever granularity that particular block was captured (could be a single IP address). I should get these consolidated somehow.

</comment><comment><USER3> I'm disappointed about what they provide... Almost every point of their About page I disagree with. Blocking random network blocks is not proper security, no IP database is "current" or "accurate", webmasters should work on actual security in the first place, not on rejecting some arbitrary portion of internet.

</comment><comment><USER4> I don't donate to things like this unless they can explain why their costs are so high or why they need the money, what's it for? I'd be more that happy to donate if they ould explain their costs.</comment>


What interview questions would you ask a prospective Rails Developer? - <AUTHOR>

What kind of questions would you ask to test if the person has a nuanced understanding of the framework? <comment><USER2> I generally find that asking specific questions about a technology or technique is not really valuable. My preferred method of interviewing is to sit down and talk with the candidate about "stuff", which should include said technologies/techniques. After a fashion you will get a good understanding of what they know about the subject; where they are strong and where they are just blowing smoke. You'll also know more about how they would integrate into your team.

So just relax and talk to the candidate and don't worry about asking the magic questions that will answer all your prayers. :)

<comment><USER3> Not only that, but a prospective rails developer should have at least a handful of released projects/plugins, so the last thing you should be _talking_ about is Rails.

</comment></comment><comment><USER4> I tend to ask, not how you use the framework, but rather how the framework works. How does routing actually work? How do named scopes work? How would you implement the {before|after} filters on models... etc.

It's actually somewhat more difficult to tell whether someone knows how to use Rails well. My only suggestion is to sit down in front of an editor with them and work through actually building something small but meaningful.

<comment><USER5> If someone asks me how Rails works, I wouldn't be able to answer. It's just something I don't care about. Sure, give me a few hours and I'll figure out everything you asked for, but right off the bat? No way.

<comment><USER4> In my opinion, that's a problem. If you don't understand what is actually going on under the hood, you're likely to get bitten when things don't go exactly as you expect.

ActiveRecord is the most obvious example of this. If you don't know what queries it's going to throw out for a particular call, it may work just fine in development but could easily bring down a site in seconds in production.

Routing is another example. If you have a particular action that needs to have as low latency as possible changing its position in the routing file is often one of the easiest and most effectual changes you can make. Someone who just codes in the framework and doesn't understand how it works is unlikely to realize that.

</comment></comment></comment><comment><USER6> I might ask the interviewee about stuff from the future of rails. If answered correctly, it shows how someone can be in a continuous learning mode and eager to go the extra mile.

</comment><comment><USER7> I'd ask the candidate to pair program with a developer for a week. You'll know immediately if the candidate can integrate with the team. Plus it'll reveal his knowledge during the session.

<comment><USER8> Could be wrong, but I think the question was "what interview questions?" The interview is, for argument's sake, the second screen (the first one being the review of the cover letter/email and resume/cv or whatever). The third screen might be an audition or trial, such as you've described.

<comment><USER9> Right. This is to filter out people before they waste whole days of your teams' time.

</comment></comment></comment><comment><USER10> Ask them to develop something that involves caching the paginated search results of a double-nested resource with file attachments in as little time as possible. hehe</comment>


Ask HN: Text-based interface for PostgreSQL? - <AUTHOR>

I know that SQL is an option, but I'm looking for an easier text-based interface for PostgreSQL. Something that's similar to what 'tig' is to 'git'. Does any one know something like this? <comment><USER2> PostgreSQL comes with a command line client: psql ([http://www.postgresql.org/docs/6.4/static/app- psql.htm](http://www.postgresql.org/docs/6.4/static/app-psql.htm))

If you're going to work with a relational database you need to learn SQL and how the relational model works. There's no shortcut that won't just leave you worse off in the long run. SQL was originally designed as an end-user friendly way to work with relational data.

For learning about relational database theory I recommend Chris Date's book "Database In Depth: Relational Theory For Practitioners." There are quite a few good books for learning SQL. For learning the PostgreSQL flavor of SQL the PostgreSQL docs are probably the best place to start.

<comment><AUTHOR> Thanks for your reply, but that's exactley what I don't want to do. I know about psql and I know how to write SQL statements, but what I'm looking for is a text-based interface that let me perform tasks (similar to what you can do with phpmyadmin) without writing SQL statements.

<comment><USER2> I'm having a hard time imagining an easier text-based interface to an RDBMS than the command line client. For things I do frequently -- backup a database, dump just the schema, export a view as CSV -- I write shell scripts around psql or the mysql CLI. You can use command-line parameters and hide the psql options and commands that you don't want to look up over and over. Obviously you could do the same thing with other tools if you don't like sh/bash scripting.</comment></comment></comment>


Apertosoft - <AUTHOR> http://www.apertosoft.com

<comment><AUTHOR> Hi all, we are a dynamic new company based in London providing apps, websites, hosting and programming. if you would be interested in our products please visit us www.apertosoft.com</comment>


IBM Just Committed Cultural and Creative Suicide - <AUTHOR> https://www.inc.com/geoffrey-james/ibm-just-committed-cultural-and-creative-suicide.html <comment><USER2> This is simply a way to do a layoff and better yet for the accountants the folks least likely to move are the ones with kids/families, which also happen to be the ones who are earning at their highest. 25 year olds can move on short notice, 45 year olds cannot, but its illegal to fire everyone who's over 30.

The article is also correct, talent is leaving. When you announce something stupid like this, only 2 types of people remain: a) lifers and b) people who lack the network or talent to find something else. When all you have left is types A and B you get stagnation at best and decline at worst.

<comment><USER3> You are missing the 3rd type of people who remain. Idiots who felt a sentimental loyalty to the brand, who is not giving up hope that IBM just might rise again to the way it was in the old days.

</comment></comment><comment><USER4> The first paragraphs of this article are so nakedly biased that it's hard to take the rest seriously:

> IBM's financial performance has shown steady improvement ever since the > mid-'90s, when the internet made "work from home" practical, using tools > that IBM pioneered, like email, groupware, and Web conferencing.

> IBM hasn't had an unprofitable year since 1994, and its revenue per share > has more tripled since then.

This makes it sound like IBM is doing great, instead of mentioning that IBM's revenue has fallen for _twenty_ straight quarters, when other large tech companies have been booming.

> During that period, IBM has created more innovation than any other company. > In 2016 alone, IBM filed more patents than Google, Apple, and Microsoft > combined.

Equating number of patents filed with "innovation" is absurd. IBM files a ton of patents because they are in the patent licensing business.

<comment><USER5> You might be right about technical and financial IBM performance, but this article is about remote working:

1) Bias in favor of IBM strengthens the "friendly" criticism in the article.

2) IBM is (was) actually committed, since the '90s, to providing collaboration tools that facilitate remote working and distributed teams. Do you remember Lotus Notes?

<comment><USER6> > Do you remember Lotus Notes?

 _looks at dock icon_

Unfortunately, yes :P

</comment></comment></comment><comment><USER7> I'm going to speculate wildly, and declare that IBM has several serious self- driving-car-related engagements that it must commit to, while exiting other engagements that involve stagnant technologies.

It's migrating away from some existing specialized staff, to make room to onboard other staff with different skills as part of a play to attack a set of problems that will be kind of a big deal.

IBM doesn't typically do a lot of real things directly. They operate in the B2B realm. They exited personal computing when mobile devices emerged, and have since focused on what we now term as AI/ML.

Everyone knows there's an avalanche afoot, with huge chunks of the job market hanging in the balance, depending on what gets automated the hardest, first. All signs point to trucking, motor freight, and last mile shipping. IBM has probably set its gaze upon that territory, and will probably handle tech support for some big well-known conglomerates over the next few decades, with a hand in that area, assisting safe bets that can afford their price.

Don't act like Watson hasn't been a thing. This shift probably has deeper meaning.

</comment><comment><USER8> I don't think the author knows what motivated IBM to make the change and just tries to make it look like IBM is Yahoo! Yahoo was a failing company trying desperately to reboot its revenue and culture. IBM on the other hand is an extremely successful enterprise that nurtures a company culture that has become a legend of its own. IBM has so far succeeded morphing into different shapes and forms to adapt to a very competitive market and ever shifting technology paradigms. Why assume, with such passionate and condescending arguments, that IBM does not know what it's doing?

<comment> m-j-fox I don't know much about IBM except that they made Intel and Microsoft successful. And I read that Mythical Month Man book.

I'll bite: why assume that IBM does know what it's doing?

<comment><USER9> 40% work remote? It's a mass layoff in sheep's clothing.

</comment></comment></comment><comment><USER10> IBM management badly wants to achieve the kind of financial success enjoyed by tech companies like Apple that have never encouraged remote work. Employee morale at IBM is already low because of previous mass layoffs, so maybe management has decided this is a good time to clean house again.

I agree with the author that this policy change could drastically alter their corporate culture in unexpected ways. Depending on how this plays out in the next few months, I might decide to reduce or eliminate my investment in IBM common stock.</comment>


Pocket team's tips for aspiring Android developers: It's not really terrifying. - <AUTHOR> http://getpocket.com/blog/2012/06/pockets-tips-for-aspiring-android-developers-its-not-really-terrifying-and-in-fact-quite-enjoyable/

<comment><USER3> Something else for new Android developers is to realise that Android apps are structured completely differently than iOS or desktop apps (if you follow best practise).

Instead of a single main() entry point, consider your app to be a mashup of ui (activities), data (content providers), processing (services), broadcast state (receivers) etc. You can just as easily incorporate those components from other apps as from your own. You don't have to do most things yourself - eg to include Dropbox/Facebook/Twitter/Google or your own account system you can use the AccountManager instead of building your own credentials user interface (the sign of an iOS ported app).

If your app will be talking to a server, along the lines of providing a user interface to view data and make changes, with the underlying data flowing over REST or something similar then watch this talk which talks about best practises. It is especially a good idea to remember that mobile platforms can arbitrarily kill applications at any time for any reason, and the same can happen to the network. Consequently you need to record what is going on in a local database to be resilient. Talk is from Google I/O 2010 but applies today: <http://www.youtube.com/watch?v=xHXn3Kg2IQE>

<comment><USER4> So, I spent some time trying to implement the architecture proposed in that talk. I kept finding myself adding just tons and tons of more or less boilerplate code. This felt wrong to me. Surely there must have been a better way.

Fortunately, Google released the source for the Google I/O app, built using the same architecture. What did I discover? A giant pile of boilerplate code to accomplish very little in terms of actual functionality. Moreover, this was for an app which fit pretty well into the relational model (small objects with few relations each).

It may be current best practice, but there has to be a better way.

<comment><USER3> Unfortunately it is very easy to end up with boilerplate code when using Java. It isn't a direct fault of the language but rather that Java developers hate making decisions so you end up with endless layers of abstraction and indirection. (Immortalized as FactoryFactoryFactory.)

You may find this list of libraries used in Android apps useful. There are several that cover this architecture pattern if you want to use them (eg data access, networking, format parsing):

<http://www.appbrain.com/stats/libraries/dev>

</comment></comment></comment><comment><USER5> Good to see someone (of relative authority) pushing back against the FUD spread by iOS fanboys, such as the likes of Marco Arment & co. Android development is not something to be afraid of, and thankfully a lot of developers are finally coming to that realization, and it seems that with the release of Android versions of previously iOS-only apps like Flipboard, Instagram, and Instapaper, the final vestiges of differences between the two markets have disappeared for users.

<comment><USER6> I have to disagree. Marco recently laid out his (very rationale) reasons on why it took so long for Instapaper to hit Android. I encourage you to give it a read - <http://www.marco.org/2012/06/06/instapaper-for-android>.

Choice quote from the article: "Simply put, Instapaper needs to be on popular reading devices. That category now includes at least three 7" Android tablets, probably with more to come. I realized last winter that I needed to address this demand, but I couldn't do it myself. "

<comment><USER7> A lot of people see that as the worst form of hypocrisy.

Marco writes articles post with a headline "Why I hate Android"[1]. Then when it turns out that (despite his attitude) people are making money on Android he decided to jump on board.

[1] <http://www.marco.org/2012/01/10/why-i-hate-android>

<comment><USER8> Well those people are simply naive.

Many developers have hated the platforms they have developed on but do so because the platform allows them to make money.

It's worked this way since the beginning of industry i.e. decades.

<comment><USER9> > Many developers have hated the platforms they have developed on but do so > because the platform allows them to make money.

The hate isn't the hypocrisy. Plenty of people, for example, hate Windows and develop for it without being hypocrites.

The hypocrisy is extensively claiming that the platform in question _isn't_ profitable ("terrible development economics", "unlikely to recover those costs" [referring to development costs"), etc.), playing up issues like fragmentation and generally arguing in almost every way possible to other developers that you shouldn't be on this platform... and then turning around and jumping on board anyway.

In fact, given the timeframe Marco talked about (last winter), it is entirely possible he was publicly arguing against Android development while Instapaper for Android was being developed. I can understand why he'd do that from a business perspective: Marco wouldn't want to tip off competitors to his change in thinking (note that Readability launched on Android and ReadItLater had gone radio-silent before relaunching as Pocket during the period in question), but that doesn't make him less of a hypocrite.

</comment></comment></comment></comment></comment><comment><USER10> Its nice to see an article that challenges the bizzare notion that you have to have a gigantic stack of physical devices to develop a quality android app. This very closely mirrors my experience developing for android except of course for the wild success bit.

I started my first app the day I got my n1 and until this year when i added a transformer prime to cover ics and tablets that's the only device I used save the emulator. In that time I supported every device 2.1 - 4.x including tablets with just the emulator. Fragmentation has just never caused much of a problem for me.

My user base isn't huge (4000ish) so it could be that scaling up would bring the fragmentation issues out of the woodwork. Nice to know that it doesn't at least in this case.

</comment><comment><USER11> I'm the guy (from OpenSignalMaps) who found the 3997 Android devices, but I also love developing for Android. I think 3997 devices is very cool and just a tiny-tiny bit terrifying. So I love this post. Buying a low-end device is a great policy policy for two reasons. 1.the market for low end android devices is growing faster than for high-end devices. So if you want global traction that's what you should target. 2. If your device works well in Cupcake at 320x240 it's probably going to be even better on ICS at 1280x720. My three favourite devices for developing: HTC Hero (low-end although actually pretty great), Nexus One (workhorse), Galaxy Nexus (system is surprisingly buggy, but still super fast).

</comment><comment><USER12> Not that I disagree with anything, but it is good to keep in mind that Pocket is funded by Google Fund. edit: Google Ventures

<comment><USER13> Aha. I was wondering why they had such a Google-esque look and feel.

</comment></comment><comment><USER14> Of course they did not have any compatibility problems - the Pocket app is a textbook example of an app, you could find something like this in demo examples. Make no mistake, I love the design - it's perhaps the best design of an Android app yet. BUT, you can't compare it to any game or video playback app - it does not have to handle native libraries or fight with gazillion different screen aspects. It might not even contain a single custom drawn view (don't know about the "reader" view). Everything in Android is a fluid layout, and if you only use these layout components, everything should be fine on most devices. Pocket is even able to avoid very large images, which tend to crash older devices if they exceed available native bitmap storage. So.. yes, most apps won't need testing on ~4000 devices - if it runs on the emulator, it should be fine (make sure to severely limit memory there).

But don't dare to leave the well-tread pathways, or get ready to buy 100 or more devices (obviously that's an estimation :)).

<comment><USER15> There is at least one data point that supports manmal's argument: [http://mikamobile.blogspot.com.au/2012/03/our-future-with- an...](http://mikamobile.blogspot.com.au/2012/03/our-future-with-android.html)

Perhaps they are bad developers.

The guys with the 4000 Android devices explain what they are trying to do here: [http://www.animoca.com/en/2012/05/the-varieties-of- android-e...](http://www.animoca.com/en/2012/05/the-varieties-of-android- experience/#more-3686)

Both of these are game developers. So I think that at the moment the type of app you are developing may effect how easily it is to get good compatibility. Also the type of markets you want to tap may matter.

<comment><USER14> Yep - the more specialized and low-level it gets, the more stuff will break on devices you have not tested - that's what I mean.

UPDATE: Perhaps I should tell about my background here: I have been developing Android apps since 1,5 years now, among them an app for my master thesis which makes heavy use of OpenGL. One xample of what can break: If you load OpenGL textures, you should choose a texture size of 2^n pixels - or at least I found out when they did not show up in some of my test devices. Some newer devices showed the non-2^n-px texture (500x500) without problems, but older did not display anything. Now imagine you code a game or interactive info display - <USER2> that the kind of issue you want to have? You won't run into this issue on iOS, because there are only so many OpenGL drivers.

Apps like Pocket do not touch these issues, they don't do "hard" things.

</comment></comment></comment><comment><USER16> Finally some great advise. I will like to add my experience to it. When I first started developing on Android (around a year and half ago) I had just a HTC Hero which my employer then (I was interning) bought on CL. I had to share this phone with a fellow developer. Using just that one device we managed to make an app which totally blew away its IOS counterpart . Then one of my friends bought Motorola Atrix . This phone was first phone with such a high resolution (~275 ppi) as far as I can remember with slightly different aspect ratio. When I loaded my app on this phone everything worked perfectly. It was a realization that Android provides so many tools and ways like 9 patch images, different assets folder, layout mechanism which makes handling such differences easy. All you need to do is to get out of single screen mentality (or 2) and think more like a web developer developing for different browsers and screens.

My experience so far has been (I have around 40 apps on Android Market) unless OEMs do something stupid or have bugs and you are not handling some platform bugs (these are rare but can get quite annoying) especially from 2.1 to 2.2 and 2.3 to 4.0, you should be fine.

In some instances I had to use jar-jar (<http://code.google.com/p/jarjar/>) for common libraries like GSON (json parser) since some OEMS (I think it was some phones from HTC) were modifying the implementations and it was resulting in errors in my app.

Lets talk about look and feel. Android has a very vibrant open spurce community. If you want to follow design guidelines (<http://developer.android.com/design/index.html>) (you should, even though you are not needed to) , just use open source libraries like action bar sherlock , android theme generator and you can achieve 95% identical look and feel between 2.3 and 4.0. You can always grab the holo theme assets from Android 4.0 source (which is shipped with SDK) and create your own holo theme (if you are using holo for Android 4.0).

Lastly, you can always use support library to get fragment functionality. Fragments are most important defragmentation tool. Some other niceties like Loader manager are also part of support package.

Enjoy developing on Android!</comment>


Online Partime Job PHP/RoR programming - <AUTHOR>

Is there any site/ freelance part time job that I can get. I'm programming ruby on rails for 3 years and started codeigniter. Thank you very much for any recommendation or suggestion. Thank you very much. <comment><USER2> You can always try the website weworkremotely.com. The beauty is, that you can also work from home with amazing perks and benefits! Check it out!

</comment><comment><USER3> [http://www.toptal.com/?ref=10185](http://www.toptal.com/?ref=10185)</comment>


Two Bitcoin services "hacked" in the last two days. The common denominator? OVH - <AUTHOR> https://twitter.com/bitcoin_central/status/327131323342942209 I made a post about slush's bitcoin pool being hacked here last night to no avail: https://news.ycombinator.com/item?id=5599329 <comment><AUTHOR> I made a post about slush's bitcoin pool being hacked here last night to no avail: <https://news.ycombinator.com/item?id=5599329></comment>


Why aren't ◎ܫ◎ and ☺ valid Javascript variable names? - <AUTHOR> http://stackoverflow.com/questions/7451524/why-arent-and-valid-javascript-variable-names

<comment><USER2> Answer: Javascript allows variables to begin with unicode letters, but these characters are classified as symbols, not letters.

Internet Explorer 9 doesn't seem to follow the above rule, and permits unicode symbols at the beginning of variable names.

<comment><USER3> The ECMAscript standard is actually a bit more prohibitive: you can only use Unicode letters or (non-space) combining symbols in variable names.

IE has relaxed this a little bit, by allowing variables to contain (but not start) with symbols.

</comment></comment><comment><USER4> Serious question: Do people around the world really use non-English code to develop websites? If <div> and <span> have to be in English, CSS styles are in English, and libraries like jQuery have functions in English, are there developers somewhere who absolutely need the ability to write JS in Kannada or French? If not, why is Unicode even allowed as a variable name? It seems like a potential vulnerability waiting to be exploited.

<comment><USER5> English letters seem to be most common in variable names, but dashes and underscores are often used as word delimiters. Numbers have their place, too.

I see other keyboard symbols used in a lot of variable names — especially $. And, CSS uses . and # as prefixes.

I once saw a JavaScript library whose main object was named ƒ. Some symbols and accented characters are surprisingly easy to type, especially on international keyboards.

If a character is printable and doesn't conflict with symbols used in the language, how would you decide if it should be allowed?

<comment><USER4> > If a character is printable and doesn't conflict with symbols used in the > language, how would you decide if it should be allowed?

I don't know what should be allowed or not, hence this question. I've only ever programmed in English. I have written tons of localization/Unicode software but the code itself was English. I can imagine there being lots of non-web programming languages in any number of natural languages but my question pertained to the web. If the code that runs the client end of a website must be in English, why allow it to accept non-ASCII characters in variable names? I guess what you're saying is, why not?

<comment><USER6> >I guess what you're saying is, why not?

Yes, I will even try to give an argument for "why yes".

I see no compelling reason, why in the programming of a website, consisting maybe of HTML, JavaScript and CSS, and maybe server side technologies like PHP, generally only words from the English language should be used. For example, it doesn't matter at all, if you use English words to name CSS classes. class="content" looks as nice to the browser as class="inhalt", which is the word for "content" in German. Some people, who are not native speakers of English, will prefer using variable names in their programs, which they can understand easier. Allowing characters that go beyond the collection of ASCII could be a step to make the world easier for these developers. After all, the web was made for people who want to share content and it should be made as easy as possible.

If JavaScript source code is delivered to a browser, the only thing that matters is that the script works correctly. The details of the variable names used in the script are only of interest to people who read and maintain the source code. Of course, in an (international) open-source project it would exclude many users to participate in the project or to use the code in own projects, if the language for the developers, who are reading and modifying existing code, is unknown and exotic. But for other websites or projects a developer might like to pick any language that makes his life easier.

Maybe a variable called "counter" will be understood by more developers around the world than a variable called "zaehler". But those, who understand "zaehler", might even prefer to write it as "zähler", perhaps they even have the character "ä" on the keyboard.

Large parts of programs appear to be written in English, since the programming language itself is using many words from English, not only on the web. For example, we may have "while" and "for" loops, "if" conditions and things like "unless". This could give the impression that there is only one human language used in programming (for the web or elsewhere).

If the support of Unicode characters later turns out to be exploitable for malicious purposes, ... well, this may happen with any technology we use for creating the web. The only way to absolute security seems to me to use and do nothing at all. Then there is no web - boring.

</comment></comment></comment></comment><comment><USER7> For a bit more in-depth understanding have a look at some of the problems as noted in Google's closure library (goog.i18n.uChar).

Any unicode character can be used as a JavaScript identifier for example:

         var 按 = function (){
                    return '\uD869\uDED6';
                  }

works with no issues.

<comment><USER8> A (quite large) subset of Unicode characters, to be specific. Of course some "letters" are hardly recognizable as letters for many people (for example, Vai syllabary) but they are used as letters in at least one script.

<comment><USER7> There are a few in the higher planes that may give you problems (for example phoenician etc..). It is also important that the Browser does not do a replacement. You need a font like code2000 or latest version.

</comment></comment></comment><comment><USER9> because unicode is tedious, and wtf needs to use shit like ◎ܫ◎ as a variable name?

</comment><comment><USER10> Damn you IE, always being different!

        (╯`□′)╯ ┴—┴</comment>


Ask HN: How to reach developers? - <AUTHOR>

Hi HNers,
I have started a new blog and I'm looking for developers to review their applications. If you are interested get in touch with me or post a comment.
Also I ask the whole HN community: What is the best way to reach developers?
Cheers <comment><USER2> Go to an application's site. Click the contact link. Use contact form or email the specified email address.

If there's no contact info, check the domain's WHOIS record.</comment>