The lottery is a tax, an inefficient, regressive, and exploitative tax - <AUTHOR> http://metrocosm.com/state-lotteries-high-cost-low-return-and-absurdly-dishonest/ <comment><USER3> I'm glad the article makes the _very_ important distinction that: "The lottery is not a tax. The inflated price of lottery tickets is."

I thought the article was going to be yet another claim that "a tax on people who are bad a math", I was pleasingly surprised that it focused on the tax created by the state monopoly, not on the fact that lotteries have negative EV.

The main counter I would offer to the article is that it isn't clear that there would be much of a "social" benefit in opening the lottery to competition. With the variance so high, and the players paying little attention to the odds, it's likely that the result would simply be a tiny amount of people earning about 35% more when they hit large prizes, and the rest spending the same amount of money on lottery.

<comment><USER4> Yes, but still. The essence of a tax is its involuntary nature. The mafia's numbers racket was a tax, or would be but for the mafia's lack of legitimacy (if you consider being a legitimate government a precondition for levying a tax). You played or someone broke your legs or burned down your house. Last time I checked, no state is doing anything like that. There are many things wrong with state-run lotteries, but they're not a tax. If you don't like the way the lottery is priced, don't play. Your kneecaps won't know the difference.

<comment><USER3> If tomorrow the government decides only it can sell gasoline, and it does so with a 35% margin, that's strictly more restrictive than an excise tax.

<comment><USER4> I'm not saying that state monopolies are good. I'm saying that people need to get over the idea that everything they dislike or disagree with is "a tax". It isn't. A state monopoly on fuel would be almost impossible to avoid, and you could reasonably assert that it's a tax (there would be debate, but your position would be reasonable). After all, even if you don't yourself consume fuel, almost every product you could possibly buy has to be transported from somewhere, and most transportation services available today use fuel. A lottery is nothing like that. The product, such as it is, does not form a component of the cost of any other product. All you have to do to avoid giving the state money is not play the lottery, which should be very easy since they are very up front about the fact that a ticket is not only -ev but much more -ev than any casino or cardroom game you could possibly play. If people stopped playing, the state would either give up its monopoly or (in a classic monopoly-monopsony dynamic) cut its prices. And in the meantime, ex-players would be better off as well.

<comment><AUTHOR> Sounds like we are just talking semantics.

When you buy liquor, you pay the market price (call it $10) plus an excise tax that the government adds on (let's say $2).

Imagine the government nationalizes the liquor business. The buy up every liquor company, and continue operating them the same way as before ($10 price + $2 tax). I think anyone would agree that this $2 would still be considered a tax.

Now let's say the government gets rid of the $2 tax, but bumps the price of liquor up to $12. The tax is still there, it's just implicit now.

<comment><USER5> > Imagine the government nationalizes the liquor business.

I live in Toronto, no need to imagine :(

<comment><USER6> If only it was simply 2$ and not what is closer to 10$.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I occasionally buy lottery tickets just for fun. It's enjoyable for me to fantasize about what I would do if I suddenly never had to worry about money again. I think about quitting my job, going back to school and learning about something I care more about (I didn't care for my major) and doing some travelling. I only buy one ticket every month or so. This $1-$2 actually gives me mental enjoyment, more so than a candy bar at least.

However, last time I bought one the woman next to me bought $80 worth of mega millions tickets. To be blunt at the cost of sounding unkind, she looked like she was a lower class individual. I truly felt bad for her (for reasons I won't elaborate on for conciseness) and I thought about all the people spending a decent sum of cash on something that is analogous to flushing money down the toilet.

I think the lottery does much more harm than good to society as a whole and should be done away with. The people who get into spending loads of money on these tickets are ones who are - generally speaking - uneducated and in a position where they don't have much going for them. Instead of being proactive and trying to improve their lives (easier said than done though, i know), they get caught up in this dream that destiny will save them from a life of difficulty. Obviously those susceptible to addiction are most affected and taken advantage of here, as mentioned by some other comments. It's not really a "tax on the stupid" because these people are more of a cost to society by wasting money and putting themselves in harder positions.

Not to mention the people who DO win the lottery don't often find themselves living the peachy life they would expect.

<comment><USER8> I agree that lottery is bad for society but the only reason that the government is doing it, I think, is because it was worst when organized crime had control over it.

But I do think that the government should reinvest all profits in education (not necessarily gambling related), gambling therapy, etc...

<comment><USER9> While having organized crime run lotteries is certainly bad, some of the examples of predatory advertising mentioned in the article are absolutely despicable and unworthy of a government.

If the government runs lotteries, it should only if they have ascertained that a total ban would send lottery players into the arms of organized crime, and government should only run those lotteries with the health of these addicts in mind, and not with any kind of profit motive.

Advertising should be of the form: "If you absolutely have to play a lottery, here's how to do it, but be aware that you will lose money and very likely not win anything", and certainly not of the form: "This could be your ticket out of this mess!"

<comment><USER8> completely agree

</comment></comment></comment></comment><comment><USER10> A tax is by _definition_ a compulsory contribution. The lottery is optional. Thus it's not a tax.

<comment><USER11> Consumption taxes are voluntary. You don't have to pay alcohol duty, or tobacco duty, or fuel duty. You can just refrain from consuming alcohol, tobacco or fuel.

In fact, a decent accountant will show you most taxes are voluntary...

<comment><USER10> There is a compulsory tax on alcohol but its consumption is voluntary. That's like saying an income tax is voluntary because you can choose to not have any income.

<comment><USER12> For some individuals, especially with certain psychiatric disorders, moderate use of alcohol to control an episode, especially a panic attack(true panic attacks); is not a voluntary consumption.

The drug has been vilified, for good reason in many cases, but is used as a sedative to the poor who don't have access to good doctors in too many communities.

(I really don't want to debate this. I know when I had panic attacks 2-3 drinks would stop them. I have yet to meet a doctor who won't admit privately that moderate, specific controlled use of alcohol is beneficial to for certain psychiatric disorders. Doctors don't bring it up because it's just not worth worth it. They are afraid of lawsuits because alcohol use carries so many risks, like the real risk of the patient becoming an alcoholic.

(Just keeping it real Homies. If you are currently suffering from an anxiety disorder(including some symptoms of PTSD, and the doctor is just offering a heterocyclic drug(like Prozac), or a drug that really does nothing, like Buspirone. Light, specific use of alcohol will help with some symptoms. Don't abuse the drug. Don't start drinking every day, or drinking socially. You only drink to alleviate specific symptomology. You need to save those liver cells because you use alcohol differently from the rest of the population. In other words; don't become a alcoholic? I'll get a lot of heat from this post, but it's meant for individuals who are suffering, and this advice only goes to individuals who have some self-control? If you didn't have self-control before the illness, and life was just a big party, don't follow this advice. Specific use of alcohol to control your symptomology will just result in your disorder getting worse, and yes--you will end up homeless, or worse. I am not a doctor.)

<comment><USER13> Alcohol is a great anti-anxiety drug and sedative, in small doses (like 1-3 drinks). That's precisely why it has been so popular for thousands of years.

The problems with alcohol are (a) it just treats the symptom and doesn't help fix whatever underlying issue is causing the stress, (b) it's easy to take a far larger dose than necessary, far more often than necessary leading to abuse, and (c) acute effects of a large dose and chronic effects of frequent use are both highly destructive.

</comment></comment></comment></comment></comment><comment><USER14> > Lotteries are exempt from the Federal Trade Commission truth-in-advertising > laws.

Honestly, this is the biggest case against the lottery, of all the things listed in the article.

I can't remember the last time I saw an ad for the lottery on TV, let alone something as ridiculous as the one from Illinois they show in the article. I wonder how much of the problem would be fixed by fixing this, rather than doing away with state lotteries altogether?

> if state governments are going to continue offering lotteries, they need to > be regulated at the federal level and with the same standards as private > businesses.

Some states actually _have_ privatized their lotteries. Illinois is one of them, though they're changing that back now.

Ironically, the main "problems" that Illinois and New Jersey have reported with this approach are decreased revenue and sales[0] (ie, the exact things this article is trying to accomplish in the first place). So it seems that privatizing the lottery systems would be another approach.

[0] [http://www.phillymag.com/news/2015/04/06/chris-christie- lott...](http://www.phillymag.com/news/2015/04/06/chris-christie-lottery- privatization-new-jersey-cost/)

<comment><AUTHOR> Illinois and New Jersey call it "privatization," but what they really did is outsource the management to a private company.

Those lotteries are not privatized in the sense of opening it up to competition.

<comment><USER14> > what they really did is outsource the management to a private company.

> Those lotteries are not privatized in the sense of opening it up to > competition.

Privatization typically refers to the management, not to competition. For example, we say that electricity is privatized in NYC because it is managed by a (highly regulated) publicly traded company, even though there is no competition[0].

[0] There is now competition for the supply (though not delivery) via ESCOs, but that is a very recent move.

</comment></comment></comment><comment><USER15> It's surprising that few people have pointed out that lotteries are essentially _communist_ \-- the government owning a for-profit business.

If you believe in the free market, you can only have one of two logically consistent positions on any and all forms of gambling -- either (1) open up the market to any business that can prove it's adequately capitalized and the odds of the games are as represented (e.g. in card games, the deck is standard and not stacked; in lotteries, the winning tickets are randomly mixed in, not given out to shill redeemers in exchange for kickbacks), or (2) ban all for- profit gambling operations.

<comment><USER16> I don't understand why someone who 'believes in the free market' must accept a binary position on 'free' market. In experimental design, you're supposed to produce tasteful granularity of measurement conditions to capture the breadth of a phenomena. Free vs. not-free is not very granular.

And given the immaturity of the state of economics relative to other disciplines, I don't see why anyone should just have blanket faith in the free market. The "freeness" of a market is but one variable in what is possibly a million-factor model, a model that possibly won't ever be developed in our lifetime.

<comment><USER17> The economics I know and love is not an experimental science.

</comment></comment></comment><comment><USER18> John Oliver had a segment on the lottery [1]. It may be difficult to wean states off lottery income in the short-term. A ban - or severe limitations - on their advertising would be a good, realistic first step.

[1] [https://www.youtube.com/watch?v=9PK- netuhHA](https://www.youtube.com/watch?v=9PK-netuhHA)

</comment><comment><USER19> Of all the taxes in the world, I have no real problem with lotteries. I can see there is an argument for needing to have clearer advertising on what the house 'take' is on the he tickets, but most people don't know how much tax they are paying on their fuel, electricity, alcohol etc.

Yes, it's regressive on the poor as these people overwhelming play the lottery. But so are alcohol and cigarette taxes. The point of those taxes is to raise revenue from undesirable activities as they both have inelastic demand curves and need to be curbed if possible for the good of society.

Perhaps a useful improvement woudo be to cap the number of lottery tickets a person can buy.

Certainly it makes me depressed to see how much selling lottery tickets dominates retailing in small stores. That means a lot of money is being raked in.

<comment><USER20> State lotteries don't try to curb gambling, despite broad recognition of the harm it inflicts. It's rather the opposite: they're elaborately designed and marketed to draw people in.

<comment><USER19> Sure, and tobacco and alcohol taxes only do a mild job in curbing consumption - the collectors of the excise taxes are designed and marketed to draw people in.

A 'sin tax' really only operates at the margin and are -clearly- not effective at stopping people with a dependence on the 'sin'. At most it encourages under-consumption with people who only have a mild tendency to use that product.

</comment></comment></comment><comment><USER21> >There is clearly demand for this type of gambling, so the focus should be on providing it in a way that is not exploitative.

>The government should get out of the lottery-for-profit business

>Allow private businesses to offer lotteries and compete with each other

I'm sure banning government lotteries and replacing them with private ones would be great for society. I mean what could go wrong?

<comment><USER22> No really. What could go wrong? Tell me.

A lottery is just gambling. We already have frameworks for regulating private gambling. Vegas is fine. The world hasn't ended.

So tell me. What would go wrong if lotteries were privatized and regulated to a similar degree as Las Vegas?

<comment><USER23> Well, for starters, Robert De Niro is getting a bit old to star in the mob movie surrounding the early infancy stage of corrupt privatized lotteries. </s>

</comment></comment></comment><comment><USER24> Some states aren't even paying the winners anymore.

[http://www.cnbc.com/2015/08/31/illinois-lottery-winners- rece...](http://www.cnbc.com/2015/08/31/illinois-lottery-winners-receive-iou- amid-lack-of-budget.html)

</comment><comment><USER25> The lottery is society's attempt to capture money that would otherwise go to illegal bookmaking operations on the theory that the state deserves the money more than citizens.

<comment><USER26> It does keep a lot of people from putting their money in with organized crime.

<comment><USER4> It doesn't. The mafia's games were cheaper. The problem was that playing was compulsory. What keeps people from playing the mafia's games is that the mafia is essentially defunct.

</comment></comment></comment><comment><USER27> It's easy to understand why states are willing to raise a significant amount of their budget through the lottery. It's because people -- especially Americans -- hate taxes, and many politicians come to power by promising lower taxes. But states still need money for schools and roads and all those good things that people still expect, so lottery is an easy way to raise that money. Without the lottery, states will never come close to balancing budgets unless efficient, progressive taxes are implemented. Something tells me that will be hard to do.

<comment><USER28> ... Or efficient, strict expenditures are implemented. Something tells me that this would be hard to do.

</comment></comment><comment><USER29> Lotteries are a sucker game because, as in California (for example), the players put their money into the pot, the house takes one-third off the top (administrative expenses), the house takes another one-third for a good cause (education or whatever), and the players take their chances against one another playing for the remaining one-third.

I don't care how normal odds of winning are calculated. The above is a shell game in which the only certain losers (from a financial standpoint) are the players.

That is what a typical lottery system boils down to, in essence. It may be possible to justify them for the social causes they promote but they clearly take advantage of the players and particularly those who do not focus on the obviously horrible odds against them when they play in such a stacked game.

This may or may not be a "tax" in the technical sense but it sure is a case of the government rationalizing a system by which it (in my view) takes advantage of its citizens in the name of advancing its social agenda on other fronts.

</comment><comment><USER30> This article doesn't make a lot of sense to me. The author states that lotteries exploit people of lower intelligence and addicts. Then he states that we should allow private companies to run lotteries instead of the state, so that they can be run on more advantageous terms for the players. But if the players are not intelligent or are addicted, how will they choose "better" lotteries? It seems more likely to me that with private companies in the mix, there will be more advertising and more players, but not better terms.

My grandmother plays the lottery every week and she enjoys it. She is not stupid or addicted, just someone who enjoys the feeling that she might win something.

Do we really need to have a moral panic over something that is quite normal and ordinary? I'm sure there are people who buy too many lottery tickets or are irresponsible with their money. I'm equally sure that privatizing or driving the lottery underground will not solve their problems.

</comment><comment><USER31> One of the section headings puts it correctly:

"It's not a tax on the stupid. It's a tax on addicts, and their families."

That, I think, is the most fair categorization. But you already see such taxes (for example, in the inflated medical insurance premiums for smokers). So it's not particularly different from existing "addiction premiums".

</comment><comment><USER32> We now have digital currencies. The state lottery monopolies will be outcompeted, and their competitors will be impossible to shut down.

Here's one that's decentralized and provably fair: [https://etherpot.github.io/](https://etherpot.github.io/)

<comment><USER33> >Probably fair

Really? The following text is coped from them message at the top of the link you provided.

TLDR: block.blockhash() only works for the previous 256 blocks, so EtherPot is broken.

Something strange happened with EtherPot after it launched. There were 3 subpots the first round, but somehow a single player was being reported as the winner of all 3. This single account only had 8% of the tickets, so winning all 3 subpots was pretty unlikely.

<comment><USER34> Yes. From what I gather the correct way to generate a random number is described here: [https://explorer.etherapps.info/dice](https://explorer.etherapps.info/dice) ... and some background discussion here: [https://forum.ethereum.org/discussion/546/lll-question- rando...](https://forum.ethereum.org/discussion/546/lll-question-random- number-function)

However, that game is not totally fair. There's a house edge and of course fees to pay the Ethereum network (the miners).

And stepping back, I think Ethereum overall slightly missed the mark. I like the idea of Turing complete programs verified in a blockchain. But I don't think there should be any cost if you're able to run your own node. Further, it's impossible to know the cost of a Turing complete program (halting problem) which is further compounded by the relatively confusing fee chart (variable based on market demand) and currency unit names.

<comment><USER35> Anyone verifying the blockchain will have to run the programs in it. So it makes sense to charge a little bit for people to be able to put programs in there.

</comment></comment></comment></comment><comment><USER36> The worst thing is IMHO (when what was stated is true) that the state uses lottery spending on education to withdraw tax money from education.

Education is (or should be) one of the major duties of the state. When this is more and more committed to charity, than we are about to loose one of the main pillars of modern society. Already, education of the masses is getting weaker and weaker in many countries, so that the better of people send their children to private schools ... and that is a growing trend.

But of course, when taxes have to go down and down (this is a political manifesto today in some countries), schools and people will loose.

</comment><comment><USER37> If you are going to enter a lottery, it makes sense to buy the cheapest possible ticket and enter as infrequently as possible.

Why? Because there's no rational basis for entering a lottery. It relies entirely on magical thinking. You are effectively polling for the existence of a _personal luck deity_. There is no need to use a complicated, expensive system for this.

A single $1 ticket, purchased annually, will suffice (this is available in Australia).

In the infinitesimal chance that the magical thinkers are correct, this single purchase will be sufficient for your _personal luck deity_ to respond with the appropriate riches.

<comment><USER38> Or, you could just keep your eyes open for a lost ticket in the street. Your odds are probably not a lot less.

</comment></comment><comment><USER39> I saw somebody argue once that the main purpose of a state run lottery is to keep the masses from rising up. As long as the poor think there is a magic way out - as long as they can draw some hope from buying a lottery ticket - <USER2> will be more sedated. To be extra effective, there was also the need to nurture the idea that wealth doesn't make you happy, to provide comfort for those who did not win; hence the steady stream of news stories about lottery winners squandering their sudden wealth, or losing their friends and family.

I can't find the video now.

</comment><comment><USER40> its always amazed me that gambling on lotteries goes so unregulated.

i can get gambling on a lot of things like sports, rare events or whether your mate can do x in y seconds... this has some element of fun. lotteries though, they distil gambling to its purest form - numbers...

its like injecting nicotine instead of smoking cigarettes.

<comment><USER41> Guess how I can tell you've never injected nicotine?

<comment><USER42> Why, because he's still alive? :)

</comment></comment></comment><comment><USER43> We have the words "inefficient, regressive, and exploitative" but the missing word is "voluntary." If we are going to treat the lottery as a tax, what products and services should also be treated as taxes levied by companies rather than the government?

</comment><comment><USER44> Would it be possible to run a "redistributive" lottery with positive expected value below a certain tax bracket but negative expected value above that bracket? The idea would be to redistribute wealth from rich players to poor players.

<comment><USER45> You can do this with enough marketing. Some ideas on how to engage the "1% minus 0.01%":

1\. Avoid associating your new lottery to the low-status images of "making it big" and "lifting out of property". Instead sell them on the image that they are so much more moral for "giving back" and "doing their share".

2\. Instead of cold cash, make the prizes be aspirational things that mark them as high-status. Houses, cars, overseas vacations, etc. Make the prizes classy, let the prospect indulge in the fantasy that they too are part of the elite.

3\. Make the tickets both scarce and expensive. This way, the ticket itself is a high status marker. Bonus points if you present the image on how much better the chance to win is compared with regular lottery (never mind that both quantities are negligible from a practical point of view). This way they can congratulate themselves on how much more smart than the hoi-polloi they are, on top of being nicer and more benevolent too.

</comment></comment><comment><USER46> The lottery (and gambling generally) is also a disgusting side-effect of free- market economies.

It enables those 5% of ticket buyers who are buying 54% of all tickets to experience a false sense of economic security or maybe possibility. In terms of intellectual toxicity, the lottery (and gambling) is right up there with religion.

In my opinion, it is a _manifest_ moral failing on the part of state governments, regardless of the fiscal details. If only -- if only -- there was another source of hope besides the accumulation of more consumer goods.

<comment><USER47> Probably worse than religion, because at least religion occasionally encourages positive behaviour.

<comment><USER38> While that's true, lottery tickets are only $1. Mormons at least ask for 10%.

</comment></comment></comment><comment><USER48> Absolutely. Fully agreed. And so are casinos. You notice they're built near high concentrations of poor people so they can get back all that welfare money rather than cutting it.

</comment><comment><USER49> "Abstractly considered, the hanging of the gamblers at Vicksburg, was of but little consequence. They constitute a portion of population, that is worse than useless in any community; and their death, if no pernicious example be set by it, is never matter of reasonable regret with any one. If they were annually swept, from the stage of existence, by the plague or small pox, honest men would, perhaps, be much profited, by the operation."

<comment><USER50> Abraham Lincoln said this. But you cut him off right before he got to the point!

"Similar too, is the correct reasoning, in regard to the burning of the negro at St. Louis. He had forfeited his life, by the perpetration of an outrageous murder, upon one of the most worthy and respectable citizens of the city; and had not he died as he did, he must have died by the sentence of the law, in a very short time afterwards. As to him alone, it was as well the way it was, as it could otherwise have been.--But the example in either case, was fearful.-- When men take it in their heads to day, to hang gamblers, or burn murderers, they should recollect, that, in the confusion usually attending such transactions, they will be as likely to hang or burn some one who is neither a gambler nor a murderer as one who is; and that, acting upon the example they set, the mob of to-morrow, may, and probably will, hang or burn some of them by the very same mistake."

</comment></comment><comment><USER51> > There is clearly demand for this type of gambling, so the focus should be on > providing it in a way that is not exploitative.

There is clearly demand for people shooting themselves in the foot, so the focus should be on providing it in a way that is not exploitative.

</comment><comment><USER52> Interesting but not surprising that the frequency/volume of play is an almost perfect example of the 80/20 rule: 20% of the players account for 82% of the sales, while 80% of the players account for 18% of the sales.

</comment><comment><USER53> A bit offtopic, but where did that article get their chart with house odds from? Generally, Blackjack has been said to have better odds, usually with roughly a 1% house advantage and supposedly the closest to 50% odds there is.

</comment><comment><USER54> My father has always taught me, since I was young, that the state lottery is simply a tax on people who have never been taught probability or statistics. He used that as a lesson when he was teaching me about probability and compound interest :)

Obviously if you win, you win big, but overall, I tend to strongly agree with him. It is a tax on those who don't think about probability, except for the people who gamed the system and won: [https://slice.mit.edu/2012/08/14/winning-the- lottery/](https://slice.mit.edu/2012/08/14/winning-the-lottery/)

Gaming it is pure genius.

<comment><USER3> The article precisely argues that this viewpoint is wrong and damaging. The problem isn't the fact that lotteries are "irrational", the problem is that the state monopoly works de facto as an excise tax on a product which is extremely popular with the poor.

<comment><USER49> The article's been badly labeled.

</comment></comment></comment><comment><USER55> Lotteries are just a tax on people who are bad at math. But it seems like people who are bad at math will be at a disadvantage with just about anything involving money.

</comment><comment><USER56> I would like to see all state income tax converted over to a lottery based tax. That way you would see a few winners instead of nothing

</comment><comment><USER57> The only winning move is not to play. - WarGames.

</comment><comment><USER58> Lotteries should advertise the odds and the percentage that goes to prizes (31% from the article is low, largest I found is 70%)

</comment><comment><USER59> Monopolies and taxes are two different things.

<comment><USER60> The distinction between monopoly rents from a government-mandated monopoly and a tax on the category of service for which it is a monopoly is very hard to see.

<comment><USER59> A tax would be if a certain class of people were forced to pay for the monopoly service, in this case some people would be forced to play the lottery.

<comment><USER60> > A tax would be if a certain class of people were forced to pay for the > monopoly service, in this case some people would be forced to play the > lottery.

If the government taxes a particular non-monopoly service, no one is forced to buy the service, but the tax is still recognized as a tax.

Mandating a monopoly on a class of service, which monopoly then extracts monopoly rents -- especially where the state receives the rents, or a share thereof -- is pretty hard to meaningfully distinguish from taxing the class of service. Sure, no one is compelled to purchase the service, but a tax on alcohol or tobacco doesn't stop being a tax because no one is forced to purchase alcohol or tobacco.

</comment></comment></comment></comment><comment><USER61> STATE lottery is a tax, an inefficient, regressive, and exploitative tax. There is nothing wrong with lotery as such.

</comment><comment><USER62> ...and optional

<comment><USER63> Behavior is affected by advertising; otherwise, advertising wouldn't exist. The personal accountability argument rings hollow compared to the examples in the article of marketing directly towards people that can't afford lottery purchases as a simple "entertainment" choice.

<comment><USER25> Absent evidence that marketing literally compels behavior, arguments against the role of personal accountability are aspirational at best.

</comment></comment></comment><comment><USER64> Lottery tax doesn't go to education. Just like donations to your school for X does not go to X.

</comment><comment><USER48> I thought lotteries were where money gets laundered legally.

</comment><comment><USER65> Old saying - "the lottery is a tax on stupidity".

</comment><comment><USER66> It's not a tax. It's a statistics lesson for dummies.

</comment><comment><USER67> But seeing as it's voluntary, it's probably the best tax we have.</comment>


GNU name system - <AUTHOR> https://www.gnunet.org/gns <comment><USER2> Please, do not make me spend the whole afternoon just to get one gnu domain up. One little quickstart page should show just two commands, e.g.

      docker run gnunet/ngs
      gns-register mydomain.gnu

Thanks!

<comment><USER3> What about having every command run in ducker container as a service? Like, say, `ls` would be a client to a `ls-server` ducker container (based on Ubuntu)? I think there are many benefits to it.

</comment></comment><comment><USER4> > A petname is a name that can be freely chosen by the user. This results in > non-unique name-value mappings as www.bob.gnu to one user might be > www.friend.gnu for someone else.

If names aren't fixed, how do you (for example) link from one website to another? Or share a name with another user?

One of the advantages of the public DNS system, with unique, canonical names, is that the same name should mean the same thing to everyone.

<comment><USER5> A public DNS with unique canonical names would be nice, but we don't have one of those. The DNS we actually have is inconsistent for several reasons: replication lag, ownership disputes, legal and political disputes (governments disagree what content is ok), VPNs with custom entries, firewalls, host files, etc, etc.

URIs are incredibly important and deserve a more solid foundation to build upon. To make them truly unique, we should use some form of GUIDs. Pet names are a usability layer on top of GUIDs for us humans , but we should communicate the GUID instead of or alongside the pet name.

<comment><USER6> Take this idea one step further, and you have IPFS, which is a very promising approach:

[https://ipfs.io/](https://ipfs.io/)

<comment><USER7> I tried to setup ipfs on El Capitan yesterday. I stalked the OS X Homebrew FUSE package, mounted ipfs and it immediately fails complaining too many file descriptors are being used.

ipfs is awesome, but I want to first be able to mount it as the file system :-)

<comment><USER8> I haven't tried using IPFS, but the default ulimit setting on OS X is tragically low. You might want to try bumping it up.

<comment><USER7> I tried - increased it to unlimited and it still had the same error :-(

I have zero knowledge of Go, so not even sure how to start troubleshooting.

</comment></comment></comment></comment></comment></comment><comment><USER9> Isn't GNUnet dead though? I'm been trying to set it up on a Mac for years and after spending hours without success, I've given up every single time. Even in Homebrew GNUnet is in the boneyard.

<comment><USER10> I can't get it to work so it must not work. That's Mythbuster logic there.

<comment><USER11> I read it more as "I can't get it to work so it's not worth my time." Which seems reasonable in this case.

</comment></comment></comment><comment><USER12> It's funny how much value can be created out of nothing by setting artificial rules. Like a domain name, that is designed to be unique.

<comment><USER13> Bitcoin....

</comment></comment><comment><USER14> If you're curious about the 'petnames' mentioned on that page, [http://www.erights.org/elib/capability/pnml.html](http://www.erights.org/elib/capability/pnml.html) was where the term came from, in the early 2000s. (At least I assume it's the same idea; I clicked around the GNS documentation very briefly without finding their explanation.) There's also [https://en.wikipedia.org/wiki/Petname](https://en.wikipedia.org/wiki/Petname)

</comment><comment><USER15> This is much better than IPNS. If you're using IPFS, maybe you should use GNS for tracking your stuff.

<comment><USER7> What are the advantages?

</comment></comment><comment><USER16> Christian Grothoff is an excellent academic. In fact, he is one of the most knowledgeable in the field worldwide.

Unfortunately, that's why ,IMHO, GNUnet didn't succeed. To build a successful product/network, you need to be practical, and you need to make useful features/services available as early as possible (without compromising security of course). Designing with pluggability and forward-compatibility in mind helps in this regard.

Academic perfectionism, however, can delay your product/network launch indefinitely. And that's what seems to have happened with GNUnet.

</comment><comment><USER7> Does this hook into the resolver?

Sounds like something a variety of sites might like to use. Say for instance Wikileaks. Or, more obviously, SciHub.

<comment><USER17> The last of the summary bullets: > Compatibility with DNS

<comment><USER7> Curious though how this is done... Ill read further :-)

</comment></comment></comment><comment><USER18> Is .gnu hosted in the root servers? If so, it isn't still possible to take it down?

<comment><USER19> No, the resolver recognises it (and .zkey) and knows to look up the name using GNS, not DNS.

</comment></comment><comment><USER20> Thinking about GNS and the Sci-Hub issues got me wondering. Isn't there an interesting application for blockchain technology as a DNS "ledger"?

Is this a feasible application? Do there already exist projects that do this?

<comment><USER21> In addition to Namecoin there's also Onename, which used to use Namecoin and has now migrated to Bitcoin. Details on why and how it works are on their blog:

[http://blog.onename.com/](http://blog.onename.com/)

<comment><USER22> Exact link:

[http://blog.onename.com/namecoin-to- bitcoin/](http://blog.onename.com/namecoin-to-bitcoin/)</comment></comment></comment>


A Catalog of Programming Languages That Programmers Hate - <AUTHOR> http://motherboard.vice.com/read/a-catalog-of-programming-languages-that-programmers-hate <comment><USER2> I feel like they should retitle this, "a list of opinions on programming languages"</comment>


Hardware-acclerated text processing in SSE 4.2 - <AUTHOR> http://blog.reverberate.org/2009/07/18/gazelle-is-going-to-love-sse-4-2/ <comment><USER2> Hennessy, Sequin and Patterson must be rolling in their office chairs or riterment hammocks right about now.

Whoever _needed_ this could have gotten it in custom hardware; Intel's "instruction set is an API" is a really bad idea.

Can someone convince me why we need this in the processor?

<comment><USER3> One thing you'll often find is that processor vendors like to release instructions that expose already-existing capability within the chip, but which previously wasn't directly accessible.

I doubt this takes a remotely significant amount of silicon.

Plus, it's all part of the XML hype: people include XML-related technologies in software and now even hardware (they've marketed these as, among other things, accelerators for XML parsing) solely for the purpose of being "Enterprise-grade".

Here's a fun fact for you: a very very major network hardware vendor sells extraordinarily expensive boards with "hardware XML parsing" (that's how they can charge so much). In reality, it turned out to be a nightmare to implement, so they just did it in software--and didn't tell their customers.

<comment><USER2> It's the _exposure_ that's bad, not the existance of the capability in silicon. Think of all the programmer-hours that will go into retrofiting compilers, libraries and runtime with "hardware accelerated text processing", just because some bonehead PHB heard this news and suddenly _wants_ it?

They could have done the right thing and started stripping x86-32 cruft from x86-64 as it gained more traction. As time moved on, we would have had a clean architecture with features being _deprecated_ instead of being added.

<comment><USER3> _Think of all the programmer-hours that will go into retrofiting compilers, libraries and runtime with "hardware accelerated text processing"_

Don't worry, odds are almost nobody will actually use it.

 _They could have done the right thing and started stripping x86-32 cruft from x86-64 as it gained more traction._

There isn't really any "cruft" that matters; the old useless instructions do nothing but waste instruction code space, but that's not really a big issue; the real significant improvement would come by re-doing x86 as a three-operand architecture (and make other similar improvements that would be impossible to do "bit by bit"). Another potential improvement would be to just re-do the instruction coding to make it faster to parse; instruction decoding is becoming a significant bottleneck on x86 already. If Intel was going to do an overhaul like that, though, they'd just do it all at once.

AVX is actually beginning to go that way; we're going to have three-operand for SIMD, even though we won't have it for regular instructions.

<comment><USER4> What's the difference between "re-doing x86 as a three-operand architecture" and switching to a different 64-bit RISC architecture?

<comment><USER3> The former could probably be done without a complete retooling of the chip designs.

<comment><USER4> I don't think it will happen, though; the ratio of people who care about the elegance of their processor's assembly language to people who buy computers is just too low.

Not in form of a clean cut, at least: x86-64 brought us eight additional registers and removed the silly BCD-instructions.

</comment></comment></comment></comment></comment></comment></comment><comment><USER3> Remember, the #1 rule of new instruction sets released by Intel (at least in the past ~5 years) is that they are always close to useless in the first architecture that supports them. For example, PHADDW took 6 cycles on the Core 2 Conroe, making it almost useless in real code. But the Penryn doubled its speed, making it potentially useful.

The string operations are, last I saw, something on the order of 9 cycles latency, making them rather unfortunately slow in practice... fitting perfectly with the trend mentioned above.</comment>


WebAssembly COBOL Pong - <AUTHOR> https://moxon6.github.io/cobol-js-emscripten/ <comment><USER2> Neat! The actual COBOL is pretty minimal, just tracking where the balls and paddles are and then calling out to update the DOM. It doesn't look anywhere near as horrific as I would have expected :)

[https://github.com/moxon6/cobol-js- emscripten/blob/master/co...](https://github.com/moxon6/cobol-js- emscripten/blob/master/cob/main.cob)

<comment><USER3> My take is that people who fear COBOL probably haven't seen pre-ES5[0] JavaScript.

[0] While ES2015 was a major leap in and of itself, it wouldn't have happened had ES5 not laid the groundwork by introducing "minor improvements" that we now take for granted like JSON, strict mode and Function.prototype.bind to name a few.

</comment></comment><comment><USER4> For player 2, 'J' goes up, while pressing 'L' goes to the left from the perspective of the paddle. This feels like made in purpose to hurt vi users.

<comment><USER5> [https://github.com/moxon6/cobol-js- emscripten/commit/0278590...](https://github.com/moxon6/cobol-js- emscripten/commit/0278590231932d9887250c7b13cea6b3d58fab02)

<comment><USER6> No :(

</comment></comment></comment><comment><USER7> I love how this is a total geekery for fun project and one of the best quasi job application in 2020.

<comment><USER8> That's really cool Ian, now can we get back to this directed graph?

<comment><USER9> This hurts me on an emotional, spiritual, and physical level.

</comment></comment></comment><comment><USER10> Cute little project. Thumb up for selecting Cobol as the language of choice for the implementation. I might feel nostalgic.

</comment><comment><USER11> See also, using COBOL with Cloudflare Workers (via WebAssembly): [https://blog.cloudflare.com/cloudflare-workers-now- support-c...](https://blog.cloudflare.com/cloudflare-workers-now-support- cobol/)

<comment><USER12> That was an enjoyable read, thanks.

</comment></comment><comment><USER13> This is sweet! Interestingly it seems to only accept QWERTY input even when the keyboard has an alternate mapping set. This makes sense though given the positions of the keys chosen

</comment><comment><USER14> The ball doesn't seem to bounce "properly" \- i.e. upwards if it lands towards the top of the paddle and downwards if it lands towards the bottom of the paddle.

</comment><comment><USER15> That's impressive!

How did you remove all the bloat generated after Emscripten's compilation?

I've coded a snake game in C and when I compiled, the app.js file itself was ~2mb.

<comment><USER16> Try Emscripten's new MINIMAL_RUNTIME option. You can often get js files of just a few Kb.

</comment></comment><comment><USER17> I heard COBOL skills are in demand these days in the US.

<comment><USER18> And now you know why: to reboot Half Life in the browser, leveraging a well- known, time-tested programming language with wide and deep support.

</comment></comment><comment><USER19> When I view the source code, it's just a javascript file,

[https://moxon6.github.io/cobol-js-emscripten/cobol- js/index....](https://moxon6.github.io/cobol-js-emscripten/cobol-js/index.js)

where is the cobol?

<comment><USER20> You mean this file?

[https://github.com/moxon6/cobol-js- emscripten/blob/master/co...](https://github.com/moxon6/cobol-js- emscripten/blob/master/cob/main.cob)

I am still looking around so may be wrong.

<comment><USER19> I was looking to see how it is included on the actual website, do you reference a web assembly file from javascript ?

</comment></comment></comment><comment><USER21> Cool!

What's the deal with the _alternator_ function (in app.js)? Why should keypresses be read only on every other attempt?

Also, is there some kind of implicit sleep or requestAnimationFrame somewhere? Or is it busy-looping and polling for key presses as fast as it can?

<comment><USER5> The emscripten JS will keep "prompt"ing for new input until it receives a null (due to the user pressing escape on the dialog)

This is just a hack around that to simulate entering a value and then pressing escape on the next prompt request

</comment></comment><comment><USER22> I do enjoy a good stunt, although it's also fun to play while I wait for my bloated-ass executable to upload!

</comment><comment><USER23> [https://youtu.be/st6-DgWeuos](https://youtu.be/st6-DgWeuos)

</comment><comment><USER24> Can you get mobile browsers to open the keyboard? I can't play. :(

</comment><comment><USER25> Right paddle controls are backwards compared to vim.

<comment><USER26> A hidden swipe at evil/vim fans by an emacs author?

<comment><USER6> No, it's clearly just more sane. Without any knowledge of keyboard escape sequences, why should down come before up?

<comment><USER27> The existing mapping is ridiculous. A,D,J,L are all in a horizontal line, but are mapped to vertical motions.

There are many choices, but for example, using A/Z for left player up/down and J/M for right player up down would not require any mental work. Once you place your fingers, up is up and down is down.

</comment></comment></comment></comment><comment><USER28> Next step: both users playing over the network?

</comment><comment><USER29> It seems very hard :-) Not the COBOL.</comment>


Funny Google Chromebook Ad Mocks Windows and MacOS Operating Systems - <AUTHOR> https://www.bleepingcomputer.com/news/google/funny-google-chromebook-ad-mocks-windows-and-macos-operating-systems/ <comment><USER2> Buy a Dell laptop with Linux pre-installed. My linux systems report uptimes measured in years. The only time they die is when we have an extended power outage.</comment>


Ask HN: Long daily commutes How do you spend your time? - <AUTHOR> Hello,
I have a daily commute of around four hours. I generally travel through metro, so I am virtually all by myself for around four hours every day. I planned to use this time in a constructive way and I have decided to catch up on the long list of books that I have always wanted to read.
What do you do with your free time on long commutes to office? <comment><USER2> When I had an ultra long commute mostly on commuter rail, I used the time for writing, blogging, and listening to podcasts.</comment>


Region of the Americas is declared free of measles - <AUTHOR> http://sciencebulletin.org/archives/5778.html <comment><USER2> The article explictly makes a distinction between endemic and imported cases, which answers my initial confusion that there still are measles cases in the US.

I wish it had described what made a case endemic rather than imported. Some of the outbreaks in the US have spread rather widely, but I guess that still doesn't count as endemic?

<comment><USER3> My understanding is that his disease has to be able to flourish in the region to be considered endemic. Any outbreak of measles in the US would be expected to die out completely after a while, rather than continue moving through the population indefinitely. This may be wrong, though.

</comment></comment><comment><USER4> Must be for a strange value of "free", when you see [http://www.cdc.gov/measles/cases- outbreaks.html](http://www.cdc.gov/measles/cases-outbreaks.html)

      From January 2 to September 10, 2016, 54 people from 16 states (Alabama,
      Arizona,California, Colorado, Connecticut, Florida, Georgia, Hawaii, Illinois,
      Massachusetts, Minnesota, New York, North Carolina, Tennessee, Texas, and Utah) were
      reported to have measles.

It looks like that with "free" they mean that there is no self-sustainable epidemic possible anymore in the Americas, given the degree of vaccine coverage. Nice.

</comment><comment><USER5> ... until it's not again: [http://www.nydailynews.com/new- york/brooklyn/measles-outbrea...](http://www.nydailynews.com/new- york/brooklyn/measles-outbreak-hits-jewish-neighborhoods-brooklyn- article-1.1346446)

The perils of easy global air travel.

</comment><comment><USER6> This declaration of being measles free seems premature when there are still cases occurring and when such a highly transmissible disease is still common elsewhere in the world.

[http://www.cdc.gov/measles/cases- outbreaks.html](http://www.cdc.gov/measles/cases-outbreaks.html)

<comment><USER7> The criteria seems to be elimination of endemic transmission.

Which I guess is a meaningful milestone.

</comment></comment><comment><USER8> The anti-vaxxers here in Austin are doing their best to bring it back.

</comment><comment><USER9> If you love measles and live in the US, don't worry... its not going anywhere [0]. Thanks to all the anti-vaxxer "do your own research" garbage people.

[0][http://www.cdc.gov/measles/cases- outbreaks.html](http://www.cdc.gov/measles/cases-outbreaks.html)

<comment><USER10> Can any one explain how this anti-vaccination thing started in the US, and how is it continuing?

I do not know much but I know that anti-vaccination and climate change are heavily politicized in US, if I am not wrong. How did this don't trust the experts in the field, I know better thing start?

No matter which side you lean politically, I would like to believe most people would want the best for the kids, and essentially if its health related most people would take their doctor/pediatrician's advice. So, why are there so many people not vaccinating their kids? Is there a portion of doctors who believe in this and advice against vaccinations to the parents? Or are the parents just ignoring doctors advice and choosing to not vaccinate by themselves? Or anything else?

<comment><USER11> [http://www.cnn.com/2011/HEALTH/01/05/autism.vaccines/](http://www.cnn.com/2011/HEALTH/01/05/autism.vaccines/)

It was a paper written written that tried to claim that vaccines were behind the rise in Autism.

The paper was later redacted and the author admitted it was completely fake.

But the seed of fear was planted, and no amount of discussion, truth, or facts can change what many Americans "feel" is the truth.

There's also an ever growing "anti-science" and "anti-intellectual" wave in this country that this paper did not help with.

<comment><USER12> > There is a cult of ignorance in the United States, and there always has > been. The strain of anti-intellectualism has been a constant thread winding > its way through our political and cultural life, nurtured by the false > notion that democracy means that "my ignorance is just as good as your > knowledge."

Isaac Asimov, 1980.

[http://aphelis.net/cult-ignorance-isaac- asimov-1980/](http://aphelis.net/cult-ignorance-isaac-asimov-1980/)

<comment><USER13> To be fair, Europeans display as much ignorance when it comes to GMO foods.

</comment></comment></comment></comment></comment><comment><USER14> Why the quotes? "The americas", it's not written like that in the original tittle.

<comment><USER15> It's probably personal preference like putting or not putting quotes around a book title, movie title, etc. They're not scare quotes but rather quotes to highlight.

</comment></comment><comment><USER16> Title is "Region of the Americas is declared free of measles". The current title "The Americas is declared free of measles" is ungrammatical.

<comment><USER17> We reverted the title.</comment></comment>


PeerTube. What It Is, and What I Think It's Problems Are - <AUTHOR> https://mrfunkedude.com/2019/02/18/peertube/ <comment><USER2> I am working on the android client incase anyone wants to contribute. Any help is appreciated.

[https://github.com/sschueller/peertube- android](https://github.com/sschueller/peertube-android)

</comment><comment><USER3> I really like the idea of peer to peer. Unfortunately, in my jurisdiction (Germany) this makes you the content provider, because you are also uploading to other peers. So wouldn't use without proper VPN or other means. I guess this makes it really hard for this kind of application to thrive, since in a lot of country these are in legal grey area.

</comment><comment><USER4> > I'd say more then 3/4 of the videos on most of the PeerTube instances I've > visited are taken from YouTube. [...] It's also a glaring admission that > YouTube is better.

I think it's different, it's less of an admission that YT is better and rather that all the creators are on YT at this moment.

I think PeerTube needs to find a way to watch youtube videos on the instance (YTDL maybe?) and to monetize videos (Patreon link? Paypal? etc?)

<comment><USER5> It's also an admission that your video will wind up on YouTube whether you want it to or not--so you need to put it up before anyone else.

The only question about YouTube is whether _you_ get the money or some scammy uploader does.

</comment></comment><comment><USER6> I'm a pretty tech savvy guy, and looking at the instructions on setting up a PeerTube instance (which I guess is required to even watch videos let alone upload) already turned me off. I can't imagine a creator wanting to film a few videos would want to learn the details of setting up and maintaining an instance.

<comment><USER7> You're kidding, right?

I'm watching a video on peertube _right now_ and it took literally one click. Nothing to install, the user experience is just like YouTube.

[https://tube.4aem.com/videos/watch/42aee781-e58a-4ffe-829e-c...](https://tube.4aem.com/videos/watch/42aee781-e58a-4ffe-829e-c6eaad24f9da)

For instance.

<comment><USER8> Where are you in the world? What's your connection like? I'm on a 100 megabit downstream (95 nominal) connection in Australia and there are often videos on Peertube that won't load at all for me. YouTube is peered with a local Akamai node or with my ISP and is nearly always instant. The user experience is _not_ like YouTube.

<comment><USER7> Michigan USA, cheapest package my cable provider offers, which is 30 down, 5 up.

I'm fairly new to Peertube but I haven't found any that won't load. Sometimes they buffer a bit in the first moments, but then they're fine.

</comment></comment></comment></comment><comment><USER9> > My next problem is with theft.

Piracy is not theft. And we can't have it both ways. It's either centralization with censorship and all kinds of enforcement of rules or decentralization with resistance to censorship and piracy.

<comment><USER10> You are exactly right that piracy is not theft. I chose to use terms that the common person reading it would understand. I know that this doesn't help people understand that piracy is not theft, but I have to pick and chose my battles.

</comment></comment><comment><USER10> I just wanted to drop into the comments here and say "WOW". Thanks to Hacker News you guys gave me the most views my little blog has ever had in the year that it's been up.

I plan on writing more about the Fediverse in the future.

Thank you for your attention and the fun ride. I hope that you'll visit me again.

</comment><comment><USER11> can we design a system which provably can not be manipulated by the status quo (youtube and others) to cause these issues? in theory YT could be poisoning the well with porn, some of its own lesser random videos; in order to arrange copyright violations; analyze and exploit the lack of language filtering etc...

I am not claiming the status quo _is proven_ to be the cause of these issues, but I do claim that I know of no proof which proves the system to be resilient against such manipulation. _Perhaps_ if one succeeds in designing a system that is provably resilient in some sense, the problems would automagically disappear?

<comment><USER9> Maybe let people create post moderated curated lists of things where anyone can post stuff and then let anyone to subscribe to those lists. If you stop being satisfied with curation of some lists, you unsubscribe and choose other lists.

</comment></comment><comment><USER12> > My next problem is with theft. There are a LOT of stolen YouTube videos.

That's awful. I hope Youtube will quickly find replacements for those stolen videos.

<comment><USER2> Most videos on YouTube were of television and movies when they started.

The whole YouTube stars and original content came much later.

<comment><USER13> The videos were too short for piracy, they were capped at like five minutes long. I used to watch videos by a legit "youtube star" named Brookers. They also used to have reply videos, before it got clogged with spam. It used to be a lot more social.</comment></comment></comment>


The NSA is Not Made of Magic - <AUTHOR> https://www.schneier.com/blog/archives/2014/05/the_nsa_is_not_.html <comment><USER2> Any advancely funded enough technology could be undistinguishable from magic, specially when you don't know how many layers of the ecosystem got compromised in a way or another.

</comment><comment><USER3> This is important to keep in mind.

Even on the NSA's budget they can't p0wn every endpoint and they sure can't break strong encryption on a mass scale. Mass surveillance depends on everyone communicating in the open.

Mass surveillance can be ended. Parallel construction can be ended. Dissidents and activists can have secure communication. The spooks _can_ be forced back into the business of black bag jobs, where they must pick a limited number of targets carefully. Your ability to keep information deniable and secure can be made nearly absolute, barring torture, which, alas, we're not actually barring. All the more reason to be careful.</comment>


A Sinatra-inspired micro web framework for Java - <AUTHOR> http://www.sparkjava.com/ <comment><USER2> This project is nice but it's important to mention that there is actually a "Java micro web framework" standard called JAX-RS that is pretty widely adopted (with solid open-source implementations by JBoss, Apache, Oracle and others). Here's a rather old comparison of JAX-RS implementations: [http://www.infoq.com/news/2008/10/jaxrs- comparison](http://www.infoq.com/news/2008/10/jaxrs-comparison)

Its most notable implementation is perhaps Jersey ([https://jersey.java.net/documentation/latest/getting- started...](https://jersey.java.net/documentation/latest/getting- started.html)), which is used, for example, by Dropwizard (mentioned in another comment).

Some of these implementations include important features like health and performance monitoring.

<comment><USER3> JAX-RS still has the same problem with nesting and redundancy, doesn't fit the word "micro" or draw parallels with Sinatra.

<comment><USER2> To quote another commenter, here's JAX-RS code:

      @Path("/hello")
      public class HelloWorld {
        @GET
        public String get() {
          return "Hello World";
        }
      }

Seems very Sinatra-like to me.

<comment><USER3> You don't see all the redundancies in that code?

I see the term "get" twice. The class name is redundant with the resource path. I suppose not a huge problem because many MVC frameworks require classes, but not even close to Sinatra.

Sinatra:

      get '/hi' do
        "Hello World!"
      end

<comment><USER4> You're counting required language keywords towards what makes a micro- framework? That's bullshit. You're never going to get away from some of the keywords in Java, nor does that make JAX-RS less 'micro'

Here is an example in Groovy using JAX-RS:

      @Path("/hello")
      class HelloWorld {

        @GET
        def sayHello() {
          "Hello, world!"
        }
      }

Almost as clean. The braces and parens make it a bit uglier; but those are just part of the language.

<comment><USER5> The point is that you shouldn't have to configure things like @Path because they can be inferred from the class name. Why not:

      class Hello {
        def get() {
          "Hello, world!"
        }
      }

I would prefer to see this and then let someone have a routing config somewhere else if they want to move the /hello endpoint.

<comment><USER4> Sounds like a preferential thing then; I prefer to keep everything together.

I've never liked the separate routing config approach. Play Framework uses(d?) it in the 1.x branch and I always found it annoying.

Similarly old-world Servlets were done that way too. You'd put the routing information in an XML file and the container would read it at start up.

</comment></comment></comment></comment></comment></comment></comment><comment><USER3> Somehow having that much nesting and redundancy doesn't fit the word "micro" or draw parallels with Sinatra.

Sinatra:

      get '/hi' do
        "Hello World!"
      end

Spark:

      public class HelloWorld {
         public static void main(String[] args) {
            get(new Route("/hello") {
               @Override
               public Object handle(Request request, Response response) {
                  return "Hello World!";
               }
            });
         }
      }

<comment><USER6> All the nesting and redundancy come from Java itself. Verbose as it may be, after you use any language for a while you will see right through the syntax and it will not add (much) cognitive load to your work.

I think the value here is in having a micro _framework_ that allows you to put together a web app without having to juggle a horribly complex abstraction hierarchy for even the simplest of tasks.

<comment><USER3> Syntax is what makes the framework micro.

Following your point about the cruft being from the language, Spring MVC is as "micro" as Spark. In fact, it is shorter.

Spring MVC:

      @Controller
      public class HelloController {
        @RequestMapping(value = "/hello", method = RequestMethod.GET)
        public @ResponseBody String hello() {
          return "Hello World!";
        }
      }

Spark:

      public class HelloWorld {
         public static void main(String[] args) {
            get(new Route("/hello") {
               @Override
               public Object handle(Request request, Response response) {
                  return "Hello World!";
               }
            });
         }
      }

<comment><USER6> You don't call a framework "micro" based on the amount of code it takes to achieve certain tasks. You call it "micro" because it's small enough that you can learn and truly master in a short time (and you get that by cutting out as many non-essential features as possible).

Therefore,

Micro: [http://www.sparkjava.com/readme.html](http://www.sparkjava.com/readme.html)

Not micro: [http://docs.spring.io/spring/docs/3.2.x/spring-framework- ref...](http://docs.spring.io/spring/docs/3.2.x/spring-framework- reference/html/)

The downside when using a micro framework is that you always walk a fine line between simplicity and code reuse. Because of this, as the application grows you do end up writing _more_ code than with a complex framework because you slowly start reinventing the wheel -- this is the old argument you hear over and over (Flask vs Django, Sinatra vs Rails, BackboneJS vs AngularJS, etc.)

</comment></comment></comment></comment><comment><USER7> Speaking of Sinatra-inspired web frameworks on the JVM have a look at Scalatra:

[http://scalatra.org/](http://scalatra.org/)

[https://github.com/scalatra/scalatra](https://github.com/scalatra/scalatra)

<comment><USER8> I liked most of it. But when it came to this atmosphere stuff, it was vietnam all over again!

What's wrong with those Scala developers?

They could make beautiful frameworks and APIs, always start to create crazy method names.

> "org.scalatra" %% "scalatra-atmosphere" % "2.2.1",

> send(("author" -> "system") ~ ("message" -> "Only json is allowed") ~ > ("time" -> (new Date().getTime.toString )))

What's wrong with them?!

<comment><USER9> Same symptom is shown in Haskell circles. I suspect it might be due to the enthusiasts of these languages often being mathematicians. And mathematicians love crazy sigils, as we know.

<comment><USER8> probably :\

And this is rather sad.

You got a language which allows you to write nearly litteral code and still build stuff only mathematicans can understand.

</comment></comment></comment></comment><comment><USER10> I think it's simpler to tribute Sinatra in Java by annotating methods:

      @get('/hi')
      String myMethod() {
        return "Hello World!";
      }

I made a prototype of this (including extracting arguments Sinatra-style, which I think is its coolest bit), and didn't encounter any serious problems with this approach.

<comment><USER11> I like reducing the number of annotations which is one reason I like the SparkJava approach.

<comment><USER10> Java 8 lambdas might shorten their approach too.

<comment><USER11> I've reviewed Lambdas and still don't think the syntax is clearer to me than just using an Anonymous Class. Either way, less configuration and less annotations, whatever lets me do that I could buy into as long as the debugging isn't a mess.

</comment></comment></comment></comment><comment><USER12> Definitely something that was needed, microframeworks are great. Restlet I used long ago but still very Java enterprisey. Play! is like Java's Django/Rails and now Spark is the Sinatra, simple and minimal. Scalatra mentioned here looks great as well, all these wonderful minimal Java toys.

</comment><comment><USER13> This is fantastic. I know a lot of programming languages and I love them all for different reasons, but I think I am most productive and most likely to produce error-free programs in Java. All the verbosity that people hate is a feature to me, I know exactly what my program is doing.

However, I have done 95% of my web development in Ruby due to the Sinatra and Rails frameworks. The developer experience is too good to ignore. I'm hoping this can replace my Sinatra use case ... I don't think the magic of Rails could ever be replicated in Java.

</comment><comment><USER14> Where does this stand against dropwizard?

<comment><USER15> Personally, I would use dropwizard. Spark's key point seems to be avoiding annotation based constructs.

Compare (Spark):

      public class HelloWorld {
         public static void main(String[] args) {
            get(new Route("/hello") {
               @Override
               public Object handle(Request request, Response response) {
                  return "Hello World!";
               }
            });
         }
      }

to (JAX-RS, which dropwizard uses)

      @Path("/hello")
      public class HelloWorld {
        @GET
        public String get() {
          return "Hello World";
        }
      }

<comment><USER16> Annotations are great until you want to do ANYTHING dynamic. "It's a trap!" Everytime without fail I want to do this kind of thing I end up ripping it all out later when I need more flexibility.

If Dropwizard lets me fall back to non-annotations, then awesome.

Really, five minutes ago I didn't know either of these projects existed, so right now I'm feeling a little giddy either way you slice it!

<comment><USER15> I don't know what you mean by dynamic but dropwizard is just a selection of other libraries wired together into a framework with supporting code (config, etc) which is built for high performance HTTP services serving JSON, but it can do HTML rendering. The above code is compliant with any JAX-RS implementation, JAX-RS is probably the most well done Java spec I've ever worked with which isn't saying much, but it doesn't suck.

<comment><USER17> One example would be that with Spark you could procedurally create and register multiple Route instances. That is not an option with an annotation- based API that requires you to have a distinct annotated class per route.

More abstractly, one of the characteristics of object-oriented design is the use of polymorphic objects. APIs which require you to define monomorphic annotated classes violate this and lose generality as a result. They are effectively class-oriented or method-oriented rather than true OO.

<comment><USER4> Why would you want that feature? Also I'm pretty sure nothing about jaxrs annotations prevents such a thing from being possible but the servlet container may get in your way of doing it easily.

<comment><USER17> Why would you want to procedurally generate routes or verbs? I dunno, perhaps there might be a use case where one would want to define them in configuration or a database. But being able to do something like this is not a "feature," it's just the inherent flexibility of expressing semantics in _code_.

Why would you want an API that breaks the flexibility of code by forcing it to be glorified XML?

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> This looks really cool, I can't wait to hack around with this!

Question for the community: I don't have enough experience to know how this stacks up against other servers out there. Also, how do the people HN enjoy using java as a webserver (lang-wise, scaling-wise, etc)?

Any feedback would be much appreciated!!

<comment><USER19> I've never enjoyed using Java.

If you have time look at Scala (Scalatra/Play Framework) or Clojure (Ring). You can reduce the size of your codebase dramatically.

<comment><AUTHOR> Ive enjoyed writing code in scala, not until I compile it. It takes a long to compile. I agree with you, java is not enjoyable but we cannot deny the fact it still gets the job done.

<comment><USER20> That used to be true earlier, but the compile times in Scala are pretty good these days. Also I hear that a faster compiler is expected with the 2.11 release. Incremental compilation in Eclipse is already real-time.

But in general, IMO, compile times shouldn't be a major factor in choosing a language; expressiveness and run-times are more important.

<comment><USER21> That's only partially true. Compile times are absolutely a factor in development time for the same reason that how long your test suite takes to run is a factor. A faster feedback loop can shorten dev cycles. If nothing else, it's more fun to have faster compiles.

This is one reason Go is so appealing to many people. The compile times make it "feel" like ruby or python or php in terms of "hit refresh and the change is there" style of development. That is a huge difference from, hit save and wait a minute for my java project to compile, and push out to tomcat a minute later. Even with JRebel the best I've seen is a 2-5 second page change refresh cycle in Scala and a minimum 5 second test suite reload time using SBT.

Scala is a beautiful language, but compared to Go, it's a very slow dev cycle.

</comment></comment></comment></comment></comment><comment><USER22> I had looked at Spark a couple of weeks ago. I'm looking for a lightweight service-y sort of framework which just happens to have a good HTTP service available out-of-the-box. My application does back-end processing and coordinates a bunch of data feeds, thick-client HTTP requests, background processing, etc. all together. Spark was too web-centric (not a bad thing, just not what I need). OSGi was an attempt to be what I want, but its requirement of classpath isolation (a good idea conceptually) is onerous in practice. Right now, I'm using a homespun amalgam of Grizzly, Guice, and java.util.concurrent (for thread pooling), and other stuff. I really didn't want to build my own container. I'm intrigued by Apache Karaf, but OSGi is a huge pill to swallow (If you haven't debugged OSGi classloading issues, you'd be in for a treat).

In a nutshell, I want a service lifecycle container which allows me to write small, lightweight, modular services which depend on each other. The container should provide for cross-cutting concerns like monitoring, management, configuration, logging, auditability (I have concrete definitions for these things -- they're not just abstract biz-speak to me). HTTP should be an out- of-the-box, optional module. A service which exposes another service via a RESTful interface and depends upon the HTTP service should be another. For my application, services which listen to multicast data streams are just as important interfaces to the world as JSON-over-HTTP-via-REST. I want to write the HelloWorld method body and be able to do stuff like: expose it via a RESTful interface, invoke it every N seconds, inject an interface exposing the HelloWorld contract into other services, etc. When I want to know how my HelloWorld service is performing, there's a pre-built web interface which provides New Relic-esque views. I'd like to capture audit trails of the transactional flows through my services from an origination point (HTTP call, scheduled job, etc.) so I can translate failures, poor performance, usage rates, etc. into meaningful information (I wrote a poor man's version of this myself, and it's been quite useful).

Does anything like this exist? I sure can't find it. Modern JBoss (now Wildfly) might actually be closer to my requirements than I think. Perhaps I should look at the work they're doing on Version 8.

<comment><USER2> Using Grizzly/Netty as the core comm component seems like a good idea. Jersey integrates will with Grizzly, I think.

Dropwizard packages together Jersey on top of Jetty with good monitoring, but doesn't take care of other stuff like multicast. Nothing prevents you from adding Netty/Grizzly into the mix, though.

Actually, the modularity, composability and cross-cutting concerns you mention suggest Spring – not lightweight by any means, but neither are your requirements :)

I think you can even use Jersey with Spring: [http://www.infoq.com/articles/springmvc_jsx- rs](http://www.infoq.com/articles/springmvc_jsx-rs)

</comment></comment><comment><USER23> Ratpack Framework is a Sinatra-inspired framework for the JVM worth noting: [http://www.ratpack-framework.org](http://www.ratpack-framework.org)

Groovy:

      ratpack {
        handlers {
          get('hello') {
            response.send "Hello world!"
          }
        }
      }

It can also be used (with somewhat less brevity) in good, old-fashioned Java.

An 0.9.0 release is expected in a few weeks and the project is undergoing rapid (and sometimes API-changing) development, but it looks very promising.

</comment><comment><USER24> Have people dropped the 'com' from java projects now? Not arguing in favor, the whole thing is ridiculous to me (src/main/com/actual_files). Just curious.

<comment><USER25> It would actually be src/main/com/organization/project/actual_files

And there are good reasons for that - naming packages after internet domains prevents namespace clashes and is consistently used by most Java projects.

It's actually projects that diverge from this convention that stand out like a sore thumb, and many that did have adopted it eventually, like JUnit.

</comment></comment><comment><USER26> There's also webbit-rest: [https://github.com/webbit/webbit- rest](https://github.com/webbit/webbit-rest)

</comment><comment><USER27> I wrote a semi-realtime implementation of the planning poker estimation technique at [1] using Spark and some template engine I found.

This was for a course in software project management with some time restraints, so only focused on getting it done.

[1] [https://github.com/Zolomon/PlanningPoker](https://github.com/Zolomon/PlanningPoker)

</comment><comment><USER28> For what it's worth, Spark performs quite well in terms of request routing when compared to other JVM frameworks of various sizes [1].

[1] [http://www.techempower.com/benchmarks/#section=data-r6&hw=ec...](http://www.techempower.com/benchmarks/#section=data-r6&hw=ec2&test=json&l=6g4)

</comment><comment><USER29> Very nice! Had a look at this a year or so ago and it would be a great base for mocking up backends IMHO.

In a similar vein is Google SiteBricks: [http://sitebricks.org/#home](http://sitebricks.org/#home)

Slightly heavier weight but with more features (templating, annotations, etc). Depends on Guice.

</comment><comment><USER30> It is a nice one. I use Jelastic(www.jelastic.com) for my startup. What if we can have the same functionality there integrated. But this is needed at least the microframeworks are nice. Thinking that the same kind of thing can be also achieved with he framework integration in Jelastic.

</comment><comment><USER31> Finally a web framework I can use. All the Java web frameworks I tried to use are way too enterprise-y.

<comment><USER32> You should expand your horizon once in a while. JAX-RS has ben her for a while. Ditto with Spring MVC.

</comment></comment><comment><USER33> It really bugs me that they decided to clone the Sinatra README page, keeping most of the docs on one giant list instead of a more traditional multi-page doc approach. See here: [http://www.sparkjava.com/readme.html](http://www.sparkjava.com/readme.html)

In addition, some of their docs link to a Google Code page, which keeps some examples on its index too: [https://code.google.com/p/spark- java/](https://code.google.com/p/spark-java/)

Lastly, it appears they're using GitHub for actual code, and, while they have a Github wiki created, it has no information.

I wish I could stress just how important it is to have all of the docs in one centralized location. Somewhere along the line, one of the five places they have examples will get out of date, and it'll be difficult to play spot the differences when it's replicated everywhere.

</comment><comment><USER34> I love it! Just whipped up a couple of toy web services in 15 mins using Spark. They will be part of a technical interview coding task.

True, Spark may not be better/more concise than JAX-RS, but fun to try anyway.

</comment><comment><USER35> Okay. I am holding the idiot ball here: How can we deploy an app developed with spark? What are our options? Heroku? AWS? I haven't seen anything regarding to deployment in the documentation.

<comment><USER36> Well, there's a howto on running on tomcat:

[http://www.sparkjava.com/readme.html#title17](http://www.sparkjava.com/readme.html#title17)

As for Heroku, I found this:

[https://gist.github.com/Fitzsimmons/2490382](https://gist.github.com/Fitzsimmons/2490382)

Generally, for a lot of apps the embedded Jetty webserver might be sufficient.

</comment></comment><comment><USER37> I feel like Keurig would be a no brainer as a name for a Java micro Web framework.

</comment><comment><USER38> would love to see such a mf for c/c++...

<comment><USER39> [https://github.com/d5/node.native](https://github.com/d5/node.native)

<comment><USER38> not exactly a microframework, but an interesting approach to build a basis for it, like rack for sinatra.</comment></comment></comment>


What is HTML5? - <AUTHOR> http://radar.oreilly.com/2011/07/what-is-html5.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+oreilly%2Fnews+%28O%27Reilly+News+and+Commentary%29 <comment><USER2> Very thorough introduction that emphasizes the right points. I like the author's dislike of the canvas element - and specifically his description of why he dislikes it, and how he ultimately accepts it and encourages it's use as a way to further web standards.

I'll recommend this read to any of my technically-oriented friends who ask me about html5 in the future.</comment>


Ask HN: How do AirBnB, Etsy etc. handle payments? - <AUTHOR>

I am interested to know how sites like these handle payments. ie. accepting money from one group of people, taking a cut and then distributing the money to another group of people
PayPal makes this near impossible to do, and they are known to freeze a lot of accounts where this is the use case.
I remember reading somewhere that early in the history of AirBnB they were with Paypal, had problems, and had to implement their own solution. Does anybody know what that solution is? Is it simply (heh) opening a merchant account and using authorize.net or similar?
I am very impressed that both AirBnB and Etsy are able to handle payments in/out so well across so many users, bank accounts, etc. across so many different countries and currencies.
Is there an easy low-volume, no merchant account way of doing this for products that are just starting out? <comment><USER2> I haven't studied the payment aspect of AirBnB, but Etsy does it like this:

Seller:

* When you sign up to be a seller you provide (and they verify) a credit card number and optionally your paypal account.

* A listing fees of $0.20 are charged for each item posted but these are not charged immediately. Rather, they accumulate in your account.

* When you sell something, the transaction fee (3.5% if I recall correctly) is also added to your account.

* At the end of each month you receive an invoice from Etsy for the fees you accrued that month. You can pay this via PayPal or your credit card on file.

* If you don't pay your bill, Etsy will bill your credit card on file after several months.

Buyer:

* During the payment step of checkout, Etsy directs the buyer to pay the seller via PayPal (or check if the seller offers that option). Link off to the Seller's PayPal in the standard way and return to Etsy to complete the transaction.

Etsy doesn't handle the actual payment money between the buyer and seller, only their listing and transaction fees.

[Edit] One reason Etsy - like Apple and others - batches their charges like this is to reduce the number of per-transaction fees charged by PayPal/credit card processors. Below approx. $0.40 you'll actually receive $0.00 via PayPal for example.

</comment><comment><USER3> if I had to guess I would say <http://www.braintreepaymentsolutions.com/>

</comment><comment><USER4> this is the kind of question you should do on quora...

<comment><AUTHOR> it was already on there, unanswered:

<http://www.quora.com/How-does-Airbnb-handle-payments>

there are a number of variations of the question on there as well - all with 0 answers

<comment><USER5> Do you think stackoverflow would answer it? I too find this an interesting question

<comment><USER6> me too, i have a startup where i need to take payments, then split them up and send out to two people, interested to know more</comment></comment></comment></comment>


Smart license plate frame that prevents you from getting a ticket - <AUTHOR> http://www.nophoto.com/ <comment><USER2> This product would be handy on toll roads that use cameras to bill you. Like the 407 in Ontario.

My somewhat educated guess is that the product would very likely be illegal because the flashes intentionally obscure the license plate from being recorded and that is the part of the laws in most states, provinces and countries this falls foul of. Most of the laws are written in such a way to say that any attempt to obscure the license plate is illegal. That is usually meant to suggest mud, various coverings and so on, but can depending on the specific law, mean any attempt by you the owner or driver of the vehicle to obscure in anyway, the recording of the license plate by authorized agencies or companies.

</comment><comment><USER3> A friend of mine and I planned to do something similar. The city put a camera in near my house that was rather annoying. Our plan was to rig up a laser, photo receptor in a tube, and a battery, and bury them in a planter near the light. Aim the tube at the flash, aim the laser at the lens, and over expose every picture. I figured that it would be next to impossible to find and the battery would last for months, but we couldn't get around the fact the city did a great job maintaining those planters.

<comment><USER4> _city did a great job maintaining those planters_

Chicago?

When I lived there, I often fantasized about getting one of those super-sticky stickers (apparently the Post Office gives them out for free) and sticking it on the camera lens. If only I had a ladder.

</comment></comment><comment><USER5> "Forever" is hyperbole. I don't know about the US but digital cameras with no flash (or infrared illumination, specifically to avoid visual light overexposure problems) are becoming common here in the UK.

Also if the camera taking the picture has a shutter speed faster than the time it takes this system to respond, it'll get a picture before the defensive flash occurs. They do claim the noPhoto is fast enough but it would take testing against actual, regulation speed cameras to come close to guaranteeing that.

<comment><USER6> The system could take a series of pictures sans flash leading up to an infraction and then if there was an infraction store the lead up pictures as well as the infraction. Unless there is some esoteric law on the books about needing to catch the speeder/redlight evader on camera as it happens this would basically defeat the "evasion"

<comment><USER7> Some of these systems use a Tivo-like system where they're constantly recording, then when triggered they section off a few seconds. This allows the person reviewing it to find the best view of the plate.

</comment></comment></comment><comment><USER8> This will get banned in no time. In my country (the Netherlands) even passive radar detectors are banned, let alone actively jamming these things.

</comment><comment><USER9> Is there _anybody_ not profiting off of these cameras that supports them?

This type of thing is so disgusting to watch. Everybody hates these, yet they're implemented anyway.

<comment><USER10> I do support red light cameras. Mostly because I'm a pedestrian that listens to music when walking around town. I have nearly been hit by careless drivers on more than one occasion.

However, I think they should be more lenient on drivers that just barely infringe on a red light by a few milliseconds. And I think they should never be used to ticket speeders. Obviously, I also don't support shortening yellow lights to rake in more ticket dollars.

<comment><USER11> >I do support red light cameras. Mostly because I'm a pedestrian that listens to music when walking around town. I have nearly been hit by careless drivers on more than one occasion.

Then you should not support red light cameras. Instead, you should support longer yellow lights, or accelerating to beat them.

Studies have pretty well nailed down that traffic light cameras do not reduce accidents. Any benefit they have as a deterrent is canceled by drivers slamming on the brakes at yellow lights.

Worse, many local governments have been caught illegally shortening yellow lights to increase ticket revenue from traffic light cameras. That's particularly awful because increasing the duration of the yellow light has been shown to be one of the most reliable ways to reduce traffic light accidents.

<comment><USER11> Wow, I should not edit comments when I'm that tired. I added ", or accelerating to beat them" to the wrong line that ended with "yellow lights".

</comment></comment></comment></comment><comment><USER4> Even as someone who wants to see law enforcement crack down harshly on unsafe driving, I highly approve of this. Speed cameras were a great idea that failed because of greedy vendors (and greedy municipalities). The cameras should encourage good behavior, not shake down average drivers. (And, the vendor should get one fee for building the thing, not a percentage of each ticket given.)

My design would have used something like an LCD in front of the license plate. When near a camera, turn dark. Otherwise, stay clear.

<comment><USER12> > My design would have used something like an LCD in front of the license > plate. When near a camera, turn dark. Otherwise, stay clear.

Your design would likely be illegal, whereas this one probably isn't. Yet.

<comment><USER13> Judges don't have any patience for technicalities in matters of fact.

<comment><USER4> Of course, it's hard to track down cars with no license plates...

</comment></comment></comment></comment><comment><USER14> This might save you a few tickets, but it sets you up for a much more serious charge when you are caught. Ask all the sportbikers who have been caught with flip-up tags.

It _is_ cool though...

</comment><comment><USER15> I wonder how it looks when you're driving behind someone with one of these and it goes off. Would it be powerful or surprising enough to distract a driver or cause a temporary blind spot?

Also, I'm surprised there are no provisions in the legislation to make illegal any system that would render speed cameras ineffective. Why would laws be written without those provisions?

<comment><USER13> The cameras themselves have blinding flashes in some municipalities.

<comment><USER16> Yes but their flashes come from the back, not directly in your eyes.

</comment></comment></comment><comment><USER17> "He's using Indiegogo to try to raise $80,000 in order to get the device certified by Underwriter's Laboratories." First of all, there's absolutely no need for UL certification for a product like this.

Unless what they are talking about is FCC certification which costs a lot less than $80K.

Second of all, this would be made illegal in a New York minute. To a politician, money==power and they get all pissy when you interfere with a revenue stream.

In the New York area, some 'red light cameras' are still cameras, but some actually record video as well. When you get the ticket they give you a URL and you can view the video of your car.

</comment><comment><USER18> Reminds me of the scramble suits from A Scanner Darkly.

As government surveillance technologies improve, the anonymity (and accompanying privacy) that once accompanied some areas of public life is at risk.

Public opposition to that trend has largely come in the form of calls for better legal protections. However, my suspicion is that ultimately it will be the arms race between surveillance technologies and technologies like this product that determine what happens to public anonymity.

<comment><USER19> Surveillance that is only triggered by a (dangerous) infraction is a far cry from the kind you read about in dystopian novels, or the newspaper for that matter.

</comment></comment><comment><USER20> At least in the UK this would set you up for an attempting to pervert the course of justice charge. Not very clever.

</comment><comment><USER21> All the hate for these cameras is pretty much justified, but all that said, there's still a 100% foolproof way to avoid getting a ticket from a speed camera.

It rhymes with "Won't Screed"

<comment><USER22> Why is the hate for cameras justified? There are two proper solutions:

1\. if road is unsafe beyond certain speed, then better drive safe at the prescribed limit

2\. if road has artificially lowered speed, then just get the legal speed increased

These license plate hiding technologies are a poor solution to real problem: people driving recklessly, and laws being too strict.

</comment></comment><comment><USER23> Hi all,

I'm Jon, inventor of the noPhoto. I was a bit shocked to login and find 14,000 views to our website today, and that a lot of them came from here! Thanks to all of you for your support. I figured I'd clear up a couple of points while I'm here.

1\. The noPhoto does react more than fast enough. The shutter speed of the red light camera is actually irrelevant when dealing with optical slave triggers, technology which has been used in the photography world for a long time.

2\. The noPhoto does defeat multiple pictures at once, and it does work in the daytime. I can't post a link here, but if you go to our youtube channel you can see a video we shot to show it working under a few different conditions.

3\. Most studies that are not funded by the red light camera companies show that these cameras actually increase both overall accidents as well as injury- causing accidents.

4\. We do not support running red lights intentionally. The noPhoto is not meant to enable irresponsible drivers to blow through intersections with impunity - rather, the hope is that by installing a noPhoto, drivers will drive as they did before the dangerous red light cameras were installed.

If there's any other questions you have, feel free to ask. Thanks!

</comment><comment><USER24> This is quite neat. First thing I've said "wow" to in a while on HN. How do you think municipalities will react? I imagine they will pass laws against these sorts of devices.

</comment><comment><USER25> I had this idea quite a while ago after watching a Mythbusters episode during which they attempted to beat a speed camera. The only solution was making a second plate mechanically fall over the real plate. I had planned on using infared LEDs which ran off of the car's battery. Only cameras would pick them up.

It's awesome to see this actually being implemented and sold. Even though I had absolutely nothing to do with this, it's cool to see the product come to life.

</comment><comment><USER23> Also, one more thing to point out is that the noPhoto never obscures the license plate to the naked eye. You can always see the plate even while it's going off. In fact, the noPhoto doesn't even technically run afoul of municipal traffic codes by obscuring cameras - it specifically only obscures cameras with flashes. That level of specificity is something that our attorneys haven't seen legislated - charges would be thrown out in a heartbeat.

</comment><comment><USER26> I don't like speed cameras any more than anyone else - but the fact that it's legal to obviously evade laws with technology means that either there's something seriously wrong with the government/laws and that needs to change, or if we all agree that these laws are for the greater good (we don't seem to) then products like this shouldn't be legal.

Just my irrelevant 2c.

</comment><comment><USER27> I always wanted to have a lcd plate cover that would blank out alternate sides at a high enough frame rate that the naked eye would see nothing, but a camera would never catch all of the numbers... then I realized that it's a lot easier to just put a bike carrier or something on the back of the car.

<comment><USER13> Wait till you see these new video-type cameras coming out.

</comment></comment><comment><USER28> This is an amazing idea. So simple, yet so effective. I'm surprised someone didn't come up with this years ago.

<comment><USER29> I thought of this, as well as other similarly goal-ed techniques, many many years ago. But didn't pursue it because wasn't worth the hassle of legal risk. Seemed pretty clear to me that it would be either (a) illegal, or (b) made illegal at some point. Not worth the bother. So many other great ideas out there.

</comment></comment><comment><USER30> I take it none of the creator's loved ones have been hit by a reckless driver. This device exists solely to let dangerous child-men go on with no accountability for their actions.

Queue reckless endangerment suit in 5... 4...

<comment><USER21> This is precisely the kind of appeal to emotion that needs to be removed from all lawmaking.

And it's "cue".

</comment></comment><comment><USER31> Do all traffic cameras use a flash, even in daylight, and if so, why?

<comment><USER32> Flash "freezes" the image to allow for a clear picture.

<comment><USER31> Sure, a flash would definitely help with a slow shutter, but I would think it wouldn't be too difficult or expensive to have a camera with a sufficiently fast shutter to capture moving cars in daylight without too much motion blur.

</comment></comment></comment><comment><USER33> Before police got into traffic enforcement, the average citizen would have had very little interaction with them.

</comment><comment><USER32> License plates will have RFID tags soon, won't even need cameras.

</comment><comment><USER34> Has this been submitted to the MythBusters yet???

</comment><comment><USER35> And banned in 5...4...3...2...</comment>


Jitter bug perfume - <AUTHOR> https://blog.ntpsec.org/2017/09/19/jitter-bug-perfume.html <comment><USER2> This is a pretty boring bug. Is the subtext of the post that any bug ESR finds and writes up justify his team's hostile fork of NTP? NTP is, as he says, a "hairball", but it's that architecturally, and "NTPsec" isn't changing that, but instead mostly just changing who gets compensated for working on it.

<comment><USER3> Probably, I haven't really seen much other value so far in their fork. I would love to see more effort go into PHK's ntimed.

<comment><USER2> Maybe I'm wrong about this, but: the irony is that after forking the NTP codebase and taking funding to push that fork, ESR and his team have started making noises about a rewrite in a different language, making the NTPsec project seemingly just an elaborate, nasty troll on the original NTP maintainers.

</comment></comment></comment><comment><USER4> This title made me laugh out loud.

Novel is worth reading, if you haven't!

<comment><USER5> Changed my view on beets forever!

<comment><USER6> Also the key to long life is a lot of sex :-)</comment></comment></comment>