How do people learn to cook a poisonous plant safely? - <AUTHOR> https://www.bbc.co.uk/news/business-48859333 <comment><USER2> Some survival teachers will recommand this:

1 - do not do it if you can avoid it

2 - if you really must, then try the folliwing:

* break the plant, put a tiny amount of it on your armpit. If it's not reacting (itching, becoming red, etc) after 10 minutes, continue.

* break the plant, put a tiny amount of it on your lips. If it's not reacting, after 10 minutes, continue.

* break the plant, put a tiny amount of it on your tongue. If it's not reacting after ten minutes, if the taste is not off putting for any reason, and if you don't get any sensation/intuition (for a better word) that something is wrong, continue.

* masticate a tiny amount. Same.

* swallow a tiny amount. Wait for 2 hours. Observe obvious symptoms, but also digestion. It should be easy to process at this amount.

If all that pass (yeah, it's very long), remember this doesn't ensure the plant is perfectly safe, just lowers the risks.

<comment><USER3> > masticate

I haven't heard this word since my SAT-prep classes. It means "chew". In case there are English-2nd language people here.

<comment><USER4> > I haven't heard this word since my SAT-prep classes. It means "chew". In > case there are English-2nd language people here.

There's an interesting -- understandable but very wrong -- viewpoint that the right way to form sentences that a second-language speaker can understand is to talk in the way you might talk to a toddler.

Reality is pretty much the opposite. A toddler has perfect grasp of their language's grammar and is likely to know common words, less likely to know uncommon words. For best results, you'd communicate with a toddler using complex sentences and "easy" vocabulary.

A foreign learner has a much shakier grasp of the grammar and may have a pretty spotty vocabulary. But they're also likely to have a dictionary. And uncommon words are much easier to understand, given a dictionary, than common words are. The fact that they're uncommon means they don't have the wide variety of meanings and usages[1] that common words do. For best results, you'd communicate with a foreigner using simple sentences and "difficult" vocabulary.

[1] For reference, here are the ABC dictionary glosses for the very common Mandarin word 做:

1\. make; produce

2\. cook; prepare (food)

3\. do; act; engage in

4\. be; become

5\. write; compose

6\. celebrate

7\. be used as

8\. form/contract a relationship

9\. pretend; feign

10\. (slang) make love

11\. play tricks to punish somebody

<comment><USER5> Using "chew" rather than "masticate" is not talking to someone like they are a toddler though. It's the usual way you would explain the action to someone else.

<comment><USER4> > Using "chew" rather than "masticate" is not talking to someone like they are > a toddler though.

> It's the usual way you would explain the action to someone else.

How exactly are you contrasting these? Which words do you think toddlers are likely to know?

<comment><USER5> If I say I'm talking to someone like they're a toddler the point of that is I'm speaking differently than I would to an adult. Using the word "chew" would not be something I'd avoid if talking to an adult.

For example, "hi, how are you?" Is something you could say to an adult or a child. It's not "speaking to someone like they are a child" though.

Does that make sense?

<comment><USER4> But _correcting_ the original "masticate" to "chew" is an adjustment you make based on the mentality I described. As multiple comments have pointed out, "masticate" is not generally more difficult for a second-language speaker to understand than "chew" is, and in some common cases (Spanish, French...) it's considerably easier. The correction was targeted at native speakers, on the theory that they had limited vocabulary, but justified as if it was targeted at foreigners. If the intention was really to benefit foreigners, that impulse was misplaced, for exactly the reasons I detailed.

> For example, "hi, how are you?" Is something you could say to an adult or a > child. It's not "speaking to someone like they are a child" though.

The example we have here is more along these lines:

A: Salutations!

A: Oh, I'm sorry -- I meant, "how are you?"

This is an example of speaking to someone like they are a child. You come out with a natural (for you)[1] word choice, and then pre-emptively decide your interlocutor can't handle it, so you adjust to something you believe is simpler. You are speaking differently than you would normally.

[1] [http://www.basicinstructions.net/basic- instructions/2009/1/2...](http://www.basicinstructions.net/basic- instructions/2009/1/26/how-to-use-your-words.html)

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Shamans eat mushroom (Amanita muscaria) to get hallucination trip. Multiple toxins in the mushroom cause severe side-effects that spoil the trip, including severe headaches that last 10 hours. Instead of eating the mushroom directly, they fed it to reindeer and then drank its urine reducing the amount of toxins.

Imagine the process that led to the discovery of this process.

<comment><USER7> Even in the present day, civet coffee [seeds from the excrement of civets who had eaten coffee berries] is used for its milder taste. [1]

Not really related to food, but urine was used in leather tanning etc. I read about this in the book "Eskimo Life" [1893] by Fridtjof Nansen, the famous explorer. [2] It is not unusual to have used animal urine and excrement for various purposes.

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

[2] [https://www.gutenberg.org/files/46972/46972-h/46972-h.htm](https://www.gutenberg.org/files/46972/46972-h/46972-h.htm)

<comment><USER8> > "The civets are taken from the wild and have to endure horrific conditions. > They fight to stay together but they are separated and have to bear a very > poor diet in very small cages. There is a high mortality rate and for some > species of civet, there's a real conservation risk. It's spiralling out of > control. But there's not much public awareness of how it's actually made. > People need to be aware that tens of thousands of civets are being kept in > these conditions. It would put people off their coffee if they knew"'.

> In the coffee industry, kopi luwak is widely regarded as a gimmick or > novelty item.[18] The Specialty Coffee Association of America (SCAA) states > that there is a "general consensus within the industry ... it just tastes > bad".

<comment><USER7> I agree. Industrial scale exploitation of animals for gourmet items of dubious taste abound, and should be discouraged. I was just pointing out that the practice mentioned by OP was not as rare as it sounded.

</comment></comment></comment></comment><comment><USER9> It's like sword making in Japan. The process was ritualized and copied, long before there was understanding of the underlying chemistry and why it worked.

Most of what we know how to do, like cooking, is learned by copying, not by understanding.

Despite bow and arrow being refined for millenia, the compound bow wasn't invented until 1966, when the inventor realized that nobody had applied modern engineering principles to bow design.

<comment><USER10> > _the compound bow wasn 't invented until 1966_

Err.. doesn't the Mongol bow count? I distinctly recall reading how the fact that it was made of multiple materials made it a lot more lightweight and efficient than bows made out of one piece.

EDIT: NVM, I confused "compound" for "composite"

EDIT2: And this passage on Wikipedia explains my confusion

> _In literature of the early 20th century, before the invention of compound > bows, composite bows were described as "compound".[2] This usage is now > outdated._

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

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

<comment><USER11> "The last recorded use of the longbow in war was by British Lt. Col. Jack Churchill, who used it to kill a German soldier in World War II"

That sounds distinctly like something from a Neal Stephenson novel...

</comment></comment></comment><comment><USER12> Most of discoveries like these fall under the "enough monkeys + enough time" rule.

That is one of the biggest reasons I'm excited about the possibility of meeting an alien species; imagine all the things they must have discovered in _their_ millions of years of trial and error.

Even if they're not godlike in terms of technology, the simple difference in perspective must have yielded at least a few discoveries that could potentially change human civilization.

<comment><USER13> The crazy thing is, we are extremely close to becoming those godlike aliens.

We can now simulate most biological processes, and the technology to simulate even more is quickly approaching. What will be world be like when we can execute centuries of trial and error in milliseconds?

<comment><USER12> We would still have to solve the politics of applying those technological advances uniformly rather than the benefit of a relatively small percentage of the species.

> _The crazy thing is, we are extremely close to becoming those godlike > aliens._

Yes, I also actually worry about the possibility that the first alien civilization we meet may be less advanced than us, and the greedy fucks among us will exploit them the same way they do their fellow humans.

<comment><USER14> > We would still have to solve the politics of applying those technological > advances uniformly rather than the benefit of a relatively small percentage > of the species.

This is solved already... Capitalism makes it work across time.

(What is discovered now will with most certainty be available specie-wide in a couple of decades... and it's accelerating).

<comment><USER13> Capitalism is the best we have so far, and I am very pro-capitalist, but it is far from an ideal solution.

There is lots of unfairness and non-uniformity in the system, for example where you are born matters much more than it should.

</comment></comment></comment></comment></comment><comment><USER15> Being Swedish, it's a bit weird that they don't acknowledge that the "young Swedish doctor named Hans Rosling" then went on to become quite famous for other things, too [1]. Usually things like that are pointed out in texts like these.

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

EDIT: Fixed a typo.

<comment><USER16> I think it's might have been a knowing ommission. This piece is pretty much a transcript of Tim Harford's series "50 Things That Made the Modern Economy". The episodes for that series are only 8 minutes long, so there isn't much time for extra biographical info without sacrificing the main story of the piece. I wouldn't be surprised if this article wasn't just written up by a scribe from the show's script and Harfords byline slapped on it.

Harford also presents the excellent series More Or Less, which is all about numbers and statistics in the news. Rosling gets mentioned fairly often, and is clearly something of a personal hero (and friend I think) of Tim's. He knows exactly who he was and what he did. I just don't think there was the time in the programme to cram that in.

<comment><USER17> > Rosling gets mentioned fairly often, and is clearly something of a personal > hero

"was", unfortunately.

<comment><USER16> Ineed, sadly. Rosling is one of the people on my "fantasy dinner-party" list.

<comment><USER17> If I were POTUS I would have weekly dinners with three to four people I admire. From different fields, but some connecting subject. Presumably the guest would find that stimulating, as well. Everything off-the-record, in an informal atmosphere (some chairs by a fire maybe). Afterwards, the guest list is published (for transparency – but not the subjects that we talked about).

I mean, you can have anybody! Nobody declines such an invitation.

Do presidents actually do this? I feel it would be the greatest perk.

<comment><USER18> Quite a few people have declined for the current POTUS, but then again, would you want cold fast food and rhetoric shouted at you in the Whitehouse?

<comment><USER19> Lets put petty political posturing aside. If you have any issue you care about, the opportunity is singular. It would be a great waste to decline, no matter the dinner faire.

<comment><USER18> Oh I agree with you, but it seems to be a matter of principals.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> Something I didn't see in the article or mentioned in comments here, much to my surprise, is the simple fact that "the dose makes the poison" as the saying goes. In hunter-gatherer societies they would have consumed a wide variety of foods in moderation, with any of them potentially toxic if consumed to excess. As they learned how to prepare the toxic but plentiful food (plentiful because toxic, naturally) they would have, step by step, developed the techniques all without the need for anyone getting killed by poisoning. I think we tend to miss this because we are obsessed with logical puzzles and poisons that have binary action, but almost nothing in the plant kingdom is like that. This obviously has some corollaries for modern diets and fad diet obsessions as well.

<comment><USER21> I'm not sure they had the luxury of a variety of foods in moderation. I think in early societies they fasted and then gorged when food became available.

<comment><USER20> Hunter-gatherer societies hunted and gathered by definition. They had no such luxury of a choice of meats, just "what was killed today" or "nothing". They would have had no such luxury of being picky about which of the edible plants they ate, except for not eating too much of the poisonous ones. It's only after a long time of mutual adaptation that any society can become so dependent on a single foodstuff like cassava or nardoo. And that gives plenty of time to develop the process of preparation, step by step.

<comment><USER21> I don't get it. If it's poisonous, and the ones mentioned in the article are _very_ poisonous raw, then how does the first step ever happen?

The article professes to explain "How do people learn..", then doesn't provide any plausible route to that happening.

<comment><USER22> Cassava is also bitter as hell to start. Most things that reduce that bitterness _also_ reduce the toxicity.

As long as it doesn't become a primary foodstuff such that it will build up in your system, you don't need to get all the hydrogen cyanide.

However, any group that can get _all_ the HCN out, will also be much better off when the famine comes. They will survive; the other groups will not. That's a powerful force.

<comment><USER20> Or even more powerful: the other groups will _learn_ , and the cultural practice will spread faster than genes ever could.

</comment></comment></comment></comment></comment></comment><comment><USER23> I suspect the question reveals a blind spot in perspective. Food, by its very nature, is dangerous and fights back. Modern society insulates us from this risk; with a secure, safe, food supply, risking one's life to try something new seems insane and it's hard to imagine enough people have ever done it to learn significant secrets and what would be the point anyway? If the food supply is neither secure nor safe, risking one's life to give the community a new option seems much more reasonable and even heroic, and an area in which people would try extreme things for a shot at glory.

Do people get injured or even killed hunting wild game? Of course. That's expected, and it's just how you get food. Do people get injured or even killed learning the secrets of wild plants? I would expect that's expected, too.

So my suspicion is that this question is a lot like asking, "How did 18th century humans learn to defeat smallpox?" Well. It was hard. And the stakes were high. And a lot of people died while we tried stuff that didn't work. But in the end, humans are brave and resourceful especially when the need is great.

</comment><comment><USER24> Those are quite complex and evolved processes to learn in the first place to start with. It must be something more than trial and error, right? Am I the only one thinking that if a plant killed me, or slowly made my legs paralyzed, more likely one would abandon that process rather than say: let's try to roast it and/or leave it outside for a couple of days. Unless they were desperate and had no other food source.

The case with the cake is even more mesmerizing, it slowly blocked overtime their ability to process B1. How could people tell that it was from that food?? And how do they go, yeah, we just forgot to do X

<comment><USER25> > How could people tell that it was from that food? And how do they go, yeah, > we just forgot to do X

There's no need for people to understand what is going on. People have a tendency to try random stuff without any reason. The folks who accidentally do the right thing survive, while the others die.

And it's also important to note that probably not a single person came up with the whole procedure. People might use a recipe that worked for a similar plant, and adapt it. A lot of people probably died or became ill. They likely never realized their mistake. It's just that over the years the people who did it right had an evolutionary advantage and survived, and now we wonder how they figured it out, when it was all just an accident.

<comment><USER26> > There's no need for people to understand what is going on. People have a > tendency to try random stuff without any reason.

You're not giving people very much credit. The things they try may seem random to an outside observer, but they made sense to the person trying them. They had some mental model of how it works, and applied that model. Sometimes even a very inaccurate model is good enough.

<comment><USER25> I think you are giving people too much credit. I feel like most of the time the mental model only comes after the fact, in an attemp to rationalize whatever ridiculous things people do.

Look at people who flock to homeopathy, or those who buy "water vitalisation" devices, or other ridiculous gimmicks. There's no rational reason why people would come up with ridiculous things like that. Unless you look at it from an evolutionary perspective. These ridiculous ideas are just people randomly exploring the search space, and natural selection picks the ones who got something right.

<comment><USER26> > Look at people who flock to homeopathy, or those who buy "water > vitalisation" devices, or other ridiculous gimmicks. There's no rational > reason why people would come up with ridiculous things like that.

What are you talking about? Those things absolutely have a model behind them. It's an incredibly bad model that doesn't stand up to any serious scrutiny, but it is a model none the less.

> These ridiculous ideas are just people randomly exploring the search space, > and natural selection picks the ones who got something right.

I think you might be giving the word "model" too much weight. It doesn't have to be a mathematical proof or anything. "God won't let me die because I'm too pretty" is a model.

</comment></comment></comment></comment></comment><comment><USER27> Nice to see the PR campaign for Secret of Our Success getting some traction. It's a fantastic book and Joe Henrich's stuff is super interesting, his thesis is that humans are pretty dumb on our own and culture is like an enormous shared brain that allows us to adapt to hostile environments. Lots of traditions don't make any sense at all, but they're important.

Don't spend as long processing your cassava and you won't notice the effects of the poisoning until a lot later. To you it just seems like you're saving an hour or so per day. If you think about it, being extremely conservative when it comes to tradition has been one of the very best strategies for staying alive up until relatively recently in the human timeline.

<comment><USER28> ha I was gonna comment this sounds like a book I read recently (since I didn't read TFA because who even does that).

I'm unsatisfied with the cassava and acorn stuff. I get that metabolism is externalized and I get that once it is a cultural practice then that's just how it is. I struggle with envisioning the part in between where the processing is newish and becoming a practice, especially in regards to something like the cassava toxin that doesn't happen until decades later. How does a processing strategy sustain in those early iterations? Versus the animal husbandry practices, they have more immediate results that seem less vulnerable to biases making false causation. I think I struggle with the making sense part of it, what I got from the book is that considering cause is a luxury won by doing it "because I said so".

<comment><USER27> I'm 100% with you on that, and I have no idea how you'd go about assembling that kind of forensic data.

</comment></comment></comment><comment><USER29> > Nardoo, a type of fern, is packed with an enzyme called thiaminase, which is > toxic to the human body. Thiaminase breaks down the body's supply of Vitamin > B1 [...]

A slightly tortured sentence - B1 is thiamin, so thiaminase is an enzyme that breaks it down by definition, not some sort of (in)convenient coincidence.

(Perhaps it's deliberately avoiding using both 'thiamin' and 'thiaminase' for fear of confusing the poor reader, but I might have opted for 'is packed with an enzyme that breaks down the body's supply of thiamin (vitamin B1)' \- or just not name it beyond B1 at all. IANAJournalist, though.)

<comment><USER30> Aren't enzymes proteins that aren't absorbed? Maybe they'll break down thiamine in the digestive tract, but they shouldn't really break down the body's internal stores, right?

<comment><USER31> Body storage of thiamine is minimal.

[https://www.who.int/nutrition/publications/en/thiamine_in_em...](https://www.who.int/nutrition/publications/en/thiamine_in_emergencies_eng.pdf)

>> Body storage of thiamine is minimal, the liver being the main extra- muscular storage site. In young and healthy non-alcoholic individuals, subjective symptoms appear after 2 to 3 weeks of a deficient diet (Brin,1963). Characteristic early symptoms include anorexia, weakness, aching, burning sensation in hands and feet, indigestion, irritability and depression. After 6 to 8 weeks the only objective signs at rest may be a slight fall in blood pressure, and moderate weight loss. After 2 to 3 months apathy and weakness become extreme, calf muscle tenderness develops with loss of recent memory, confusion, ataxia and sometimes persistent vomiting (Anderson et al,1985).

<comment><USER30> Gotcha. And it won't help you absorb what you ate if you're eating it everyday.

</comment></comment></comment></comment><comment><USER32> For people to learn to cook poisonous plants safely, a lot of other people must have died from food poisoning. So why did they eat bad stuff? Well, if you're hungry enough, you'll eat anything. And people frequently got very hungry in history. The clever part is where somebody remembers who died or got ill and passes on the information.

<comment><USER20> Someone has to know what other people ate, know what of what they ate killed them, remember that, pass it on, and be believed for that to work. It's easier if the person gets sick and doesn't die, and then they themselves can tell the story.

<comment><USER32> _> Someone has to know what other people ate, know what of what they ate killed them, remember that, pass it on, and be believed for that to work._

Yes, this is the tricky part. Per the article, such knowledge is passed on culturally, i.e. by people imitating their betters. But that's not the whole story. My guess is that occasionally, in unusual circumstances, some wise person would step in and say, 'No, don't do that!' (without necessarily being able to explain why).

An important clarification is that, contra the article, people can't literally imitate other people. Rather, they guess the _meaning_ of other people's behaviour. Again, without necessarily being able to explain it or even state it in words. See Chapters 15,16 of _The Beginning of Infinity_ , by David Deutsch.

</comment></comment></comment><comment><USER33> This is basically the sound argument for conservatism.

A lot of traditions and systems don't seem to make any sense, but you need to be very careful before tearing them out, because they were often formed through generations of hard won experience ("written in blood"), and if you lose them, you have to start that process over.

<comment><USER34> On the other hand, those things were found out by trying many different things.

I think societies benefit from having a relatively large body of somewhat conservative folks, and some more experimentally minded people to come up with new, improved stuff.

The optimal ratio likely depends on how quickly the environment around you changes, how safe it is etc.

</comment></comment><comment><USER35> People that defend the Carnivore diet, argument that plants don't want to be eaten and because they lack locomotion to run away but are excellent at chemistry, have developed toxins to protect themselves from predators.

<comment><USER36> And these toxins might bioaccumulate in the flesh of the animal that gets eaten, poisoning the carnivore even more.

<comment><USER37> Depends on the toxin. I can't think of any example off of the top of my head, and it's a bit hard.

Toxins that bioaccumulate either are produced outside and don't work well inside a biological system (heavy metals, etc) or are fat-soluble

Easiest for plants to do is make neurotoxins as they don't have a nervous system to get bothered by it. But those are usually water-soluble.

<comment><USER35> Oxalates sometimes stay on the animal.

</comment></comment></comment></comment><comment><USER37> A lot of plant toxicity is not just "you die" but get sick and is able to recover

That helps with trial and error and some standard processes (like cooking) help reduce toxicity

Now, how did indigenous people figured out the nixtamalization process beats me

</comment><comment><USER38> This article is interesting but somewhat misleading, to the point that I don't know what information to trust. Yes, it does take many steps to turn cassava into a refined flour for baking, but cassava is easily eaten--just peel and boil it, as I do often (it's readily available in many grocery stores in Canada, and a staple of Latin American culture). Cooking is the same basic process used to make many borderline or poisonous foods edible, from bitter almonds to kidney beans. The author appears to conflate some specialized regional cooking techniques with simply making food safe to eat.

<comment><USER39> You are buying and eating the so called sweet variety which is safe to eat after proper cooking. The ones used for making flour is called bitter and way more toxic thus the elaborate process.

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

<comment><USER38> Ah, thanks for that. You are of course right, and I didn't realize there was a difference.

</comment></comment></comment><comment><USER40> There's another dish made from manioc leaves in Amazon region called Maniçoba and I have a hard time understanding how it exists. [https://en.m.wikipedia.org/wiki/Mani%C3%A7oba](https://en.m.wikipedia.org/wiki/Mani%C3%A7oba)

It's made by boiling the plant leaves a whole week to remove the toxins.

Doing it by on a stove today is extremely time consuming, imagine doing this in the middle of the forest with heavy rain falling every couple of hours.

</comment><comment><USER41> Well, first, you make a lot of kids...

Joke aside, this article is... incomplete at best:

> "Toxic plants are everywhere. Sometimes simple cooking

> processes are enough to make them edible. But how does

> anyone learn the elaborate preparation needed for cassava

> or nardoo?

> No single person does, according to Joseph Henrich, an

> evolutionary biologist.

> He argues this knowledge is cultural.

...

> In South America, where humans have eaten cassava for

> thousands of years, tribes have learned the many steps

> needed to detoxify it completely: scrape, grate, wash,

> boil the liquid, leave the solid to stand for two days,

> then bake.

> Ask why they do this, and they will not mention hydrogen

> cyanide. They will simply say "this is our culture".

Never ask a scientist something outside their specialties. Evolutionary biology and sociology are differenent. This article misses the fact that these cultures also do know that the food is unsafe without these steps. In Japan, where they eat fugu, the poisonous fish, they know why they remove the toxic parts. In France, where we do tons of cheese from raw milk, we know why we need fresh milk to do that: otherwise you get sever food poisoning. My mom used to grow rhubarb and do jam, she explained to me that the leaves are toxic.

I agree that there may be or have been useless steps in the process and that it was not as well understood 100 years ago as it is now, but this is not just pure dumb imitation.

</comment><comment><USER42> Fascinating stuff!

"But overall we apparently did better by copying without question than by assuming, like the chimps, that we were smart enough to tell which steps we could safely ignore."

In defense of the cargo cult, perhaps!

<comment><USER43> Explanation rather than defense. The process of cargo-culting makes a lot of sense over evolutionary timescale, because only very recently have people started to discover and achieve the means of _not_ working by trial and error (and falling prey to ritualised processes and local maxima).

<comment><USER44> > falling prey

I mean, it's fine for people not to dedicate all the brain to all the things all the time, some level of cargo-culting makes us way more efficient in more pressing / important task trough the day.

like, shaking a tv remote usually helps getting some life into it. there's some reason to it, it scrapes a little the oxidation between the batteries and the contacts, but for most people is cargo-culting, imagine everyone having to do a research on it before accepting shaking as the methodology, and this for all the daily tasks we do because we saw our parents do before us.

</comment></comment></comment><comment><USER45> I remember a documentary years ago with a cool redemption story in it. They followed a primate troupe around for a couple of years.

One of their newest members was a young male that had been ousted from his birth troupe. He had trouble integrating but they let him be. Let's call him George.

Next year was a drought year. Food is getting scarce. Distress is building. One day, some of the troupe find George eating some fruit. Fruit that the troupe had never been observed eating. WTF George, you can eat those? So they watch him, and watch him, and nothing bad happens. Pretty soon the whole troupe is eating this new food source that has been under their noses the whole time.

Hypothesis: primates do not instinctively know what is edible any more than we do. It's learned behavior picked up from observation. If one social group eats a food it doesn't mean that all of them do, and in this case bringing in an outsider brought new ideas.

<comment><USER46> "Let Mikey try it, he'll eat anything. He likes it! Hey Mikey!"

(1970s advertising, channeling racial memory.)

</comment></comment><comment> pure-awesome There's a book called "The Secret of Our Success" which covers this topic. [https://www.amazon.com/Secret-Our-Success-Evolution- Domestic...](https://www.amazon.com/Secret-Our-Success-Evolution- Domesticating/dp/0691178437)

I have not read the book, but I've read a pretty good summary and blog post about it here (~7'700 words): [https://slatestarcodex.com/2019/06/04/book- review-the-secret...](https://slatestarcodex.com/2019/06/04/book-review-the- secret-of-our-success/)

I found the arguments fascinating. Especially surprising was the argument that e.g. using bones to divine where to hunt can serve a useful role despite the apparent uselessness of divination. In this case, the argument goes, it serves as a randomizing tool to prevent over-hunting in one spot by independent groups (though of course the tribes themselves could not provide that reasoning).

\---

Follow-up blog posts:

A list of excerpts chosen by the blog author: [https://slatestarcodex.com/2019/06/05/list-of-passages-i- hig...](https://slatestarcodex.com/2019/06/05/list-of-passages-i-highlighted- in-my-copy-of-the-secret-of-our-success/)

Comments on the previous blog posts (useful particularly because some comments point out potential errors in the book): [https://slatestarcodex.com/2019/06/11/highlights-from-the- co...](https://slatestarcodex.com/2019/06/11/highlights-from-the-comments-on- cultural-evolution/)

<comment><USER47> The author of that book is referenced in the article.

>No single person does, according to Joseph Henrich, an evolutionary biologist.

>He argues this knowledge is cultural. Our cultures evolve though a process of trial and error analogous to evolution in biological species. Like biological evolution, cultural evolution can - given enough time - produce impressively sophisticated results.

<comment> pure-awesome Ah, you're right; I didn't make the connection, thanks.

</comment></comment></comment><comment><USER48> It's interesting that the same ideas are finding their way into AI lately. The AlphaStar Starcraft 2 agent was trained first using imitation learning to mimic human games, then was evolved using a sort of cultural evolution whereby different agents competed and the best were saved for the next generation.

</comment><comment><USER49> Wow, one of the characters in the story, Hans Rosling, is the same fellow famous for his application Gapminder and the TED talks where he tells us about our misconceptions of the world (that are frequently more negative than they should be).

</comment><comment><USER50> "Nardoo, a type of fern, is packed with an enzyme called thiaminase, which is toxic to the human body. Thiaminase breaks down the body's supply of Vitamin B1, which prevents the body using the nutrients in food.

Burke, Wills and King were full, but starving."

It's interesting how resistant people often are to accepting that the contents of what you eat significantly matters rather than just the caloric content, when discussing diets and weight management.

Yet in the context of people starving to death while eating food chock full of calories, nobody seems to be up in arms shouting "Heresy! Calories in, calories out!"

<comment><USER51> Firstly calories in, calories out is still in effect there. The toxin inhibited the calories in part. "In" doesn't mean "in your mouth" it means metabolised.

Secondly, obviously none of these people are referring to eating poison when they say where you get calories doesn't matter in terms of weight management. They are talking about people eating things that are plausibly going to be eaten by someone in a modern society, not people wandering the outback with no idea what they are doing. For similar reasons they also don't append "for individuals with something approximating normal metabolic function" every time they say say it.

Using the above story as evidence against calories in/calories out for weight management is missing the forest for the trees.

</comment></comment><comment><USER52> Societies are full of random stuff we learned just by trial and error and we don't even know why we do it. Can't recommend enough this book The Secret of Our Success: How Culture Is Driving Human Evolution, Domesticating Our Species, and Making Us Smarter ([https://www.goodreads.com/book/show/25761655-the-secret- of-o...](https://www.goodreads.com/book/show/25761655-the-secret-of-our- success))

</comment><comment><USER53> I think the information about cassava is wrong, i eat it since i was a child only boiling and deep frying. Also here in Brazil we have a plant called Maniçoba that has to be cooked for at least 4 days to release all hydrogen cyanide that it contais:

[https://en.wikipedia.org/wiki/Mani%C3%A7oba](https://en.wikipedia.org/wiki/Mani%C3%A7oba)

<comment><USER54> AFAIK, there are two different types of cassava: the one we eat, and the one that's poisonous (which I think they called _mandioca braba_ ) and is only used to make _farinha_.

</comment></comment><comment><USER55> The one I've always wondered about is fugu fish. How on earth did anyone figure out that one small part could be eaten, only if prepared in a way that takes something like 8 years to learn before you are ever allowed to serve anyone?

<comment><USER56> There's a delicious mushroom I regularly pick/eat and that is very popular throughout most of the world (Amanita sec. caesarae) that requires five different significant criteria to identify. If any of those criteria are different, the mushroom you're seeing is going to make you sick or kill you. Who figured this out? It was fairly easy for me to learn in the age of the Internet, but who were these generations of people who figured that out? Seems insane.

</comment></comment><comment><USER57> I am more interested in how igunak [1] was invented. It is poisonous, but not to who eat it.

1\. [https://en.m.wikipedia.org/wiki/Igunaq](https://en.m.wikipedia.org/wiki/Igunaq)

</comment><comment><USER58> I wonder how this idea relates to things like masonry, where free masons are a highly ritualized organization but at the same time I'd imagine that they have a first principles understanding of their trade.

</comment><comment><USER59> Remember that a poison food is a great adaptive advantage for the humans that dominate it. Your food will come with its own pesticide and you don't have to compete with other animals or pests.

</comment><comment> your-nanny Useful proxies like bitterness or stomach aches after consumption offer degrees that can covary with food preparation. If you cook it and it's less bitter, then cook it some more.

</comment><comment><USER60> Well, I guess someone had to die first to find out. I mean, if people are starving, and the poisonous plant are the only alternative, I guess, is worth the risk....

<comment><USER60> also there are ways of discovering if something gonna be poisonous for you.

You first put in contact with the skin, wait for reaction, than a small portion on tong.

If no reaction was observed, then ingest a small quantity.

An so go one. with that at least, you would have a less dangeours reaction with the poison, until you find out a safe way to consume the plant.

<comment><USER21> I'm thinking ancient peoples were not experimental scientists. The idea that an organized process will produce good data, was not really current until the Renaissance? Anyway, I'm favoring the 'folks got sick or died' version.

</comment></comment></comment><comment><USER61> The plants _tell_ the people how to prepare them.

</comment><comment><USER62> They could feed it to captives or slaves cooked differently each time and observe results. Sort of prehistoric cooking competition.

</comment><comment><USER63> Genetic Algorithms: Extreme Edition.

</comment><comment><USER64> Not by trial and error methinks.

</comment><comment><USER65> Societal trial and error.

</comment><comment><USER66> the only winning move is not to play

</comment><comment><USER67> Thank you for sharing this! But even on desktop its hard to read, must be hell on mobile. So I will just cite you:

1 - do not do it if you can avoid it

2 - if you really must, then try the folliwing:

* break the plant, put a tiny amount of it on your armpit. If it's not reacting (itching, becoming red, etc) after 10 minutes, continue.

* break the plant, put a tiny amount of it on your lips. If it's not reacting, after 10 minutes, continue.

* break the plant, put a tiny amount of it on your tongue. If it's not reacting after ten minutes, if the taste is not off putting for any reason, and if you don't get any sensation/intuition (for a better word) that something is wrong, continue.

* masticate a tiny amount. Same.

* swallow a tiny amount. Wait for 2 hours. Observe obvious symptoms, but also digestion. It should be easy to process at this amount.

If all that pass (yeah, it's very long), remember this doesn't ensure the plant is perfectly safe, just lowers the risks.

<comment><USER68> We fixed the formatting of [https://news.ycombinator.com/item?id=20877657](https://news.ycombinator.com/item?id=20877657) and detached this comment.

<comment><USER69> Shadow banning is unethical. Why aren't you displaying notice to the users?

<comment><USER68> When an account has been around for a while, we tell the user we're banning it and why. But shadowbanning is useful in other cases, such as for spammers, or for accounts connected with a history of abuse on HN.

</comment></comment></comment></comment><comment><USER70> Survivorship bias. Those that discovered a way lived on to tell about it. Those that did not, died.

</comment><comment><USER71> The tomato was considered dangerous to eat in Europe because of its relationship to the Nightshade family, so no one ate it. One day, some Italian <unpublishable> <unpublishable> decided to cook it into a sauce and give it to a woman, so she would get drugged and he could take advantage of her.

She didn't get poisoned, and he invented what we currently know as Italian cuisine.

So, my guess is going to be "by less than ethical ways".

<comment><USER72> Tomatoes were domesticated, and eaten, in South America long before being imported to Europe so I'm guessing the story is, at best, apocryphal.

Potatoes have a similar origin and also have poisonous leaves for the same reason (nightshade plants often contain solanine)</comment></comment>


Show HN: Said.fm now with Semantic-ish Search - <AUTHOR> http://blog.said.fm/the-search-for-search-is-over

<comment><USER2> I'm a big said.fm user, and this is a very welcome addition. A small suggestion: when I go to a search page, for example:

<http://said.fm/in/#/search/for/super>

And select to see some results, it's not obvious what the icons do next to the results, for example the "infinity" icon. Perhaps add a hint, or tool-tip?

<comment><AUTHOR> Always nice to hear from a listener! Will definitely look into making the results clearer :)</comment></comment>


Angular 2 RC5 – NgModules, Lazy Loading and AoT Compilation - <AUTHOR> http://angularjs.blogspot.com/2016/08/angular-2-rc5-ngmodules-lazy-loading.html <comment><USER2> NgModule is a huge release!</comment>


Sony Gets a New Threat – "Anonymous" Says Hackers Aren't Korean - <AUTHOR> http://www.showbiz411.com/2014/12/21/sony-gets-a-new-threat-anonymous-says-hackers-arent-korean-release-film-or-more-hacks-coming http://pastebin.com/xEmKN3ui <comment><AUTHOR> [http://pastebin.com/xEmKN3ui](http://pastebin.com/xEmKN3ui)

</comment><comment><USER2> Oh no. Anonymous is going to launch a DDoS Attack! Everyone run and be scared.</comment>


JQuery Offline : plugin to facilitate working with local storage - <AUTHOR> http://github.com/wycats/jquery-offline

<comment><USER2> Also check out jStorage: <http://www.jstorage.info/>

</comment><comment><USER3> This looks more like local cache management for Ajax calls (probably using HTML5)

</comment><comment><USER4> Doesn't HTML5 already support offline storage out of the box?

<comment><USER5> Yes - this is an abstraction around that, based on the already existing jQuery.getJSON method.</comment></comment>


Dissecting the Anatomy of Beijing's Internment Drive in Xinjiang - <AUTHOR> https://www.jpolrisk.com/karakax/?__cf_chl_jschl_tk__=43d896b512d7d06ae3a6fecc1df9d4dd8233f9fe-1594395075-0-AYdZgS4loVkVOBcFkO9TBUTbhiTl5-jIpJOhVFPyAJOeR3bHMiPm-E05qBwg3iMWKSlkAr6OwCLvbQF7UcXOph-l2eeDlucONxkQwTA9YnmTRZD3rWIDye2UhrJtPubIf7Bp5q3lmfhiDLE_cGwFLuEe-TS2qvHVGb84HEi09FCDzRws6PkHTJjx7IKTaieACpAqdb-hjCuPiW8RsOaTrH5UVtff58hLXjqbps0o3lv9kd_xGdpoA9g_W43Y6OqVzqIdqMPbBaAaC7tX6fEv4AljkBwdMv5ZvLfcjvWQd4LK <comment><USER2> There is some type of tracking code in the URL which should be removed.

<comment><USER3> Agreed. Here is the replacement URL:

[https://www.jpolrisk.com/karakax/](https://www.jpolrisk.com/karakax/)

@DanG could you help out?

</comment></comment><comment><USER4> This is pretty haunting. It seems too labor intensive to be scaled up in places other than China, luckily, but still incredibly haunting.

</comment><comment><USER5> oh, this is still Adrian Zenz of Victims of Communism who counted all WWII war casualties on the Nazi side and recently global covid deaths as victims of communism?

Zenz happens to also be one of the only 2 primary sources all recent editorials around concentration camps and forced labor:

[https://thegrayzone.com/2019/12/21/china-detaining- millions-...](https://thegrayzone.com/2019/12/21/china-detaining-millions- uyghurs-problems-claims-us-ngo-researcher/)

[https://thegrayzone.com/2020/03/26/forced-labor-china-us- nat...](https://thegrayzone.com/2020/03/26/forced-labor-china-us-nato-arms- industry-cold-war/)

The other concentration camp source being the CIA regime change NGO CHRD based on interviews of exactly 8 individual. And the other forced labor source being the Raytheon Australia, Lockheed Martin, Northrop Grumman, MBDA Missile Systems, Saab AB, Thales funded ASPI based on no primary source of their own and with just re-interpretation of mainstream Chinese internet news.

<comment><USER6> > The other concentration camp source being the CIA regime change NGO CHRD > based on interviews of exactly 8 individual. And the other forced labor > source being the Raytheon Australia, Lockheed Martin, Northrop Grumman, MBDA > Missile Systems, Saab AB, Thales funded ASPI based on no primary source of > their own and with just re-interpretation of mainstream Chinese internet > news.

Can you link those articles? Would like to see how objective they are.

<comment><USER5> [https://www.aspi.org.au/sponsors](https://www.aspi.org.au/sponsors)

The main primary source for editorials around the recent forced labor is [https://www.aspi.org.au/report/uyghurs- sale](https://www.aspi.org.au/report/uyghurs-sale). You can click into its references. They're reasonably google translatable.

They're also both broken down in the gray zone articles above.</comment></comment></comment>


Whiteboard Interviews Suck, Get Good at Them Anyway - <AUTHOR> https://medium.com/@akras14/whiteboard-interviews-suck-get-good-at-them-anyway-21385c4debf9 <comment><AUTHOR> Original Discussion here: [https://news.ycombinator.com/item?id=14500257](https://news.ycombinator.com/item?id=14500257)

<comment><USER2> Don't submit an article multiple times at different domains.</comment></comment>


50 Million Concurrent PubSub Connection Infrastructure @ Hotstar - <AUTHOR> https://blog.hotstar.com/building-pubsub-for-50m-concurrent-socket-connections-5506e3c3dabf <comment><USER2> I'm curious - can MQTT or some enhancement to it achieve persistence and exactly-once-delivery semantics (or at-least-once semantics) ? I am looking for a message queue with guaranteed delivery that can be embedded into existing platform and packaged with it (so that there is no external dependency for messaging, like Kafka, etc.).

I investigated NATS Streaming but found some information that discouraged me from using it.

<comment><AUTHOR> Yes. MQTT is just a protocol and supports three types of Quality of Service (QoS): \- QoS 0: Fire and forget \- QoS 1: At least once \- QoS 2: At most once

You can choose to send messages via any one of these QoS which suits your use- case. Apart from this, standard MQTT implementations also involve a "retain" flag for a topic and a message which means that the brokers will maintain the last sent message on the given topic. When new clients subscribe on this topic with "retain" flag set as true, they will instantly receive the last retained message.

Apart from these, there are more extensions that you can build to add persistence to your system. This depends on the specific MQTT implementations which you might have to find out.

<comment><USER2> Thanks a lot. Do you know of any real world mqtt deployments that deploy QoS 1 or 2 with success on non trivial scale? Can you recommend a broker impl. that is well tested in those scenarios?

<comment><AUTHOR> There are some big players that use MQTT although i am not sure about the QoS levels. I know WhatsApp used MQTT, although i am not sure if they still do it not or what QoS they used. My bet would be they used QoS 1.

There are multiple brokers for MQTT: Mosquitto, HiveMQ (Java), VerneMQ (Erlang), EMQ: the one we used (Erlang) etc. You can find out more brokers that are available as well.

</comment></comment></comment></comment><comment><USER3> Wow! This is good stuff, I would be waiting for the unicast blog using MQTT

<comment><AUTHOR> Sure. We have already launched the Unicast functionality in Beta and are monitoring it closely. We will be sharing the Unicast post as well soon.

</comment></comment><comment><USER4> Amazing stuff! Thanks for sharing.

<comment><AUTHOR> Thanks! The blog outlines our journey for the last 8 months. We ended up sending more than 250Billion+ messages over a Live Cricketing tournament in India. (VIVO IPL 2019)</comment></comment>


Fan Death - <AUTHOR> https://en.wikipedia.org/wiki/Fan_death <comment><USER2> So this article says that it's misunderstood, but real:

[http://askakorean.blogspot.co.uk/2009/01/fan-death-is- real.h...](http://askakorean.blogspot.co.uk/2009/01/fan-death-is-real.html)

Quoting from that:

        This pamphlet from the EPA[0], at pages 49
        and 51, clearly states the hazard of using
        portable electric fans during high heat. It
        specifically says "Portable electric fans
        can … increase the circulation of hot air,
        which increases thermal stress and health
        risks[,]" and "DON'T use a portable electric
        fan in a closed room without windows or doors
        open to the outside."

Problem is, that link now goes somewhere else, and not to a pamphlet at all. Tricky.

However, this has been discussed at length here:

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

It's also been submitted lots of times, although the last time was a month ago, so maybe we should see it again:

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

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

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

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

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

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

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

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

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

[0] [http://www.epa.gov/hiri/about/pdf/EHEguide_final.pdf](http://www.epa.gov/hiri/about/pdf/EHEguide_final.pdf)</comment>


BrowserStack is out of beta: super-easy multi-browser testing - <AUTHOR> http://www.browserstack.com <comment><USER2> I was chugging along happily until I started observing someone _else's_ testing session!

I typed "neato!" into their search bar; they promptly logged off.

</comment><comment><USER3> I used to be interested in this type of service, but then I got an SSD. With an SSD it takes about 5 seconds to boot windows through parallels, and now cross browser testing is no longer a chore.

I am willing to admit that I pirate windows for the sole purpose of supporting IE with my webapps. It would be too expensive to do it legitimately, so my solution is not for everyone.

<comment><USER4> I think MS provides VM images of Windows for testing IE.

<comment><USER5> If they are the same ones we tried, they are a giant pain. Lots of screwing around to get everything downloaded and set up right for multiple version of IE. Then they expire every few months, requiring regular doses of rigmarole.

And when you finally have them set up, you know what prize you win? You get to debug some crazy-making IE issue. As far as I'm concerned, free isn't enough: they should come with masseuses and bottles of good scotch in compensation.

</comment></comment></comment><comment><USER6> Browserstack is great, but it's still catching up to Sauce Scout (disclaimer: I work at Sauce Labs). It needs better support for testing firewalled or localhost sites, and it needs security (it re-uses VMs)

Awesome work, guys! I know first hand how hard it is to maintain a product like this :)

</comment><comment><USER7> Is this somehow related to browserling/stackvm? Afaik the idea is the same but browserstack looks much more polished and mature.

Ok i just discovered that browserstack needs java so it seems they are using a different sw stack

<comment><USER8> Browserstack needs Java only for creating local tunnel via web interface. For the rest it uses Flash!

<comment><USER7> Ah ok i'm sorry i misread that.

</comment></comment></comment><comment><USER9> A bit off-topic, but i find the Plans & Pricing page to be a very good example of how to design for an attention-lacking crowd, i.e. most web users. In particular, the team-size icons is a rare example of using eye-candy to succinctly help in clarifying for whom each package is tailored. Or maybe i am just easily excited today!

If anything, i would invert the per-person price with the overall price in order to give emphasis to "more people is actually cheaper". There is something in descending prices that makes people feel good.

</comment><comment><USER10> the rotated text does not look good in firefox 7/mac:

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

i know of a service they can use for testing their website in different browsers...

</comment><comment><USER11> This looks interesting - we've been pretty happy with crossbrowsertesting.com until now, which is also worth a look.

Here's what I'd love next - we'd write a bunch of QUnit javascript tests, put them behind a private url on our staging server, and then be able to run those tests from the command-line on multiple browsers (through BrowserStack, say), and spit back the output in a form that Jenkins understands. I'd certainly pay $20/month for that, and maybe more if it was great.

<comment><USER12> We at browserling will be releasing something perfect for that in a week or so! Sneak peak: <http://browserling.com:9088/>

</comment></comment><comment><USER13> This looks cool, but I'm not sure about the long-term value.

Looking at their browser list, I could test all Firefox, Opera, and Chrome versions, one version of IE, and the Windows versions of Safari on one Windows 7 box.

I could add to that three VMs for older versions of IE, and a Mac (maybe with a VM) for Mac Safari versions. If the main Win7 machine is also a VM, I could do this all on the Mac.

So, that's a total of 5-6 OS licenses, which would cost $750-$1000.

At $19/month for a single user, BrowserStack becomes more expensive after 2-3 years. At the small team rate of $68/year it becomes more expensive after one year. (I could host VMs on a server and have my testers RDP into it; they can't use the VMs simultaneously but with 4 testers and 5-6 VMs that's not a problem.)

To me, the pricing is right on the edge, which forces me to evaluate the effort of maintaining local VMs and browsers (an invisible cost is most organizations) vs the potential risks of running my in-development software and providing access to my development environments to a third-party over the internet. If the pricing was lower and clearly less expensive than maintaining my own VMs, it'd be a slam-dunk decision and the other factors wouldn't even be considered. (I'm thinking about this from a "how does a developer sell this to corporate management" perspective.)

<comment><USER14> Installing and configuring VMs up to the point where you can do good testing with them is a painful and tedious work. Why waste the time of expensive professionals on something if you can fix the problem for $70-$150 a month?

$70 bucks a month is only real money if you're a broke startup. Otherwise it's peanuts.

<comment><USER15> And don't forget the maintenance you have to do on those machines. You're testing is 5 minutes under way and _BAM_ Windows updates wants your attention for a reboot.

</comment></comment></comment><comment><USER16> Just tried this on my in-development web app. The good news is that it works like a charm. The bad news is that the browsers keep prompting to save the password of my test account. I wish they'd turned of password manager for all of the browsers.

I also feel a little weird typing in my test account password into their site.

<comment><USER8> Though all passwords/history/etc are cleaned. Your idea seems like a better one!

</comment></comment><comment><USER17> Bravo BrowserStack team! I am using this to test IE7 on our staging environment. Your signup process was great, I was able to jump-in and start testing immediately. I think you could add better communication and assurances about security and private information. Keep up the good work.

<comment><USER8> All user information is kept private and everything is erased once user stops testing. Sure, the security document is coming soon!

</comment></comment><comment><USER18> This is really well done. It's going to be very useful to us, thanks!

Edit: The tunnel to my local server doesn't work. I keep getting "There's no server running at port 80".

</comment><comment><USER19> Just showed this to some people at a company I'm working at. I'm guessing they are going to spring for it - 4 seats at least :P Good job dude.

</comment><comment><USER20> Too slow to use over here in Europe. Feels like using VNC on a dialup.

<comment><USER8> Currently our server in europe is at Ireland. Soon coming up with more in europe: london, amsterdam and more

</comment></comment><comment><USER21> Cool logo... what I really need is android/ios device testing.

<comment><USER8> its coming soon!

</comment></comment><comment><USER22> Clever logo but butt ugly.

</comment><comment><USER23> Too slow to accept.

</comment><comment><USER24> maintenance is spelled wrong

</comment><comment><USER25> I would prefer to use <http://browserling.com/> all day. The home page design is way more awesome.

</comment><comment><USER26> An API would be great for us since it would let us to run our tests against all web browsers by making some http requests. Wouldn't it be revolutionary?

<comment><USER8> Hi, why don't you drop an email at firstname.lastname@example.com with your idea as we have some similar ideas cooking up.

<comment><USER26> Sure, I've just send it.</comment></comment></comment>


Show HN: Saved.io - <AUTHOR> http://saved.io

<comment><AUTHOR> I built this tool because I was sick of having bookmarks stored my an individual browser or having to install a plugin. This is the fastest and easiest way to save bookmarks I could come up with.

<comment><USER2> You need a bookmarklet.

<comment><USER3> I'm not sure how other browsers handle this, but this will work in Chrome, create a bookmark with the URL: javascript:document.location.replace("[http://saved.io/"+document.location.href);](http://saved.io/"+document.location.href\);)

</comment></comment></comment><comment><USER4> [http://saved.io/not_a_real_domain](http://saved.io/not_a_real_domain) returns an ugly PHP error

         Warning: file_get_contents() [function.file-get-contents]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /nfs/c02/h05/mnt/41076/domains/saved.io/html/index.php on line 75

         Warning: file_get_contents(http://not_a_real_domain) [function.file-get-contents]: failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known in /nfs/c02/h05/mnt/41076/domains/saved.io/html/index.php on line 75

         Warning: Cannot modify header information - headers already sent by (output started at /nfs/c02/h05/mnt/41076/domains/saved.io/html/index.php:75) in /nfs/c02/h05/mnt/41076/domains/saved.io/html/index.php on line 85

         Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /nfs/c02/h05/mnt/41076/domains/saved.io/html/index.php on line 147

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER BY bk_date DESC LIMIT 0, 20' at line 1

<comment><AUTHOR> thanks I'll fix it.</comment></comment>


From first principles: Why I bet on Scala.js - <AUTHOR> http://www.lihaoyi.com/post/FromfirstprinciplesWhyIbetonScalajs.html <comment><USER2> Article is a total tour de force.

The OP has contributed so much to the Scala community; somehow he's a Python + Coffeescript developer by day, and an absurdly prolific Scala library author in the evenings.

As for Scala.js, representing browser interactions in types is such a relief, and to have the entire Scala language available is almost too good to be true: client-server interop is _seamless_.

Really the only negative for me is the Scala collections library. Of the @100KB Hello World[1] generated blob half of that is Scala collections. There's a small initial "tax" to pay basically, and thereafter size increase is on par with normal javascript.

[1] not totally true, vanilla Hello World is more like 40KB, but once you define a Scala collection then generated blob doubles in size.

</comment><comment><USER3> For people who want to do typed functional programming on JS platform, there is another candidate: BuckleScript for OCaml: [https://bloomberg.github.io/bucklescript/js- demo/](https://bloomberg.github.io/bucklescript/js-demo/)

The compiler is compiled into JS and native code.

It generates highly readable JS code and easier FFI.

It compiles super fast (generally 10~100 faster than Scala) and generates optimized code.

<comment><USER4> and Fable for F# [https://github.com/fsprojects/Fable](https://github.com/fsprojects/Fable)

<comment><USER5> And you can use it with React Native![1]

[1] [http://www.navision-blog.de/blog/2016/08/06/fable-react- nati...](http://www.navision-blog.de/blog/2016/08/06/fable-react-native/)

</comment></comment></comment><comment><AUTHOR> I wrote this; ask me anything

<comment><USER6> Amazing work - thanks for putting it out there.

In your live coding presentation, you mentioned that the output from compiling scala to js is several files.

I'm interested in generating one file that exposed JavaScript functions that can be easily called from a js runtime.

In other words, I'd like to write a JavaScript library in Scala - not a full- blown application.

What are some good resources showing how to do this?

<comment><AUTHOR> The live coding presentation is two years out of date; Scala.js now compiles to a single JS blob

Everything function marked with @JSExport will be exposed to Javascript. There's no concrete difference between an application with one `@JSExport def main` method that you call to initialize it, and a library with multiple `@JSExport`ed methods. It all works the same way: the `@JSExport`ed functions are exposed, and people can call them.

This repo shows how to make a NPM library using Scala.js

\- [https://github.com/rockymadden/scala- node/](https://github.com/rockymadden/scala-node/)

If you want to learn how to use `@JSExport` properly, the [core documentation]([http://www.scala-js.org/tutorial/basic/](http://www.scala- js.org/tutorial/basic/)) and [Hands-on Scala.js]([http://www.lihaoyi.com/hands-on-scala- js/](http://www.lihaoyi.com/hands-on-scala-js/)) are great.

</comment></comment></comment><comment><USER7> I've backed the current iteration of my career on Scala and like the idea and some of the practicalities of Scalajs but it is destined to be limited to fun projects. The unavoidable problem is by committing to Scalajs you are accepting that you can no longer go out and get one of any number of JavaScript contractors or staffers to come on board and develop / maintain you client code and have to always have a Scala developer for that job as well which is a magnitude of time and expense different.

The underlying notion of Scala to X ie Scala Native has lots of potential but Scalajs is more of a segue.

<comment><USER8> Seconded. I love Scala but when I hire for Scala devs there are so few that I just hire the smartest developer I can find with FP experience and their first task is learning Scala.

If I was starting something now I'd be tempted to use TypeScript if I wanted one language on the front-end and the back-end.

</comment></comment><comment><USER9> The comments on jsinterop with respect to GWT are stale, GWT has a rich non- JSNI based JsInterop system now, as well as a generator that can read Closure and Typescript files and produce typed Java interfaces and classes for calling external JS. It even converts Java8 lambdas directly into JS functions and the reverse.

Also, the design restrictions to ban runtime reflection in GWT are a codesize decision. Allowing reflective calls basically inhibits optimization and forces the retention of tons of metadata.

The Deferred Binding mechanism is essentially dependency injection before DI and annotation processing existed, because GWT hails from 2007. We now recommend using Dagger2 for DI, and Annotation Processors for code generators, so that the system of _compile time reflective calls_ is all part of the standard tool chain.

In the era of mobile browsers, I think 100k is a bridge too far for a hello world, especially in the developing world, so restrictions to the JRE runtime which allow much greater code pruning are a necessary evil. It hasn't really prevented an enormous amount of code sharing.

For example, Google Inbox shares 70% of its Java code between Web, Android, and iOS (via J2Objc)

</comment><comment><USER10> Scala is a cool language, but I can't help feeling that Javascript has a very strong culture around it that pretty much dooms adoption of things that don't feel "Javascript-y". I think the strong commitment to being a Javascript superset is the reason Typescript is blowing up the way it is.

<comment><USER11> absolutely agree. they nailed it by repurposing any js dev as a potential ts user. part of the reason ill be pushing ts soon at my current position.

</comment></comment><comment><USER12> The livecoding with ScalaJS was especially impressive: [http://www.lihaoyi.com/post/TalksIveGiven.html#live- coding-s...](http://www.lihaoyi.com/post/TalksIveGiven.html#live-coding- scalajs)

</comment><comment><USER13> 3 things I don't like about Scala:

1\. It's based on the Java platform.

2\. It's excessive use of operator overloading.

3\. Mad implicit conversions all over the place.

(yes, I exaggrated a bit ;))

<comment><USER14> 1\. Java platform is excellent. Also, Scala.js is now Scala for JS platform, and scala-native is coming soon.

2\. Have you seen languages like APL or J? Now that's operator overloading. '+' is just a symbol, meaning a lot of different things even in mathematics. All meaning is a product of convention.

3\. In modern Scala, implicit _conversions_ are discouraged unless you know what are you doing. Besides, Scala IDEs are excellent in showing applied implicits anywhere in the code (you do use an IDE, right?)

<comment><USER13> Thanks for the reply :)

1\. Java platform is overengineered, everytime I had to set up stuff like Maven, I missed the easy JS days.

2\. True story, I can infer what a '+' between two strings means, but what about all the non-intuitive operators? (List concats etc. pp.)

3\. Not a big fan of IDEs. More of an editor dev, but good to know ICs are now discuraged. I got myself "Programming in Scala" back in the days and it seemed to me, that the Scala makers thought of IC as Scalas killer feature :D

<comment><USER15> Not using an IDE for JVM-based languages is sort of like using pliers to drive screws. You can do it, but it's tiresome.

<comment><USER16> I used to only use plain editors until I started using scala, after which the benefits of an IDE became readily apparent. Unfortunately, all of the IDEs for scala are relative shit compared to their support for Java.

It would be nice to be able to run an integrated debugger (as opposed to a port connection from an SBT spawned JVM), integrate directly with SBT (as opposed to having to run it side by side), provide a full featured REPL (not the neutered version with no completion and poor editor integration), as well as functional import organization, dead code identification, refactoring suggestions, real linting, real code formatting, working extract refactorings, etc..

<comment><USER14> Well, _the_ Scala IDE currently is Scala plugin for IntelliJ IDEA (works in Community Edition, which is free and open source). All these features work there.

</comment></comment></comment></comment></comment></comment><comment><USER17> The author explains his reasoning for using Scala.js well and what he says makes me tempted to learn Scala as the "language-to-rule-them-all"!

</comment><comment><USER18> Scala-js is fantastic for all of the reasons mentioned in the article. It is one of those tools that has become indispensable when I write web applications. Here is a web app that I built using scala-js:

[http://experimental.worldcat.org/vandrmapping](http://experimental.worldcat.org/vandrmapping)

</comment><comment><USER19> Very nice article. I am itching to play around with Scala.js because of it.

I had chosen Purescript over Elm, since I have read about Elm being constricting once you move outside of most of the examples use cases.

</comment><comment><USER20> Great article. I'm not a particularly sophisticated Scala user but I love using Scala.js for all the reasons described in this piece. Thanks for all your work on it!

</comment><comment><AUTHOR> For all the people asking "Why didn't I talk about X"...

The real reason is that this 24-page heavily-researched blog post is already too damn long lol

</comment><comment><USER21> It's a little strange that ClojureScript is omitted from the sections where it compares favorably to Scala.js, e.g.:

> If you look at other compile-to-JS languages like:

> \- Google Web Toolkit which lets you compile Java to Javascript, > \- The > Opal Ruby Compiler for Ruby > \- Brython, PyJS, Skulpt, Transcrypt or > RapydScript for Python > \- Various flavors of C#-to-Javascript (Salterelle, > Bridge.Net, JSIL) > \- Or Haskell-to-Javascript compilers (Haste, Faye) > > You'll notice one thing in common: none of them have a standard way of > writing code that runs on both their "original" runtime (JVM, MRI, CPython, > CLI, ...) and on Javascript. And the reason why is straightforward: none of > them are compatible enough, complete enough to really let you write "full" > Java/Ruby/Python/C#/etc..

ClojureScript _is_ mentioned in the article, but only for this specious comparison:

> Clunky Interop > Many other languages are not as fortunate. For example, > here's how you create an element in ClojureScript, compared with Javascript

(let [paragraph (.createElement js/document "p")] (set! (. paragraph -innerHTML) "Bold!"))

var paragraph = document.createElement("p") paragraph.innerHTML = "It works!"

> Now, the conversion between these two snippets is mechanical, so it's not > something you need a PhD to perform. Nevertheless, it is clear that using > Javascript APIs in ClojureScript, while looking like ClojureScript, looks > almost nothing like the Javascript it represents.

> This mapping is something that everyone who wishes to learn Clojurescript > will have to internalize.

This seems misinformed at best - both Clojure and ClojureScript have interop as a first-class concern, and interop forms are exactly the same between them.

I appreciate the work that Li's done, but I'm disappointed by what seems like a rather disingenuous omission of the only other language which fulfills Li's criteria.

Interop, IDE support (IntelliJ), parent language compatibility, static optimization (judging by the payload size numbers, ClojureScript utilizes dead-code elimination more effectively than Scala.js), performance (ClojureScript immutable vectors are faster to build than JavaScript arrays, far from the 1-2x Scala.js slowdown cited in the article!) - there is (and has been - since 2011) a compile-to-JavaScript language that is in the same league as Scala.js, and arguably eclipses it on many dimensions.

A language-agnostic comparison can't reasonably leave out ClojureScript.

<comment><USER22> I'm glad you pointed this out. That's way mal-informed for how you'd build that DOM in clojurescript. I mean, you _could_ do it that way, but there are libraries (like hiccup) that make it more natural.

Here's an example of a react component from the re-agent tutorial ([http://reagent-project.github.io/](http://reagent-project.github.io/)), e.g., but you'd build straight html in the same-ish way using a library:

      (defn simple-component []
        [:div
          [:p "I am a component!"]
          [:p.someclass
            "I have " [:strong "bold"]
            [:span {:style {:color "red"}} " and red "] "text."]])

<comment><AUTHOR> The point wasn't to show how to build HTML fragments, the point was to show javascript interop.

You _could_ create a nice wrapper-library around anything in any-language, really, but that misses the entire point of that example: to show how interoperability is when you _haven 't_ wrapped a nice wrapper-library around everything.

</comment></comment></comment><comment><USER23> Also haxe have nice features like scala.js bu have a c like syntax conservative and is more practical. Big interaction with externs js with external types definition, dynamics and untyped blocks. And can interact with npm, webpack, closure and browserify. Js code generated is really small

</comment><comment><USER24> This is such a cool tool, being a Scala developer and not really loving writing JavaScript. The only thing is that creating binding for JavaScript lib sounds like a bit of a pain.

</comment><comment><USER25> What's a good way to learn how to use other languages in the browser asides from javascript?

<comment><USER26> For Scala.js there are a lot of resources, e.g. [http://www.lihaoyi.com/hands- on-scala-js/](http://www.lihaoyi.com/hands-on-scala-js/) is a good start.

<comment><USER25> How does scala get embedded in the browser? I can't seem to find it on that document?

I know you can use asm.js but it looks like they're not using asm.js

<comment><USER27> What do you mean? It gets compiled to vanilla JS. You can use sourcemaps to link to your original source file for debugging as well.

<comment><USER25> I was looking for this:

>It gets compiled to vanilla JS

thanks</comment></comment></comment></comment></comment>


What It's Like to Have an ADHD Brain - <AUTHOR> https://medium.com/s/greatescape/what-its-like-to-have-an-adhd-brain-52a7c5171d8f <comment><USER2> I wish that the author has read a book of Dr Perlmutter who has wonderful results in treating ADHD.</comment>


Step by Step on How to Deploy a Phoenix Application to Ubuntu Server - <AUTHOR> http://learnelixir.com/blog/2014/10/16/deploy-phoenix-application-to-a-ubuntu-server/

<comment><USER2> I didn't know how to deploy elixir application to linux server. So it's very helpful for me. Thanks!</comment>


Huge Power Outage in San Diego County - <AUTHOR>

Seems like power is down in the entire region.<p>Remember us when our laptop/3G batteries die out! <comment><USER2> Oceanside down since 3:30 and still out at at 10pm:I went to a stater bros at 7pm to get some beer and there were a ton of people buying ice and water (overreaction!). It was kind of fun though, all lights were out and I shopped using a flashlight. Checkstands were operational as were credit card terminals. They closed as I was leaving though. All gas stations are shut down. Just glad I have some beer!! I brought in my solar garden lights to light the house and we are set!!

</comment><comment><USER3> I can ditto that. san diego sharp hospital is out of power.</comment>


Ask HN: Machine learning risk and control framework - <AUTHOR> I'm working on building a risk framework for machine learning models to mitigate the risks of machine learning going wrong.<p>What are the risks of machine learning and what are the corresponding controls that can be used to mitigate those risks? <comment><AUTHOR> Poster comment here. I spent time in the banking/finance world where "Model Risk Management" is a huge thing. I think some of that can be used to think about the risks/controls. It focuses on all the things that can go wrong - a) model doesn't produce an expected result and b) model is used inappropriately.

So, they do things like, performing a model validation which includes rigorous qualitative and quantitative tests, setting limitations on use, testing the sensitivity to inputs and boundary conditions, among many others.

In the traditional sense, a machine learning model is a new beast. In most cases, these models don't have an agreed upon "methodology" (i.e. neural networks) and therefore don't have an "expected" result that can be tested (especially for unsupervised learning models). So, curious to know what others are thinking?

</comment><comment><USER2> _Superintelligence_ by Bostrom is a decent treatment of some ideas related to this.

Beyond that, there have been a number of stories in the news over the past few years that touch on various risks related to ML.

Things like: automated trading systems causing economic problems. Facial recognition systems not recognizing the faces of black employees. "Predictive policing" creating a "Minority Report" type environment. Etc.

I doubt there's any comprehensive list of "risks of machine learning" though, since there's not really a corresponding comprehensive catalog of "capabilities of machine learning".</comment>


Mastercard to Acquire Finicity to Advance Open Banking Strategy - <AUTHOR> https://www.businesswire.com/news/home/20200623005496/en/Mastercard-Acquire-Finicity-Advance-Open-Banking-Strategy <comment><USER2> Great news for Finicity, but the name of the acquirer though is somehow seen as 'offensive' by others and on behalf of everyone who is offended, we need to tell this payments giant to immediately change their name right now. We must boycott all banks that have cards that use this payment network and cancel their accounts because of this offensive name. /s</comment>


Emulation of Unix V6 on a PDP-11 with an emulated teletype - <AUTHOR> https://pavel-krivanek.github.io/pdp11/ <comment><USER2>
        NICE DEMONSTRATION OF WHY KEN DIDN'T SPELL CREAT() WITH AN 'E'.

<comment><USER3> Yeah, though this feels artificially slow to me. Even the earliest Teletype machines could manage 10+ cps, and by the mid-70's time frame (v6 was released in 1975) much faster devices were available (and of course video terminals were starting to arrive too).

I'm sure someone used a PDP-11 with a terminal this slow, but it's unlikely to have been the typical developer experience.

<comment><USER4> I used a PDP-11/70 with ASR-33 TTYs as late as 1978. They were still common because while slow and noisy they were much cheaper than the DECwriter, and could also read and punch paper tape. Since mass storage was very expensive (10MB for $20,000) and since floppies were not yet common, paper tape was the USB stick of the time.

</comment></comment></comment><comment><USER5> The pidp-11 project is also cool. A miniature and functional PDP-11 replica. [https://obsolescence.wixsite.com/obsolescence/pidp-11](https://obsolescence.wixsite.com/obsolescence/pidp-11)

</comment><comment><USER6> Ok but let's be honest: Unix is at it's core still a teletype emulator no matter where you use it. It's the central metaphor for the system.

<comment><USER7> Well, UNIX "at it's core" is the kernel; what you are talking about is what is known as 'shell.'

<comment><USER8> UNIX and everything surrounding it is built around the shell though.

</comment></comment></comment><comment><USER9> This is very nice. Brought back old memories of my first programming Fortran and BASIC+ on RSTS/E on a PDP-11

<comment><USER10> You, too? My high school had an 11/34 back in the day, with a couple VT100s, several Visual 200 terminals (cheap junk), one DECwriter II for the console, and another one plus a DECwriter III in the lab. It also ran RSTS/E, and in the summer after my sophomore year they offered a short introductory course. I was hooked. We didn't have any Fortran courses, though, just BASIC+ and COBOL.

I'd take even a DECwriter II over a Teletype, but the III made the II look downright slow, with a 4x faster printhead, the ability to seek quickly, and the ability to print in both directions to avoid wasted motion.

</comment></comment><comment> phoe-krk The point where I burst into giggles was when I realized that scrolling the page while output was still going (e.g. from ls /bin) overwrote previous lines with new letters.

That's some dedication to accuracy that's found there.

</comment><comment><USER4> Don't try to use ^S and ^Q for flow control, it doesn't work and the ^Q will quit Firefox. As a tab horder, I hate quitting the browser.

</comment><comment><USER7> Just remember to type CHDIR instead of CD.

</comment><comment><USER11> Did teletypes not have rollover? The most annoying part of this was waiting half a second after each keypress…

<comment><USER12> Teletypes have metal rods and springs instead of rollover!

I love how the mouse wheel (back in reality) scrolls the paper up and down and it overprints.

<comment><USER11> But typewriters (at least the one I have tried–I think it was a Selectric?) have the same thing and can support rollover…

<comment><USER2> The Selectric didn't really do rollover, but it had a mechanism that felt like it. Each key lever had a small tab that entered a trough of ball bearings that had just enough slack for one tab. If you pressed a second key, it would displace the balls and descend when the previous key withdrew.

</comment></comment></comment></comment><comment><USER13> If it doesn't smell like a teletype it isn't a true emulation.

</comment><comment><USER14> backspace not invented yet? How can you write a program with this thing!

<comment><USER2> Backspace _had_ been invented; the problem is that on a printing terminal you end up with an illegible mess. So early Unix defaulted to erase '#' kill '@'. You can still see artifacts of that choice — '#' being popular for things that start a line, like comments and C preprocessor commands, and '@' being the only ASCII punctuation with no function in any common Unix tool.</comment></comment>


Covid-19: Straight Answers from Top Epidemiologist Who Predicted the Pandemic - <AUTHOR> https://www.bluezones.com/2020/06/covid-19-straight-answers-from-top-epidemiologist-who-predicted-the-pandemic/ <comment><USER2> Dr. Michael Osterholm is 100% in agreement with what I've been saying for over 2 months, same as Dr. VDH's Youtube lectures and interviews.

You can see the google cache here:

[https://webcache.googleusercontent.com/search?q=cache:RVFJC0...](https://webcache.googleusercontent.com/search?q=cache:RVFJC0_wDVsJ:https://www.bluezones.com/2020/06/covid-19-straight- answers-from-top-epidemiologist-who-predicted-the- pandemic/+&cd=1&hl=en&ct=clnk&gl=us)

AMA.

<comment><USER2> Dr. Victor Davis Hanson interview on corona and lack of lock-down cost-benefit analysis (Apr. 24)

[https://www.youtube.com/watch?v=KqCudv- JQ2o](https://www.youtube.com/watch?v=KqCudv-JQ2o)

He opposed the lockdown after May 1, which I agree with (we are both in California)

<comment><USER3> I would tend to trust Victor David Hanson on plague that killed Pericles, less so on Covid-19. His doctorate is in history, not medicine.

<comment><USER2> He's studied multiple plagues, so knows what the outcomes were.

His comment about corona is that somehow society allowed medical science to be the only voice, when there are equally important societal and economic impacts not being considered.

(Somehow can be interpreted to mean "in an election year.")

To me, that's a more important message than what an epidemiologist says in isolation.

I'm guessing that the result of lockdown will be that more years of life were lost to cardio problems (no exercise) than corona itself. In developing countries, there already is starvation.

</comment></comment></comment></comment><comment><AUTHOR> > The darkest days are still ahead of us

<comment><USER4> That was and is always true, since the beginning of time.

</comment></comment><comment><USER5> I'm curious who would argue against there being a pandemic ? The prediction seems quite obvious just based off historical periodicity of pandemics.</comment>


High-speed Wi-Fi rolls into 100th railway station in India - <AUTHOR> https://www.blog.google/topics/google-asia/high-speed-wi-fi-rolls-100th-railway-station-india/ <comment><USER2> I have personally used this. The speeds are pretty good, and it's easy to start using it.

      1. Enter your mobile number to receive an OTP
      2. Type the OTP.
      3. Connection is established.

I don't understand why some people are being so negative about this. It's a good quality service being offered free of charge. I can imagine a number of scenarios where it can be a life saver to have dependable internet at a railway station.

<comment><USER3> Indian apps/software are so intrusive.

> 1\. Enter your mobile number to receive an OTP.

Why do I need to provide my Identity to a fucking railway station anyway. There are probably better ways to do this rather than this insulting way.

Probably everyone needs to start carrying a junk phone number.

<comment><USER4> Expectations of privacy is asking too much for a free Wi-Fi service. What if a terrorist or criminals use these wifi to send mail threatening bomb scare. Even single event like this will put in this whole endeavor in jeopardy.

</comment></comment></comment><comment><USER5> I used the ones in Chennai and it was pretty good. When the Vardha cyclone hit Chennai, most of the local ISPs went down (the internet in my area is still down). The internet at the railways was working good.

</comment><comment><USER6> Google's head of access programs in India - Azar says, that each station has "1Gbps plus backhaul through fiber". Any googler here? It would be interesting to know how google employed VSAT & SDN technologies to connect 100 different railway stations in 12 months.

<comment><USER7> How would vsat or SDN be required for such basic infrastructure? Consumers can get 1gbps to their house.

<comment><USER8> Which place are you referring to in your statement that consumers can get 1Gbps to their house? The highest consumer grade speeds available in many cities is around 100Mbps, and that's not available everywhere either. Most connections come to 2Mbps or even lower (depends on the ISP and the location).

<comment><USER7> Google fiber is the most widely known. All other examples I've seen have been municipal fiber or small local ISPs.

My point is that 1gbps is trivial and doesn't require special technology. All the servers I work with now have either 10gb or 40gb cards. 1gb to every desktop on a campus is common.

</comment></comment></comment></comment><comment><USER9> But rails just in front of you are still littered with shit. And you won't be able to hear train announcement because it is mixed up in the Ads blasted from the same speakers perpetually. And if you have to contact enquiry, you will have to cross any number of platforms (often crossing the pile of shit mentioned earlier) to the very first platform....

But hey, let us give people WiFi so that they don't notice the shit they are surrounded with...

<comment><USER10> The new railway minister has been working relentlessly on improving the situation, we are already seeing a huge improvement. Trains are being run on time, it is a huge problem that doesn't go away overnight. I am willing to give the current government more time if they can stay the current course they are on.

Also, it would be nicer if you keep yourself updated on the latest development on the subject you are going to comment on. RM's twitter handle is a good place to start.

[https://twitter.com/sureshpprabhu](https://twitter.com/sureshpprabhu)

<comment><USER3> A better way to solve it would be to sell the whole network in pieces and pay the taxpayer back, but no, they'll never do it cause nothing better than wasting taxpayer money.

</comment></comment></comment><comment><USER11> Instead of a static image with a few stations on it, I would have expected Google to provide a map of all the 100 stations they are talking about. It's silly that the most important bit of info has been left out.

<comment><USER12> It's odd, too, that the map's shades-of-blue color scheme makes the land look like water:

[https://storage.googleapis.com/gweb-uniblog-publish- prod/ima...](https://storage.googleapis.com/gweb-uniblog-publish- prod/images/100_stations.width-792.png)

That map would be easier to parse, I think, if the water areas were the dark- blue shade, and the land areas were the light blue. (I guess I just realized that I have an implicit visual grammar of maps. I'm not sure whether it's universal.)

<comment><USER13> Somebody at Google must be a fan of Arrested Development. That's a classic Buster Bluth joke: "oh! The blue on this map must be land!"

<comment><USER12> I actually just mocked up the inverse, out of curiosity:

[http://imgur.com/a/nPpsL](http://imgur.com/a/nPpsL)

IMHO, at least, it does look better.

</comment></comment></comment></comment><comment><USER14> Why is Google taking credit for this? RailWire, a unit of India's Ministry of Railways, is doing the job. The rollout was last year.[1]

Railroads usually have lots of wire along their right of way. Adding bandwith is cheap. That's how Sprint (originally Southern Pacific Communications) got started. Railroad stations are good places to hook into fiber.

[1] [http://railwire.co.in/#](http://railwire.co.in/#).

<comment><USER15> > Why is Google taking credit for this?

Probably because they are paying for it.

</comment></comment><comment><USER16> It doesn't really work in the Lucknow railway station. Although there are ads all over the place that say "High Speed Wi-Fi available here", sometimes your device won't even discover the "Railwire" SSID.

A high-speed Wi-Fi service also seems a bit stupid given the fact that no ISP in Lucknow provides an unlimited 50+ Mbps broadband connection. What do they expect us to do? Take our laptops and sit at the station which is littered with rats, monkeys, their shit, and trash?

You can get an unlimited <50Mbps connection but that'll cost you approximately $500 - $1000 a month. For other "home users" there are shitty plans that give you 30GB-200GB of data with 2Mbps - 16Mbps for approximately $30 a month.

<comment><USER17> Sounds like there's room for a startup to provide a satisfactory internet service in your city.

Maybe also room for a startup that could keep your train station free of rats, monkeys and feces and trash.

<comment><USER18> >Sounds like there's room for a startup to provide a satisfactory internet service in your city.

Unfortunately in most cities, Airtel (India's biggest ISP) has a monopoly and the other local cable providers either cut the cables for other ISPs or either simply steal them (it was/is a major problem for BSNL, the state-owned ISP).

>Maybe also room for a startup that could keep your train station free of rats, monkeys and feces and trash.

The trouble here is that the railway contracts usually go to people who throw in a bribe to the station-master and the higher ups in the Railway Board. And of course, the contractors don't do their jobs properly because, well, people gotta earn some money.

<comment><USER19> Not completely true. There's a process of tenders

[http://www.indianrailways.gov.in/tenders.html](http://www.indianrailways.gov.in/tenders.html)

</comment></comment></comment></comment><comment><USER20> Has anyone around the world has experience with a decent public WiFi Services? Whether they are from government, telecoms provider or third party.

WiFi- being a best effort services, doesn't come anywhere close to LTE in UX. You get much better latency when you are collected, but you can only connect from time to time, and even if you are connected, it doesn't mean it will load. The Login system are better with "some" advancement on AutoLogin with Cert. By make worse if the WiFi doesn't work well your phone are constantly trying to load without getting any data, draining battery.

<comment><USER21> LinkNYC is still rolling out, but, in my experience so far in Manhattan has been pretty great. They have strong backhaul, good radios in the devices themselves, and enough of them to make a mostly-continuous network on heavily traveled avenues.

[https://www.link.nyc/](https://www.link.nyc/)

TransitWireless, the in-subway wifi in many train stations here, is comparatively much worse - but tbey also provide underground cellular service, which is almost always usable.

</comment></comment><comment><USER22> I find ScotRail to have pretty decent WiFi in the stations that they have it installed. Seem to be using Level3 as their ISP.

<comment><USER23> Ever tried it on any of their trains when moving? Absolutely unusable 99% of the time, so I wouldn't bother paying extra for 1st class thinking you can get work done on a long journey :(

</comment></comment><comment><USER24> As a tourist who visited India 4 times for several months (6 month tourist visa) I can't believe this. I traveled all India (from Delhi to Kanyakumari and back). There's no good internet. You're very lucky if you have some Internet. High-speed? Forget about it.

<comment><USER25> I'm not sure what you don't believe. Perhaps you should try it and report back with some actual evidence instead of ignoring that change is possible.

<comment><USER26> I too haven't seen a good connection anywhere in India. 3G was bearable, but every single Wi-Fi AP I connected to was so slow it was nearly impossible to use it.

</comment></comment></comment><comment><USER27> I remember reading that most of the traffic is porn. Not sure if it's having the desired kind of impact.

</comment><comment><USER28> Please do not do anything other then 100% black text on 100% white background or reverse. Any style-arguments you have are defeated by sheer readability and usability.

<comment><USER29> Ironically, this comment has grey on grey text due to heavy downvoting.

<comment><USER30> Not so ironically, the previous commenter did not choose his text colour; downvoters did it for him. Creator of the website that this thread discusses however did, and the contrast is not as good as it could be.</comment></comment></comment>


Top 100 Adobe Passwords with Count - <AUTHOR> http://stricture-group.com/files/adobe-top100.txt <comment><AUTHOR> Submitted because the list demonstrates how awful most people's passwords are.

Truly terrifying.

<comment><USER2> Yup. I would think a sane password policy would also disallow neighboring characters on any keyboard and sequential characters in any language. It could be a pain to implement, but it's better than doing nothing.

<comment><USER3> No that's not sane. As you say yourself it is a pain to implement and complex code is more prone to errors.

It is far more easy to require a minimum length and choose a sane minimum, 8 is not.

Also see this XKCD [http://xkcd.com/936/](http://xkcd.com/936/) as an information theory refresher.</comment></comment></comment>


Ask HN: HN meetup in Utrecht? - <AUTHOR>

Hi all,
My idea is quite simple :
I live in Utrecht and see a lot of people living in the Netherlands on this website.
There is only ONE HN meetup in the Netherlands though, located in Amsterdam (http://www.meetup.com/Hackers-and-Founders-Amsterdam-NL/).
I love what I can read here, but it would be thousands of times better to actually hear about it around a beer!
So : Would there be people interested in creating an Utrecht HN meetup ? <comment><USER2> For quite some time I have been doing design/development, but HN is somewhat new to me — in the sense there is a whole community I can participate in. What would be the general idea of such a meet-up? I live near Leiden, so Utrecht is not so great for me, but I would like to get in touch more with the startup/hacker community within the Netherlands. In addition, is it common to meet-up together with total strangers, or is it more likely an existing group meets up?

<comment><AUTHOR> Hey Jeroen,

Living in Leiden, you might as well want to join the amsterdam meetups directly, as it is closer from you.

The idea is quite simple : meet awesome people, discuss with them, share experience and be amazed by all the good energy that can come from all those awesome people.

I joined some meetups already in Utrecht (Ruby meetup, Startup Weekend) and always get out of it feeling like working all night. . . just to be a bit as amazing as the people I can meet.

I have a lot of side-projects/ideas but always struggle to find "real" people to share them with. Meetups are a really good way to find people that have the same kind of interests as you :).

And it is totally awesome to meet strangers (even though a bit stressful). Always good to get out of your comfort zone from time to time :).

<comment><USER2> Thanks for the quick reply, it sounds great to become more part of this community. I am finishing off high school this year, but have been working at the amazing @AanZeeNL as a creator for over a year now (although not actually working all the time due to my obligations to school). As for the Amsterdam hacker/founder community, could I just meet up, or should I qualify to some conditions? Conditions being: working at a startup or being a founder, or is it enough to be interested and be an aspiring founder?

<comment><AUTHOR> <http://www.meetup.com/Hackers-and-Founders-Amsterdam-NL/>

Go and try by yourself man, you'l be amazed :)</comment></comment></comment></comment>