Distributed Version Control Better Explained - <AUTHOR> http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/

<comment><USER2> That entire site does what khan academy does now, only in text-based format.

I learned so much from that site when I first encountered it. It really changed my life.</comment>


Clever Algorithms: Nature-Inspired Programming Recipes - <AUTHOR> http://www.cleveralgorithms.com/nature-inspired/index.html <comment><USER2> I saw this book on HN several years ago, and thought it was pretty interesting, and maybe worth reading.

Unluckily, it didn't help me very much in learning more about this field, nor did I think it was very helpful for solving other problems. Basically, it's more of an encyclopedia than a textbook, and not a good starting point.

Every post is basically separated into "biological inspiration", a brief description of the algorithm itself, and then a listing of the pseudocode and Ruby code.

The primary thing I was left wanting was 1. Either an intuitive explanation of why the algorithm worked well or a more rigorous mathematical explanation. 2. A comparison with the other algorithms.

TL;DR: A good book for what it is. However, if you're somebody looking for an introduction to these algorithms, look elsewhere.

<comment><USER3> What do you suggest?

<comment><USER4> A good free book is [https://cs.gmu.edu/~sean/book/metaheuristics/](https://cs.gmu.edu/~sean/book/metaheuristics/)

Otherwise this is a good start: [https://www.amazon.com/Introduction- Evolutionary-Computing-N...](https://www.amazon.com/Introduction-Evolutionary- Computing-Natural/dp/3662448734)

<comment><USER3> Thank you! The first - free - book is great so far.

</comment></comment></comment></comment><comment><USER5> Nature-inspired recipes can be categorized as "biomimicry".

I came across this video [1] the other day, which described the design inspirations the Japan's Shinkansen bullet train took from nature.

[1]: [https://www.vox.com/videos/2017/11/9/16628106/biomimicry- des...](https://www.vox.com/videos/2017/11/9/16628106/biomimicry-design- nature)

I suggest readers to watch this video to get the very profoundness.

</comment><comment><USER6> I'd love this book but unfortunately I can only address it as a starting point. It's good enough for a collection but it isn't a survey neither a complete book. I've worked a lot with evolution strategies and the starting point was this book although a bit limiting.</comment>


A student found a Canadian village that's 10,000 years older than the Pyramids - <AUTHOR> http://www.businessinsider.com/ancient-canadian-village-older-than-pyramids-2017-9 <comment><USER2> I recently drew a map of pre-Columbian archaeological sites in the Americas for Wikimedia Commons, see [https://en.wikipedia.org/wiki/Pre-Columbian_trans- oceanic_co...](https://en.wikipedia.org/wiki/Pre-Columbian_trans- oceanic_contact_theories) (hint: 13,000 years is not particularly old)

<comment><USER3> Interesting that the tip of South America is older than those near Alaska. How long would it take to migrate down the entire Americas? Though I assume the first migrations were at least 25k years ago.

<comment><USER4> The map is incomplete. Quoting [https://en.wikipedia.org/wiki/Bluefish_Caves](https://en.wikipedia.org/wiki/Bluefish_Caves)

> Bluefish Caves is an archaeological site in Yukon, Canada ... from which a > specimen of allegedly human-worked mammoth bone has been radiocarbon dated > to 28,000 years before present (BP), earlier than the generally accepted age > for habitation of the New World ... A review of the site in 2017 found it to > be 24,000 years old,[6] lending support to the "Beringian standstill" > hypothesis - that the ancestors of Native Americans spent considerable time > isolated in a Beringian refuge during the Last Glacial Maximum before > populating the Americas".

</comment></comment></comment><comment><USER5> Here's a google cache to beat the adblock-block.

[http://webcache.googleusercontent.com/search?q=cache:JudXjFz...](http://webcache.googleusercontent.com/search?q=cache:JudXjFz_AnUJ:www.businessinsider.com/ancient- canadian-village-older-than-pyramids-2017-9+&cd=1&hl=en&ct=clnk&gl=us)

</comment><comment><USER6> When this said student, I figured it was an 8 year old. Not a PhD candidate. While technically accurate it does tend to sensationalize it a bit.

<comment><USER7> A friend of mine used to work in the newspaper industry, and told me that (in New Zealand, anyway) "pupil" refers to high school or lower, and "student" refers to tertiary education.

Not sure if that applies elsewhere in the world, or even if it's still a thing in New Zealand.

<comment><USER8> As a kiwi. A pupil is just another name for student.

Definition: a person who is taught by another, especially a schoolchild or student in relation to a teacher.

It's just that in primary school you have a single teacher all year so the teacher refers to you as their pupil.

While in high school you have many teachers so you're one of their students.

But it's often interchanged.

</comment></comment></comment><comment><USER9> More details at the "local news outlet CBC" (lol) [http://www.cbc.ca/news/canada/british- columbia/archeological...](http://www.cbc.ca/news/canada/british- columbia/archeological-find-affirms-heiltsuk-nation-s-oral-history-1.4046088)

</comment><comment><USER10> "The nation claims that its ancestors fled for survival to a coastal area in Canada that never froze during the Ice Age."

I'm pretty sure the oral histories didn't mention the "ice age" (as in the most recent one ~13K years BP).

What I'm less sure about is that a living tribe are direct in situ descendants of the people who made these 13,000 year old archaeological remains. Nor do I see any evidence presented for that. Yes we know, people were in the new world earlier than 10,000 years ago. Nice to see it verified.

</comment><comment><USER11> Does it prove the village is more than ten thousand years old? Or just that there was a village on the same site ten thousand years ago?

I don't mean this just in a nitpicking ship-of-Theseus sense, the village could have been nonexistent for very long stretches of time.</comment>


Tim Harford – Article – Could an income for all provide the ultimate safety net? - <AUTHOR> http://timharford.com/2016/05/could-an-income-for-all-provide-the-ultimate-safety-net/ <comment><USER2> I don't get basic income. Why would someone get resources just because they happen to be born as homo sapiens? It's not like they worked for it or developed themselves into a homo sapiens. Just dumb luck.

Another thing nobody is talking about:

Slavery of robots. Why is it okay to enslave robots, use and abuse them, buy/sell them and finally throw them into trash? But you can't do that with certain members of homo sapiens species. I don't get it.

<comment><USER3> To be honest, the questions seem a bit trollish, but I will try to answer anyway.

a) Homo sapiens is a social animal (you can check this on Wikipedia if you are unfamiliar with the term). Therefore it tends to confer special status to members of its own species. I am not saying this is right or wrong - you asked "why" and this is the answer.

b) In part this has the same answer as (a): we (humans) tend to privilege other humans (or species we find socially valuable, like dogs and cats) and have much less problems in using other animals as a fungible resource. But even an ethical vegetarian or an animal rights activist would not say that cars, toasters or macbooks should not be traded, used, and finally scrapped.

Why? Well, these things do not have consciousness and cannot experience pain. There is nobody experiencing "abuse", not even enough "somebody" to experience pain or discomfort. If you are ok with the idea of selling stones or kicking sand around, you should be ok with scrapping laptops, too.

When (if) machines reach the point where they actually experience things, then we will have to deal with that. Hopefully ethically. I doubt it will happen soon, though.</comment></comment>


Bacteria Are Masters of Tai Chi - <AUTHOR> http://nautil.us/issue/37/currents/bacteria-are-masters-of-tai-chi <comment><USER2> Dude. This is the _fourth_ time you alone have posted this in the last 2+ days.</comment>


Pibooth: A PhotoBooth application for Raspberry Pi and opencv compatible devices - <AUTHOR> https://github.com/pibooth/pibooth <comment><USER2> This is so cool, I always had this idea. :D</comment>


How I learned to live again, after running a man over - <AUTHOR> https://www.theguardian.com/lifeandstyle/2018/apr/05/i-became-a-killer-fatal-road-accident-forgiveness <comment><USER2> "PTSD continues in unexpected ways. I'm still hypersensitive to noise, anxious in crowds. I cry at the tiniest prompting, often at kindness and evidence of a shared humanity."

I would never associate ptsd with these symptoms. My daughter was diagnosed with Leukemia in May '17 (she's responded well to treatment so far) and I'm susceptible to all of these - but I would never have labelled it as ptsd.

<comment><USER3> If you're seeing a mental health professional it's an interesting conversation to talk about labels for illness, and how people ideate around them. If this label doesn't work for you, you don't have to wear it.

If you aren't seeing a mental health professional, given the stresses in your life, it's worth at least thinking about. I value time spent talking to somebody dispassionate, but interested in my mental welfare for a number of reasons. It only has upsides, as far as I am concerned.

</comment></comment><comment><USER4> The number of comments on that article along the lines of "this happened to me / my family member" is illuminating.

I think as individuals we don't have a good understanding of just how harmful motor vehicles are. This is even though most people know of someone that was killed or maimed before adulthood. Like suicide, I think the consequences of motor vehicle crashes are mostly hidden. This doesn't only apply to the fatal crashes. I'm sure people that are maimed tend to venture into the public domain less often than the able-bodied. If they were more visible, we might be more aware of the carnage that happens on our roadways.

I think there will come a time when the idea of guiding a couple of tonnes of metal at speeds of up to 70km/h within a metre or two of pedestrians will seem absurd.

<comment><USER5> It is already absurd. I'm not sure why we, as a society, allowed cars to take over our "pedestrianways". I suppose it was gradual — only a few cars at first, traveling relatively slowly back then.

<comment><USER6> You may be interested in the following article, 'The forgotten history of how automakers invented the crime of "jaywalking"': [https://www.vox.com/2015/1/15/7551873/jaywalking- history](https://www.vox.com/2015/1/15/7551873/jaywalking-history)

<comment><USER7> Interesting read, I didn't realize the jay in jay walking was a slight.

</comment></comment></comment></comment><comment><USER8> Stuff like this makes me wish for self driving cars the most. I am fine with killing myself with my driving but it would be very hard to deal with killing another person. I think most of us pretty much every day sometimes don't pay attention and could potentially cause an accident. It's just pure luck getting away with these mistakes.

<comment><USER9> > I am fine with killing myself with my driving but it would be very hard to > deal with killing another person.

This makes me wonder (without judgement) how the engineers at Tesla and Uber are mentally handling the recent events.

<comment><USER10> It makes me wonder how folks that work on weapon systems that are used to kill innocents in poor countries like yemen feel..probably much worse than Tesla engineers?

<comment><USER11> Why would you chose to work on a weapon system if you are unable to handle the fact that weapons are used to kill people? It's literally the job description.

That is the difference between them and Tesla engineers - people killing is a bug in self-driving cars, not a feature.

<comment><USER10> That's true.

</comment></comment></comment></comment></comment><comment><USER12> > I turned left on to the main road, and began to move up through the gears. > That's when a car coming towards me flashed its lights. This used to happen > to me a lot in the Mini. So much that a couple of years earlier I'd taken it > back to BMW to get it checked; yes, my headlights were wrongly adjusted and > I had inadvertently been annoying other drivers. So when this driver > flashed, I instinctively flashed back: "No, those aren't my main beams – > these are, see?" > The time between my flash and the impact was > infinitesimal.

I'm having a hard time understanding the crash as there is so much information absent from the article.

What kind of main road was this? Was it in a town or a A road between two towns? Was it designed for pedestrian usage (there are lots of A roads in the U.K which are not designed for pedestrian usage. These roads are often known as BYPASS roads and are designed to keep motor vehicles out of town centres). Was it street lit? Given the fact that the other driver flashed him I would think not? What was the speed limit? Was it appropriate for the road?

<comment><USER13> Here's the spot where I believe he got on A148 based on the description (heading east out of Holt, turned right around the bend where the road joins A148) [https://firstname.lastname@example.com,1.114502...](https://email@example.com,1.1145028,17.72z)

I used streetview to follow along the road, it is a 2-lane that has sporadic houses and somewhat wooded, there is a sidewalk on the left side or the road. Speed limit signs say 30 km/h (so just under 20 Mph). After the residential area (1.3 km), it opens up to mostly farm field for another 1.5 km, then it hits another residential spot. So the description of "just winding through the gears" would put it probably at the end of the first group of houses, where it makes sense that residents would be walking (there is a payphone and a bus shelter in the middle of that stretch of road).

<comment><USER6> It says the victim, Rawson, had just exited a bus, and the driver was ramping up in gears - shortly after the left turn off the A148, as a bend begins to straighten out, there is a hidden bus stop on the left side of the road: [https://email@example.com,1.1132237,3a,75y,231...](https://firstname.lastname@example.com,1.1132237,3a,75y,231.32h,71.39t/data=!3m6!1e1!3m4!1sab0dRvemBgfxooE54GYnbQ!2e0!7i13312!8i6656)

There doesn't appear to be any obvious lighting in the area; it may be the oncoming driver flashed because they could see Rawson was in the road and realised the oncoming driver wouldn't have seen him, having just come around the bend.

</comment></comment></comment><comment><USER14> It's my wish that someday speed limit is strictly enforced. Instead here, the norm is for people to go 10 to 15 mph over speed limit. If you don't speed, you will receive harassment from the vehicle behind -- flashing of lights, honking, or tail-gating.

</comment><comment><USER15> Please don't call it an "accident". The Associated Press recommends using the term "crash" instead.

[https://www.transalt.org/news/releases/9545](https://www.transalt.org/news/releases/9545)

<comment><USER16> >avoid the word "accident" in stories about traffic crashes, saying the word "can be read as exonerating the person responsible

TFA indicates that the person has indeed been exonerated.</comment></comment>


Neighborhoods Propose Printing Their Own Currency To Encourage Local Shopping - <AUTHOR> http://consumerist.com/5102038/neighborhoods-propose-printing-their-own-currency-to-encourage-local-shopping <comment><USER2> Sounds like time banks.

<http://www.timebanks.org/>

"For every hour you spend doing something for someone in your community, you earn one Time Dollar. Then you have a Time Dollar to spend on having someone do something for you. It's that simple. Yet it also has profound effects. Time Banks change neighborhoods and whole communities. Time Banking is a social change movement in 22 countries and six continents."

<comment><USER3> Timebanking is a great concept.

However, amazingly, the IRS also considers 'time banking' tax evasion. Apparently, if someone does something for you as a favor, you're supposed to log it as 'income' with wages charged at 'fair-market-price'!

<comment><USER4> It would appear (IANAL) that time banking could be considered a form of bartering which is covered by the IRS here: <http://www.irs.gov/taxtopics/tc420.html>

"The fair market value of goods and services exchanged must be included in the income of both parties."

<comment><USER5> A free forum that _just happened_ to have features that made it a good ad-hoc barter network would be popular.

</comment></comment></comment></comment><comment><USER6> There's been a highish profile attempt in a town called Lewes in the UK: <http://thelewespound.org/>

The problem is that the currency has become a collectable item, so people have been buying the currency (even on eBay) and just holding on to it as a memento.

</comment><comment><USER7> This sounds really silly ... mainly because people are using cash less and less every year to make purchases. They use credit/debit cards more than cash.

On the other hand, I think it's important to support local businesses (when they deserve it) and the idea of a co-op of local businesses sounds like a good idea. In fact, I think there could be a startup idea in there. Something like:

1\. A business creates a co-op group online and other local businesses can join.

2\. Consumers can go to the group's page online and purchase a gift certificate/voucher that gives them $1.10 credit on the dollar.

3\. Consumer prints it out (has a unique code on it) and can use it at any of the member stores

4\. Member store would just need internet access to enter the code and debit the voucher and could transfer their money out later

Thoughts?

<comment><USER8> "This sounds really silly ... mainly because people are using cash less and less every year to make purchases. They use credit/debit cards more than cash."

Hmmmm. Assuming each store has a wireless internet connection available to them (possibly at the cost of a wireless router), using off-the-shelf hardware for magnetic cards and an embedded system, a server on the internet, and some programming time, how much money would it take to set up an alternate local currency with full plastic card support? Not much.

Probably still too much. But not much, and the thing that's really expensive initially, the custom programming, can be re-used well.

The custom programming could do some clever stuff, too; automatic backing to a standard credit card? And you'll need full transaction capabilities; I need to be able to send some other user the money for not much extra cost.

I don't think full plastic card support is anywhere near out of the question. In fact, this is far more practical than it was in the 1930s... if it doesn't happen this recession, I wouldn't be surprised it does in the next one...(!)

<comment><USER9> I like your ideas. They should be explored more.

I think the big danger is that, in this model, currency continues to exist in the ether. Without something in one's hands, a financially strapped nation might avoid this type of system.

<comment><USER8> I think there's scaling issues to consider, and, for a change, good ones rather than bad ones. A small currency with only a few tens of thousands of dollars of US$ equivalence in it can afford to be purely ethereal. A little less secure, too (though not egregiously poorly secured, which is the usual case for a new system of any kind).

After all, in the end, money is simply confidence. I don't believe in the gold standard because I believe it fundamentally misunderstands the nature of money (and of gold, but that's another story). Money simply is the confidence that the next person will also accept it, and the fact that the confidence chain can be broken is not fixable, it is fundamental to the nature of money. US Dollars, even gold-backed, can have the same problem, and note that the reason we're talking about this at all boils down to fear that the US dollar won't be as useful as it was before, that the US dollar won't be good enough to keep the local economy going.

A smaller system, especially if it is truly geographically local, can engender confidence in ways that the larger system can not; "I know everybody using this", or if you prefer, more ominously, "I know and have easy access to where everybody using this lives".

You can grow this like you could grow any other enterprise, I think; the system you get out of the gate that works in Small Town doesn't need to be the same one that works in New York. The only tricky thing is that I have no idea how to monetize this; who will want to buy a currency that you're taking a profit from? And it _will_ need to be monetized; there's some risk here that I wouldn't touch with a ten-foot pole without an LLC minimum, and that LLC sure wouldn't take it on for free.

</comment></comment></comment></comment><comment><USER10> Ithaca New York has been doing this for a while. They're trivially counterfeitable, as you might expect, and the IRS considers much of the activity tax-evasion (and rightly so) though to my knowledge nobody has yet been busted for them. Technically people are supposed to claim them and pay taxes (and many do) but there's a lot of nonpayment going on too and it's very hard to trace.

<comment><USER11> It looks like the Berkshires region of Massachusetts has been doing this for a while too. <http://en.wikipedia.org/wiki/Berkshares>

<comment><USER10> Those at least look a lot more professional. The Ithaca Hours I saw (I was there maybe 5 years ago) looked like someone made them using colored paper and a copy machine. They had serial numbers, but as far as I know there was no way for a merchant or individual to verify those at the time of transaction, so they were useless except maybe after the fact (at which point it would still be hard to tell which was an original and which a fake).

</comment></comment></comment><comment><USER12> Sounds like a larger scale version of Smoot-Hawley. Such perfect timing!

</comment><comment><USER13> How many times will people try variants of autarky before they learn?

</comment><comment><USER14> I've always been fond of Salt Spring Dollars (<http://www.saltspringdollars.com/>).

</comment><comment><USER15> What if walmart accepts the currency?

</comment><comment><USER9> Does anyone know is this is constitutionally legal?

<comment><USER16> I believe it is, but that doesn't mean the Feds won't seize it.

To avoid the possibility, they should just call it gift certificates or something similar.

<comment><USER5> Better yet, just have multiple independent parties verifying each other, maintaining servers overseas, and make all transactions electronic.

</comment></comment></comment><comment><USER17> only problem with this is that it is illegal

a business can reserve the right to refuse service to anyone, but in the US they can't tell you that you can't use US dollars

<comment><USER18> Are you sure about that? I often used to tell retailers that they "had" to accept, say, 2 dollar bills or whatever because currency says "legal tender for all debts public or private". I found out some years later that this is quite literal. If I _owe you money_ and I want to pay you in US currency-- that is, I want to use the money to pay off a debt-- you are legally obligated to accept it. However, if, say, you offer to sell me a hamburger, but refuse to take anything but 5$ bills, that is okay. (Unless you sell the hamburgers on credit...)

<comment><USER7> That sounds about right ... I've seen plenty of stores that don't accept bills over $20</comment></comment></comment>


Ask HN: We're being censored. Why? - <AUTHOR> This article (https://news.ycombinator.com/item?id=16576569) was flagged and removed from the news pages.
Not even a flimsy excuse was given.
It is such an important topic - a person who ran a black site and destroyed the evidence before Congress could see it is now able to look at all our dick pics. This one shouldn't be shoved down the memory hole.
My comment on it is permanently compressed (even when the thread is opened in an entirely different browser) and has been stuck on 11 points. It's fucking weird, and I've never seen that on HN before.
As another commenter pointed out, informative and well sourced comments on the thread are flagged and grayed to oblivion. While most commenting has stopped since the page disappeared, there are a number of suspicious commenters still deflecting and inciting people in dumb directions.
Is this who you are HN? <comment><USER2> Users flag stories that they don't think fit the site guidelines. That's all that happened here.

I get that you disagree. People disagree about this all the time, often strongly. I doubt there's a single story that every user agrees belongs on HN.

The only unusual thing in this case is the drama you've created about it. We can debate whether a CIA director nomination belongs on HN, but there's no question that the above submission and your comments are breaking the site guidelines. Those are at [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html). Please read them and follow them when posting here. They're written the way they are for good reasons, based on over ten years of running this place.

No one's questioning the importance of major political stories, by the way. Of course they're important—much more important than most of what gets posted here. That's why we need flagging. Otherwise they would take over the site, and HN would be a completely different place.

HN's mandate is to gratify intellectual curiosity. Not all political stories are off topic, but the ones that only stir up outrage, however justifiably, and don't also gratify intellectual curiosity, are not a good fit.

<comment><USER3> >>Not all political stories are off topic, but the ones that only stir up outrage, however justifiably, and don't also gratify intellectual curiosity, are not a good fit.

So does that mean I can flag anything that doesn't gratify _my_ intellectual curiosity?

Because I personally find it very intellectually curious what is currently happening in the United States, but when those stories get buried by a few overzealous people then I feel like I should do the same when someone else posts a story about the latest JavaScript framework. Yet I feel like if I started flagging them I would probably lose my privileges here.

<comment><USER2> No, I definitely wouldn't say that that follows.

It sounds like you might want a different kind of forum than HN. If every political outrage made the front page, that would change HN into a forum about "what is currently happening in the United States". Such a site could be valuable, but wouldn't be HN. HN has a different mandate, which it's our job to stick to.

There's room for lots of kinds of website. I think a forum dedicated to intellectual curiosity has a right to exist, among others; and if HN is to be that, it has to be preserved actively, since the default forces all point the other way. User flags are part of how HN preserves itself. Yes, there are exceptions, but those need to be infrequent and have some unusual quality that raises them out of the category of latest outrage.

The supply of outrages outweighs the capacity of this site to accommodate them. Rather than calling that disgusting and despicable (as happened a lot today), it would be better to find a different kind of site that _can_ accommodate them, or perhaps even to start one.

</comment></comment></comment><comment><USER4> I don't know why people flagged that link, but I'll tell you why I'm flagging this one: because you have to have flagging or crap takes over the site, and if you also allow protest posts from people upset about things that got flagged, then _those_ take over the site.

I don't complain in Ask HN posts when stuff I upvoted is flagged off the frontpage. If you have a problem with moderation, email the moderators, like everyone else.

<comment><USER5> By flagging this thread you are effectively suppressing a very important discussion about the tech community's roles and responsibilities in the social and political worlds. As I mentioned in another comment, this industry tends to eschew political awareness. Which is ironic, because that passivity enables some of the biggest issues that we in the tech industry oppose (surveillance, irresponsible data collection, etc). There is real, visible, connective tissue between politics and technology and while ignoring may be the most comfortable thing to do, it's also the most irresponsible.

<comment><AUTHOR> Thank you for your support.

I also believe this is a terribly important topic to discuss, with special relevance for the HN community (not that I need to prove that, the number of comments speaks for itself).

I have emailed the mods, and will update with the reply I get (if I don't end up banned).

<comment><USER5> Do you know where to find their emails? I'd like to weigh in as well.

<comment><USER2> Our email address is all over the place but the best way to find it is via [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html), so you get a refresher on the site rules before you email us. Sometimes a question will answer itself along the way.

</comment></comment></comment></comment></comment><comment><USER6> I think (but don't take my word for it) it's because it has nothing with tech/startups/whatever AND is related to politics/trump.

Back during the US election, HN became mostly news like this, and if I remember correctly it was decided it wasn't the purpose of HN to link to such news. It does not mean that these news are considered false, or not important, it does not mean censorship, it just means that HN is for a rather specific kind of stories.

<comment><AUTHOR> [https://news.ycombinator.com/item?id=15745363](https://news.ycombinator.com/item?id=15745363)

This story from 3 months ago is as tech-related (Google changing their algorithm) as you can get. It wasn't visibly flagged, but was almost certainly de-ranked, and it wasn't just me who commented about it.

Even if you can buy the excuse that this isn't related to tech or start-ups, and ignore the very active commenting on it, you're still left with the utter refusal to allow any transparency about what is flagged and de-ranked. Why shouldn't we demand better?

</comment></comment><comment><USER7> In a word, yes.

Many of us (including me) find this matter interesting, but HN is designed to allow a tiny minority to flag content. Whether that's wise or not is another topic. It's always been HN's design.

You can't do much about other commenters, even if they are professional trolls paid by the post. Nonetheless, political matters (which this arguably is) are considered by many to be off-topic. That's why you're getting squelched.

<comment><AUTHOR> There were plenty of active commenters, most of them considering this a very serious issue.

And no one has been able to offer any explanation why my comment is permanently collapsed even when opened on a different browser, despite no obvious flag and a healthy amount of positive votes.

Finally, as I've said elsewhere here, there appears to be evidence of "silent de-ranking" where stories like the one about Google's censorship are not flagged in any way but won't show up on the front pages.

As a community HN deserves better, by far. Normalising this behaviour will lead to dark and bad places.

</comment></comment><comment><USER8> I go to HN to read tech related things, not more political drivel. I'm glad it got removed.

<comment><USER5> To call this drivel is specious. It's not a political cartoon, it's about illegal torture methods. The tech industry, with its tremendous growth and influence, has a responsibility to pay attention to these things.

<comment><USER9> What other things do we, as an industry, have a responsibility to pay attention to? Environment? Health and sanitation in developing countries? The civil war in Syria? HIV? There are a variety of areas where tech could play an important role in changing the lives of (b|m)illions of people. How do you draw the line? What makes torture (which I would argue is completely unethical but directly affects few people) more important than hunger (which isn't an ethical issue but which clearly affects millions)?

</comment></comment></comment><comment><USER10> > Off-Topic: Most stories about politics, or crime, or sports, unless they're > evidence of some interesting new phenomenon. Videos of pratfalls or > disasters, or cute animal pictures. If they'd cover it on TV news, it's > probably off-topic.

From the guidelines. ([https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html))

<comment><USER11> I often find this response in threads like this, and often see it as both a cop-out, and unfortunately "cherry-pick-able" as a guideline.

Spectre/Meltdown showed up on the news. Does that mean it's not relevant? Same goes for the Broadcomm purchase blocking. Same goes for whatever statement Elon Musk made this week, or the current SF housing policy. (I chose examples intentionally in "Decreasing-tech-relevancy" order, and could probably go even further and still be picking recurrently front-paging-topics.)

I would also argue that openly placing someone with such a history in charge of an agency we're all under the purview of, one with already such iffy history, is both interesting and new, and to echo my post from the thread in question, the prevalence of corporate governing boards to take members with iffy track records on these subjects to my eyes links the relevance directly with our purview as tech entrepreneurs. (see: Uber Board) I do not believe we (members of the tech community) can abscond the responsibility of involvement that our position affords us.

The "hide" button exists as well, and I've become somewhat saddened by the extent to which HN seems to lean on "flag" for topics which, in an interconnected world, I consider very worth discussing in a tech context. I have a fundamental mental dissonance with the pattern this enables, that "I don't want to see this topic discussed" turns into "I don't want others to see/discuss this topic." HN (and the startup/tech community as a whole) is not a monolith, and if the mechanisms of voting try to structure it that way, I see that as highly unfortunate.

(I don't mean to "complain about points" but it's rather absurd to look at the wild swings from +8 to -8 and back again for any of my posts on this topic. It speaks to me that there are at least two "factions" with very polarizing opinions on this, and the context has turned less from discussion into silencing vs vouching. I certainly don't remember seeing these patterns as strongly 5+ years ago.)

<comment><USER12> > Spectre/Meltdown showed up on the news.

well it didn't at the beginning. hn readers at least had one or two days in advance.

</comment></comment></comment><comment><USER13> IMO HN should stick to tech. And even if there is an argument over between Python or GO, I am fine with it.

Politics shouldn't be discussed at all.

It has been understood that thing don't go as smooth as in a community like these. I personally think that the story about Trump and Broadcom or endless parade of bitcoin at $x price shouldn't be voted up at all. But, somehow people feel value in those. I tend to skip those stories.

<comment><AUTHOR> The CIA employ what percentage of the tech community again? Maybe this shouldn't be considered an entirely political story, given the ramifications it has for all of us.

<comment><USER13> I am sorry but no one is stopping you from discussing the ramifications on other platforms like Reddit etc, or messaging like whatsapp or on phone with friends or family. What you are currently asking is HN to enforce you viewpoint on what should be discussed.

</comment></comment></comment><comment><USER14> > My comment on it is permanently compressed (even when the thread is opened > in an entirely different browser) and has been stuck on 11 points.

You pointed an inconvenient fact about Obama and a lot of people are not going to like that. They could discuss it or flag and run away quickly. Flag and run away is too easy, so that's what ends up happening.

One time I criticized the obsession with Russians. A user went and start digging through my comments to determine that I speak Russian (which I do) and that meant proof I was a Russian shill, paid by Putin presumably to subvert Democracy right here on HN. Which is doubly creepy given that the Russian government deported and persecuted members of my family in the past.

<comment><USER2> Didn't we specifically tell that other user this was a bannable offense on HN? I vaguely remember this.

<comment><USER14> Remember the warning and thanks for keeping an eye on things. HN is a rare phenomenon these days compared to other sites. People including me, mostly complain, and not much said when things work well, but everything is working very well. As for banning, I don't necessary would want them banned, hopefully they can continue participating, sometimes people have bad days and such.

<comment><USER2> Yes, that's why we put it that way. "Bannable offense" is more "please don't do this so we don't have to ban you" than "we'll ban you".

</comment></comment></comment></comment><comment><USER15> Any topic mentioning negative aspects of the tech community related to race are also usually flag bombed to death. Mistreatment of women in the tech community still get flagged pretty regularly but they seem to be getting vouched for more regularly now.

</comment><comment><USER16> Maybe it is off topic? But, on the other hand, this unflagged:

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

Seems pretty arbitrary to me. That's the internet, I guess.

</comment><comment><USER14> ... And everything flagged and downvoted for asking a question.

</comment><comment><USER17> I understand what you mean, but political content is just not allowed.

Perhaps for the good ;)

Ps. I posted it

</comment><comment><AUTHOR> Update, 52 mins in:

This thread is not appearing anywhere on the front pages. With 31 points and 18 comments in less than hour.

What the Fuck?

</comment><comment><USER18> You have to understand that HN is an artificial environment, specifically curated to dictate the behavior and thought processes of its users. It is a safe space for nerds who don't want to think about scary things like politics. If it causes heated "uncivil" conversation, it's off-limits here. Especially if the conversation is about civics.

<comment><USER19> I reject your condescending characterization of HN readership as "nerds who don't want to think about scary things like politics." I think about "scary" politics all the time, thank you, but I still don't want these discussions on HN.

HN is not Reddit. HN is not Twitter. HN is not Facebook. HN's readership is making it clear through the site's moderation tools that they, to some critical degree, do not want content such as this on HN. There are plenty of other forums for the politically-minded to be activists.

</comment></comment><comment><USER5> This type of behavior should have been expected from the day HN announced they weren't allowing political news on their site, just over a year ago.

It's pretty irresponsible: Primary news outlet for an industry that is already noticeably lacking in social and political responsibility decides to put up another set of blinders.

Low EQ Silicon Valley refuses to use its influence to affect political change in any meaningful way. Or even just political awareness. Ironic when you consider this political/social passiveness enables the same surveillance capitalism that this community is constantly complaining about.

<comment><USER20> "No politics" was an experiment that lasted less than a week. It was clearly labeled as an experiment at the time. I don't think that it's current HN policy.

<comment><USER5> Is the experiment really over when politically-adjacent threads are still getting flagbombed and removed? Just because it's not in the site guidelines doesn't mean it's not being actively enforced.

<comment><USER21> > Is the experiment really over when politically-adjacent threads are still > getting flagbombed and removed?

Yes; that was happening before the experiment, too. Most general political news has been officially OT on HN long before the experiment, and remains so under the general guidelines. The experiment was effectively a ban on that small subset of political content that would otherwise be generally within the guidelines.</comment></comment></comment></comment>


How Coal Kills - <AUTHOR> http://www.scientificamerican.com/article/how-coal-kills/ <comment><USER2> That was completely devoid of any useful numbers. Here's a nice, well researched chart that actually puts coal in a useful context compared to other ways of generating electricity.

[http://www.withouthotair.com/c24/page_168.shtml](http://www.withouthotair.com/c24/page_168.shtml)

The rest of that is well worth reading, too.

<comment><USER3> Unfortunately it doesn't give any links to sources. In particular, the number for oil is surprisingly high. I'm not saying it's wrong, I'm just curious about where and how the deaths are occurring.

Coal kills in three distinct ways:

1) Miners: This depends enormously on the country and the mining technology. The trend in North America is toward fewer and fewer miners underground. I've worked in a support industry for hard rock mining, and coal is fundamentally different in a lot of ways, but in hard rock the push is toward "zero entry" mining, where everything underground is teleoperated or simply autonomous.

2) Transport: Coal has to be moved via train and truck, and the average thermal coal plant requires a boxcar load every fifteen minutes. This is one of the things that makes nuclear so much safer: uranium has such high energy density that transportation deaths are very nearly zero. Mining deaths are lower too.

3) Pollution: This is where coal really falls down. It's full of heavy metals --lead, mercury, arsenic--and governed by standards that let coal plants release more radioactivity into the environment than nuclear plants. Particulates cause premature death due to respiratory disease. On the good side, they may be cutting global climate change by more than half (1 W/m __2 cooling due to particulates vs 1.6 W /m __2 warming due to CO2).

Oil in contrast seems like it ought to be relatively safe. Drilling, refining and pipeline transport rarely kill people. Rail transport--brought to you by people who hate pipelines but love cars and electricity but oppose nuclear, solar and windmills--is far more dangerous but it would be surprising if it was that much worse than coal.

Here are some alternative data with some discussion of different sources and studies: [http://nextbigfuture.com/2011/03/deaths-per-twh-by-energy- so...](http://nextbigfuture.com/2011/03/deaths-per-twh-by-energy-source.html) (coal and oil are both still pretty bad compared to nuclear, but we knew that anyway: nuclear is overwhelmingly the safest way to generate electricity, despite its likely preventable issues with economically catastrophic failure.)

<comment><USER2> I actually did the numbers a while ago and even the Fukushima plant which ended up exploding produced less deaths than the Next Big Futures numbers for world coal and landed in the middle of Sustainable Energy's numbers for European coal.

[http://hopefullyintersting.blogspot.com/2013/12/fukushima- vs...](http://hopefullyintersting.blogspot.com/2013/12/fukushima-vs-coal.html)

</comment></comment></comment><comment><USER4> For an article titled "how coal kills", I must say I am not much more wiser from reading it. Is it only from specific impurities which are themselves toxic elements, or does the carbon play a role? Is it the size of the particles in coal smoke/ash, or is it the molecules? Do they interact to form something deadlier than the sum of the parts?

I know coal kill. What would be interesting to know is how.

<comment><USER5> I've heard east coast (US) coal is dirtier than west coast (US) coal, particularly in sulfides. The acid rain fix known as the Clean Air Act of 1990 was heavily lobbied by the east coast coal producers and bears some marks to show for it. Burning so called "Clean Coal" has to do with how much gross weight of sulfur you pull out of the coal, which makes sense for coal heavy in sulfides, but less so for west coast fuel. As it stands, to burn west coast coal in the US requires the addition of sulfides to the coal so it can then be pulled back out.

As for other impurities... there are a lot of radioactive crap in coal that is aerosolized during the combustion process. The most notable of these is uranium, which is carried away with the rest of the fly ash. There's a "shadow" around coal smoke stacks where such fly ash ends up accumulating. If it makes it into the water table or onto arable land that is used to grow crops, BAM, you've irradiated a small chunk of your population.

Depending on the source of the coal, there are various other heavy metals that can end up in your fly ash.

</comment></comment><comment><USER6> Coal contributes to most of the mercury pumped into our atmosphere, which is what's contaminating the fish, and more radiation than nuclear power.

<comment><USER7> Coal power also contributes more radiation to the atmosphere than nuclear power, or weapons ever did! It does this because of trace amounts of uranium and other radioactive elements which are in coal, released when burnt.

</comment></comment><comment><USER8> It seems unlikely we'll ever put a price on coal's impact on people's health (and therefore the cost of healthcare) and on the environment. But the very least we could do is _cut the subsidies_ , and let it compete fairly against solar and other renewables. Eventually we'll chase it out of the market, because solar ill keep getting more cost-effective.

<comment><USER9> Would you be willing to have a truly level playing field, where no energy technology was awarded subsidies?

<comment><USER10> A truly level playing field would mean internalizing all externalities. If that were possible, yes, that would be ideal, but as he just noted, it's really unlikely, partly because it's enormously complex.

<comment><USER11> That's actually just your definition of a level playing field, there is no 'true' level playing field. (Well, other than literal playing fields that are level)

</comment></comment></comment></comment><comment><USER12> I'm interested in the study of complex issues like these (more from a math point of view than a political one) - how to optimize for the right choice, given that each choice has a bunch of non-overlapping side effects.

But I don't really know where to get started. What could I google for?

<comment><USER3> "Economics" :-)

Seriously, this is precisely the problem that economics tries to solve, and it is evolving into a mature discipline with a reasonable level of empirical validity, but the way psychology has evolved in the past few decades.

There are several main policy-oriented disciplines:

1) sociology, which studies society as if economics didn't matter

2) economics, which studies society as if morality didn't matter

3) political science, which studies society as if neither economics nor morality matters

I'm caricaturing, of course, but the differences between the fields are due more to historical accident than anything else, and if you're interested in focusing on the math then economics is the place to be.

There is a lot of very interesting work being done in "heterodox" economics right now, particularly by people like Steve Keen, who is focused on relaxing the assumption that the economy is at all times in quasi-equilibrium, which is foundational to the neo-classical paradigm: [http://www.debtdeflation.com/blogs/](http://www.debtdeflation.com/blogs/)

Keen is interested in dynamical economic models, which necessarily require you include things like banks and money in the model (these drop out of equilibrium models, mostly.)

</comment></comment><comment><USER11> Why are press releases on hacker news? The 'article' is practically devoid of content.

</comment><comment><USER13> I'll flip the question: Considering that coal has provided a very significant amount of the electrical power and heat for humans over the past 100 years, how many lives has coal saved? How much has it improved the human experience?

Put simply, a world without coal is a horrible world.

<comment><USER14> That's a moot point if there's another viable way to generate the same amount of power without trading lives in the process.

Slave labor also improved your life quite a bit, provided you were a slave owner. Thankfully we found an alternative.

<comment><USER13> Slavery, really? That's your analogy?

What's your viable way to replace coal today? Include explanations of how your replacement can be as reliable as coal, and how the developing world can afford these sources without sacrificing other government services.

<comment><USER15> Literally millions of people are being killed by coal, without any choice in the matter[1]. What analogy would you prefer to use for something as devastating as that?

Coal only seems affordable if the significant health and environmental costs are (incorrectly) assumed to be zero.

[1] [http://www.theguardian.com/environment/2013/dec/12/china- coa...](http://www.theguardian.com/environment/2013/dec/12/china-coal- emissions-smog-deaths) >Emissions from coal plants in China were responsible for a quarter of a million premature deaths in 2011 and are damaging the health of hundreds of thousands of Chinese children, according to a new study.

<comment><USER13> A study commissioned by Greenpeace. Yes, a very unbiased and honest source on these topics. Might as well list an NRA study on gun violence.

And read closer, please. The study claims to have found indicators pointing to shortened lives, not people being killed by coal, which is significantly different.

And, again: warmth and electricity and live to 65, or cold and darkness and live a little longer. And really, that wouldn't be the trade off, because electricity and warmth also lead to longer lives. So this study is meaningless and shows nothing at all.</comment></comment></comment></comment></comment>


TCP and BBR [pdf] - <AUTHOR> https://ripe76.ripe.net/presentations/10-2018-05-15-bbr.pdf <comment><USER3> I've been running BBR on both my web server and my own laptop for quite some time now with good results. It's included in the mainline Linux kernel - <USER2> you have kernel 4.9 or newer you can probably trial BBR yourself with these sysctls:

      net.ipv4.tcp_congestion_control=bbr
      net.core.default_qdisc=fq

Most vaguely recent distributions (Debian stable, Ubuntu, etc) now support it, and a few (like Solus) even default to using BBR.

<comment><USER4> I've been interested in BBR since the ACM Queue article and finally turned it on yesterday on my home workstation.

But slide 27 in the slide deck is incredibly troubling, where it shows BBR completely destroying the throughput of a neighboring host using Cubic. (Cubic being the default on modern Linux).

Even if everyone upgrades to BBR, slide 30 shows more trouble in paradise with BBR not getting to a stable bandwidth allocation. I have a hard time reconciling this with the ACM Queue article, since supposedly Google saw great results rolling it out at Youtube.

ACM Queue article: [https://queue.acm.org/detail.cfm?id=3022184](https://queue.acm.org/detail.cfm?id=3022184)

<comment><USER5> Youtube doesn't have neighbouring senders using Cubic, and doesn't try to fill the path's narrowest hop. It tries to send the video at exact playback speed and if possible at high quality, and its notions of success will reflect that.

IIRC (I read the paper too) the Youtube numbers assumed that the bandwidth available and needed are both largely stable, and that their success was in using that better.

Ie. they assumed that if 4mbps appeared available most of the time, then it really was available all of the time. If the capacity of the narrowest point is 10Mbps and 4mbps youtube streaming briefly competes against a bulk download from a Cubic sender, then BPR would hold the Cubic-using download to 60%, which Youtube might count as success and you might or might not.

</comment></comment></comment><comment><USER6> Delay based congestion control is the basis of LEDBAT (RFC6817) as used by BitTorrent over UDP. The claimed advantage of LEDBAT is that it is submissive to TCP, instead of dominating like BBR. This allows BitTorrent to run in the background without hurting your videocalls.

What is different about BBR that makes it dominate while LEDBAT subsides?

</comment><comment><USER7> It's interesting to compare the work being done on BBR in (relatively) recent times with the kinds of results coming out of various implementation of SCPS[1]. In general, the biggest pain with conventional algorithms is their boom/bust cycle and (re)ramp-up speeds. Satellite characteristics provide some fascinating playgrounds.

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

</comment><comment><USER8> The article states the following about TCP Reno:

"It over-corrects on loss and leaves available path capacity idle

– 10Gbps rates over 100ms RTT demands a packet loss rate of less than 0.000003%

– An average 1% loss rate over a 100ms RTT can't operate faster than 3Mbps"

Can someone explain the math there to me? I looked at the slides and I'm not seeing it. Am I missing something really obvious?

<comment><USER9> An additive increase/multiplicative decrease congestion control algorithm has the property that the effect of a packet loss gets larger as the congestion window increases. There will be a point where the upward and downward forces on the congestion window balance out. The actual congestion window will oscillate around that.

Assuming packet loss halves the congestion window while a packet delivery increases the congestion window by 1/cwnd, the break-even point for 1% packet loss is at a congestion window of 14. (1% change of reducing congestion window by 7, 99% chance of increasing it by 0.07).

At 100ms RTT the average delivery rate will then be about 14 packets/rtt * 1500 bytes/packet * 10 rtts/second = 200kB/s.

What if we cut down the packet loss rate by a factor of 10, to 0.1%? It won't give a 10x speed increase; instead the break-even point for the congestion window will be about 45; only a 3x increase in speed. If RTT is constant, increasing speed by 10x would require reducing packet loss by 100x.

(The math here is simplified, but should suffice for illustrating this).

<comment><USER8> Thank you yes this makes perfect sense, this is indeed the sawtooth pattern you see with AIMD. Cheers.

</comment></comment></comment><comment><USER10> ACK frequencies should be configurable, solving both bottlenecks and making UDP less relevant at the same time:

[https://www.ietf.org/id/draft-add-ackfreq-to- tcp-00.txt](https://www.ietf.org/id/draft-add-ackfreq-to-tcp-00.txt)

<comment><USER11> That configuration is already possible in Windows with the "DelayedAckFrequency" parameter and in Linux with the "quickACK" setting, but it's unrelated to congestion control, and it will neither "solve" bottlenecks nor "turn TCP into UDP."

Congestion control (the purpose of BBR) deals with the bottleneck problem. Delayed ACKs are an optimization to reduce protocol overhead. Indeed there are problems with delayed ACKs when combined with Nagle's algorithm and an application that doesn't send a steady stream of data, but it has nothing to do with the topic of this thread.

<comment><USER10> I need to set ack frequency to never or inifiny (say 1000+) packets per ack. so these are not usable for me.

TCP_QUICKACK seems to be a boolean (basically 1 or 2 packets per ack)

DelayedAckFrequency goes from 10 to 600 but it's millisecs!?

You don't think acks. have an impact on congestion?</comment></comment></comment>


LinkedIn Mobile Moved from Rails to Node: 27 Servers Cut and Up to 20x Faster - <AUTHOR> http://highscalability.com/blog/2012/10/4/linkedin-moved-from-rails-to-node-27-servers-cut-and-up-to-2.html <comment><USER2> If you are thinking about using node.js for this reason[1] on most sites, you are optimizing poorly. LinkedIn didn't worry about this until _after_ they were a public company.

If Python/Djando or Ruby/Rails can get your app out the door and into customer hands faster, it is almost always the right thing to use.

1\. There are certainly other, very valid, technical reasons for choosing node.js over other technologies early. But let those reasons be about the problems you are solving _today_ , not the ones you might need to worry about when you have 50 servers to deal with.

<comment><USER3> I'm sure LinkedIn could have cut servers _without_ switching to node. Take your first, crappy implementation and rewrite it in the _same_ language and you'll probably still see at least 10x improvement, if not 20.

<comment><USER4> >> Take your first, crappy implementation and rewrite it in the same language and you'll probably still see at least 10x improvement.

You will probably will get the same mess. There is plenty of literature about that. I.e: A complete rewrite is what killed Netscape

<comment><USER5> As bad as Netscape 4 was, what killed the company was their decision to charge for the browser while their monopolitic competidor was giving it away for free.

<comment><USER6> When a competitor undercuts your pricing with free, not doing anything for three years is unlikely to be the optimal response...

</comment></comment></comment></comment></comment><comment><USER7> It sounds like they went through a major rewrite of their backend and ended up architecting things to be much more performant than their previous system. I'm curious to find out what parts of the system they think contributed most to the performance increase. While this is interesting it is by no means an apples to apples comparison of Node and Rails as the headline suggests.

<comment><USER8> From original article[1] (Not the highscalability link spam):

>This led them to a model where the application is essentially piping all of its data through a single connection that is held open for as long as it is needed.

So it sounds like from using a request/response driven architecture, they adopted streaming architecture. Also, they moved away from Rails and adopted an Event driven approach.

It is well known fact that, it is almost impossible to stream stuff with Rails currently and hence adopting a event driven approach made sense. I can see, how just these two factors alone will contribute hugely to performance.

[1]: [http://arstechnica.com/information- technology/2012/10/a-behi...](http://arstechnica.com/information- technology/2012/10/a-behind-the-scenes-look-at-linkedins-mobile- engineering/2/)

<comment><USER9> Sure, but is it unreasonable to wonder why they need such an architecture? LinkedIn is basically a CRUD app, and while they have a wall now and yadda yadda, I wonder how much of this rearch was really necessary, over simple refactorings and sysadmin attention to the nuts and bolts.

<comment><USER8> Ability to stream stuff from an Event driven reactor loop makes lot of sense when it comes to raw performance actually.

If you throw in Postgres database in mix which supports asynchronous queries - one can pretty much beat 20 passenger instances serving similar request. The problem again though is, doing non-blocking IO does not reduce database load. So, if likely they re-architected that bit as well.

<comment><USER9> What is the sense that it makes?

</comment></comment></comment></comment></comment><comment><USER8> The title is misleading. From original article[1]:

> They found that Node.js, which is based on Google's V8 JavaScript engine, > offered substantially better performance and lower memory overhead than the > other options being considered. Prasad said that Node.js "blew away" the > performance of the alternatives, running as much as 20 times faster in some > scenarios.

So according to original article, Node.js did not perform 20 times better compared to existing Rails based backend. According to Prasad, it performed 20 times better than alternatives of Node such as - Eventmachine & Python Twisted (they did evaluate both of them).

Now I am having hard time believing node.js can outperform Eventmachine or Twisted by 20 times. Most benchmarks I have seen and done tell me, node is marginally ahead. I would obviously like to see, what they benchmarked and how?

1: [http://arstechnica.com/information- technology/2012/10/a-behi...](http://arstechnica.com/information- technology/2012/10/a-behind-the-scenes-look-at-linkedins-mobile- engineering/2/)

<comment><USER10> I think they created a specific benchmark for their use case. Maybe they even implemented part of their requirements on both stacks.

</comment></comment><comment><USER11> I was on the team at LinkedIn when we first wrote the thing on Ruby on Rails. Here's my writeup containing some more context:

[http://ikaisays.com/2012/10/04/clearing-up-some-things- about...](http://ikaisays.com/2012/10/04/clearing-up-some-things-about- linkedin-mobiles-move-from-rails-to-node-js/)

While I'll freely admit v8 is much faster than MRI Ruby, the efficiency gains are likely more related to 1) the rewrite factor 2) moving to non-blocking 3) the fact that the original server ... um, needed love

</comment><comment><USER12> I personally find it hard to believe that all of LinkedIn was only running on 30 servers, and is now running on only 3.

EDIT: Mobile only. Maybe the title should be updated to reflect that.

<comment><USER13> > I personally find it hard to believe that all of LinkedIn was only running > on 30 servers, and is now running on only 3.

I can believe it, if their caching strategy was garbage before and part of a massive rewrite was rethinking that. If you fail to use your caches, you'll pay for it.

I mean it's not like LinkedIn is about split-second changes, you could probably statically generate most of it and serve it with a single nginx instance.

<comment><USER11> Actually, we aggressively cached, which led to weird things happening. I posted a follow up about this explaining more context - I hope it gets voted up.

</comment></comment></comment><comment><USER14> The performance improvements have probably NOTHING to do with node.js but with the re-architecture goals set by the team:

"For our inevitable rearchitecting and rewrite, we want to cache content aggressively, store templates client-side (with the ability to invalidate and update them from the server) and keep all state purely client side."

Better understanding of the problem and experience running the system were probably key for building the new high-performance architecture. Obviously, old one lacked these big advantages.

</comment><comment><USER15> Reading this like: "Hey, our previous backend was a total turd, technically speaking." It might be trivial to speed up your own crappy first implementation 20x with some extra TLC.

<comment><USER9> Like a lot of contemporary online companies, they might be skimping on sysadmins.

</comment></comment><comment><USER16> I looked into Node.js, Sinatra, and Go to handle API traffic for a mobile app a few months ago and did a lot of benchmarking. What I found during my tests, was that Go > (Node.js = Sinatra).

If I had wanted to add Rails to this comparison I would have compared apples to apples and used Metal instead of including the entire stack.

</comment><comment><USER17> When you make a software change that allows you to reduce your server pool from 30 to 3, you don't say, "27 servers cut". You say "Servers reduced by 90%." I have no idea what "27 servers" actually means: you could have been using a thousand servers for all I know.

</comment><comment><USER18> The original article:

[http://arstechnica.com/information- technology/2012/10/a-behi...](http://arstechnica.com/information- technology/2012/10/a-behind-the-scenes-look-at-linkedins-mobile- engineering/2/)

And this is really intersting:

Finally LinkedIn tested, and ultimately chose to adopt, something surprising. The company embedded an extremely lightweight HTTP server in the application itself. The HTTP server exposes native functionality through a very simple REST API that can be consumed in the embedded HTML controls through standard JavaScript HTTP requests. Among other things, this server also provides access to the user's contacts, calendar, and other underlying platform functionality.

</comment><comment><USER19> It's a nice stat to see but I think this sort of comparison with "we moved our infrastructure of undisclosed age and unknown bloat to this new infrastructure built for the current problem domain" doesn't really do much for the ongoing conversation.

The article is touted as praise for a stack but my gut says that its really a smart restructuring of how they serve mobile. Either way, good on them for the efficiency boost.

</comment><comment><USER20> What this article talks about is more than a year old. When I was looking for a tool to start my project I was at the same distance to Python, Ruby and NodeJS and their ecosystem. So when I read about it a year ago I leaned towards NodeJS. So knowing the experience of others always help to certain people at certain point of their yet to unfold story but not to everybody all the time.

I am not unhappy with my choice but I do not have enough data to compare with other tools. I do not think a lot of people have either. Once you start with a tool you tend to keep it since you invested a lot of time learning it as well as developing something with it. I think few can afford switching tools (e.g. FB switched from HTML5 to native recently for their mobile interface).

</comment><comment><USER21> It's almost impossible to reach 1000 req/sec in Ruby/Rails. It's relatively easy to reach 50000 req/sec in C++. Assuming V8 is about 3x slower than C++, it is not surprising that a move Ruby/Rails->node.js gets 10x throughput improvement.

</comment><comment><USER22> "Programmers could leverage their JavaScript skills."

I'm confused by that being an advantage - I guess that's better than using some language you don't know at all, but it's still a bit of a different approach to JS, no?

</comment><comment><USER23> "simplicity is at the heart of LinkedIn's mobile vision." Then the article goes on to describe complexities of the implementation. Maybe my old and cranky mind has lost touch with what people mean by "simple".

</comment><comment><USER24> Ah, odd math point, but was I the only one who noticed this sentence:

"focus on simplicity, ease of use, and reliability; using a room metaphor; 30% native, 80% HTML; embedded lightweight HTTP server; "

<comment><USER18> It's mangled from the original article.

</comment></comment><comment><USER25> What would they gain if they moved from node to nginx and a c++ with asio backend (e.g. <http://cgi.sourceforge.net/>) ?

</comment><comment><USER26> Hmm...

Does going from 30 servers to 3 actually make an impact to a $13B company?

</comment><comment><USER27> Without citing versions, it's hard to extract anything useful from this article. Rails 2.1 on ree-1.8.7 performs very differently than Rails 3.2 on 1.9.3-p194.

</comment><comment><USER28> Again with that little war of frameworks? Man there's a lot of money and pride behind all this, dear god.

</comment><comment><USER29> Is 27 servers a lot?

</comment><comment><USER30> Can someone update the title to read: "LinkedIn Moved from Server to Client: 27 Servers Cut and Up to 20x Faster"?

<comment><USER31> But that would be wrong, the server legitiamtely moved from rails to node. Just because node is JavaScript doesn't mean that it automatically runs on the client, JavaScript is a perfectly viable server language too.

The title could be improved by reflecting that this is for LinkedIn mobile, but the rails->node is correct.

<comment><USER32> Not wrong, a lot of their performance gains were a result of caching their templates client side and having their servers only return data. That is a much smaller load on the server and easily could account for the reduction in servers. The title makes it sound as if they reduced their servers and increased their performance simply by migrating from ruby to node.

<comment><USER33> This. Many rails apps spend much of their time rendering views, and even a decent caching strategy on the server can increase performance tons.

</comment></comment></comment></comment><comment><USER34> read all the comments, not a single mention about php, wtf world?

</comment><comment><USER35> Ruby is one of the slowest languages you can think of, while Javascript on V8 is only 2.3X slower than C++ (median).

[http://shootout.alioth.debian.org/u32/which-programs-are- fas...](http://shootout.alioth.debian.org/u32/which-programs-are-fastest.php)

What I'm really surprised is that they got such a huge gain. Most projects I've worked on are DB or I/O bound. Maybe they store everything in RAM.

<comment><USER36> They probably fixed query design issues at the same time as they moved implementations. It strikes me as hilariously unlikely that LinkedIn was CPU- bound.

</comment></comment><comment><USER37> Replacing inefficient and bloated Rails, with custom coded framework, and _byte-code interpreted Ruby for native code generating V8_ , losing in readability in an order of magnitude? Well, nothing to see here.

</comment><comment><USER38> I hate Rails. Node is the way to go. Node > Python > Rails

<comment><USER39> Library > Language > Framework?

<comment><USER38> What I mean to say...in terms of modern web development, Javascript > Python > Ruby and Node > Django > Rails.</comment></comment></comment>


Command-line tool to deploy your static webapps via Dropbox - <AUTHOR> http://abhiomkar.github.io/publoy/ <comment><USER2> Looking at the code, it appears that this will only work for Dropbox accounts that have a public folder (users who signed up prior to October 2012 or paid users who have specifically enabled the feature).

(See [https://www.dropbox.com/help/16.](https://www.dropbox.com/help/16.))</comment>