The Growth of Hypercasual Games - <AUTHOR> https://venturebeat.com/2019/03/24/the-truth-about-hypercasual-games/ <comment><USER2> This is just a spam piece from the spam company ironsource.

They try to put their spam-bundleware-crapware-search-bar into everything.

And this is just another article trying to convince app developers to make yet another spam app with spam bundle-ware

<comment><USER3> > spam-bundleware-crapware-search-bar

Ironsource doesn't offer any sort of "search-bar" as far as I am aware - they're a mobile advertisement/UA company.

<comment><USER2> Seriously dude :

[https://www.benedelman.org/news-021815/](https://www.benedelman.org/news-021815/)

[https://blog.infostruction.com/2018/10/26/adware-empire- iron...](https://blog.infostruction.com/2018/10/26/adware-empire-ironsource- and-installcore/)

<comment><USER3> Yes, correct. Ironsource is an advertisement/UA company that doesn't offer any "toolbar". What you're angry at (and rightly so) is the fact that their network was used to offer malware/adware. As per the first article you linked:

> IronSource is likely to blame third party "partners" for most or all of the > defects we have listed, but our analysis indicates that IronSource is > importantly responsible.

Also from the second link:

> That's not to say that IronSource is necessarily aware that a publisher > (pay-per-install) is redirecting visitors to sites that impersonate Google > Chrome.

This is a clear failure on Ironsource's part to secure their network, but it isn't evidence of any malitious intent on their part.

> This is just a spam piece from the spam company ironsource.

It's their job to deliver ads. And ad mediation. And UA.

> They try to put their spam-bundleware-crapware-search-bar into everything.

They don't have a "spam-bundleware-crapware-search-bar". You're frustrated at specific advertisements on an advertisement network/the security of the network as a whole.

> And this is just another article trying to convince app developers to make > yet another spam app with spam bundle-ware

s/yet another spam app with spam bundle-ware/a mobile application utilizing advertisements/

I'm not saying anything about the quality of Ironsource as a network, but lets not make them out to be the boogeyman. They are, at worst, inept.

I am serious, my dude.

<comment><USER4> >> but it isn't evidence of any malitious intent on their part.

I don't care. Whether a company acts deliberately evil, or is only negligent, is a legal distinction. What matters is what happens to me, the user. If they deliberately do bad things or negligently allow others to do bad things through them, the net results is bad things coming my way from that company. My defensive action is the same: avoid.

<comment><USER3> Completely valid response.

</comment></comment></comment></comment></comment></comment><comment><USER5> I've gotten tired of these superficial kinds of games and find myself returning to / relearning such heavyweights as Elite Dangerous and Eve Online. The learning curve especially on the latter is stellar but as a way of really really chilling out they are both amazing. I've probably always enjoyed the learning part the most.

Having said that I'm guilty of having way more titles in my Steam library (most probably still far deeper than what the article regards) than I'll ever play. There's a certain addictive element, combined with the optimism of having the time to do them all.

(I prefer to read HN or watch Netflix if I need chill time on the mobile, and keep it free of games, even though my S10+ is just about the latest and greatest.)

<comment><USER6> > returning to / relearning such heavyweights as Elite Dangerous and Eve > Online

I just moved house and finally dug out my thrustmaster for a bit of E:D action, though I do find it a wee bit "grindy". I've also been toying with re- activating my paid-for Eve accounts and seeking out my old corp. The problem with Eve though is that it becomes all consuming. One minute it's 6pm on a Friday evening, in a flash it's suddenly 9am on a Sunday morning.

<comment><USER7> Eve stops being fun when you start having to carry a corp pager.

<comment><USER8> Or it starts getting fun when you have to carry a corp pager!

No other game can pull you in this way, where geo is important because you live in a timezone opposite to the defender's, and thus can prep and ambush for when the target's prime-time comes online.

</comment></comment></comment></comment><comment><USER9> > Today, the majority of hypercasual inventory is sold to other hypercasual > games, or to cross promo campaigns from the same publisher — either way it's > hypercasual advertisers running campaigns on hypercasual supply.

Just another day in this perfectly normal and sustainable industry.

</comment><comment><USER10> I would be more interested in the psychology of people spending money in these games. I played countless casual mobile games, but uninstalled all of them without spending a dime. It's probably out of principle, since I don't see any value in buying 10 gems in a mobile game. I also didn't find the need to buy cosmetic items either (skins and funny hats that some games offer as an alternative to paying the full price of the game).

However I did encounter a lot of people who gave in to temptations, either out of frustration, or the need to compare with others, or some other factors that I don't fully understand. That kind of analysys would've been more interesting.

<comment><USER11> I agree and would gladly participate in such a study (since I'm a whale, having spent five figures on mobile IAP).

<comment><USER12> Can I ask for some context?

</comment></comment></comment><comment><USER13> It's all about the play situation. It's a genre adapting to one-handed interaction and 30-second engagement loops or shorter. If you can't play it on a public transport commute, it doesn't qualify.

Yet somehow the majority of F2P games adopted an outright abusive artificial "idle"-component, that's heavily monetized, it's just bad, if you see one just stay away, no good will ever come from that place.

Especially don't let your kids anyway near them, your parenting stands no chance against hyperoptimized gratification loops, that slowly transition over into Pay2Win-only in the first 8h or less.

<comment><USER14> I think you're confusing hyper-casual and midcore games. Hyper-casual don't push for monetization and optimize retention at all costs; what you're talking (especially with idle-time travian-type games) are midcore games with much higher LTV and UA costs.

<comment><USER13> Guess I have to adjust my border between casual and mid-core ;)

You can have a hypercasual core loop with midcore meta/economics mechanics on top, think _Merge Planes_ , any match 3 game with stuff tucked on. Pure hyper is normally fine.

</comment></comment></comment><comment><USER15> What would be a good example for a hypercasual game? What differentiates them from casual games?

<comment><USER16> I read the whole article and could not figure out what "hypercAUsal" meant or why they didn't explain it... just realized from your comment it's "hypercasual".

</comment></comment><comment><USER17> My casual gaming consists in ~10 mins trying to beat Stockfish ([https://stockfishchess.org/](https://stockfishchess.org/)). App with no ads, no distractions, open-source, recreative and good mental exercise.

<comment><USER18> You just can't above stockfish 6 in ~10 min.

</comment></comment><comment><USER19> Hypercasual games seems like the fast food of the gaming industry. I once evaluated the reviews of many of these so-called "games". review after glowing review, I see it over and over again: "uhhh great way to waste time", "great time waster". As a former builder of strategy games, I'm saddened by what gaming has become for most people: a way to just waste time, I cringe everytime i hear that.

<comment><USER20> It's a new audience that these games attract, not necessarily the way gaming is heading. Everyone has a gaming device in their pocket now where as 10 years ago only people who sought out gaming would play games.

</comment></comment><comment> rc-1140 The whole discussion of phone games reminded me that more and more developers are porting/revamping older games for mobile devices, _and some of them aren 't busted_ like the Chrono Trigger PC port. This is honestly pretty excellent. I just recently learned that Ys 1 and 2[0] and a bunch of older Square Enix games[1] like Dragon Quest and Secret of Mana were on Google Play for Android. I'm always surprised when games that are legitimately enjoyable, work properly on a phone/tablet or support some kind of controller, and have zero transactions outside of paying for the game come to mobile. I've been pleasantly surprised by casual games like World of Goo and Greed Corp, plus there's emulation of certain old consoles, but full-size games on mobile are a huge step forward. Haven't tried casting, though I've read it's possible; proper casting would be a game changer.

[0]: [https://play.google.com/store/apps/details?id=com.dotemu.ys1...](https://play.google.com/store/apps/details?id=com.dotemu.ys1x) [https://play.google.com/store/apps/details?id=com.dotemu.ys2...](https://play.google.com/store/apps/details?id=com.dotemu.ys2x)

[1]: [https://play.google.com/store/apps/dev?id=802601025697058988...](https://play.google.com/store/apps/dev?id=8026010256970589886)

</comment><comment><USER21> I was hoping for a concise definition and some examples.

<comment><USER22> Maybe this?

[https://blog.applovin.com/hyper-casual-mobile-gamings- newest...](https://blog.applovin.com/hyper-casual-mobile-gamings-newest- genre/)

<comment><USER23> I was hoping to see examples and a definition in clear text in comments. Nobody reads anything except HN comments any more. :D

</comment></comment></comment><comment><USER24> Unless I missed it, I'm still not really sure what a hypercasual game is. I'm guessing it's one of those games where the players is given a number of turns or lives which reset at timed intervals?

I think they're interesting products, but the kinds of dark patterns used to hook users is a little bit disturbing to me.

</comment><comment><USER25> A foothold into the games industry. Like indie budget horror films for a young director. There are many guides to success online. But they mostly require large ad spends to engineer growth. No one has yet written the book on zero- budget nano games development.

But Double Coconuts' CEO David Fox recently spoke exactly on said topic at GDC Mobile 2019. Video posted when available

[https://schedule.gdconf.com/session/the-flappy-bird-that- lai...](https://schedule.gdconf.com/session/the-flappy-bird-that-laid-the- golden-egg-success-in-hyper-casual-/863665)

</comment><comment><USER3> One thing to note is that hypercasual can reach a much wider audience than traditional gaming genres; it isn't male dominated and isn't exclusive to younger (15-30) demographics. This, tied with increased accessibility thanks to its f2p nature and simplified game loops, is most likely what lead to its recent surge in popularity.

Having said that, it does seem to be slowing down some-what.

<comment><USER26> Is there any measurement to tell if hyper-casual is more engaging than say youtube or streaming services... or even TV.

If there are in a similar boat, calling it entertainment would be just. Calling it gaming would be a stretch.

<comment><USER3> > Calling it gaming would be a stretch.

Maybe by your personal definition it would, but they are most definitely games.

</comment></comment></comment><comment><USER27> Yuck.

<comment><USER11> Hypercasual is a perfect match for phones. Nothing yuck about it. You're probably confusing it with something else.

</comment></comment><comment><USER28> No discussion of Apple Arcade in the article.

If Apple get that right, that could completely upend the whole free-to play, freemium, "hypercasual" business model

<comment><USER29> > No discussion of Apple Arcade in the article.

Because there's nothing to discuss. The service will only available sometime this fall, and it's entirely unclear how many games will be available, what games, their quality etc.

<comment><USER30> Apple planning to launch a new platform in this market is definitely worthy of discussion in an article about the growth of this market. The reason it's not mentioned is the article was published before Apple's announcement.

<comment><USER31> The point the previous poster was saying is that there aren't yet enough details about Apple Arcade to make a discussion. Sure, you could write some speculation piece but there's already enough people doing that and most of the time peoples speculations turn out to be worthless anyway.</comment></comment></comment></comment>


Science Only Has Two Legs - <AUTHOR> http://portal.acm.org/ft_gateway.cfm?id=1810892&type=html&coll=GUIDE&dl=GUIDE&CFID=102012981&CFTOKEN=18184364

<comment><USER3> I agree entirely with the OP, but I have also seen people treating computation as a "third leg", to the detriment of progress I think.

Let me concoct a trivial example. Suppose you wanted to know whether a bowling ball would drop from the top of a building faster than a tennis ball. You can do this without reference to theory - just go out and experiment. Doing the experiment would not give you the complete physical picture perhaps, but it would certainly

(a) answer your narrow question and

(b) give you a constraint that any theory must explain.

The problem is that there is a class of research where people who are faced with this question, would set up a computer model. Now let's say they didn't realise they had to model air resistance. They will discover something all right, but it will neither answer the narrow question, nor provide a robust constraint for theory.

In other words, playing around with computational models is _not_ , by itself, theory or experimentation unless you are very careful on how you tie it back to the physical world.

<comment><USER4> The example you suggested is probably too simple; one should realise that the actual experiment might be very difficult, if not impossible to carry out. Consider a theory of galaxy collisions---I am unable to see any way of testing out the hypothesis, unless the equations are simple enough.

A computer program just a different language of expressing the theory... Hence, I see no reason why one should separate theory and computer programs.

<comment><USER5> Modeling is at best a thought experiment. It can only show you if a theory is reasonably self consistent based on your assumptions not if it's actually true.

PS: There are limits on science, and the ability to conduct an actual meaningful exponent is one of the largest ones.

<comment><USER6> I think there's more to it than that. For example, a model can tell you if something isn't true which is very significant. It can also make predictions that can then be tested.

These two alone are much more than a mere thought experiment.

<comment><USER7> I am having a hard time seeing the different.

A thought experiment can tell you that if A then B. A model is a means of producing a prediction B from A by means of long, complicated calculations instead of simple logical inferences. In both cases the conclusions should be evaluated before accepted as physical truth.

<comment><USER6> what do you believe is the different between a theory and a thought experiment?

<comment><USER7> I would say a theory is a hypothesis which has been tested. A thought experiment can be part of hypothesis creation.

<comment><USER6> and a model can very easily be a hypothesis which can be tested. I.e. it's far more like a theory than a thought experiment.

<comment><USER7> Perhaps we're splitting hairs. But this doesn't sit right with me.

Consider what is meant by a thought experiment in popular literature. Take Einstein's elevator. Would you call that "Einstein's elevator theory?" Or is that a prediction based on the theory of equivalence?

Maybe in this vein a clear distinction is that a thought experiment is a proof discovery technique. It is working with heuristics and intuition. At the end there is something; a statement or prediction that seems right. But no matter how much intuition confirms it, in the physical sciences it needs to be tested and in the mathematical sciences it needs a formal proof. Beyond that, it is just another hypothesis. After that it leads to a theory.

<comment><USER8> With all due respect, but you're both not just splitting hairs: you're splitting hairs about something you don't know enough about. There's a whole body of literature on the subject and you're not going to reinvent all of that in the course of this small discussion. If neither of you have heard of, for instance, Carl Hempel, then this discussion is completely pointless.

If you don't standardize your terminology first, then you're just discussing the boundaries of your personal definitions, instead of embarking on actual intellectual discovery of the terrain.

<comment><USER7> This discussion is an 'intellectual discovery' for its participants. Its unfortunate you wish to hinder that through dismissive remarks instead of constructively participating.

<comment><USER8> When I was 12, I once had a night-long discussion with a friend about the implications of faster-than-light travel. Once I learned some actual physics, I realized none of that discussion made any sense at all.

Something isn't intellectual discovery just because information is exchanged and both people feel they are learning stuff. Intellectual discovery makes sense if you are trying to structure the knowledge and are connecting it to knowledge you already have. Without things to connect it to, such as a shared definition of 'theory', you end up running around in circles.

It's like being dropped into a maze and not trying to solve it, but just running around in it. It may be fun, and you won't hear me complain, but as soon as someone starts wondering whether they are going too much into the details of solving it ("maybe I'm splitting hairs"), I feel obliged to point out they haven't really started to solve it. They've just been randomly discovering the territory, not noticing whether they returned to the same point several times.

I'm not trying to be disparaging; I'm just pointing out that talk of 'splitting hairs' is really premature.

<comment><USER6> I often find it highly useful to flesh out terrain in my own mind before exploring the literature. You're remarks were extremely condescending and you could have made the same point without the poor tone.

Oddly, you nearly admit the usefulness of it. "They've just been randomly discovering the territory". Discovering territory is valuable, whether it's random or not!

But the oddest thing is that you don't provide any useful information. You don't link to a page with the info you think we should read, or to a book on the matter, or a paper. Nothing, but condescension.

<comment><USER8> I'm sorry, it was not my intention to be condescending; merely to be critical. Searching for 'philosophy of science' should provide plenty of resources; which ones suit _you_ is impossible for me to guess, because it strongly depends on background/prior knowledge, which is why I refrained from advising anything specific.

As a starting point, <http://www.teach12.com/ttcx/CourseDescLong2.aspx?cid=4100> may be a pretty decent introduction. There are torrents floating around if you want a taste.

<comment><USER6> The link looks interesting, but does it talk specifically about models and their relation to theories which is what we were discussing that you found to be a waste of time

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> The two legs of science are more accurately referred to as _theory_ and _observation_. Experimentation is one way to gather observations, but it is not the only one. Astronomy involves a lot of observation of stars, which are some distance outside of the laboratory and definitely not in an experimenter- controlled environment.

I would classify numerical/computational models, along with mathematical and philosophical models, under "theory". Number-crunching and heavy data analysis is a way to categorize and present observations. None of these deserve to be treated as new and separate legs of science; they are merely subsets of the existing legs of _theory_ and _observation_.

<comment><USER10> This is an important distinction that should be more-widely propagated. I once got into a debate with a very conservative Episcopal priest who was then one of the clergy at my parish. He criticized "scientism" on grounds that the touchstone of science is experimentation (he said), and it's blasphemous to claim you can experiment with God. I responded that the touchstone of science is _observation,_ and that there's no _a priori_ reason we can't "observe" God at least indirectly (cf. Romans 1.20).

</comment></comment><comment><USER11> This article appears to be a response to the new _Journal of Computational Science_ whose editor-in-chief promotes computational science as separate from theory and experimentation.

The inciting text can be found in the description section here (click to expand the full Aims & Scope section): [http://www.elsevier.com/wps/find/journaldescription.cws_home...](http://www.elsevier.com/wps/find/journaldescription.cws_home/721195/description)

An excerpt:

"Computational Science is a rapidly growing multi- and interdisciplinary field that uses advanced computing and data analysis to understand and solve complex problems. It has reached a level of predictive capability that now firmly complements the traditional pillars of experimentation and theory." - <USER2> Sloot, Editor-in-Chief

<comment><USER12> Part of that view, at least as I understand it, was driven by a similar view from the theory side, that computational modeling isn't theory in the traditional sense. From a more academic-politics point of view, computational modeling is often a difficult sell in traditional theoretical publication venues as well, which prefer the computation to be minimal and the equations to be hand-worked--- big computational models are seen more as something that belongs to engineering. So the pushback is: fine, it's not theory, but it's still important to science, and it's clearly not experimentation, so it must be a third thing, and we'll start our own publication venues for it.

I do agree more with this article that it's a kind of theory, but I think the people who disagree aren't only computational science people, but also (some) theory people.

</comment></comment><comment><USER7> I also concur. Computational modeling should be viewed as part of hypothesis formation. Similar to mathematical manipulation, it is a precursor to experimentation. Computational models are too often presented as evidence of a physical theory, instead of a prediction in need of experimental support. We see this in every field; social network theory, epidemiology, environmentalism, even papers in combinatorial optimization!

Interestingly, perhaps the field that most strongly holds to the view that models need testing is weapons research.

</comment><comment><USER13> If it's true that computation is just an extension of two "traditional" legs of science, then it follows that the steps taken in computation as part of scientific research ought to be as public as the steps taken in theory and traditional experimentation. That is, opening up the source code and data to peer review and scrutiny becomes just as important as describing methods in a non-computational study.

In other words, computational transparency is important if computation is just an extension of the traditional scientific method.

</comment><comment><USER14> the concept of a new leg is something that allow us to change significantly the way in which we move. A car is not a new leg, a leg grows with the body.

So the question is: is computational science like a car or like a leg. Is only a tool or is something that will make a change in the way we think and conceive experiments, in the way we consider thinks to be possible and shape our future?

In ancient times there was only one leg for science, that was authority. I see no problem which the three or four legs concept. The only thinks I would consider silly is to confuse a leg with a finger. Anyway, if you don't want to use body analogies, don't ask for know many legs science has in the first place.

</comment><comment><USER15> i think op is making a good point - there is nothing more to science than computed minus measured equals error

what a scientist does is to make a model which is the computed than she makes measurements and obtains errors - the error or the residuals - is the knowledge

people may call computeds -theory -model -hypothesis -framework and similar words but the process is always the same

for instance ptolemaic theory is a mathematical framework that results in very good residuals which means that ptolemaic model saves the naked eye observations very well

if as the op writes an experiment generates -40 terabytes of raw data per second- you still have to model it and obtain residuals

but the real interesting problem facing contemporary science is that now what is -computed- and what is -measured- are no longer clearly separated</comment>


Friday Deploy Freezes Are Like Murdering Puppies – Charity.wtf - <AUTHOR> https://charity.wtf/2019/05/01/friday-deploy-freezes-are-exactly-like-murdering-puppies/?__twitter_impression=true <comment><USER2> No, it's not, at all. What is with this hyperbole? I followed the thread on twitter several weeks back. I hoped to forget it. There were some reasonable objections. Tired of all these thought leaders shouting in my face. Get off my lawn!</comment>


What the US does with online poker players' seized funds. - <AUTHOR> http://odenton.patch.com/articles/county-police-net-470000-in-online-gambling-seizure#c

<comment><USER2> This is appalling.

In my opinion, the police and/or any governing body should _absolutely not_ have any kind of financial interest in people committing crimes. They're there to _prevent_ crimes, not profit from them.

Consider speed cameras. What does my local government (Tempe, Arizona) have a higher interest in: earning revenue from speed cameras, or stopping speeders? It would cost them money to stop speeders (in the form of lost ticker revenue). If they keep people speeding, they keep collecting money.

Any fines or seized funds should be given back to the community in the form of a tax rebate, not kept by the governing body as a financial incentive.

(This is a financial incentive for the community overall, and I understand that this is also a problem. However, I feel like giving money back to those you supposedly committed the crime against [the people] is better than the alternative)

<comment><USER3> So if we posit that the money shouldn't go to the police or the government in general, where _should_ it go?

<comment><USER4> schools, like the lotto.

<comment><USER5> I would point out that by sending lottery money to schools, we're (to some degree) incentivizing schools to produce mathematically illiterate people.

One might say the same for sending criminals' money to schools.

<comment><USER6> I would like to see some evidence behind this, as the argument is a straw man in my opinion.

In my state, taxes collected on Alcohol and Tobacco are both sent into the pool marked for education, yet we have the lowest smoking rate in the country and are among the 5 states with the lowest number of drinkers. With your logic, the only thing I can attribute to the statistical numbers is a poor education system because not enough people drink or smoke, which indirectly makes the education system worse and fails to teach people to smoke and drink in order to get a better education.

I'm sorry. This just doesn't make sense. Education systems don't "profit" from the few alcoholics and few smokers here. Claiming that taxes from lotteries or gambling will incentivize schools into failing to teach children to count or be responsible with money is way too far fetched for me to grasp. The time frame from when a child is in school learning math to when they are legally able to buy a scratch card at the corner gas station is too far apart. If you have some evidence that shows that I am wrong, please let me know.

On the other side of the coin, with this article, the ones that are receiving the money taken during drug busts or in this case online gambling ring busts are the ones that end up with the money. It's not laundered through every different department before it hits the city wallet, usually weeks later, not years or even decades.

<comment><USER5> I more or less agree with you. My original comment was sort of tongue-in-cheek :-) I've heard other people make that same proposition with apparent sincerity, though.

</comment></comment></comment></comment></comment></comment><comment><USER7> So how much money would they get if online gambling were legal and taxed. I would bet it's a TON more.

But we're Americans. We can't think further than 3 seconds into the future. Thanks for stealing my poker money guys, you're really looking out for the people.

<comment><USER8> They (the police) would get nothing if gambling was legal. Gambling revenue goes into the general fund and typically offsets tax cuts or increased spending in some other area. Police departments only benefit when a crime is committed, because they can seize property without losing any of their already allocated funding.

<comment><USER9> Also politicians likely get kickbacks from the big players in gambling to the little guys down.

</comment></comment></comment><comment><USER10> The picture of the policemen holding a giant check is embarrassing. $470k seized illegitimately from the citizens they are paid to protect...imagine what that check is like for larger cities. What about policemen that play online poker? How can counties be paid off when Full Tilt and other poker entities are promising to pay out their players as well?

<comment><USER11> The practice of stealing money from random people who aren't engaged in any illegal activity is actually fairly common among law enforcement already. The rationale given thus far is that "That money was for the purchase of illegal drugs," or if that will not work, they will simply illegally sieze something and refuse to ever schedule a meeting to let the citizen reclaim it, or illegally sieze something and "lose" it. There's no recourse for citizens because asset forfieture, busy schedules, and losing things are legal.

</comment></comment><comment><USER12> The _only_ difference between the police and traditional organized crime is scale.

<comment><USER13> I'm sure the families of police officers who've died protecting others would disagree with you.

I understand the dissatisfaction with the things that have happened to law enforcement over the years, but it is a far, far cry from being the same thing as organized crime. I'll disagree at great lengths with those who would abuse the system with things like the article linked, no knock raids, abuse of due process, and the myriad issues with the legal system, but honestly making that kind of blanket normalization is poisonous to not only improving the state of things, but the many, many, MANY good things our law enforcement organizations DO do for the communities they serve.

<comment><USER12> To put the risk assumed by being in law enforcement into some perspective, here are some industries that saw _more_ incidences of fatal occupational injuries due to "Assaults and violent acts":

Food Services.

Transportation and Warehousing.

Grocery Stores.

Retail.

...and more.

So next time you decide you must have some nice pepperoni pizza, tip your local pizza delivery guy nicely and make sure to thank him for his service to this country.

EDIT: citations are fun: <http://www.bls.gov/iif/oshwc/cfoi/cftb0241.pdf>

</comment></comment></comment><comment><USER14> I did not realize that the cases where closed and all. What happens if they are found not guilty and try to get the money back? While the other 200K they usually get is probably from small amounts not worth the fight. These are huge sums that the defendants probably will fight for.

<comment><USER15> If you read the article, it says it has nothing to do with the closure of the large poker sites last month.

<comment><USER16> To clarify a couple of points:

\- No 'large poker sites' were closed last month. PS, FT and Cereus network pulled out of the US industry after the Black Friday indictments. All 4 sites involved continue to operate today to non-US customers.

\- This asset sharing was due to the county police's involvement in to the "Blue Monday" seizures that occurred ten days ago. It's a separate round of bank seizures and domains, but to say it "has nothing to do" with the proceding Black Friday is inaccurate.

</comment></comment></comment><comment><USER17> Read the comments. Every single one of them. Wow.

I have not seen the reputation of the US federal government so low since I was a little kid seeing Viet Nam, Nixon, and Watergate play out on TV. But there's not even a particularly hot war going at this point.

<comment><USER18> >But there's not even a particularly hot war going at this point.

war on drugs, war on terror, and a couple real wars - i.e. Afganistan and Iraq - seems more than enough ways to "appropriate" money. Several "slow" long "wars" are much more profitable than 1 short "hot" war.

<comment><USER19> > a couple real wars - i.e. Afganistan and Iraq

Don't forget Libya ... plus the handful of other countries over in that region where our troops have always been stationed, or were recently deployed in response to the instability.

</comment></comment></comment><comment><USER20> why is it illegal to gamble online and legal in physical world ?

<comment><USER21> It is illegal to gamble in the physical world in most of the US (with some very conspicuous exceptions - horse racing, Indian tribe-run casinos and state-run lotteries).

<comment><USER22> Also, in a lot of costal cities, you can get on a scheduled floating casino, sail 7 miles out to sea, and start gambling.

<comment><USER23> That is surprising to me. I bet you couldn't park a boat 7.1 miles out to sea and sell heroin by the tonne!</comment></comment></comment></comment>


These are currently the web's most viral colors. Surprised? - <AUTHOR> http://www.shift8creative.com/posts/view/the-web-s-most-viral-colors <comment><USER2> As soon as I saw the colours I knew there was going to be some sort of comment about movies tending towards this scheme.

They're complimentary colours. They go well together. This was known long before blockbusters started using it. It's colour theory 101. Is it any wonder that websites are using well established colour theory? not particularly.</comment>


Be careful what you tweet - Nothing said online is really private - <AUTHOR> http://www.bbc.co.uk/news/technology-10740954

<comment><AUTHOR> A careful analysis by legal blogger Jack of Kent:

[http://jackofkent.blogspot.com/2010/07/integrity-and- honesty...](http://jackofkent.blogspot.com/2010/07/integrity-and-honesty-of- gillianmckeith.html)

</comment><comment><USER2> Don't put online anything what makes you uncomfortable published in local newspaper with your full name and photo.

It's even worse online. Local newspaper has no search engine and uncountable number of copies.

</comment><comment><USER3> Also, the sun rises in the east.</comment>


DigiCert to Acquire Symantec's Website Security and Related PKI Solutions - <AUTHOR> https://www.symantec.com/about/newsroom/press-releases/2017/symantec_0802_01 <comment><AUTHOR> "PKI Solutions" seems to refer to Symantec's CA business.</comment>


Bashy2: an irc bot for sdf.org written in shell - <AUTHOR> https://notabug.org/mlaine/bashy2 <comment><AUTHOR> The main() implementing the IRC protocol: [https://notabug.org/mlaine/bashy2/src/master/bashy2#L74](https://notabug.org/mlaine/bashy2/src/master/bashy2#L74)</comment>


Using Python generators for real work [pdf] - <AUTHOR> http://www.dabeaz.com/generators/Generators.pdf <comment><USER2> Using Python generators for real work... or why I switched to Lua.

They're great at first, but then let's say you need to subdivide pieces of the generator into helper functions for better organization. Or yield recursively. Turns out you can't, because yielding is A) syntactical and B) can only be done from the main function body.

It took us until Python 3 to replace "print x" with a more sensical, functional "print(x)". Yet for yield we are stuck with even worse arbitrary syntactical rules for "yield x", instead of being able to do "yield(x)" where it yields to the wrapping generator\coroutine from wherever it is in a call stack. The result is nonintuitive, less-refactorable code.

[http://lua-users.org/wiki/LuaCoroutinesVersusPythonGenerator...](http://lua- users.org/wiki/LuaCoroutinesVersusPythonGenerators)

<comment><USER3> Actually, Python generators will be changing quite a bit soon: <http://www.python.org/dev/peps/pep-0380/>

<comment><USER2> Thanks for the link, I had not read 0380.

The proposed solution seems to be increasing syntactic complexity rather than reducing it by adding another keyword, "from" into the mix which is hardly optimal imo.

This to me indicates a systematic logical flaw of thinking of hitting a "yield" in the call stack as analagous to "return". When in fact it is the inverse and analagous to waiting for a function to return and thus more similar to a print() function call. The whole point of coroutine yielding is that it inverts the point of view of a call stack and allows the called routine to be the calling routine as well.

I still use Python for some things and have too many fond memories to ever hate it, but even if generators get cleaned up I'll probably stay w/ Lua for pipeline type projects as I've grown too used to runtime within an order of magnitude of C, better coroutines, and its more Scheme-like nature.

<comment><USER4> My interpretation of the "yield" keyword is not that of a _coroutine_ yield, but that of "cough up the following value", which is more in line with "return". Under that interpretation, the fact that generators can also be used to implement coroutines is a coincidence with unfortunate terminology namespace conflicts.

I looked around a bit for the original semantic intention behind choosing "yield" as a keyword, but came up empty. Anyone?

<comment><USER2> It is my understanding "yield" refers to "execution control". If semantic meaning is of concern over lexical, let us ignore the names "coroutine" and "generator" and focus on the general logic of code continuation. That is, the difference between pausing the current execution context vs _destroying it_.

Function call: halt further processing of current call stack, execute procedures, resume call stack after function call when control returns.

Yield: halt further processing of current call stack, execute procedures, resume call stack after yield when control returns.

Return: destroy current call stack.

The variation present on the code continuation axis is far more significant than the variation on the coughing-up-values axis.

<comment><USER5> I think, in this case, 'yield' is being used less in the sense of a street sign, and more in the sense of crop yield.

</comment></comment></comment></comment></comment></comment><comment><USER6> Fantastic!

It would be interesting to combine pipelines into something that branches off into various categories. For e.g., you could split the lines of access-log file into IP addresses and size of requests and fork off separate processing threads: one for obtaining unique set of IP addresses and another for summing up.

It seems like all that is needed for describing a pipeline is:

      (a) a queue for input
      (b) a processing program that's connected to the queue
      (c) (possibly multiple) queues for output
      (d) a topology connecting the processing programs
      (e) a job scheduler.

At the face of it, it looks similar to Apple's Automator and Matt Welsh's PhD thesis on SEDA:

      * http://www.eecs.harvard.edu/~mdw/proj/seda/
      * Paper: http://www.eecs.harvard.edu/~mdw/papers/seda-sosp01.pdf

EDIT: Formatting

<comment><USER2> Here is some older material on pipeline coding in Lua you might be interested in that describes this problem in terms of Filters, Sources, and Sinks: <http://lua-users.org/wiki/FiltersSourcesAndSinks>

LuaSocket implementation of the above: <http://w3.impa.br/~diego/software/luasocket/ltn12.html>

</comment></comment><comment><USER7> There is an updated version of this talk:

        http://www.dabeaz.com/generators-uk/index.html

Also, more interesting talks from the same author:

        http://www.dabeaz.com/talks.html

<comment><USER8> Clickable links (without spaces in front):

<http://www.dabeaz.com/generators-uk/index.html>

<http://www.dabeaz.com/talks.html>

</comment></comment><comment><USER9> It seems that pipeline-style programming is now popular in many modern programming languages, for example C# (with Linq), F# (with the |> pipe operator and the Seq module), and Ruby and JS+jQuery (with method chaining).

I really wish Python had some syntactic feature that encourages this style, doing "gen_cat(gen_open(gen_find(...)))" is rather cumbersome, compared to "gen_find(...) | gen_open | gen_cat".

Of course you can override __or__ like some libraries do, but it is not the _One Way To Do It_...

<comment><USER6> Mathematica has a nice syntax for function application, mapping over lists, etc. It's also possible to define such operators in Haskell, which has the added advantage of type-safety.

      f @ {1,2,3} == f[{1,2,3}]
      f /@ list == map(f, list)
      f @@ {1,2,3} == f[1,2,3]

      (#1 * 2) /@ {1,2,3} == {2,4,6}

etc.

<comment><USER9> That's like F# operator |>

        f |> g == g(f)
        [1 .. 3] |> Seq.map (fun x -> x * x) |> Seq.sum |> printfn "%A" // prints 14

</comment></comment></comment><comment><USER10> I wish I could upvote this ten times. Fantastic presentation.

</comment><comment><USER11> This is _awesome_. I think I finally understand generators, and I just thought of a couple use cases in the code I'm working on now. This is great. Fantastic submission.

</comment><comment><USER12> The design pattern the author presents for expressing iteration and the log parsing example is original and beautiful. I hope the author reads this comment thread and sees how appreciative we all are for his contribution.</comment>


Ask HN: How to deal with angry ex-employers? - <AUTHOR> If you leave a large company HR will usually respond to background checks regardless of circumstances.
What do you do when a small company with no HR refuses to engage with future background checks, because for example you chose to call out some bad decisions to the management team and the wrong people on the team got offended and later came to control the company?
I dont want name and shame on Glassdoor because I know some good people working there and in general am not looking to cause any damage. <comment><USER2> \- Try and list people who work there, who are on your side, as references when applying.

\- I know LinkedIn is hated, but in my experience, employers do check it. Ask someone who is on your side to write a brief blurb about working with you (it's a site feature, can't remember if it's called "reference" or something else).

\- Maybe swallow your pride and try and smooth things over with the ex- employers by sending them a positive sounding email wishing them the best of luck, and mentioning how you enjoyed working with them. You might mention that it was constructive for you to leave since you felt like you needed to move on for personal reasons and it was for the best (a nice way of saying you disagreed with them but no hard feelings). Do not mention references/background checks or that you could need anything from them. However, do mention that if they need something from you, e.g. some explanation or document that they need, you might be able to assist them. If they aren't terrible people, they might view this as a satisfactory answer to their question of "what the hell was his problem?!" and give them something to rationalize what they perceived as you being cranky, and thus put the drama to rest ("he just needed to move on" or something to that effect).

<comment><AUTHOR> This is good advice thanks.</comment></comment>


What are the Windows A: and B: drives used for? - why-el http://superuser.com/questions/231273/what-are-the-windows-a-and-b-drives-used-for <comment><AUTHOR> You know you're getting old when you are shocked that someone asks what A: and B: are for, having never seen nor conceptualized that they were once floppy drive letters.

<comment><USER2> Seriously!

I remember buying my first box of ten 3.5" floppies, which stored 1.44MB of data EACH, after years of using the older 360KB 5.25" disks, and marveling how much storage I was carrying in that little box...

Kids today, with their USB sticks and DVD drives and Internets. Grumble grumble. Get off my lawn!

<comment><USER3> There's the 720kb 3.5" floppies too. I remember there was a shady outfit(s) that sold punchers you could use on these disks to trick the drive into thinking it was a 1.44mb disk.

Of course, those 720kb disks were never intended to store 1.44mb of data, so while you could write that data to the disk, and maybe even read it immediately after, the odds that you could read it again awhile later were pretty low.

</comment></comment></comment><comment><USER4> Duplicates:

<http://news.ycombinator.com/item?id=2095628>

<http://news.ycombinator.com/item?id=2998973>

<http://news.ycombinator.com/item?id=3775943>

<comment> why-el My own link is a duplicate? :)

<comment><USER4> Yes. And that link is also a duplicate. See [1] for more information.

[1] <https://www.google.com/search?q=recursion>

:)

</comment></comment></comment><comment><USER5> I used floppy disks up until I was around 8-10 years old. Around then my transition away from floppies into cds was pretty much at the point that I never used them again. I occasionally used floppies in primary school but not very often. I only ever used 3.5' however.

I'm 20 now and I didn't remember that floppies were A: and B: so went into the article expecting some interesting explanation and then face-palmed when I realised.

If you'd asked me what A: and B: where I wouldn't have been able to tell you and I used floppies. I feel young...

I saw some floppies for sale in wh smith the other day. I might buy a set.

<comment><USER6> I used tapes until I was around 12 years old. Around then my transition away from tapes into floppies was pretty much at the point I never used them again (except for music, until CDs took over).

</comment></comment><comment><USER7> What _I_ want to know is how long MS will keep using drive letters with Windows. Drive letters and backslashes for path separators are relics of a bygone age.

</comment><comment><USER8> Questions I've received from the newer guys getting into IT.

"Why did people have computers with no internet? What did you do with it?"

"What is a BBS?"

"How did you know what to type at a command line?"

<comment><USER9> _"Why did people have computers with no internet? What did you do with it?"_

I think about that, now and again. Mostly when I find myself with a laptop and no wireless or paired phone. IIRC ..

Played Civilization. Played Sim City. CompuServe. Work.

</comment></comment><comment><USER10> I miss the 3.5" disks - those things had a really appealing appearance. The hard(ish) case and the sliding door gave them this sense that they would keep your data safe forever. Of course, I was just an impressionable kid, but whoever the designer was for those things - you left me with a lasting impression.

</comment><comment><USER11> Feels strange to realize that there are Windows/PC-using people out there that may have never dealt with a machine that has a floppy drive. Doesn't seem that long ago that they were a standard component. I can still remember Dell releasing their first system that didn't include one.

</comment><comment><USER9> Change happens. When I got my first real job in IT, one of our tasks was moving data from 8-inch to 5-inch floppy.

I hasten to add this was not - for the junior guys - real hard. Walk by the machine every so often, switch out the disks, hit [return], come back in a few hours.

</comment><comment><USER12> Makes me wonder how long the "Save" button will stay as a floppy disk.

<comment><USER13> In the operating system I'm running, there's no "Save" any more..

<comment><USER14> chrome os?

</comment></comment></comment><comment><USER15> My A: is my physical Blu-Ray burner, and my B: is a virtual drive.

<http://i.imgur.com/rGp12.png>

</comment><comment><USER16> Yeah, thought this was some kind of joke question, and I'm only 29 ;)

I used 360k 5.25 floppies when I was a kid...

</comment><comment><USER17> Is this post a bad omen for Hacker News? In my experience HN has been a safe haven for higher-level tech posts, news, and information; this seems very elementary.</comment>


The 5 biggest tech failures of 2012 - <AUTHOR> http://www.extremetech.com/extreme/143869-the-5-biggest-tech-failures-of-2012

<comment><USER2> I'm surprised Groupon's IPO wasn't on there.</comment>


Show HN: Himawari-8 (Whole Earth Geostationary Weather Satellite) Wallpaper Bot - <AUTHOR> https://gist.github.com/jarmitage/5042bfe20aa54b3d8dc8 <comment><AUTHOR> First ever bit of Python - not very tidy, improvement suggestions welcome!

The results are cool though as it updates every 10 minutes.

Anyone else do/see anything fun with scripting wallpapers?

<comment><USER2> This is awesome. Seems that Himiwari-8 is a Japanese weather satellite. Do you know a source that offers the other side of the globe? :)

<comment><AUTHOR> Thanks!

Unfortunately I think it's the only one of its kind! It's quite strange looking at the other side of the world all the time, especially since it is night time there. I have thought about adding a 12 hour offset to the bot so that I get to see daytime when it's day in UK.</comment></comment></comment>


Show HN: Pandora-like Job Finder - <AUTHOR> https://jobpigapp.com <comment><AUTHOR> I created Jobpig as a Pandora-like (thumb up/down) to filter jobs based on preferences, increasingly personalized over usage. It works more like Pandora than other learning boards; where jobs match users via hard-coded features (a la Music Genome Project) rather than collaborative filtering. These features include: location, commitment (eg full-time), company, source (eg stackoverflow), skills (eg python), and remote.

Eg I personally seek React, Python, Postgres, Remote, Part-time, Contract. That's combo's a tough ask on most boards; but Jobpig finds the closest match to my criteria, and it's working quite well for me. It scrapes these boards[1] (discuss[2]), and employers can post custom jobs. It's open source[3]. Any feedback would be greatly appreciated!

[1] [https://github.com/lefnire/jobpig/tree/master/server/lib/ada...](https://github.com/lefnire/jobpig/tree/master/server/lib/adaptors)

[2] [https://github.com/lefnire/jobpig/issues/5](https://github.com/lefnire/jobpig/issues/5)

[3] [https://github.com/lefnire/jobpig](https://github.com/lefnire/jobpig)

</comment><comment><USER2> Neat idea. I am getting a ton of jobs that aren't matched location-wise, though. I started with "City, State" and one language as seed tags and hoped it would limit itself to jobs near me.

<comment><AUTHOR> GTK. Yeah, I think the way location is handled has something to do with this ([https://github.com/lefnire/jobpig/issues/1](https://github.com/lefnire/jobpig/issues/1)). I'll investigate in coming days, thanks for pointing out</comment></comment>


Are Tech Conferences Worth It? What say you? - <AUTHOR> http://techtime.getharvest.com/blog/are-tech-conferences-worth-it

<comment><USER2> Appreciate any company that sends you to tech conferences! I know lots of techies who'd pine for that option.</comment>


Rolling Up Your Sleeves and Getting Your Hands Dirty - <AUTHOR> http://www.avc.com/a_vc/2010/03/rolling-up-your-sleeves-and-getting-your-hands-dirty.html <comment><USER2> I wish more investors got this deep into their businesses, there always seems to be a shallowness to it all. It seems like some of these crappy startups would get less funding if the investors had to spend time day to day in the business to get a feel for it.</comment>


Ask HN: Would you pay $25 to get an answer to a programming question? - <AUTHOR> Imagine that you are just starting with web development and get stuck somewhere, or you are an experienced developer but want advice or a second set of eyes.
Would you be willing to pay, lets say $25, to get your question answered? How about less or more?
There is Stack Overflow, you might say. But on Stack Overflow, there are rules and guidelines to follow, an account to create, specific questions that are allowed and not allowed, a sometimes unwelcoming environment, etc. (https://hackernoon.com/the-decline-of-stack-overflow-7cb69faa575d#.28828d28e).
What do you think about this? <comment><USER2> Maybe, but with one caveat. I would want to have the advice from 2 or more people, and only if they couldn't see each other's responses. It's hard to know when programming advice is wrong if you're not familiar with a language or a framework, so there'd be no way to know if the advice was actually useful. If I could get 2 or 3 people's answers to the question and they were all the same that would increase my confidence that they're actually right, and that my $25 was well spent.

As a developer I would also be quite happy to sit with a chat app open answering questions for $5 each if I could choose what to answer and there weren't too many problems actually getting paid.

<comment><AUTHOR> Thank you very much for your feedback and ideas! I truly appreciate it!

Great point about having multiple people answer the question! Others also brought up that point, so it is certainly something to look out for.

The chat app idea makes a lot of sense. Why would "there weren't too many problems actually getting paid" be important for you?

</comment></comment><comment><USER3> 25€? No. Maybe 5-10€ depending on how complex is the question and of course depending on the programming language. Of course the response time is essential, let's say within 1 hour( I could use a break and come back late with a solution). Maybe a subscription model or even credits is fine by me. The answer would be fiddle or written solution( there's your pricing model). Also I would like 2 independent answers like others said( with extra € ) Stack overflow is a good place but sometimes it takes too long( there is bounty of course you can't 'buy' more rep). Choosing who will answer it is also an option( maybe from which country, for various reasons) Nice idea, give it a go!

<comment><AUTHOR> Thank you very much for your feedback and ideas, I truly appreciate it!

You raise a lot of good points. One of my main concerns is the pricing model: 5-10€ would be quiet appropriate for small questions that take a few minutes to answer, but is too low for more complex questions that require research. On top of that, it also matters where the person answering the questions comes from since rates vary from country to country. I do not want this to become a place like, for example, Upwork where things tend to be a race to the bottom and you have people answering complex questions for 50 cents. What did you mean with "there's your pricing model"?

<comment><USER3> Sorry, I meant pricing options. I the user wants fiddler then he could pay more. A writing explaination of the answer could be cheaper.

<comment><AUTHOR> I understand, thanks for the clarification! Certainly something to consider...

</comment></comment></comment></comment><comment><USER4> No, it's easier, faster than free to just google the problem and find the answer on stackoverflow

<comment><AUTHOR> Thanks for your feedback!

Certainly... at times. However, I have spent hours before trying to find an answer or needed a good answer quickly. Was there ever a time where a service like that would have been handy for you?</comment></comment>


Neutrino scare - <AUTHOR> http://www.frontline.in/science-and-technology/neutrino-scare/article6901605.ece <comment><USER2> A long read but an insightful look into the issues surrounding setting up scientific experiments.</comment>


Health care is broken. Oscar thinks tech can fix it - <AUTHOR> https://www.wired.com/story/oscar-health-ceo-mario-schlosser-interview/ <comment><USER2> And due to state regulations, in my opinion, it pretty much can't.

The Oscar group health plans (paid mostly by employers for employees) are not much different from the other insurance carriers, whether in terms of price or quality.

Maybe Oscar can keep their costs down by not being as bloated as UHC, but they absolutely can't bring their prices meaningfully lower than UHC.

HealthConnect did that in NY, UHC complained, and NY State happily fined HealthConnect for poaching customers. They even demanded HealthConnect pay the fine to UHC, not the government.

EDIT: I meant "CareConnect", not "HealthConnect", sorry.</comment>


So long Disqus, hello Webmention - <AUTHOR> https://nicolas-hoizey.com/2017/07/so-long-disqus-hello-webmentions.html <comment><USER2> The webmention based hacker news indienews had this days ago. [https://news.indieweb.org/en](https://news.indieweb.org/en)</comment>


California Tries New Tack on Gun Violence: Ammunition Control - <AUTHOR> https://www.nytimes.com/2018/09/09/us/california-gun-control-ammunition-bullets.html <comment><USER2>
      But in 1986, President Ronald Reagan signed legislation loosening many restrictions, including... the requirement to log all ammunition sales.

... _because_ despite _millions_ of such purchase records spanning those decades, not _one_ resulted in a criminal conviction for illegally purchasing ammunition. Not _one_.

</comment><comment><USER3> Buying ammunition doesn't require showing a license... are you kidding me?</comment>


Rampant Plagiarism - <AUTHOR> http://mightygodking.com/index.php/2008/02/25/rampant-plagiarism/

<comment><USER2> Honestly, this can't possibly be appropriate for Hacker News, but I had to upvote it because I was so very delighted. Completely irrelevant to anyone who doesn't read modern comics, though.

<comment><AUTHOR> It is completely irrelevant! I use HN as a personal datastore for random 'neat' things on the web - saw this and hit to HN without thinking (note to self: is this smart?).

On topic: I was pretty shocked to discover that Y The Last Man was not all done by Vaughn! Or at least not born exclusively from his brain. And Ellis too! I thought Spider Jerusalem was an original! Ack!</comment></comment>


Paths to $5M for a startup founder - <AUTHOR> http://www.gabrielweinberg.com/blog/2010/06/paths-to-5m-for-a-startup-founder.html <comment><USER2> I'm a sole founder and just want to add that if you're looking for the independence that a multimillion dollar acquision brings, you should also consider alternative ways to achieve that end.

Specifically, consider whether building one or more $X,000/month apps can help you achieve a similar lifestyle that a $5M payday would bring. For me, I want the independence to work on what I want when I want, have the flexibility to take breaks to spend time with my wife and future kids, take a nice vacation or two each year, etc.

This will obviously depend on your life situation, your savings, your spending habits, etc, but for me, I think I can achieve that with $4K-$5K profit/month. And making that much via a few niche web apps is much, much more likely than selling for a few million dollars down the road. (I currently have two ~$1K/mo web apps and am still at my day job for the moment, so getting to that point from where I am should definitely be doable.)

If this appeals to you, I recommend checking out Rob Walling's Micropreneur Academy, which is a great start for anyone going down this route: <http://www.micropreneur.com/>

<comment><USER3> For me, $5k/month won't be able to do it. It's good enough if it's a salary, but a job also includes other things such as health insurance, 401K, and intangibles such as social contact with other human beings. So for me, the amount would have to 3 times my normal annual salary.

I currently make $7K a month with 10 minutes of work a month (creating a newsletter), so I agree - the path to residual income is much easier than creating a startup. But it definitely doesn't feel like I can quit my job anytime.

<comment><USER2> Yep, the figure is going to vary person to person. For example, I'm married and my wife brings in an income and will be able to provide health insurance once I jump ship, so that number is lower for me than it would be for someone without that additional income.

My point though is that for every person there is a monthly mostly-passive income which, if achieved, would let them live a similar lifestyle as being part of a multimillion dollar acquisition. And it's a hell of a lot easier to reach.

Do you think it's easier for you to make $5K/month passively or make $5M from a acquisition? $10K? $20K?

 _Edited to add:_ Why not invest more time into your newsletter so that you can leave your job? If you truly invest 10 minutes per month and believe that there's still room for growth, why not spend more time getting it to the point where it does cover your health insurance and 401K? Or if there's minimal room for growth why not try to replicate it? Or does the money not even matter: do you want to stay with your day job because it gives you purpose and socialization? Your situation is fascinating and I'd love to hear more about how you got to where you are.

<comment><USER3> I got > 90% of the subscribers from SEO over the course of 2 years. The growth rate of those subscribers has dwindled ever since my sites got punished by Google Panda.

For those curious, the newsletter has to do with a very niche product that people usually order every single month. I'm simply an affiliate and write a newsletter with tips for that product along with a coupon code.

The affiliate program is pretty friendly as I get paid a commission every month even if I don't get them a new customer (but get an existing customer to order it through my link).

<comment><USER2> Thanks for the details. How much do you get paid if you get no sales? How much extra on average per sale?

<comment><USER3> If I get no sales, I get paid $0 since it's pay per performance. I usually get $40 as commission per sale.

</comment></comment></comment></comment></comment></comment><comment><USER4> All this talk of millions; it'd be a happy day for me when I have no student loans left :-P

<comment><USER5> Think bigger. Give your mind the opportunity to discover the path.

<comment><USER6> He's 25 and already a two-time YC founder -- I think he's doing OK :)

</comment></comment></comment><comment><USER7> It may be wiser to focus on the absolute best way to make something that people want rather than just crunching your optimal exit strategy. In most cases this probably means you want a co-founder.

10% of something is better than 100% of nothing.

</comment><comment><USER8> Gabriel if you are reading this, please make a light/white version of your site. Thanks!

<comment><USER9> I am. Are you (collectively) against all dark versions or just this one, because I've been trying to tweak it incrementally for readability. If you have any specific improvement suggestions, I'm happy to try them.

<comment><USER10> @Gabriel, here's some css that makes it readable for me <http://pastebin.com/XKQSC2z9> (just a 5 minute hack)

It's hard going from light text on black back to most other sites as you end up having those lines in your eyes where the white writing has burnt it into your retina!

<comment><USER9> Thanks -- will mess around with this -- appreciate it!

</comment></comment></comment></comment><comment><USER10> How many companies actually sell for $17m? We mostly hear about the $50m+ ones or we hear about "talent acquisitions" which I presume are not $50m.

What sort of companies get bought for $17m?

<comment><USER11> Does anyone provide data on startup acquisitions each year? I know the amounts are usually private, but the numbers always seem to leak out (or at least estimated numbers). It would be interesting to do some data processing to look for trends and averages.

<comment><USER10> after being curious myself, remembered that crunchbase has some data. Around page 50 by price you get the $17m [http://www.crunchbase.com/acquisitions?page=50&sort=pric...](http://www.crunchbase.com/acquisitions?page=50&sort=price_desc)

</comment></comment></comment><comment><USER12> A great article. I am a solo founder myself and this article has given me more confidence about doing this alone, at least for a while. I have a couple of employees on board, so work load is not a big problem. I'd still love another founder to join me though, especially someone with complementary skills. I haven't raised money yet, and would like to do a small round, so not sure how much of a challenge this is going to be, as a solo founder.

<comment><USER13> I agree, I'm also running solo to begin with. It's sometimes pretty demoralizing when you read and hear that you would get nowhere if you're a single founder. I subscribe to the notion of building something first and perhaps gaining traction before bringing complementary skills onboard.

</comment></comment><comment><USER14> You can get 8 cores 8GB RAM server for 150$ a month. If giving up ~70% of your company the norm - we need a revolution.

<comment><USER15> If you're giving up 70% of your company in order to pay for servers, you're doing it wrong. If all your server costs combined adds up to more than one developer salary, you either have a mammoth scaling disaster or a runaway success which should have VCs begging to give you money on whatever terms you like.

</comment></comment><comment><USER16> I'm afraid this article will lead people to mis-prioritize their decision making. When doing a startup, all of your focus needs to be on the building the best product possible. If you can do that as a single founder, great! But if you need more people, you should do that if that's what the product calls for. In my opinion, making decisions based on future equity and payout is poor management.

Everyone complains about coporate CEOs who are so focused on the stock price that they forget to make good products. Focus on the product, and the $$ will take care of itself.

<comment><USER17> I agree, but it's just one of an infinite number of ways to mis-prioritize your decision making. That's the hardest part of entrepreneurship: you have very limited time and you need to make smart choices day after day about how to spend it.

The value of this article IMO is to offer a counter-point to the multiple- founders mantra. A lot of people take that as gospel, but I think if you are spending time looking for a co-founder you're doing it wrong. Rather, if you know the right person to be a co-founder, by all means extend the offer ASAP, but if you don't then get to work and stop fretting.

To maximize your chance of success you have to focus on the greatest ROI at every moment in time. Hiring the right person is the biggest ROI a one-person operation with a lot of work to do can achieve, but on the same token, finding the right people is often nearly impossible.

</comment></comment><comment><USER18> Previous discussion here:

<http://news.ycombinator.com/item?id=2625143>

</comment><comment><USER19> Obviously, a single founder gets more when and if a payday happens. Most startups fail, however. If attracting a co-founder increases the odds of success it is surely worth it. The article points out that you can also attract a co-founder in return for a smaller stake after you get traction. This could be the best of both worlds, unless it leads to envy and friction within the team.

<comment><USER20> Good co-founders you take on where and when you can until you have all the skills you need to make your team complete.

Compensation should be relative to value added rather than relative to time- to-get-on-board. That's because typically both sides know the value contributed and if one side tries to slant the division in their favour this will inevitably lead to trouble down the road.

Start-ups are fragile, if you build in tensions right at the beginning you'll get that back when you need it least.

For instance, during negotiations about an acquisition your key co-founder that you successfully screwed over during the founding days now has you over a barrel. After all he/she has very little to lose and you will stand to lose a lot. You could of course try to take care of that in your articles of incorporation and your shareholder agreements but you can't actually force someone to perform unless they are willing.

Keeping your goals aligned is good for everybody and fairly sharing a much larger pie is the best way to have the story end happily.

"After you gain traction" is sufficiently vague that I don't think that is a good criterion. Better would be that you would take into account the amount of capital already sunk and the risk that you perceive at the moment of joining. Lots of traction can actually mean _more_ risk rather than less.

</comment></comment><comment><USER21> What advice can you give to potential founders who will be pitching on events like StartupWeekend,etc.? For us who attended, after someone pitched, random people approached him/her and wants to be on the group. Is it right to just say sorry that you're not accepting potential co-founders with random people?

<comment><USER22> StartupWeekend is not the best place to really start a company. I know it has been done (and I have done it myself).

Go have fun at StartupWeekend and if you find some people you like working with then do a real startup with them later.

</comment></comment><comment><USER23> Honest Question: Who buys companies for $5M-$15M? What do they do? What makes a company in that range attractive?

I like the idea of doing one of those every 3-5 years for the rest of my life rather than go for the glory IPO and... then what?

</comment><comment><USER24> From 2010 (although still relevant)</comment>


Dallas officer kills man after mistaking his apartment for her own, police say - <AUTHOR> https://www.dallasnews.com/news/crime/2018/09/06/shooting-reported-cedars-near-dallas-police-headquarters <comment><USER2> I see little relevance of this to HN. That said, the opening line stands out:

> A Dallas officer fatally shot a 26-year-old man Thursday night

This is a departure from the way this is usually written up these days, which would be: "A 25-year-old Dallas man died as a result of an _officer-involved shooting_."

This manipulation of language infuriates me to no end. The officer was not just "involved" in a shooting -- the officer did the shooting! This choice of words is not an accident. Law Enforcement has somehow convinced the press to use language that removes the direct causality (and therefore, the responsibility / culpability) of the shooting.

Longer articles on this phenomenon:

[https://www.huffingtonpost.com/craig-martin/time-to-kill- the...](https://www.huffingtonpost.com/craig-martin/time-to-kill-the-term- off_b_7428072.html)

[http://dish.andrewsullivan.com/2014/09/02/stop-saying- office...](http://dish.andrewsullivan.com/2014/09/02/stop-saying-officer- involved-shootings/)

[https://news.vice.com/article/some-nypd-officer-involved- sho...](https://news.vice.com/article/some-nypd-officer-involved-shooting- narratives-just-dont-fly)

<comment><USER3> This is a problem, hoever the bigger problem i see is the shot to kill policy

<comment><USER2> The misleading language is designed to hide that problem.

</comment></comment></comment><comment><USER4> Seems like justice would be a manslaughter conviction plus the loss of her job due to the felony and/or a determination that she doesn't have the judgement to wield a gun. Along with whatever recompense to the family that a civil judgement can extract from her.

<comment><USER5> what will happen, however is that the officer will get 3 months "paid leave" (vacation) while her buddies perform an "internal investigation" that will find she did nothing wrong. or maybe they'll find wrongdoing but she gets a slap on the wrist like a demotion.

edit: his -> her

<comment><USER6> From my reading of the article, the shooting was not related to her job. Therefore it should be investigated the same as any other homicide where someone breaks into a house and shoots the person that lives there.

<comment><USER7> _Therefore it should be investigated the same as any other homicide where someone breaks into a house and shoots the person that lives there._

Homicide...a person was killed but the charge is based on the killer's intentions. Even killing a person that shot you is homicide, though a justifiable one. From the article looks like a tragic mistake was made, so manslaughter. (Edit: Unless we learn that the dead person and the killer had a history of fights, romance or whatever)

</comment></comment></comment></comment><comment><USER8> > Police officials say she had arrived at the complex after working a full > shift and was still in full uniform when she entered the victim's apartment, > thinking it was her home.

> "It was, like, police talk: 'Open up! Open up!'" 20-year-old Caitlin Simpson > said.

Something doesn't add up here.

<comment><USER9> >Something doesn't add up here.

Sounds like she got pissed off when her key didn't work and the occupant got shot because he went to answer the door because that's what most people do when someone bangs on the door and then they see a cop through the peephole.

</comment></comment><comment><USER10> Was anyone else unable to scroll through the article?

The entire page is wrapped in a div with position:fixed applied to it.

Also some funny TODO's in the page source:

      TODO: Add real logo for DMN
      TODO: Add articleBody if analytics guy says do it

<comment><USER11> With NoScript in Firefox blocking all the javascript from running the article appeared, there was a browser scroll bar, and my scroll wheel caused the whole article to scroll with no problems.

</comment></comment><comment><USER12> Headline should really be "Police officer breaks into man's home and murder him".

</comment><comment><USER13> Unable to view this in Europe

</comment><comment><USER14> Just, yikes.

</comment><comment><USER15> Take this shit to Reddit pls.

<comment><USER16> Why the angry language?

</comment></comment><comment><USER17> Not to be overly picky, but I believe the majority of readers here do not come to HN for this type of submission.</comment>


From Object Oriented Programming to Functional Programming - <AUTHOR> https://github.com/Dobiasd/articles/blob/master/from_oop_to_fp_-_inheritance_and_the_expression_problem.md

<comment><USER2> Perhaps the problem is that you're trying to build a class hierarchy in Haskell, when class hierarchies just don't really work in Haskell.

What about a component oriented design? This is the standard architecture for games anyway.

An enemy, actually every _entity_ , would just be a map of components, which can be simple algebraic data types. The actions can be implemented as a system function with pattern matching or guards, like:

      -- The walking system
      walk :: Entity -> Entity
      walk e = update entity "position" $ walk' (lookup "position" entity)

      walk' (x,y) = (x+1,y)

In reality systems usually work on more than one component, so you'd have to make actions that work on tuples of components, but you'll figure it out :)

<comment><USER3> > class hierarchies just don't really work in Haskell

They work beautifully in Haskell

      class Eq a => Ord a
      class (Num a, Ord a) => Real a

<comment><USER4> It's more that classes just don't behave the same as `class` in an OOP sense. You can create a subtype hierarchy using typeclasses—Functor->Application->Monad->MonadPlus/Applicative is a _great_ example and the `lens` hierarchy is an even more sophisticated one.

But these are subtype hierarchies, not subclass hierarchies. Furthermore, classes don't necessarily provide you with the full convenience of an object, though they can come close. Finally, people aren't used to working in codata and Haskell doesn't make it easy, so you have trouble there, too.

<comment><USER5> You can't create subtype hierarchies in Haskell. Haskell doesn't have any subtyping: every value has exactly one type. This is why you cannot use the OOP solution for the game, which requires lists whose elements have a common supertype. Even with existential types (as the author mentions), you still do not have any subtyping.

Typeclasses are collections of types. All types in the applicative class are also in the functor class, but none of these types are subtypes of any others.

<comment><USER4> Except there are quantified types, so `forall a. Functor a => a` is the type of "all types instantiating Functor" and `forall a. Applicative a => a` is a subtype. These are commonly used due to the implicit forall quantification.

Edit: I'm rusty here, but after re-reading the LSP I'd also say that existential types could exhibit subtyping as the set of statements provable about them is often exactly those provable about the universally quantified type.

<comment><USER5> Neither of the types you gave is inhabited, because the 'a' has kind * -> * .

I think what you've said about subtyping is muddled. If a type A is a subtype of B, then values of type A should be values of type B. Now let's take an example from the number class hierarchy. Consider

      1) forall a. Num a => a
      2) forall a. Integral a => a

According to what you have written, (2) should be a subtype of (1). That means that if I define

      n = 1 :: forall a. Integral a => a

then I should be able to "upcast" with:

      n :: forall a. Num a => a

However, this doesn't work, since the quantifier now ranges over types that were not in the range of the original quantifier. In the second type, I can instantiate the a to Float, while I cannot do so for the first type.

The only formal account of universal quantifiers in type theory, of which I am aware, extends the term language by introducing a capital lambda that ranges over types. So the polymorphic identity function is actually the term

      Λa. λx:a. x

which is a function that takes a type a followed by a value x:a and returns x.

This makes good sense of the way number classes work in Haskell. When you write

      n :: Num a => a
      n = 1

the actual machine representation of n is going to vary with the type of a.

EDIT: Another way of explaining the counterexample: any type in Applicative is also in Functor. But, on one informal interpretation of forall, the intersection of all applicatives is actually a proper _superset_ of the intersection of all functors.

<comment><USER4> I wouldn't expect (Integral a, Num b) => a -> b, but I do expect the opposite. That seems to be _exactly_ the definition of LSP.

And yeah, if you add System F type binders then you can do all of this explicitly, you just need to _also_ manually pass around instance dictionaries. A morphism from one instance dictionary to another (which "forgets" "methods") provides your subtyping relation.

<comment><USER5> You have

      (Integral a, Num b) => a -> b

It's just the function fromIntegral. You don't have the opposite, if, by which, you mean

      (Num a, Integral b) => a -> b

I was talking about giving the same expression multiple types. So you can have:

      n :: Num a => a
      n = 1

and then do

      n :: Integral a => a

But again, we're talking about subtyping, and this isn't it. Consider the original problem, where we want a vector of objects of different concrete type. Haskell 98 doesn't help us here. The type

      Num a => [a]

is inhabited by heterogeneous lists.

The problem can be circumvented as described in the OP, or by using existential types. However, we still have hetergeneous lists, but the concrete type has been abstracted.

<comment><USER4> Okay, sorry, my arguments have been a little imprecise—the disadvantage of typing on a phone. I'll try to do better now.

(1) Given two typeclasses which have `class A x => B x` then the type `forall x . B x => x` can be coerced to `forall x . A x => x`. You can do this explicitly using existential types.

(2) Functions are a little weird since (->) is a profunctor and thus is contravariant in the first argument and covariant in the second. Thus, using the coercion above you'd note that any function where `forall x . A x => x` is an input may be replaced by `forall x . B x => x` and when it's an output then the replacement goes the other way.

(3) fromIntegral is a bad example because it relies on the specific functions in the typeclasses Integral and Num--- it's just `fromIntegral . toIntegral`.

I think this kind of stuff is a kind of subtyping. It seems to follow the Liskov Substitution Principle.

<comment><USER5> That's either backwards or just wrong. Perhaps you're confusing this with the syntax for existentials in data-declarations? I'm really not sure.

'forall x. A x. x' is a type of polymorphic values. Given such a value, I can instantiate the type-variable to any instance of the type class A. For instance, given

      x :: Num a => a

I can write

      y :: Float
      y = x

      z :: Integer
      z = x

Now if 'class A x => B x', then B is a subclass of A. In that case, in the type 'forall x. B x => x', the type variable x is more restricted. For instance, if I substitute "Integral" for "Num" in the type declaration for x, my code breaks. How's that for LSP?

      x :: forall a. Integral a => a

Now I can no longer instantiate the a to Float:

      y :: Float
      y = x

So I can do stuff with 'forall a. Num a' which I cannot do with 'forall a. Integral a', even though Integral is a subclass of Num.

More generally, you cannot coerce a value of type 'forall x. B x => x' to one of type 'forall x. A x => x', because that would allow the type variable to range outside B. Consider:

      x :: forall x. Real x
      x = 0.5

      coerce :: (forall x. Real x) -> (forall x. Num x)

      n :: forall x. Num x
      n = coerce x

      m :: Integer
      m = n

This is type-correct, but semantically invalid, since the m has lost precision from x.

If you want to talk about contravariance, you can note that when you add a type-class constraint of the form A x => x, you've basically got an implication, and the "A x" is in contravariant position. That's why your example is, if anything, the wrong way around.

What you can do with existential types in Haskell is kind of like subtyping. At least, it's kind of like what you do in the C++ example with abstract types. But that's because abstract types are kind of like existential types. Full class hierarchies can then be mocked with Haskell type classes, existential quantifiers and explicit coercion functions, but that's because subclassing is kind of like containment which is kind of like implication which is kind of like the type of a coercion function. But by this stage, we've got a long way off from saying that type-class hierarchies in Haskell are _subtype_ hierarchies, as you originally suggested. They're certainly not in Haskell 98, and with existential types, they don't give you the implicit upcasting that comes from values having multiple types. Even with existential types, all values have exactly one type, and this is crucial to remember when trying to reason about Haskell's type system. In other words, forget about subtypes!

<comment><USER4> Essentially I'm saying nothing more than I can change a function A -> (B, C) to a function (A, X) -> B. Typeclasses provide a way to represent a more general space of those functions. Existential types are the explicit way of writing the kind of subtyping I'm talking about—so if you need it to be an explicit hierarchy then, yes, you need extensions to Haskell98.

The best example of doing this without existential types (though it violates Haskell98 in its own way) the lens library. It absolutely provides a natural subtyping hierarchy without using existential types, though all of the coercions are implicit.

I'm very confident in my understanding of the Haskell behavior, but I'm happy to concede that my use of subtyping terminology is off. I cannot see how the behavior you see in lens doesn't provide a stellar example of LSP, though.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> The proposed class hierarchy for different types of "game objects" is exactly the type of hierarchy which will bite you in the ass very soon when adding more features, an entity-component-system would be a better solution for this specific problem (composition instead of inheritance). Newbie programmers should never be taught this "animal - cat - dog" nonsense IMHO because this approach of modelling software after real-world objects doesn't work for anything slightly more complex. For instance, what if you have two different enemy types which both need to implement a common feature but differ in others? Please don't say 'multiple inheritance' ;) This doesn't mean that OOP is bad at all IMHO, just that it shouldn't be treated as a holy grail (applies to all design principles), and doesn't mean that you have to go all- functional. All IMHO of course.

</comment><comment><USER3> These exercises have nothing to do with expression problem.

The goal of expression problem is ability to add new cases in type and new operations on type _without touching_ existing code (and without compromising static type safety)

<comment><USER7> They also get the solution wrong: only OOP can define new variants and only FP can define new operations. Actually, there are plenty of language, FP and OOP, where it is easy to define new variants and new operations orthogonally without sacrificing separate compilation (e.g. any OO language with mixins like Scala). Mads published a paper [1] on some solutions back in 2004.

[1] [http://lambda-the-ultimate.org/node/2232](http://lambda-the- ultimate.org/node/2232)

<comment><USER4> It's also easy enough to define new variants in Haskell if you package things as codata. I feel it's less to do with OOP/FP and more to do with whether you're using data or codata.

<comment><USER8> Could you elaborate or provide links to examples of what you mean by solving this with codata?

<comment><USER4> My terminology isn't great, but what I'm talking about in practice is usually what happens as the next step after someone gets talked down from using existential types all over the place.

I'm personally a big fan of existential types, but they usually don't need to be explicit. One place that shows up on Hackage that's worth studying is Edward Kmett's `folds` library. The type, Data.Fold.L.L is a codata type

        data L = forall r . L (r -> b) (r -> a -> r) r

It uses existential typing for efficiency, but doesn't need to. Instead, it just helps to show the encapsulation going on here---you literally cannot examine `r` in any way besides applying some of the bundled functions (methods, destructors).

The existential type highlights that L is acting as codata, but it's usually not recommended in practice as existential types are a little hard to manage. You could write L more simply and eliminate the `r` data

        data L = L b (a -> L)

by just pre-applying the existentially typed data to each of its destructors and rebundling new L types where necessary.

In any case, the point is that it's easy to build a variety of L variants, but hard to extend new operations on Ls.

<comment><USER4> Btw, here are a few example variants of `L`

        sum :: Num a => L a a
        sum = L id (+) 0

        prod :: Num a => L a a
        prod = L id (*) 1

        list :: L a [a]
        list = id (\r a -> a : r) []

</comment></comment></comment></comment></comment></comment><comment><USER9> Any book that sounds like "functional programming in practice" for C++ programmers ?</comment>


What AI has learned to do by 2017 - <AUTHOR> http://ai-first.world/ <comment><AUTHOR> If you guys have any examples of AI, please let me know. Will add them to the site.</comment>


Alzheimer's linked to buttered popcorn? - <AUTHOR> http://dfw.cbslocal.com/2012/08/10/butter-popcorn-chemical-linked-to-alzheimers/

<comment><USER2> NO, No. no. Diacetyl, a compound found in butter, MAY be linked to alzheimers, so IF it's true, ANY food with butter has this characteristic.

What you read is an idiotic staff news writer's spin. I mean, if they wrote "English muffins linked to Alzheimers", nobody would have read it.</comment>


The League of Extraordinary Assholes - <AUTHOR> http://thewalrus.ca/the-league-of-extraordinary-assholes/ <comment><USER2> Unfortunately there are more things making people jerks than status/wealth, and I'd like to think not all the rich act/think like jerks.

I think many times the inferiority complex makes for many of the players in this league. Same as some people reassure themselves by getting big cars, or expensive watches for the sake of showing off, even if they're poor, some individuals would act like jerks as a way to hide their own insecurities when they have the chance. I would even say that this is the problem behind many rich jerks: rather than just feeling superior to regular folks, they feel constantly inferior, worthless among their circles.

</comment><comment><USER3> What a victim mentality here.

Freedom requires constant vigilance.

When you collectively fall asleep for three generations and allow the asshole class to subvert the rule of law, you deserve whatever you get.

<comment><USER4> _When you collectively fall asleep for three generations and allow the asshole class to subvert the rule of law, you deserve whatever you get._

And let's be straightforward about the form of that sleep: political apathy which led the non-asshole class to stop voting. Apathy allowed the assholes to walk in and take the place in broad daylight. And when apathy didn't work, they worked to weaken the very process of voting. The Voting Rights Act was the last visible sign of this, but the last two presidential elections were rife with voter suppression.

<comment><USER5> How does the Voting Rights Act work to weaken the process of voting?

<comment><USER4> I meant the repeal of it.

</comment></comment></comment></comment><comment> Sam</comment><comment>-- This is propaganda intended to create a social divide.</comment>


Hack.chat – Minimal chat service for hackers - <AUTHOR> http://hack.chat

<comment><USER2> bluetooth keyboard + android + ssh + screen + irssi = minimal encrypted chat for hackers everywhere.

</comment><comment><USER3> The minimal chat service for hackers is called IRC.

<comment><AUTHOR> Here's another one.

</comment></comment><comment><USER4> pretty cool project!</comment>