Why Prosperity Has Increased but Happiness Has Not - <AUTHOR> https://www.nytimes.com/2018/08/21/opinion/happiness-inequality-prosperity-.html <comment><USER2> The title is a little out of date. Prosperity has been increasing in the 20th century, but has not increased for a few decades.

Sure, crap like gadgets is now cheaper, but buying a house, giving your kids an education, and so on have increased. In the 40s and 50s a middle class household could get by just fine (and the house be bought) by a single income earner. Such a house now would be on the verge of bankruptcy. And that's not even adding in the decline of working class jobs, and the instability of most modern careers (outside of IT which still has it good).

<comment><USER3> _> In the 40s and 50s a middle class household could get by just fine (and the house be bought) by a single income earner._

Has that really changed?

A manufacturing business in my area is currently hiring everyone who shows up to an interview. They pay they are offering isn't wonderful (at least if you concept of money has been warped by the IT industry), but you should expect to make around $40,000 per year to start. Perusing the real estate listings, I see a three bed, two bath detached home near to that business listed at $139,000.

Rule of thumb says you shouldn't spend more than three times your income on housing, but many suggest you can go as high as five times income. We're at 3.4 times income. It's not ideal, but it seems doable, especially if you want to live like it is the 1940s. The cost of cell phone each month can easily apply $50-100 more to your mortgage payment each month instead.

I will point out that our example job is one that you can walk into and start today. If you take a little more care and look around and risk a few rejections before finding work, there are plenty of jobs that pay considerably more. In those cases, one person buying a home should not be an issue whatsoever. A $45,000 income would provide the necessary amount for the three times income rule of thumb to buy this home in question.

<comment><USER4> Households today spend more on cell phones and communication but also spend less on fine china, dress clothes and food. When you net out all the pluses and minuses households today spend much more on housing, healthcare, daycare, transportation (two cars, for two jobs) and education.

When you look closely the two bed, two bath detached home it's likely in a school district that is underperforming and while the home may be slightly larger than those in the past it's 30+ years old.

This is detailed elegantly in the Two Income Trap by Elizabeth Warren.

The thing that is crazy is that there is any debate in the subject. Real productivity growth has averaged 2% for the last 100 years in the US. Early in the last century they they were speculating that if productivity growth kept up at that rate their grandchildren would only need to work a couple of hours a week and what would they do with all their free time?

How did we get here?

<comment><USER5> gp actually answered that with "especially if you want to live like it is the 1940s".

There is a quiet denial about how luxurious modern living is. People just flat-out underestimate how much work it takes to keep the infrastructure of the modern world in place and humming - traditional infrastructure, IT grids, distribution of goods and services (particularly maintaining an enormous fleet of wheeled vehicles).

I know a lot of people who are poorer than I am but spend more, because they just don't clamp down on things like car usage, sending money to their children, pets and ordering a daily coffee. The only thing that will force them to live a simple lifestyle is literally having no money.

Sometimes people maneuver into a position where they have no choice, because they make bad long-term lifestyle choices early on, but so far the evidence is that human demand for stuff and services is infinite. People use their spare hours to gather and consume more.

<comment><USER6> Ah yes. The poor are poor because of poor morals, instead of you, who is of good moral standing.

The poor are poor due to lack of money. This is caused by increasing costs of healthcare, education and houses, you know those basic things needed to live. And by a capitalistic class taking about 95% of all gains from productivity increases. Saying millions of people are poor because because of bad morals is disgusting and completely false.

<comment><USER7> Ugh, poor money management skills have nothing to do with morals. It's fine to say someone has poor money management skills just like it's fine to say someone has poor C++ coding skills.

Creating a budget and sticking to it requires behavioral changes that take time to sink in.

It's extremely unlikely that you make the perfect amount of money to cover your exact needs that result in you being broke. It's much more likely that people adapt to a system of spending all money that comes in on whatever 'priority item' pops into their mind because they lack the skill and/or discipline of budgeting. This is evident in higher income people as well that suffer from lifestyle creep.

Again, this has nothing to do with morals. It's just a statement about the appalling lack of financial education in the vast majority of the US population.

<comment><USER8> I think you and the original poster are in violent agreement Reread his post all of the way through.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> The article cites income increase but doesn't talk about the necessary factors even if you're only talking numbers:

1) real inflation (ie, cost of living has skyrocketed due to rent/medical) outweighs any income increases.

2) overall wealth was not accounted for - in fact many Americans are living paycheck to paycheck, probably far more than at any corresponding postwar period in the US.

In short "prosperity" != income. Ignoring things like cost of living and the high possibility of surprise bankruptcy due to medical emergencies lead to a very inaccurate picture.

<comment><USER10> Well said, and the easiest metric you could look at w/r/t cost-of-living is the _average income : house price_ ratio. What was once withing reach for most educated workers is now often a fantasy for the rich. Unfortunately it is also what the lion's share of paychecks is often spent on.

<comment><USER11> Real GDP per capita covers this. Inflation encompasses cost of living. [https://fred.stlouisfed.org/series/A939RX0Q048SBEA](https://fred.stlouisfed.org/series/A939RX0Q048SBEA) Missing a breakdown by quartile, but it's the right metric

<comment><USER9> Does GDP per capita actually compare to median income? Sounds more like it uses mean income which is skewed by extremes (e.g. high earners).

<comment><USER12> This. An incredibly rich top 0.1% percent could skew GDP per capita a lot, but a happiness index not so much.

Simplifying things to the extreme, take 100 people where half of them earn $1 and are unhappy and half $2 and are happy. Give one person a $150 raise-- you just doubled the GDP but at best increased happiness by 1%.

It is no secret that a small percent of people have been getting very rich [1].

[1]: [https://money.cnn.com/2011/02/16/news/economy/middle_class/i...](https://money.cnn.com/2011/02/16/news/economy/middle_class/index.htm)

</comment></comment></comment></comment></comment><comment><USER13> It would be weird for happiness to increase with prosperity. Think how much more stuff we have than people in the stone age. We should all be delirious with joy, all the time, if we expected happiness to increase with material wealth.

Any description of happiness that makes sense would have to say that it's some sort of local comparison, across various axes: how am I doing compared to previously/expectations/other people?

This is why when you acquire some new gadget, you say you're happy. You can now mow your lawn, which you couldn't before. Going forward, you expect to be able to mow your lawn. If your lawnmower breaks, you're sad. If it doesn't, a working lawnmower was already priced in.

This is why billionaires like Elon can be unhappy, too. Otherwise they would be bouncing off the walls giddy with joy all the time.

<comment><USER14> This is why happiness can only be reached by learning to appreciate what you have. You're much better off pondering how lucky you are to have, and how miserable you'd be without, the things you already have, rather than how happy you'd be with things you don't. The latter is an illusion.

<comment><USER15> Exactly this.

The human psyche has its pluses and minuses. The fact is, humans are never satisfied with what they have, they always want more.

This is good when it comes to driving progress. We'd never have gone to the moon if we were satisfied with just colonizing the earth.

At the same time, it's the root of a lot of unhappiness. People have grand expectations for their life - and fall into depression if they never reach them, despite the fact their life is far richer than most people experience.

</comment></comment></comment><comment><USER16> This also ignores increases in costs of living, such as housing, and the destruction of concepts like 'career paths' where someone would be with a company for a long time and build economic and social value within a given area.

<comment><USER17> Indeed, claims for increase in prosperity seem pretty illusionary.

Headline: Most Americans are one paycheck away from the street

Subheading: Some 63% of people can't deal with a $500 emergency

The website is CBS Market, fairly respectable, draws on several plausible studies.

Link: [https://www.marketwatch.com/story/most-americans-are-one- pay...](https://www.marketwatch.com/story/most-americans-are-one-paycheck- away-from-the-street-2016-01-06)

<comment><USER18> This has largely been debunked -- the questions asked were not about their access to sufficient funds. For example, the _median_ American household has $1000 per month in disposable income ("beer money") after all typical living expenses. This fact alone should immediately raise questions about the assertion that the _majority_ of households can't afford $500 in one-time cost, emergency or not.

The major source for this assertion is that most American's don't have $500 in savings accounts. Which is true. What is also true is that a large percentage of Americans with plenty of emergency cash don't even _have_ a savings account -- it is an anachronism from a bygone era. Most Americans no longer own savings bonds either.

My emergency cash is in a checking account, like many Americans, so by the measure used in this article, I am completely broke.

<comment><USER19> A Bankrate[1] survey found that only 37% of respondents could cover a <=$1,000 emergency with savings (note: savings, not a "saving's account"). They did, however, add that another 23% could cover the expense by spending less on other things.

Given that, I'd say a large percentage of Americans do _not_ have plenty of emergency cash. That's not to say most of America is "one paycheck away from the street" like the parent comment quoted...

[1]: [https://www.bankrate.com/banking/savings/survey-how- american...](https://www.bankrate.com/banking/savings/survey-how-americans- contend-with-unexpected-expenses/)

<comment><USER20> _A Bankrate[1] survey found that only 37% of respondents could cover a <=$1,000 emergency with savings (note: savings, not a "saving's account"). They did, however, add that another 23% could cover the expense by spending less on other things._

The exact wording of the question is going to have a significant impact on the results and what they mean. In the real world, if I incur an unexpected $500 expense I'd put it on my credit card, which would get automatically paid from my checking account at the next billing cycle. It's not clear if that would incorrectly categorize me as not being able to afford it.

<comment><USER21> Certain types of expenses cannot be put on credit card though.

</comment></comment></comment></comment></comment></comment><comment><USER22> One usually-not-mentioned premise is that even though goods' costs have typically been going down over time as physical product technology improves, many services (the majority of developed economies) are relatively unaffected by improvements in technology because they rely almost exclusively on labor. Rising inequality will make services more expensive to those on the poorer end. Poor people don't struggle to get smart phones or food, they struggle to get daycare, medical care, education, etc.

<comment><USER23> I am pretty sure everyone, except for the 1%, struggle to get daycare, medical care, and education.

<comment><USER24> You might want to visit Europe at some point. That's a very specific US problem. (Europe's not problem-free, but access to daycare/medical care/education is _much_ easier to obtain there)

<comment><USER25> Sort of. It is probably better but if you don't have stable living conditions, which many people don't, that affects everything else. So you can say that people have access to daycare, but if you involuntarily have to move around a lot that is a real overall decrease in quality of that daycare.

</comment></comment></comment></comment><comment><USER26> People feel happier when they feel secure. We have nicer gadgets now but life is also more stressful because finding a stable long-term career is more difficult.

<comment><USER27> Indeed, thinking about my own life, I hoard wealth because of the risk of an event such as a medical emergency, unemployment, or my kids not being able to launch their own careers.

<comment><USER12> I find this interesting and it reminds me of a friend of mine who is Finnish. After college, she moved back to Finland, knowing she wouldn't make as much money there as she would in the USA.

But she also mentioned she wouldn't need to. There, she didn't have to worry about saving money for her kid's college and a medical emergency was affordable without touching into life savings. Buying a house was the big she could think of saving money towards.

</comment></comment></comment><comment><USER28> It's easy to understand why people may not believe that prosperity has increased across the board. I also used to believe this, but after looking at the data I'm not entirely sure what it is that drives our perception. This [1] paper from the urban institute is something I found precisely when looking to put specific numbers to the hollowing out of the middle class and the overall decline, or at least stagnation, of prosperity.

The paper does describe that hollowing out in clear detail. In 1979 the middle class controlled 46% of all income and the upper/rich classes controlled 30%. Today (as of 2014) the rich and upper class control 63% and the middle class's share of society has been reduced to 26%. There's even been a chiseling out in the size of the middle class declining from 38.8% to 32%. And that's pretty much where most articles tend to leave off the state of economic change. It's all true and it sounds pretty grim.

But context, as always is, is everything. This is the change in the size of each economic group from 1979 to 2014 as a percent of the total population:

\- Rich: 0.1% -> 1.8%

\- Upper Middle Class: 12.9% -> 29.4%

\- Middle Class: 38.8% -> 32%

\- Lower Middle Class: 23.9% -> 17.1%

\- Poor or Near-Poor: 24.3% -> 19.8%

The reason the top's share of income has increased is because people are moving, at an incredibly rapid pace, from the lower classes the upper classes. Statistics like this are certainly subject to biased interpretation and 'massaging' \- though I think the paper is extremely transparent in their methodology. But if one is curious about the source, wiki has a section on the political stance of the Urban Institute [2]. I found this all eye opening to the point that it actually changed my worldview. Economically we are doing something _very_ right.

[1] - [https://www.urban.org/research/publication/growing-size- and-...](https://www.urban.org/research/publication/growing-size-and-incomes- upper-middle-class)

[2] - [https://en.wikipedia.org/wiki/Urban_Institute#Political_stan...](https://en.wikipedia.org/wiki/Urban_Institute#Political_stance)

<comment><USER29> I wouldn't define $100k for a family of 3 as upper middle class. And a big part of what defined class is how much control you have in your life. If you have to work 80 hours a week and get $100k that's far different than working 40 hours a week and getting $100k. Another thing is how secure your position is. Are you at risk of being outsourced? Is your job going to be automated? Are you in construction with temporary employment that can disappear at any time? Do you live in an area where you have other employment prospects and your children have the opportunity to have a good education and make good friends?

All of these are more important for the class discussion than a snapshot of income, in my opinion. What is probably happening is that long term wealth is building in certain zip codes, where the chances of success are larger and larger compared to other zip codes, also why it costs so much more to live in a handful of urban areas than other places. The competition for these high performing places causes quite a bit of insecurity.

<comment><USER8> _I wouldn 't define $100k for a family of 3 as upper middle class_

If your household income is $100K, you're close the 4th quartile of income.

[https://dqydj.com/united-states-household-income-brackets- pe...](https://dqydj.com/united-states-household-income-brackets-percentiles/)

Many households in the US see six figures as an unattainable dream.

<comment><USER30> I think the point is that there is more to 'class' than money. If you're a single income family in a low cost part of the country where the working person is pulling in $100k working 40 hours a week in a stable and secure job, then you're definitely upper middle class.

If on the other hand you're a dual income family in one of the more expensive parts of the country and both of you work 60 hour weeks in a very insecure job market to clear a combined $100k then you're probably not upper middle class.

</comment></comment></comment></comment><comment><USER31> Prosperity is a proxy for consumption. We measure it and then we pursue it. We are so convinced that we've shortened financial wealth down to wealth, and have completely forgotten there are different type of wealth. For example, spiritual wealth.

Happiness is subjective. And if the science is correct, it's independent of consumption. Western culture and power structure is wired to create financial wealth, not dismiss it.

<comment><USER12> > Happiness is subjective. And if the science is correct, it's independent of > consumption.

This is true after a certain point. It's independent of consumption, but there's an amount of wealth we need to attain to meet a baseline of material needs that's are simply necessary.

As the grandkid of a woman who couldn't afford shoes, a living space or sometimes even food when she was young, I can attest that my grandma's (and my family's) life got much better and happier once they were able buy food, clothes and a house. My grandma is very happy now that she can travel and get to be marveled by the beauties of our home country with money she saves and my aunts/uncles give her.

As much as we shouldn't pursue material wealth for the sake luxury, superficiality and consumerism, we shouldn't dismiss it as completely unliked from happiness because up to a point it is the source of lots stability and security.

<comment><USER31> No doubt there's a baseline. There's also a point of diminishing return. Few have a lot. A lot have little. And both camps are less and less happy. This can't go on forever.

</comment></comment></comment><comment><USER32> Humans are social animals. One of the primary drives of most social animals is to get as high up in the status/dominance hierarchy as possible, since this improves an organism's access to mates. Status and dominance are relative to other members of the species and, thus, unrelated to the absolute level of an organism's access to food and other resources.

<comment><USER24> Except that pretty much _no_ social animal with dominance hierarchy has a ranking function as simple as "status=mates". Most animals track the cost(e.g. more stress, higher metabolic rate) of high status vs the rewards. Which means that in an environment of abundance, the cost often exceeds the rewards.

There's also the phenomenon of reverse hierarchies (essentially, lower ranking members band together to keep anybody from dominating them). Which has at the very least been proposed as an explanation for altruistic behavior in humans, too.

And then there's the point that happiness is not related to status, or access to mates, or even access to resources beyond a certain point.

The world's a bit more complicated than ev. psych suggests.

Edit: No matter if you agree or disagree, Boehm's paper is certainly an interesting read. [https://www.unl.edu/rhames/courses/current/readings/boehm.pd...](https://www.unl.edu/rhames/courses/current/readings/boehm.pdf)

<comment><USER32> > Which means that in an environment of abundance, the cost often exceeds the > rewards.

The problem is that environments of abundance basically do not exist, because the population of a species quickly grows to consume any excess. The situation that humans in the developed world face is novel. We are not evolved to deal with abundance because abundance has only ever occurred during the brief gap between when we invented a new technology and when the population has expanded to fill the new, larger ecological niche which that technology enabled.

<comment><USER24> Uh, yes, they do exist. The example of human cultures that comes to mind are Melanesians which IIRC had relative abundance of natural resources. In the animal kingdom, Bonobos are probably the prime example.

And IIRC, in both cases the reaction to abundance wasn't overpopulation, but the development of a sharing trait. (Because it reduces the cost incurred by unnecessary competition)

In the case of Melanesians, they were at some point taken over by relatively resource-poor Polynesians. (Inequality will cause trouble). Bonobos escaped that problem since they have no competitors in their natural habitat, and they evolved a somewhat interesting mechanism to cope with any of the smaller conflicts that might pop up. (E.g. access to _favorite_ food instead of just normal food). If you're not familiar with it, I recommend reading up on it :)

<comment><USER32> I would love to read a link about the Melanesians if you have one.

The only way a population doesn't expand to consume available resources is if there is something else which is controlling population growth. For many species, that would be predation. But humans are an apex species, so that's not a factor.

Disease is another possibility. The bubonic plague kept European populations below the malthusian limit for a long time in Europe. But not long enough to really have an effect on our evolved traits. Generally speaking, it's difficult for disease to be a significant problem without agriculture and the population density that it allows. But the consensus is that people who lived in agricultural societies pretty much universally had poor diets (ie, they were living at the Malthusian limit).

The other major factor that would prevent human populations from reaching the Malthusian limit is violence. But violence is usually committed for the purpose of increasing or maintaining status. Either by killing competitors within the tribe or by stealing women and resources from other tribes.

</comment></comment></comment></comment></comment><comment><USER33> I find the idea of prosperity==happiness a bit silly. Being satisfied with the quality of life you have does not equate happiness.

The list is quite long but to name a few: horrible personality disorders,childhood trauma,relationship issues(opposite sex,parent,society,coworkers,etc...),physhical health ailments and so on... All these can become obstacles to happiness and throwing money at them to the most part does not help overcome these issues.

Here is my question: 1) isn't happiness a bit overrated? 2) is happiness really all that important? 3) if prosperity is happiness then why are there so many happy poor people in 3rd world countries?

</comment><comment><USER34> I am not onboard with the idea that humans need to be happy 100% of the time.

I am going to be unhappy, even frustrated trying to improve things or create new things (as an artist or engineer). Healthy unhappiness, as I see it, is required for evolution/human-advancement.

</comment><comment><USER35> _In a poor country with low inequality, rising national income should make people happier, and of course reducing poverty is a good in and of itself. But in a wealthy, unequal country like today's America, gains in national income can decouple from well-being._

The problem is the individual cannot perceive this. The typical person cannot perceive unemployment falling a few tenths of a percent or personal income rising a quarter of a percent. if income is rising as fast an inflation, then it may be impossible to notice. You can buy a bigger Iphone and Netflix, but healthcare, rent, and tuition keeps going up.

</comment><comment><USER36> Happiness happens when one can live in a stress-free environment.

Nowadays, we have a lot of stress, because the requirements an individual has to fulfil in order to survive have skyrocketed.

</comment><comment><USER37> Prosperity may have increased a lot for those at the top, but there's never been so many people living on freeway on-ramps until now. For the low end, it keeps getting worse-and-worse in the real world while academic happy-clappy about how "great" everything is. UBI or French Revolution 2.0, so far the majority of rich have chosen social upheaval, Holocene exinction and climate obliteration.

<comment><USER28> What is your view based on? I'd have assumed that absolute number of homeless would increase over time, but the rate of homelessness would be declining. I was surprised to see that, at least from this [1] research, that we are progressing fast enough that even the absolute number of homeless are also declining! Perhaps the most interesting takeaway from those data is that though absolute homelessness is decreasing, the number of homeless people moving to shelters is increasing. This means data that uses shelters alone as a metric could easily be quite misleading.

You also have to keep in mind that areas such as California have some of the highest homeless rates in the entire nation, so if your perception happens to be based on areas such as this - it's going to be skewed. It'd be like gauging prosperity by looking at what's happening in Monaco.

[1] - [https://journalistsresource.org/studies/government/health- ca...](https://journalistsresource.org/studies/government/health- care/homelessness-u-s-trends-demographics)

<comment><USER38> Homelessness in the UK at least has been rising every year for the last 7 years.

</comment></comment></comment><comment><USER38> Everything I know and read gives me the impression that while the world's poor are better off today than they ever have been, their overall share of the wealth and bargaining power is ever decreasing since the post-WWII years.

People now have smartphones and expensive TV's and financed cars but all the important things in life are consolidating in fewer and fewer hands.

GDP increases higher and higher, and the actual economic gains go to fewer and fewer people in ever larger amounts.

Education and healthcare has become prohibitively expensive, the financial services industry concocts ever more complicated financial instruments to disguise their greedy quarterly-focused predatory profiteering.

House prices and rent in places where the jobs can be found are skyrocketing, made worse by a free-for-all of foreign property purchases.

The products we used to buy and own and now being leased out to us and our control over devices we have in our own homes has been slowly and quietly taken away from us. We are not even allowed to fucking legally repair shit we've paid for a lot of the time.

Bribery and corruption have even been legalised in the US and the group that can reverse that obscene series of decision are the ones benefiting from it.

The copyright industry is basically a cartel of middle-men at this point, doing nothing other than causing the stagnation and loss of our cultural history.

And to top it all off every 'free' western nation is spying on its own citizens and arming its police all in the name of 'terrorists', despite terrorist attacks being rare occurrence.

I feel like all we have done with our progress is create a new aristocracy and pave the way for a new type of feudalism.

</comment><comment><USER39> Taking breaks from social media, particularly Twitter, has increased my happiness. Social media platforms are blackholes of negativity. They're also addictive and very empty because of lack of real interaction. Sometimes I feel like I'm living life vicariously through other people's photos, videos, and memes. It's uncanny.

</comment><comment><USER40> So happiness and poverty are relative. Isn't that obvious to anyone who has ever traveled, studied other cultures, or even our own culture? I know that's not the norm, but it's a fairly obvious observation. Many of the people in America's ghettos have, in absolute terms, much more wealth than much of the developed and developing world, yet they are much less happy than many of the latter people. Each cohort is comparing themselves with the people around them, not with people in far away countries. In America, poor people are surrounded by hate and cruelty, constantly in fear for their lives and livelihood. This is usually not the case in places where people are happy yet make much less in absolute terms (although sometimes it is even there). There's much more to life than money, especially when money is tight.

</comment><comment><USER41> Where is the explanation, let alone the data, to support the claim that happiness has not increased? There's a compelling data driven chapter in Steven Pinker's Enlightenment Now that makes the opposite argument. It also makes a compelling argument that people aren't bothered by inequality in itself. It's an amazing book that everyone should read and has genuinely changed my world view for the better.

</comment><comment><USER42> Why would anyone assume that there is connection between prosperity and happiness? The less you have, the less you want - the more happier you are.

</comment><comment><USER43> Aspirational marketing works. We have stuff, we just all want more stuff a notch above the stuff we have. The glamour advertising for watches feeds belief were entitled to a $20,000 Chopard.

It doesn't help that the disparity in pay board to shop floor is wider than back in the day of servants.

Redirecting mental effort to no material life is hard. Plus the economy tanks when we don't spend.

</comment><comment><USER44> A majority of Americans simply are not prosperous.

Having nice things, TV, mobile phones and other similar items reflects the overall product of industry. Those are technically luxuries.

All good, and welcome, but wealth, security needed for happiness us a different thing.

Wealth, in the basic human sense, is all about time and how much of it is availiable for people to assign purpose, rather than have that purpose mandated somehow by others or genuine need.

Happy people use that time in ways that they find rewarding, a core part of happiness.

In a macro sense, we as a nation are prosporous.

In a micro sense, people do not see that prosperity as basic wealth, and it manifests as their personal cost and risk exposure not matched to their income.

This costs them time, and limits on scope of desirable purpose on what portion of "free" time they have.

Having lots of money, that requires vast amounts of time to obtain and or service, is not wealth in the simoke human sense. Sans this basic wealth, happiness is much harder to achieve. Some people get happiness out of work. Most do not, and it ranges from the work being mundane to varied desire to work.

Secure people, not having to dedicate large amounts of time to meet basic needs, can be happy much easier, despite a lack of luxuries in their lives.

TL;DR: Reduce overall personal cost and risk exposure, and the time needed to do that, and happiness metrics will improve.

People need to be people. When they can't be who they are, do qhat they will do, they simply will not be happy no matter the luxuries they may find availiable to them.

<comment><USER45> >In a macro sense, we as a nation are prosporous.

>

>In a micro sense, people do not see that prosperity as basic wealth, and it manifests as their personal cost and risk exposure not matched to their income.

This isn't a magical mystery. It's very simple to explain. Wealth is a power law. An average is the most useless metric to use yet everyone still does it. In the same country with Manhattan, you have people with lead filled pipes and raw sewage on their front lawns because wealth is not distributed evenly.

And this isn't by accident. Wages for most working people have not kept up with inflation, and wages diverged from productivity since a little before the Reagan area. [0] The value people create doesn't evaporate, it goes to the top.

[0] [https://www.epi.org/publication/understanding-the- historic-d...](https://www.epi.org/publication/understanding-the-historic- divergence-between-productivity-and-a-typical-workers-pay-why-it-matters-and- why-its-real/)

</comment></comment><comment><USER46> Why don't you spend 20 minutes reading my article that has a false premise?

-NY Times

<comment><USER47> Could you please start posting substantive comments?

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)</comment></comment>


Nike says it's 'actively working' to fix its broken smart sneakers - <AUTHOR> https://www.theverge.com/circuitbreaker/2019/2/21/18234615/nike-adapt-bb-fix-android-bug-firmware-update-patch <comment><USER2> > the sneaker can't be tightened or properly worn. Some users say the update > caused the motor to stop functioning, too, so even the physical buttons > don't work.</comment>


How Lightning Can Kill 300 Reindeer with One Strike - <AUTHOR> http://www.wired.com/2016/08/lightning-can-kill-300-reindeer-one-strike/ <comment><AUTHOR> There was another post about this the other day, but this writeup had a really interesting take on it - permafrost caused the current from the lightning strike to spread out through the wet topsoil.</comment>


Paul Manafort's iCloud shows he tried to tamper with witnesses, says Mueller - <AUTHOR> https://www.fastcompany.com/40581169/manaforts-icloud-shows-he-tried-to-tamper-with-witnesses-says-mueller <comment><USER2> Paul Manafort getting nailed for what half of DC lobbyists do on a daily basis. Oh, and he used a property for AirBnB, and some people didn't like that. What a farce.

<comment><USER3> So because the corruption is widespread, no one should be punished? Or because some of it is minor, it's also excusable?

<comment><USER2> Try this: The people prosecuting him are arguably more corrupt.

<comment><USER3> Do you have any evidence for that, or is the Mueller investigation just a threat to your political goals?

Thus far, people from the Bush Adm, Obama Adm, Trump Adm, Senate, and House have expressed respect for Mueller and faith in his integrity. The majority of both parties support him.

What do you know to refute all of that?</comment></comment></comment></comment>


The Myth of the Genius Programmer (I/O '09) - <AUTHOR> http://www.google.com/events/io/2009/sessions/MythGeniusProgrammer.html

<comment><USER2> Nice to see this addressed explicitly. I think it applies also to some other circles I've been in contact with, such as science and music.

For instance, in music there's this obsession about having "perfect pitch". I've seen a lot of people getting very stupid about it.

<comment><AUTHOR> Yeah. The speakers referred to academia as an example, where researchers hold their work very closely and release it only to discover that (for example) someone else had done something more general.

On another note, I thought it was encouraging to hear some smart folks acknowledge that the white-hot embarrassment was typical after a mistake, and that the issue is usually exaggerated in our own minds.

</comment></comment><comment><USER3> It's a variation on the genius myth in general. See Malcolm Gladwell's "Outliers" for details. We need narrative because of how our species evolved. Narrative needs conflict between a protagonist and antagonist.</comment>


Maternity ward mix-up condemned privileged Japanese baby to a life of poverty - <AUTHOR> http://theglobeandmail.com/news/world/trading-places-maternity-ward-mix-up-condemned-privileged-japanese-baby-to-a-life-of-poverty/article15675238/ <comment><USER2> Significant discussion: [https://news.ycombinator.com/item?id=6821269](https://news.ycombinator.com/item?id=6821269)</comment>


Meet AAP, the Fastest Growing Startup in India - <AUTHOR> http://www.nextbigwhat.com/aap-startup-lessons-297/ <comment><USER2> I invested a small amount in the "startup" and I'm glad that the startup is living upto my expectations.

<comment><AUTHOR> Interesting.

Definitely you have helped a countless people. ;)</comment></comment>


Facebook tried to buy controversial tool to spy on iPhone users - <AUTHOR> https://9to5mac.com/2020/04/03/facebook-tried-to-buy-controversial-tool-to-spy-on-iphone-users-court-filing-reveals/ <comment><USER2> Facebook Wanted NSO Spyware to Monitor Users, NSO CEO Claims In a court-filed declaration, NSO Group's CEO says Facebook tried to buy an Apple spying tool in 2017. | [https://www.vice.com/en_us/article/pke9k9/facebook-wanted- ns...](https://www.vice.com/en_us/article/pke9k9/facebook-wanted-nso-spyware- to-monitor-users)

</comment><comment><USER3> I am not surprised in the slightest. One of the worst company on this planet.

This is outrageous:

 _NSO declined to sell Pegasus to Facebook, but it still built and launched Onavo without Pegasus as a spyware tool in early 2018 under the misleading pretense of being a VPN app._</comment>


Show HN: Bot Land, a game where you fight others via code - <AUTHOR> https://bot.land/ <comment><AUTHOR> Hey all,

I've been working full-time on a game called Bot Land for the last four years, and it just launched: [https://bot.land/](https://bot.land/) In the game, you can make bots with a Scratch-like interface called Blockly or use a subset of JavaScript. Either way, bots are fully automated.

Here are some screenshots of the game: [https://imgur.com/a/Rs2OWFg](https://imgur.com/a/Rs2OWFg)

Almost all of the development process (~5000 hours) was streamed live on Twitch: [https://www.youtube.com/watch?v=RS5Va996Exg&list=PLSM9PbIe-9...](https://www.youtube.com/watch?v=RS5Va996Exg&list=PLSM9PbIe-9hVfX0_wCD64AH7_DVNJDuCb)

It's free to play, so please try it and tell me what you think!

<comment><USER2> How the hell did you have the ability to drop 5000 hours on this?

<comment><AUTHOR> I think the other comments were interpreting this as "where did you find the time?" rather than "where did you find the other resources to support that time?" (e.g. money and motivation). I've been maintaining a huge FAQ since I've gotten these questions a lot over the last four years, and this one in particular should answer the question: [https://github.com/Adam13531/BotLand/wiki/FAQ#how-are-you- af...](https://github.com/Adam13531/BotLand/wiki/FAQ#how-are-you-affording-to- work-on-bot-land)

I linked that rather than copy/pasting it because you may find other answers interesting on that page. :)

EDIT: I should clarify that 5000 hours is roughly the number of hours that I _streamed_ , not the number of hours that I worked on Bot Land. There were way more hours spent in the background doing all sorts of things (including coding), but the majority of the actual development was on-stream.

<comment><USER2> I've been in the industry 8 years and worked on maybe a half dozen games but none of the projects was >400 hours.

I don't see how to make the commitment to spend multiple years without like an income coming from it and a team to work with. By myself it just becomes unbearable after a while.

I want to make a living off games. I'm almost 30 and things aren't getting easier.

<comment><AUTHOR> Ahh, I see what you're saying. I think the answer to that is that I had set up my entire life around Bot Land. It was my full-time job, I had the stream for accountability, and I'd dumped my savings into the production of the game. I couldn't just walk away from that. Plus, it's been a lifetime goal of mine to make a successful game, and I'd always said that the one true way to definitively fail was to not finish Bot Land (I hadn't had such a definition of failure for other projects).

Without getting too rambly/preachy here, I'll say this: there are lots of things in my life where I think, "I'd like to do that, so I'll get to it eventually". After a long enough amount of time, you realize that "eventually" doesn't just hit you in the face—you have to carve out time for the things that you want to do. At the end of my last traditional job, I realized that my career goals weren't being met. Primarily, I wasn't learning. I talked to my wife about what I should do, and she suggested that I productize Bot Land. That's when I had to realize that the concept of "eventually" was peaking through the cracks probably _trying_ to hit me in the face, and I had enough momentum to just go with it.

You mentioned that you're almost 30 and that things aren't getting easier. I can't say that they _will_ get easier. What may help you take one of your many games to completion is simply scoping it down _way_ further than you think you should. Cut out multiplayer, cut out innovative AI, cut out randomly generated dungeons, and just focus on a couple of solid aspects.

I don't know if any of that advice resonates with you, but if not, perhaps defining what barriers you feel like you've hit would help identify what patterns may be stopping you.

<comment><USER2> The barriers i repeatedly hit seem to be due to my lack of competence or inexperience at the tools im using.

</comment></comment></comment></comment></comment></comment><comment><USER3> Cool, a modern day Core War!

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

<comment><USER4> Came here to make the same comment.

I also played - I guess back in the late 90's, with an autonomous Asteroids- like game where you'd write code to control your "space ship" that had "radar" to show you nearby opponents and had pretty much just Asteroid-like controls, which ran as a networked screensaver. It came out of a bunch of people working at Canon - a friend of mine worked there writing printer drivers...)

(Now I'm wondering what you'd get if you let loose inside a modern device, like a cellphone for example, with two opposing bits of fighting code with full root access, but strictly equally time and resource shared? Would Core War even make sense any more with Gigs of ram, hundreds of gigs of flash, asnf stuff like wifi and bluetooth?)

<comment><USER5> You probably played crobots: [https://tpoindex.github.io/crobots/](https://tpoindex.github.io/crobots/) It was quite popular at that time!

</comment></comment></comment><comment><USER6> Congratulations, looks awesome.

I had an idea for similar kind of game where you are a wizard and program your own spells. The mechanics would be inspired by how magic works in The Dresden Files[0], where you draw in magical energy, transform it and then use it in some way. Maybe one could connect it with linear logic and programming.

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

<comment><USER3> That reminds me of 'Midnight at the Well of Souls' by Jack L. Chalker:

[http://www.geocities.ws/evilsnack/well.html](http://www.geocities.ws/evilsnack/well.html)

</comment></comment><comment><USER7> Shame about the loot boxes.

[https://i.imgur.com/NvQIJaG.png](https://i.imgur.com/NvQIJaG.png)

<comment><AUTHOR> Are you talking about the monetization model, or is something broken with opening salvage packs?

I assume the former. The goal was always for Bot Land to be free-to-play, and there were many different approaches to monetization discussed throughout development. In the end, I settled on the one you see in-game now, but the tenets were always the same: [https://share.bot.land/monetization.html](https://share.bot.land/monetization.html)

For reference, salvage packs are the single monetization point of Bot Land. I'm not planning to include advertisements, and I don't want to do subscriptions or anything. Salvage packs contain only cosmetic items, and the rarities are included up-front (which I would have done even if certain platforms like Apple didn't require that).

You can play for free and obtain every item in the game. The game took not only a substantial amount of time to develop (4 years), but also a huge chunk of my savings that I'd built up from my past jobs. I do need _some_ way to make money, and I don't think people would give a game like Bot Land a shot if it weren't free.

<comment><USER8> I appreciate your intent to make the game is not P2W and use IAP only for cosmetic items.

However, why not allow users to purchase those items directly? The use of "loot boxes", even for purely cosmetic items, can create dangerous and unhealthy addictive behaviors as people buy again and again trying to get the item they want. A number of countries [0] have made "loot boxes" illegal or placed restrictions on them, so this isn't a purely humanitarian concern.

Additionally, since you can sell those cosmetic items for "Botcoin, which you can then use to purchase anything else in the game." doesn't that end up giving your game P2W functionality? It seems like moving to direct purchases of cosmetic items would eliminate the need for re-sale and prevent concerns about your game being P2W.

[0] [https://en.wikipedia.org/wiki/Loot_box#Regulation_and_legisl...](https://en.wikipedia.org/wiki/Loot_box#Regulation_and_legislation)

<comment><AUTHOR> I think that with the current climate of gaming, this is a minefield to answer, and I don't think it does me any good to answer it. It feels like a "gotcha, I knew it!" kind of question rather than an honest inquiry into how Bot Land's monetization came to be. However, I've always wanted to be transparent where I can, and I'm sure some people _are_ wondering about this, so here's my thinking that led to cosmetic-only salvage packs:

For any game to be monetarily viable, it needs to pull in an average of $X for each player. Any free-to-play game (including freemium but not including something like shareware) skews how that average is formed because typical free-to-play games are lucky to have 5% of their playerbase spending _any_ amount of money. This means that a large portion of the playerbase is actively _costing_ money. Thus, they tend to rely on whales to spend huge amounts of money to compensate for all of the people spending nothing (or next to nothing). For this to work, the spending ceiling needs to allow for purchases of this size to even take place.

I wrote a salvage-pack modeler that would compute how many items of each rarity you would get by opening X packs, and how much Botcoin you could convert those items into should you want to sell them. I determined that at the highest number of packs that you can buy (70 packs, i.e. $100), you unlock nearly every cosmetic item in the game except for the rarest ones (which you actually unlock very few of). However, the average Botcoin value is enough for you to purchase several specific items that you may have wanted. I never wanted players to spend $100 for a single item and not be able to get it somehow.

By allowing direct real-money purchases of individual cosmetic items, I'd have to skew prices so heavily to make the same average revenue that I don't think players would want to purchase them. Also, there wouldn't be the fun or mystery of opening a salvage pack. I know what that sounds like. I even did a parody of EA's famous words for April Fool's last year ([https://youtu.be/cCmj2hKbWeQ](https://youtu.be/cCmj2hKbWeQ)). But I can unravel a bit of this at least:

1\. I'm not a businessperson. I don't know much about the psychology behind sales and how to make various business models work.

2\. I have somewhat conflicting goals with Bot Land. I want the game to be free-to-play, I don't want to exploit users, and I want to make a living off of the game.

3\. The model which I know can fit those goals is the salvage-pack system that you see in the game now.

4\. The payment model is not set in stone. So far, Bot Land has grossed significantly less than $1000, and a large portion of that is from users who already had accounts before the game even launched, likely indicating that those users wanted to support me moreso than get something in the game. It's easy to be ethical until challenged, but I'd like to think that if I found users spending ludicrous amounts of money in the game, I'd do something to curb that behavior.

5\. There's been an absurd amount of work just getting to launch, and I'm not positive that I can even continue Bot Land's development beyond 2019 without greatly changing the plans my wife and I made (more about that here: [https://docs.google.com/document/d/1aCE4s5UvVLH7dHuO1OA2m5Sw...](https://docs.google.com/document/d/1aCE4s5UvVLH7dHuO1OA2m5SwgSj7znUy67K1Xh9kBcw/edit#heading=h.lxvjax1mnb0s)). This bullet point's relevance is that I have so few resources to even be able to focus on the game alone right now, let alone any other issues that may pop up.

You may take this as incoherent rambling or mental gymnastics to be able to justify what is typically a predatory business model in gaming. I will be reevaluating as time passes to figure out whether something needs to be changed. I highly doubt Bot Land will be successful enough for me to even be able to make those decisions though.

> doesn't that end up giving your game P2W functionality?

Functional items are supposed to be balanced such that they can be situationally better than other items of the same category, but not outright better. Arguably, being situationally better allows you to be _outright_ better the more situations you come across, but I think that fully exploring the nuances of this would be a much larger conversation when I think that the heart of your questions is around loot boxes. In short: I don't think that even if you could purchase Botcoin directly would the game be pay-to-win.

Finally, one last note that's not the most salient: I never really intended for salvage packs to be convertible into the other items in Bot Land, just cosmetic items. The one monetization point that I've written down for the future is to introduce hardware coupons, that way you can directly purchase functional items. I don't know when this would happen though, if ever.

\---

There are parts in this post, specifically with the five points I enumerated, whose connection to the original questions and even to my own supporting points may not be clear to a reader. I took time and care to type this, but I'm sure that I could have made things clearer. I don't mind participating in an honest discussion about this or other aspects of the game. I'll likely stream tomorrow (Monday) if you want to ask me in-person (although I can't guarantee that I have the required amount of time to devote to the conversation).

<comment><USER8> Thanks for taking the time to reply in such a thoughtful manner!

> I determined that at the highest number of packs that you can buy (70 packs, > i.e. $100), you unlock nearly every cosmetic item in the game except for the > rarest ones (which you actually unlock very few of).

It is these rare items that tend to drive the addictive behavior behind loot boxes. Is there a particular reason you feel like you want to have these rare items be so hard to obtain?

If you don't mind me asking, what is your target revenue per player? $100 seems pretty high...

> By allowing direct real-money purchases of individual cosmetic items, I'd > have to skew prices so heavily to make the same average revenue that I don't > think players would want to purchase them. Also, there wouldn't be the fun > or mystery of opening a salvage pack.

By using a randomized loot box (especially one without published odds) you are effectively tricking players into paying more than they would otherwise wanted to. This seems abusive to me.

> For any game to be monetarily viable, it needs to pull in an average of $X > for each player. Any free-to-play game (including freemium but not including > something like shareware) skews how that average is formed because typical > free-to-play games are lucky to have 5% of their playerbase spending any > amount of money.

There are monetization choices that I think do a good job of balancing that distribution. Loot boxes is not one of them, nor is any mechanism by which players are given the option to repeatedly purchase consumable items that aid progress/grinding. This can actually discourage low-value players from paying since they can't pay enough to make a real difference.

I personally think that one-time purchases for ($5-20) that give a permanent bonus to grinding (10-20% boost to rewards earned by playing) are actually more player friendly. They encourage more players to spend a little bit of money on the game while reassuring them that you will not keep raising the bar and pushing for more money to keep progressing. I will almost always buy a package like this (as long as it is reasonably priced.)

> a large portion of that is from users who already had accounts before the > game even launched, likely indicating that those users wanted to support me > moreso than get something in the game.

Don't under-estimate this. The desire by fans and serious players to support your game and keep you afloat can be a significant factor in the decision to spend money on your game. Predatory monetization can destroy that goodwill, which will in turn make you more dependent on your whales. When I feel like a game is pushing me to spend money, it decreases my respect for the game and the developers and reduces my desire to support them.

> It's easy to be ethical until challenged, but I'd like to think that if I > found users spending ludicrous amounts of money in the game, I'd do > something to curb that behavior.

An ethical approach to whales can significantly mitigate the predatory effects of monetization. However, it is also a fairly invisible monetization technique that doesn't do as much to engender goodwill across your player base.

> In short: I don't think that even if you could purchase Botcoin directly > would the game be pay-to-win.

P2W comes in a couple of different flavors and doesn't really mean just one thing. There are some heavily P2W games where F2P players struggle to compete and spending money becomes necessary past a certain point of the game. (I think of these games as P2W PvP) (Good matchmaking can push a game that would otherwise fall into this category down the the one below.)

There are also a lot of P2W games that don't disadvantage F2P players directly, but just allow players to pay to progress faster. Any games that allows real money to directly convert to a fully unlocked/upgraded account falls solidly into this category. It sounds like your game is one of these. (I think of these games as P2W PvE) (Games with synchronized server starts that would otherwise fall into this category can easily fall into the above category.)

Then there is the whole spectrum of games that provide some in-game advantage, but limit some forms of progression to gample/grinding.

Finally, there are the games that are truly not at all P2W, where real money purchases can only buy cosmetic items and there is no mechanism to provide any in-game advantage to paying players.

I don't like P2W PvP games. I don't mind P2W PvE games, especially when the montization is well done and the money/grinding ratio is high ($1 to save 100hrs of grinding is unacceptable, $100 to save 1hr of grinding is great).

One of my favorite indy P2W PvE games is Hades' Star which is almost entirely unlockable by spending money, but has an extremely high money/grinding exchange. The game also offers a very reasonable permanent package that provides a 10% boost to a couple of specific things.

I hope your stint on HN gives you a boost and helps you reach a sustainable level of income from Bot Land. Good luck!

</comment></comment></comment></comment></comment><comment><USER9> Sounds interesting, but didn't work for me: it got stuck on the "bots are busy assembling the game". There is no indicator of progress, no errors, no logs. It's a good idea to add a feedback button that would upload logs on demand. I'm using Firefox Android with uBO. Only GA was blocked, but there's no way I'm enabling it.

<comment><AUTHOR> Do you mind trying either the app or a different browser? I don't know why it wouldn't load at all. I agree that there should be some form of errors, logs, etc. I believe that will eventually happen if the game makes enough money to continue development. Launching on four platforms was only possible due to being able to thinly wrap the site, and unfortunately, now there are a lot of other important tasks to tackle that will probably happen before this. :(

</comment></comment><comment><USER10> Nice. RobotWar for a new generation.

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

<comment><USER11> I grew up playing RoboWar for the Mac... looks like it was based on the one you linked. Guess every generation has theirs!

</comment></comment><comment><USER12> Woah congrats. I have watched a stream or two of yours and it looks really interesting.

I really liked your marketing document and think others might find it really useful, hope you don't mind me linking it here: [https://docs.google.com/document/d/1TiSmB7IaWpIf_7cUWzk7GAtR...](https://docs.google.com/document/d/1TiSmB7IaWpIf_7cUWzk7GAtR8VU5I5Py- leABO7fDT4/edit?usp=sharing)

(let me know if you are not ok with that and I'll edit the comment)

<comment><AUTHOR> Thanks!

The marketing document is fine to link. It hasn't really been updated much, but then again, I'm going to try more ideas from it now that the game has launched and the fires have died down a bit.

<comment><USER13> Congrats man!

</comment></comment></comment><comment><USER14> The Google code blocks integration is quite nice. as a developer, I wouldnt want to play this though.

<comment><AUTHOR> You can code in a subset of JavaScript too. Even with that in the game, I find Blockly a little bit more usable given the current feature-set in Bot Land right now (mostly the existence of snippets and premade scripts in Blockly). It's nice to get large chunks of code that you can just drag around.

Alternatively, maybe you were referring to some other part of the game when you said you wouldn't want to play this, in which case I'd love to hear your feedback!

<comment><USER15> I think they were just saying that since they code for a living, they don't want to play games that are also code.

<comment><AUTHOR> Oh yeah, you may be right. I took it to mean "given that I know code, I wouldn't want to use a drag-and-drop interface". I've had a few pieces of feedback like that before, and sometimes even pointing out the existing coding interface doesn't please those people. To each their own, for sure!

</comment></comment></comment></comment><comment><USER16> Screeps is also a cool automation game like that (and 100% FOSS!). (Judging from the looks of this it's a very different game though, so try both!)

</comment><comment><USER17> Enjoying it so far, small bug report:

Loadout weapon drag window can get permanently stuck on the screen, requiring a refresh. See here [https://i.imgur.com/cL4x2Vk.png](https://i.imgur.com/cL4x2Vk.png)

Steps to reproduce: Go to Edit Blueprint Window. Start dragging a window. Press backspace to go back to the game field. The window is now permanently stuck.

<comment><AUTHOR> Thank you for reporting this! I say this with no sarcasm: I think this is a completely unique bug.

Also, it's better that I get reports than not, but if you've got any future bug reports or feature suggestions, there is an in-game bug reporter that you can use via the button at the upper right of most screens in the game.

</comment></comment><comment><USER18> Bit of a shameless plug I guess but it's especially fun for me to take a look at this because I worked on a pretty similar game about 3-4 years ago making bots battle each other for the students I was tutoring. Right after that I made another game that was a more single player experience and decided it would be fun to learn OpenGL so I obviously got a lot less done. This definitely looks a lot more polished than what I produced and I hope it turns out well! For those interested in the projects I worked on, you may find them here: [https://gamejolt.com/games/masjien/80426](https://gamejolt.com/games/masjien/80426) [https://gamejolt.com/games/proxy/221194](https://gamejolt.com/games/proxy/221194)

</comment><comment><USER19> On iOS. Signup Email input should be of type email. Password length feedback should be inline - not after typing pw twice and submitting.

Gave up at the 'place two bots' stage. Couldn't work out how to place a bot. Love the idea. Needs UX love!

<comment><USER20> Same here, android, unable to figure out how to place a bot. Everything that made sense (select robot, tap in arena, tap bottom bot name and tap arena. Even double tapping didnt work. Gave up too.

Update. Got two bots (at least based on count), I have no clue how, started fight, but there is nothing to be seen, just black background. Battle finished and again everything black except the menues.

I am fan of bot wars and would love to play it, but this is just too frustrating to use.

<comment><AUTHOR> Thank you too for the feedback! Would you mind either sharing the following or submitting a bug directly through the game? If you'd like to share this outside of the game but still privately, my Discord ID is Adam13531#3531.

• What device are you on?

• Are you using the app or the site?

• If you're on the site, what browser are you using, and have you pinned the site to your home screen, or is the URL bar showing?

• What OS version are you on?

The mobile versions of the game are thin wrappers around the web version ([https://play.bot.land/](https://play.bot.land/)), and there weren't very many mobile users before launch, so bugs certainly made it through the testing process.

<comment><USER20> Yeah I suspected it is just a web game. I am so sorry you have decided to make it web based. I have webgl disabled as it is common for websites to use it for fingerprinting and I will not enable it.

</comment></comment></comment></comment><comment><USER21> A for loop seems to be supported but there is no documentation on how to use it. I'm getting the following error when trying to use a loop index i:

Your for loop's body section is not legal. You can only use literals as a refinement on objects (when trying to index into an array[i] returned from findEntities).

<comment><USER22> I looks like only the two built-in variables "array1" and "array2" can be used like actual arrays. someBot = someArray[0]; will not work but array1 = someArray; someBot = array1[0]; will.

</comment></comment><comment><USER23> If you like these kind of games I recommend this one:

[https://robocode.sourceforge.io/](https://robocode.sourceforge.io/)

</comment><comment><USER24> How was streaming development of the game? Are you concerned about your source being visible? Or feeling like you are being watched or judged while coding? When did you start streaming development? I'm worried my side project is too early in development to stream... Did you end up having to spend a bunch of time making extra stuff for your audience, like the faq you linked?

<comment><AUTHOR> Oh boy, do I have a huge answer for you!

> How was streaming development of the game?

It was great! People ask me a lot about what I'd change if I could go back in time or start again, and while I would certainly change some technological decisions, I would not change the streaming aspect. There are so many great things that have happened over the years, and I feel like the culmination of all of it can be summed up in this launch-day highlight I took: [https://www.twitch.tv/videos/486320333](https://www.twitch.tv/videos/486320333)

That one video felt like it made the whole journey worth it.

> Are you concerned about your source being visible?

I wasn't super concerned for a few reasons:

• Code is copyrighted as soon as you write it, so if someone were to take it, I would be able to take legal action against them.

• Perhaps more importantly, I didn't think anyone would _want_ to copy Bot Land's code. Automation games are growing as a genre, but rarely will they include scripting as the main component. To my knowledge, there wasn't a scripting-based game ~4-5 years ago that proved that they could be successful.

• See the next answer...

> Or feeling like you are being watched or judged while coding?

Impostor Syndrome runs rampant with coders. Did I feel like I'd be judged? Yes. Was I? 100% yes (by some people). Were some people mean about it? You'd better believe it. However, I started streaming for accountability and marketing, and I wouldn't have gotten those benefits if I didn't stick with it.

Also, remember that as a streamer, you control who gets to stay around in your chat. People are entitled to their own opinions, but I think the #1 rule as a streamer is that of entertainment: the show must go on. As a programming streamer, this doesn't mean that you have to be entertaining all of the time since you have to be productive while streaming. Either way, in order to keep the show moving, you have to be in a good enough mood to _do things_. When a troll gets in the way of that, you purge/timeout/ban and move on.

If someone is judging you for your coding style or standards in an unconstructive way, you have tools at your disposal to handle it.

> When did you start streaming development?

I started on September 8th, 2015. I believe I had one follower on Twitch at the time, a real-life friend of mine.

> I'm worried my side project is too early in development to stream...

I don't think anything is really off-limits for a development stream. I've spent entire days streaming myself milling around entirely in a text document (i.e. not even code). I've spent days writing automated tests, triaging bugs, debugging, etc.

> Did you end up having to spend a bunch of time making extra stuff for your > audience, like the faq you linked?

Yes. If I had to estimate how many _full_ work days I've put into just streaming-related tasks, I would say it's about 10-15. Granted, you can just start with practically no preparation and see where it takes you, but I don't advise doing that. My advice on streaming hasn't changed too much in the past years; it's mostly encapsulated here: [https://blog.bot.land/2016/10/being-a- development-streamer-o...](https://blog.bot.land/2016/10/being-a-development- streamer-on-twitch/)

Streaming is just as saturated as games are nowadays. There are a million streamers trying to make it big who "don't care about the numbers, they're just doing it for themselves". If you want to get started, I'd say that you should come up with a goal pretty early on, and that goal should _not_ be to earn money from the stream. I won't share exact numbers, but I make less than minimum wage as a streamer. As a developer at a traditional job (in the U.S.), I'd make plenty of money.

I'd be happy to answer more questions you may have, although I think you'll have to see for yourself how streaming goes in order to consider whether it's worth it. And be ready to come to the conclusion that it's _not_ worth it since it can affect your productivity and possibly your mood/energy.

<comment><USER24> A little more context -- I stream playing games (because it's entertaining to have people drop by). I have no interest in being a streamer for a career, so I don't feel I need to compete with anyone, but if folks found my side project interesting and dropped by to chat I think that could be a nice break.

Do you find it difficult to converse with folks while programming? How do you maintain flow state while streaming? (Maybe this is just a skill you pick up?)

<comment><AUTHOR> > Do you find it difficult to converse with folks while programming? How do > you maintain flow state while streaming? (Maybe this is just a skill you > pick up?)

This comic (which you've probably seen!) sums up context-switching as a programmer: [https://heeris.id.au/2013/this-is-why-you-shouldnt- interrupt...](https://heeris.id.au/2013/this-is-why-you-shouldnt-interrupt-a- programmer/)

Imagine that but multiplied by 100. Every 3 seconds, someone is saying something that you can see out of the periphery of your vision. How difficult it is to interact is up to you; you can hold off on chat and handle it every X minutes, you can let them interact with themselves, or you can interrupt your flow every few seconds.

I try to take extensive notes about what I'm doing at any given moment so that I can always pop the context back off the stack and resume my work. It's a skill you'll hone as you go.

</comment></comment></comment></comment><comment><USER25> Full on programming as a mechanic seems overwhelming, but I like the idea of automation in strategy games

I'll give your game a try, maybe I'll be proved wrong

<comment><AUTHOR> There are three levels of scripting you can do:

* None - just ignore the scripting and let the default AI take care of everything. There are some items that can't be used this way, e.g. Teleport and EMP, because the default AI wouldn't know how you'd want to use them. * Blockly - use the block-based scripting to control your bots. This is what I suggest as the step for newcomers who still want to customize their bots' behavior. * BotLandScript - this is a subset of JavaScript that I only recommend for people who already know how to code.

Blockly and BotLandScript _should_ have feature parity (not that they do right now, but the differences are somewhat minor given the target audiences for each), so you don't necessarily have to code (or even know how to code) to play Bot Land. Then again, scripting will certainly give you an advantage.

<comment><USER26> Blockly (or similar methods like Blueprints in Unreal & Simulink) is how most people will program in the future.

You're going to get negativity from "developers" about using Blockly, but unless they're your target audience don't let it get to you.

Lots of EE's use graphical tools to layout the circuit boards anyway... so text is really just an unnecessary abstraction over schematics & you're bringing programming back to its roots :-)

<comment><USER27> Want to make a timeframe for that prediction? I'd like to record it... While I agree to ignore the criticisms from people who won't even play the game (which includes me, so I haven't commented on it, even though I've played a number of variants on this during high school) I think your prediction here is a stretch. First a quote to consider:

"Linux supports the notion of a command line or a shell for the same reason that only children read books with only pictures in them. Language, be it English or something else, is the only tool flexible enough to accomplish a sufficiently broad range of tasks."

\-- Bill Garrett

Now a point about EEs/CEs... it's _way_ nicer to write:

        module dff (
            q,
            d,
            clk
        );

        output q;
        reg q;
        input d;
        input clk;

        always @(posedge clk) begin:
            q <= d;
        end

        endmodule

than to actually lay out and route a flip flop. Of course you're going to simulate such modules, and use graphical tools (the least of which is just to picture signal waveforms), this isn't to say graphical tools are going away or are pointless, but I would readily take the other side on a bet about your prediction since I don't think programming will even in 100 years be something people think of as manipulating graphical elements rather than typing/chording expressions satisfying some grammar/syntax we'd call a language.

</comment></comment></comment></comment><comment><USER28> Has anyone ever played Robot Odyssey? It was one of most beloved games as a child. It's somewhat of a precursor to this project.

</comment><comment><USER29> Looks awesome, I signed up! I'll try it out over the next few days. Looks like it could have a lot of potential

</comment><comment><USER21> I accidentally removed my bot's head/torso/feet during the tutorial and could not add them back.

</comment><comment><USER30> I always loved the classic PRobots and later CRobots, its a great way to learn programming.

</comment><comment><USER31> Very interesting. It looks just fun at first but become more and more addicting. Good job!

</comment><comment><USER32> If you like the genre you should also check Gladiabots on Steam: [https://store.steampowered.com/app/871930/Gladiabots/](https://store.steampowered.com/app/871930/Gladiabots/)

</comment><comment><USER33> looks like a great game! Thanks for working on it!</comment>


Flow Hive Honey on Tap Directly from Your Beehive - <AUTHOR> https://www.indiegogo.com/projects/flow-hive-honey-on-tap-directly-from-your-beehive <comment><USER2> Already over funded at 305% after just 15 minutes. Pledges increasing at about $1,000 / second.

Great work to the Flow guys on building the hype before the launch. It appears the last minute change from Kickstarter to Indigogo didn't do any damage.

<comment><USER3> I find it amazing that there is over $1.3MM in demand (as of this writing, there is $1.36MM pledged) for beehives/beehive accessories. Either I'm misjudging the number of people who have backyard beehives or the PR machine behind this deserves a case study in every marketing class in every college worldwide.</comment></comment>


Things you should know about Token-based Authentication - <AUTHOR> http://blog.auth0.com/2014/01/27/ten-things-you-should-know-about-tokens-and-cookies <comment><USER2> I think token based authentication for API calls is great, but for browser based usage cookies are extensively studied and well understood mechanism that is IMO a much safer option.

You wrote that XSS is much less risky that CSRF, but 'based on our experience' argument is not really strong. For example OWASP study lists CSRF as easier to prevent than XSS: [http://owasptop10.googlecode.com/files/OWASP%20Top%2010%20-%...](http://owasptop10.googlecode.com/files/OWASP%20Top%2010%20-%202013.pdf) To me this makes sense, XSS vulnerability can be introduced anywhere in your application code, CSRF can be dealt with in a single middleware, which greatly simplifies prevention.

How about https only cookies? Can you enforce that tokens won't ever be send over http? Can your enforcement work in a presence of XSS (as is the case with a combination of 'secure' and 'httponly' cookie flags).

With tokens it is easier to do authenticated cross origin requests. But a new mechanism may be vulnerable to a new class of vulnerability, where a web app will be tricked to make such requests to evil domains (it may sound unrealistic, but remember that CSRF was discovered many years after cookies were introduced).

Cookies can also require no server side state. You can put signed, encrypted content in them and many frameworks support this, which shrinks a list of token benefits a bit.

I do think that token based approach is more elegant from the architecture point of view, because you don't need to deal with two different authentication schemes to support browser traffic and API calls, but I'll still stay with cookies for browser auth.

<comment><USER3> The [OWASP] recommended approach to solve CSRF is with a Synchronizer Token [1].

Basically render a token with a hidden input with your form associated with the user session and as you mention use a middleware to validate the token on every request.

So, let's talk about Syncronizer Token and "Single Page Applications" which was the topic on our first blog post. The recommended way for this is to get a token the first time and use the token in a header in every AJAX request. [2]

So, you now have cookies that are vulnerables to CSRF and a token in your javascript scope, in the same way you have the JWT.

If you think XSS is that common, the http only cookie+synchronizer token is more work and equally vulnerable to CSRF.

While with JWT you can stole my token if the site is XSS-vulnerable, but you can't trick me with the browser to do things I didn't meant.

I still consider XSS is easy to prevent than CSRF, you just need to escape user inputs always which is what every major template engine does by default. Usually you get the common syntax which does ESCAPE the user input.

Why OWASP states the contrary? I have one word: php. I blame php, wordpress and wordpress plugins. Consider that half of the internet runs on wordpress.

[1]: [https://www.owasp.org/index.php/Cross- Site_Request_Forgery_(...](https://www.owasp.org/index.php/Cross- Site_Request_Forgery_\(CSRF\)_Prevention_Cheat_Sheet#General_Recommendation:_Synchronizer_Token_Pattern) [2]: [https://www.owasp.org/index.php/Cross- Site_Request_Forgery_(...](https://www.owasp.org/index.php/Cross- Site_Request_Forgery_\(CSRF\)_Prevention_Cheat_Sheet#Encrypted_Token_Pattern)

</comment></comment><comment><USER3> In case you missed, this is a follow up of our first blog post:

[http://blog.auth0.com/2014/01/07/angularjs-authentication- wi...](http://blog.auth0.com/2014/01/07/angularjs-authentication-with-cookies- vs-token/)

and

[http://blog.auth0.com/2014/01/15/auth-with-socket- io/](http://blog.auth0.com/2014/01/15/auth-with-socket-io/)

We are here to answer any question about this one.

<comment><USER4> FYI, your blog doesn't render properly with the Disconnect extension:

[https://chrome.google.com/webstore/detail/disconnect/jeoacaf...](https://chrome.google.com/webstore/detail/disconnect/jeoacafpbcihiomhlakheieifhpjdfeo)

(The code sections don't highlight or don't show up at all, etc).

</comment></comment><comment><USER2> Am I right that for browser use case this mechanism can be used only to authorize access to resources that are requested with JavaScript?

For example, I can't use an 'img' HTML tag to include images that require authorization, because browser won't set a Bearer header while requesting images?

<comment><USER5> For images that are protected you can use this approach

[http://blog.auth0.com/2014/01/27/ten-things-you-should- know-...](http://blog.auth0.com/2014/01/27/ten-things-you-should-know-about- tokens-and-cookies/#file-downloads)

<comment><USER2> But with tokens in URLs you can do CSRF.

<comment><USER3> No, you need the signed token for the link, that will only works for that particular url (protocol, host, path, query), for a breve period of time and only for GETs. As mentioned in the blog post, you can check hawk bewits:

[https://github.com/hueniverse/hawk](https://github.com/hueniverse/hawk)

</comment></comment></comment></comment><comment><USER6> Cool post! Auth is one of those things I never really want to dig into, so it's great when someone makes something that demystifies things a bit.

<comment><USER3> thanks, glad it helped!

</comment></comment><comment><USER7> So with JWT you package up all of your claims into JSON, protect that with HMAC (and encryption?) and give that to the client.

With opaque bearer tokens you effectively have the same claims but these are stored on the server (e.g. in a database) and keyed by the opaque token value. The claims never leave the server.

Is that roughly correct?

<comment><USER5> Yes, that's correct.

<comment><USER7> So to get the advantages of the JWT approach you _really_ have to trust the content of the tokens you receive - if you start validating everything and scrutinizing the claims made in detail (especially against a database table of issued tokens) you might as well use an opaque bearer token?

<comment><USER5> Yes, I don't think there is a one-size-fits-all answer. It will depend on your use cases. You can always start small using JWT and move to database backed tokens when you get a better idea of your architecture, use cases and authorization needs. For the user, it will still be opaque and bearer.

</comment></comment></comment></comment><comment><USER8> Is there a way to make token-based authentication useful in the browser when I am not using JS to send my requests?

e.g., can I get the browser to send the auth header when the user clicks a link after having signed in? Suppose I'm not using any JS on my page at all, or the browser has JS disabled.

<comment><USER9> I think you generally just fall back to using normal website auth (cookies/session/etc.).

If you really don't want to do that, you could probably work up something like the author discusses in item No. 5, and generate query parameter "tokens", and append those query params to every link on the rendered page.

</comment></comment><comment><USER10> On a somewhat related note, does anyone have a recommendation for a good introduction to the different types of web based authentications?

I've just started working with AngularJS with a Django backend and authenticating users has been one of the biggest issues I've faced so far.

<comment><USER3> in addition to our first blog post:

[http://blog.auth0.com/2014/01/07/angularjs-authentication- wi...](http://blog.auth0.com/2014/01/07/angularjs-authentication-with-cookies- vs-token/)

Jose Paddilla is using it with django and he wrote a blog post:

[http://jpadilla.com/post/73791304724/auth-with-json-web- toke...](http://jpadilla.com/post/73791304724/auth-with-json-web-tokens)

and he wrote the backend for django:

[https://github.com/GetBlimp/django-rest-framework- jwt](https://github.com/GetBlimp/django-rest-framework-jwt)

I hope this help you.

<comment><USER10> Thanks! Will check these out.

</comment></comment></comment><comment><USER11> Great stuff guys, keep it up!</comment>