What it means to believe that "real" trees no longer exist (2016) - <AUTHOR> https://www.theatlantic.com/science/archive/2016/09/flat-earth-truthers/499322/?single_page=true <comment><USER2> > _I've always been mildly obsessed with the flat-earth truth movement, the > sprawling network of people utterly convinced that..._

I can't help but feel a little bad for anyone who believes that flat-earthers are genuine.

I've pretty much convinced myself that flat-earth groups are more like speculative fanfiction archives than churches. The people who come up with all of these theories and defenses do it because thinking about these things is fun, not because they believe it. And they feed the perceptions of true belief because that's fun too. And they form these little communities for the same reasons that people writing new fan stories about Harry Potter do, because it's more fun to do it with other people.

The author here isn't uncovering some secret truth about the world so much as getting suckered into the drama, feeding it, and providing further joy and incentive to the players.

And here I am possibly getting suckered into the author's drama. Maybe the author is just one of the players and doesn't actually believe that they believe.

<comment><USER3> Quite a few flat-earthers really do believe it, and they're generally not dummies.

I've engaged in open-minded and friendly conversations with flat-earth individuals off and on for quite a few years. It's fascinating stuff; many are pretty chill and willing to chat if you go in with a positive affect.

I think if you graphed the total number of people who truly believe the earth is flat compared to the number of people who profess that just for 'troll' purposes, the latter group would be growing rapidly, and the former growing very slowly.

Why do I do this? Because the older I get, the more I realize that all of us, everyone, make a lot of choices every day that we think are based on logic and reason, but that are actually based on irrational experience and emotions. I think we tend to back-fill with logic and reason as much as we can.

Many people get more things 'right' than others, but what's 'right' is damn hard to know, isn't it?

This might seem like a wallow in all kinds of intellectual relativism, but it's really not. We should all strive for logical and rational thought and decision making, yet at the same time realize that we are all still fundamentally driven by forces that are quite the opposite, and that drive is largely invisible to us.

</comment></comment><comment><USER4> I am fascinated by holocaust denial and the people who think the moon landing was faked. Does anyone believe both? Do the people who believe those have any other historic events that they think were made up?

Most importantly (too me) would it be possible to start one of these on purpose? If you wanted to, what would be a good candidate?

I concluded that the atomic bomb is an excellent choice. I say there never was an atomic bomb. It was propaganda to prevent the US and Soviet Union from engaging in a disastrous WWIII so soon after WWII. And it was very effective but it's time for all the suckers to wake up.

I know you've seen the films. Special effects! Hiroshima/Nagasaki? Regular fire bombing that happened to get out of control because of favorable (or unfavorable) winds! Godzilla? Well that's more difficult to explain but I'm sure if we put our heads together we could come up with something.

Who's with me?!?!?

<comment><USER5> Other notable historical conspiracy theories that have a surprising number of adherants:

\- 9/11 was organized/enabled/allowed to happen by actors within the US Gov.

\- Pearl Harbor was organized/enabled/allowed to happen by actors within the US Gov.

\- JFK was assassinated by the CIA

\- All history from CE 614 to CE 911 was fabricated by the Holy Roman Empire

<comment><USER6> Nos. 1, 2, and 4 are far more plausible than conspiracy theories like flat- earth-ism, holocaust denial, and moon landing denial.

<comment><USER5> 1 and 2 are much harder to prove, since they're not about whether some big thing happened as much as about who orchestrated it, which is a much more ephemeral concept. We (mostly) all accept that some ships sank in Hawaii and that the World Trade Center towers are missing as of 9/11/01\. It's what happened and who made it happen that are in question.

I'd say 4 is just as easily disprovable as flat-earth-ism: There are other, contemporary societies in contact with Western Europe who were also keeping track of time... unless there was an Eurasia-wide conspiracy (in CE 1000) to fabricate those years, the dates only line up the way we count them now. There are also well-established (and recorded) astronomical events that line up well with the commonly-accepted timeline (but that would take believing that astronomical events are predictable by science).

In all, I'd say it's much more likely that NASA pretended to land on the moon than that the century we think Mohammed lived in didn't happen.

EDIT: Misread my own numbering

</comment></comment></comment></comment><comment><USER7> I have a sketch of a theory that rattles around in my head. I'm fairly sure I'll be pilloried, but what the heck.

It starts with a nation founded on faith and religion, of a group of people who are willing to kill and enslave based purely on things they believe but can't prove. They'll try like hell to prove it, they'll search up and down for the slightest hint of something they feel to which they can connect other tiny little other unproven dots to. It doesn't matter if YOU don't think it's true, it's MY religion and I believe it and YOU can't fuck with MY faith.

It continues on through a society full of advertisements that scream "the best!" "foolproof!" "most delicious!" night and day, from every corner...first from papers and billboards and then up through radio, tv and the internet. Even when demonstrably untrue and nonsensical, they're allowed to be propagated and repeated.

It reaches a modern day where political classes can literally almost say or do or vote what or however they want without fear of any serious reprisal or of the citizens taking half a minute to remember that they said/did/voted the exact opposite 6 months or two years ago.

This is true in the US specifically but also in varying proportions throughout the world, and moreso as our model is spread everywhere.

So basically I wonder if first we have been misdirected and advertised at and lied to for so long that a sizeable portion of those among us have actually lost sight of what's true reality anymore. Some of my family members I previously thought of as sane and rational have become so unhinged and irrational that if they suddenly came to me and said "the earth is flat and there are no trees" I might flinch for a second but otherwise would not be all that surprised.

<comment><USER8> I imagine we have simply developed a very refined understanding of how human understanding can be manipulated. These tools started as a means to control basic human functions (and the ability to live in large groups) and then were refined for political & economic benefit in the post-war period.

We're probably 'enjoying' a new wave of this development with persistent media and I imagine if the promises of AR/VR come to pass that we will see even more severe divisions between individuals/communities/countries understandings of what's "real".

</comment></comment><comment><USER9> This is sheer beauty. Once upon a time I would experience anxiety when I ran into this kooky stuff. Now I find it delightful because I have come to realize that is it impossible to have a rational discussion with irrational people, and in any society there will always be a significant population that does not yield to rational thought. While one might argue that such people are detrimental to the mental and intellectual health of a society, I find those claims to be mostly posturing. With some exceptions, these people are mostly harmless. So what to do? Why fret about it? Study the phenomenon and enjoy it.

<comment><USER10> I think if you broaden your view a bit, you'll see why it's not harmless: climate change deniers fall into the same basic group, as do anti-vaxxers. Both dangerous for different reasons.

<comment><USER11> I think if you broaden your view a bit more, you'll realize that humans are at heart irrational animals. Understanding, appreciating, and respecting the flat-earthers is a way of understanding and appreciating yourself, because you never truly see the many ways you are broken.

It's the ones that don't understand this who are truly dangerous, not folks who believe weird stuff. You can believe anything you want with a spirit of humility and openness.

<comment><USER12> Erm, no, people that believe things like vaccines or climate change are conspiracies do actual, measurable harm.

Humans are irrational, indeed. That doesn't mean that some of the far-out crazy isn't directly or indirectly harmful.

</comment></comment></comment></comment><comment><USER13> The most unbelievable thing of all of this is that I spent an hour watching the video.

[https://www.youtube.com/watch?v=UHkiZNT3cyE](https://www.youtube.com/watch?v=UHkiZNT3cyE)

I started taking notes on everything that was wrong, but literally ran out of ink. I advise watching at 1.5x speed.

</comment><comment><USER14> I've begun using the term "epistemologically disabled" to cover those in the general class of crazy people that includes flat-earthers, anti-vaxxers, chemtrailers, climate change deniers (anthropic or not), "Obama is a Kenyan Muslim" republicans, &c. Because seeing this problem as a disability changes my response from contempt into one that's more sympathetic.

</comment><comment><USER15> Flat-Earthers are actually part of a vast CIA conspiracy to distract us from the truth of a spherical Earth. They don't want us to know we can travel the Earth over the poles, where the Earth's magnetic field and radiation causes their mind-tracking technology to fail.

<comment><USER16> Not spherical, rather spheroid. Oblate spheroid.

<comment><USER15> That's another conspiracy propagated by the Imperfect-Spherists.

<comment><USER17> Just wait until you discover it's toroidal, but your perception of space-time makes it's appear spherical.

</comment></comment></comment></comment><comment><USER18> A quote from the flat-Earthers included in the article: "After watching this video, you will reverse your concept of forests by 360 degrees."

At least these people understand their audience's intellectual limitations.

For the record, I circumnavigated the world solo in a 31-foot boat ([https://arachnoid.com/sailbook/](https://arachnoid.com/sailbook/)). From direct empirical evidence, I know the earth is round.

<comment><USER19> It's funny how multiple people mentioned topology. But the simple response is that you just went in a loop on a plane, because you don't know how to navigate properly.

Of course, I believe you! I'm not a flat earther. But to someone who has already made the mistakes necessary to convince themselves that the earth is flat, it's easy to deny your proof. You don't have direct empirical evidence, you have the evidence that you went in a loop, plus a bunch of science that these people have crazy reasons for denying, and that science tells you that loop involved going around a sphere.

<comment><USER16> Good work at devil's advocate. Maybe you can help me with this -- how can someone be a flat earther in the absence of any evidence of any edge to the surface of the earth? What is the counter argument to this?

<comment><USER12> That one's easy ;)

Antartica is not an island continent, but an ice-wall that extends around the entire flat earth

Nobody has ever got a photograph of the edge because you can't go there, you're not allowed. The governments of the world see to that!

<comment><USER16> Creative! This reminds me of FreeCiv maps with the 'flat earth topology' option turned on. The edge of the earth must be long enough to encompass the earth. So the folks using that argument must imagine Antarctica as _huge_, though we can easily measure the coastline and prove their explanation impossible.

<comment><USER12> Ah but if you go there, you are obviously part of conspiracy and not to be trusted!

It's all delightfully solipsistic...

</comment></comment></comment></comment></comment></comment><comment><USER20> I think someone is missing the joke, but I can't tell if it's me or not.

<comment><USER21> I assume that often these theories are first perpetuated by someone who is joking, but then people take it seriously.

<comment><USER22> Kind of like Scientology, except less well funded.

</comment></comment></comment><comment><USER23> If you really work at it, you can trick yourself into believing damn near anything's true.

Sometimes you don't even have to really work at it.

<comment><USER24> As Feynman put it: "The first principle is that you must not fool yourself – and you are the easiest person to fool"

</comment></comment><comment><USER25> What I'm curious about is the population distribution of flat-earthers. I think it's pretty clear that some of them are trolls, having fun with a ludicrous idea; some of them are mentally disturbed (schizophrenics of one sort or another, I suppose), some fraction have exceedingly low IQs, some fraction have high IQs but are exceedingly-poorly educated.

But is it really just mostly trolls? That's the only explanation that makes sense.

> The particulars differ, but here everyone takes it as a given that a > conspiracy reaching from your first schoolteacher to NASA to the > metaphysical Beyond has deluded _humanity_ _[ed: emphasis mine]_

Misusing 'humanity' to mean 'mankind' (or, if you must, 'humankind') is one of my pet peeves: humanity is the quality of being humane. Flat earthers don't believe that a conspiracy is deluding the quality of being humane (that phrase doesn't even make sense); they believe that a conspiracy is deluding mankind (or, again, 'humankind').

edit: add closing paren

</comment><comment><USER26> Scientology has clear paths to make money from their nonsense... What's the goal with arch trees/flat earth theory?

<comment> J-dawg Similar to your point - with some conspiracy theories I get the emotional reasons for believing in them. Global warming denial, 9/11 was done by the government, etc. I get that on an emotional level the reality is pretty hard to handle, so the conspiracy theories are a sort of security blanket. However ridiculous they are, I can see how they are appealing on some level.

But what's the emotional advantage of believing in a flat earth? And who is the imagined evil enemy who benefits from making us all think the Earth is a spheroid?

<comment><USER27> To be different. To prove that YOU know something that all the others don't. For some people, this gives them meaning, a group to belong to, and reasons to hate/distrust others.

<comment> J-dawg I guess you're right. It makes me wonder how many of own opinions might just be subconscious grabs for attention, even when I believe they're rational and carefully considered. It is a little unsettling if you think about it for too long!

</comment></comment></comment></comment><comment><USER28> >Flat earth insists on the primacy of direct experience (look at the horizon, really look, and try to see the curve) against abstract domination.

But you can see the curve... Have they never been to the ocean?

<comment><USER29> I've been to the ocean many times and have never noticed any obvious curvature. If it is visible, I can only imagine it's much easier for somebody who doesn't want to see it to miss it.

EDIT: I just Googled and it sounds like the planet's radius is big enough that, within the range our eyes can see, the curve is extremely subtle.

<comment><USER30> Notice the horizon. On a flat surface you should see until haze. On a clear day on the ocean you see a horizon.

</comment></comment></comment><comment><USER31> Anybody here will to confess they have pushed flat earth, while believing/knowing the earth is round?

I am willing to confess I have pushed sharks are smooth: [https://twitter.com/bransonreese/status/848746940179382272](https://twitter.com/bransonreese/status/848746940179382272)

</comment><comment><USER5> Besides the common community, what does this new concept have to do with flat earth? They seem orthogonal.

Also, I can set up at least half a dozen different experiments to let me "experience" that the Earth is round. Is Flat Earth Theory just another set of blinders we get to put on if we want?

<comment><USER32> As far as I can tell there's a huge overlap between flat earthers and fundamentalist religious beliefs. If you go digging into their resources you'll very often find treatises about "the science of the Bible" and similar things. As such you'll often see the same people arguing for a flat earth, intelligent design, 6000yo earth and similar things.

See for instance this video I was just watching: [https://www.youtube.com/watch?v=-LNT3CucL6c](https://www.youtube.com/watch?v=-LNT3CucL6c)

It's a video about how NASA supposedly fakes the Mars rover pictures, yet the description starts with "I believe the pope of Rome is Antichrist (Daniel 7:7-27,2Thessalonians 2:1-12,2Peter 2:1-22,1John 2:18-25, Revelation 13:1-9) and Rome 'Mystery Babylon the Great the Mother of Harlots and Abominations of the Earth' (Revelation 17:1-18)."

This is one of the first resources on the "flat earth society" website: [http://www.theflatearthsociety.org/library/books/Is%20the%20...](http://www.theflatearthsociety.org/library/books/Is%20the%20Newtonian%20Astronomy%20True%20%28William%20Carpenter%29.pdf)

I haven't read through it but it features a chapter called "The Bible and science", an other "Moses and geologists" and a third one "science versus christianity".

I'm sure this tale of a primeval forest being destroyed by evil beings resonates with people who believe in flood myths and the like.

In the end all these conspiracy theories are about rejecting science and the "new world order/illuminatis/freemasons/..." who are the work of the devil trying to corrupt us so that we stray away from god's path, or somesuch.

</comment></comment><comment><USER33> Hey, that's the 'mountain' from Close Encounters of the Third Kind.

<comment><USER34> On a side note, I highly recommend visiting Devils Tower[1]. It is a pretty place, but a bit out of the way. The perfect stop on one of those long road trips to clear your head.

1) [https://www.nps.gov/deto/index.htm](https://www.nps.gov/deto/index.htm)

<comment><USER35> and it's only a 5.6!

</comment></comment></comment><comment><USER36> Big if true</comment>


Tesla flips a switch to increase the range of some cars in Florida - <AUTHOR> https://techcrunch.com/2017/09/09/tesla-flips-a-switch-to-increase-the-range-of-some-cars-in-florida-to-help-people-evacuate/?ncid=rss&utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Techcrunch+%28TechCrunch%29 <comment><USER2> IMO locking down the battery capacity via software is pretty lame.

Does anyone know exactly how this is done? does the battery just never charge up all the way? does it claim it's empty when there's actually more charge left? Are some of the cells locked down and just don't charge? How does it impact the health of the battery (since not being able to charge or discharge completely would presumably affect the health of the cells)

<comment><USER3> My understanding is that it does not charge all the way.

There are some advantages in having a s/w locked down battery rather than a physically limited battery. Since the battery charges slower when it is above 80% capacity, you can recharge to "100%" much faster with a software limited battery. Similarly, charging to 100% is supposed to cause more battery wear, so in a real 75 you don't want to do that very often. But in a 60, its no problem, since 100% is really 80% of the physical capacity.

<comment><USER2> I wonder if you could get around it with a relay and some resistors to trick the system into thinking the charge is lower than it actually is

<comment><USER4> That's a good way to get a lithium fire. Lithium batteries need careful monitoring to charge correctly. To give you an idea, 4.2V is 80% charged for a chemistry I worked with. 100% is 4.23V, so you don't have much margin for error.

</comment></comment></comment></comment><comment><USER5> This was a good move on Tesla's part, but the dark side of this is that they could also "flip a switch" to reduce the range of cars. Presumably they could also disable the car entirely, disable the brakes or rev the motor at an unsafe time, or cause the battery to catch fire.

All of this seems very implausible for a company like Tesla, but cars can last a very long time and companies and society change over those time scales. It's not hard to imagine an authoritarian government forcing an auto manufacturer to mess with the cars of protesters, journalists, or anyone else they don't like and to use the implicit threat to encourage compliance from everyone else.

I'm not saying this is a likely outcome for anyone who buys an electric car, but it is new failure mode that didn't exist in older, non-internet-connected cars.

It's kind of frustrating that there doesn't seem to be a middle ground between giving an enormous amount of power to supposedly-benevolent-for-now product manufactures or finding and disabling the car's antenna and not getting any updates again ever. (Hopefully the car doesn't just refuse to function if it's not able to phone home?)

<comment><USER6> You can remove the SIM card from a Tesla if you don't want it to phone home, and only connectivity functions are broken (obviously). This isn't a particularly satisfying solution, of course, but it's more recourse than I have against, say, Google shutting me down.

You probably actually have implied (or express) warranty protection against the manufacturer screwing with your car. Certainly for the first four years, possibly even after that. I feel like software updates ought to come with their own implied warranty, though that's far from standard understanding right now. Beyond that, it's likely that anyone deliberately degrading your car, even the manufacturer, is a tort.

<comment><USER5> Taking out the SIM card sounds like a good idea if it's physically possible (i.e. the "sim card" isn't soldered down or integrated into some other non- removable device).

Maybe the sensible thing for most IoT-enabled car owners is to get all the software updates for the first few years as the manufacturer works out all the major bugs, then disable the network when the manufacturer's attention has shifted to the next new thing and drive it until the wheels fall off.

</comment></comment></comment><comment><USER7> So I'm REALLY curious to know now - in all those road tests where people testing the car gave the 60kWh cars such glowing reviews, was Tesla flipping the switch for more range, the way ISPs flip the switch when you run speed tests??

This has some pretty serious implications...

<comment><USER8> considering that the ONLY thing it changes is the range.. and the ranges are public info... wouldn't that be pretty obvious to the person reviewing it?

<comment><USER7> I would normally hope so, but Tesla cars have definitely had a bit of "fanboy blindness" happening where they don't really think too closely about things.

This also could apply to the battery's overall lifespan - by releasing more capacity with software as the battery degrades, they can make their "60kWh" battery seem to last far longer than any other competing battery. While this is nice for the consumer, it is very disingenuous if they do it and claim "we have better batteries"

 _Edit_ : To clarify I'm not claiming they do this, but just bringing up another possible use of this "software switch" that they could use maliciously. We just can't possibly know because there's zero way TO know...

<comment><USER8> _This also could apply to the battery 's overall lifespan_

They did pay for a larger battery for a car with a 60kw promise. They just gave those people lots of spare cells to use as their battery ages.

They could have built a cheaper battery to fill the same promise and it would have failed earlier.

So don't they in fact have better batteries?

I don't understand the objection.

<comment><USER7> Mechanically, the battery is better yes. However since it's becoming rather obvious that the general population had no idea how this battery limit worked, it means that Tesla could say "our battery is better" and be lauded for making the better "60kWh" battery. They don't have the "better" battery, because you're comparing an apple to a bigger apple and saying the bigger one is better at being an apple.

<comment><USER8> Sounds like a perfectly valid strategy to me. You can create a longer lasting battery by investing in R&D or spending more on the battery itself.

No consumer is buying batteries by looking at what technology was used to create it. They're buying it for X range, X recharge cycles, for X dollars. Those are all of the variables. So giving them more recharge cycles for the same money IS better.

This is exactly the way the SSD market works btw.. in fact its worse, because the largest manufacturers are actively investing money to make shorter life (but denser MB/area) cells (SLC > MLC > TLC), while building more spare capacity into each drive to meet their reliability targets.

Without it, SSDs wouldn't even exist.

</comment></comment></comment></comment></comment></comment><comment><USER9> I understand the value to managing the hardware and software of your deployed devices centrally and with protection from users breaking things or becoming a road hazard, and the significant difficulties in developing for an automotive environment. I still wish we could buy Tesla's hardware and run something open source on it like we can with Apple.

<comment><USER10> You can run something open source on an iPhone?

So I assume you are talking about mac?

Why would you buy hardware for double the going rate for a given set of specs and remove the OS that you paid so much for? Macbooks are OK, nothing against them, but I never understood who would buy one to run linux on. (I bought a Dell, and it actually included support out of the box)

<comment><USER11> You _can_ run open source software on an iPhone. You can even compile your own code to run on it.

</comment></comment></comment><comment><USER12> Tesla had preorders for lower capacities and chose to honor the deal and charge for the extra capacity instead of build another smaller battery pack. They could have told people who preordered the smaller one to pucker up. They also probably have over provisioning so they could in theory enable more capacity in an emergency.

<comment><USER13> Or they could have given those people a free upgrade. It would have cost them nothing except the opportunity to try and wring more money out of customers.

<comment><USER12> Businesses don't really survive when they give things for free.

</comment></comment></comment><comment><USER14> A find it humorous that this is a real world equivalent to mobile game speed boosts, where you pay to save time. It's interesting to ponder the monetization model this could open up. Imagine paying extra to unlock another 10 MPH on the highway (or unlock the speed limit governor). Before going on a long trip you pay for extra distance. Level 3, 4 and 5 Autonomous AI can be toggled via in-app purchase on your mega-screen.

One step further; the car is free and self driving, but you're bathed in a 360 degree never ending stream of advertisements, targeted to you based on where you've been, and where you're going (not just your digital/google footprint but real world).

</comment><comment><USER15> See also, from four years ago: [http://insideevs.com/entry-level-40kwh-tesla- model-s-cancell...](http://insideevs.com/entry-level-40kwh-tesla-model-s- cancelled-60-kwh-cars-all-get-supercharging-hardware/)

</comment><comment><USER16> Perhaps it's like what Sony did with the PS3 a long time ago: they manufactured it with an eight-core processor but only allowed access to seven of them. The manufacturing yields were really low at launch so they manufactured an eight-core and played the odds that they'd be able to fix the yields later.

<comment><USER17> The PS3 had one PPE core, and eight SPE cores. One SPE was disabled for yield purposes and of the remaining seven only six were available for usage by end developers.

</comment></comment><comment><USER18> This is like on-disc DLC in the gaming world - [http://www.cinemablend.com/games/Why-Disc-DLC-Bad-Crime- Game...](http://www.cinemablend.com/games/Why-Disc-DLC-Bad-Crime-Gamers-Make- It-Out-48109.html)

</comment><comment><USER19> How weird to have someone remote control your car.

</comment><comment><USER20> Talk about life saving update.

</comment><comment><USER21> I've heard CPU companies do this sometimes for things like cache capacity (maybe even number of cores).

<comment><USER22> intel did this back in the days when they sold 80486 CPU with DX and SX designation, the latter lacking math coprocessor a.k.a FPU.

In assembly line, all chips would start off as DX with math FPU. In order to make SX variant, they would use just disable FPU function, though they eventually made different chip to cut out FPU altogether.

</comment></comment><comment><USER23> Love that I saw this online somewhere and I thought "This must be at the top of HN" and boom there it is.

</comment><comment><USER24> Is there another car company that even does OTA updates yet? Let alone unlocking car features with geotargeting.

For all the talk of Tesla's lead in electric vehicles being short term, their software DNA feels like an even greater competitive advantage.</comment>


Ask HN: Are My Links Really That Boring/Spammy? - <AUTHOR>

I submitted two links today, one of my app's launch, the other an article in GeekWire about the app. Neither lasted more than a few seconds on the front page.
Am I doing it wrong?
Edit: this one didn't even get on the front page. <comment><USER2> Did you consider finding a Snowden angle for your launch story?

</comment><comment><USER3> This is probably the first HN readers have heard about your app, and it doesn't appear to be backed by a larget company, so they probably just skimmed the link in the new list and didn't even click on it.

One suggestion would have been to title it "Show HN: My first iOS app, real life scavenger hunts, covered in Geekwire", so at least it would make this ask section, where the links get a little bit more of a chance for upvotes.

Neither of your submissions had any upvotes, so I'm guessing it just got pushed off by a rush of other news.

In particular, for the last few weeks here, the front page has been overwhelmed with one story in particular, so startup launches and programming topics are going to fall by the wayside - it may have just been a bad time to launch on HN.

<comment><AUTHOR> Yeah, I should have done this as a Show HN. Live and learn.

And you're right about the avalanche of news. Feeling kind of (ahem) snowed in right now.

Not that I want this particular story to go away.

</comment></comment><comment><USER4> I noticed that I tend to get upvotes for posting genuinely interesting articles. Or at least articles that I _think_ are going to be interesting (and from a good source). The posting policy here encourages value adding tech links.

Most of them are from tech news sites and out of 5 links I would post, 4 of them will get 2-3 karma and drop off very quick and 1 might get 20+ karma.

<comment><AUTHOR> I've seen a lot of posts here over the years that are asking for community feedback, and that's what I was thinking I was doing. Maybe if I had prefaced it 'Show HN'?

The second submission was from a tech news site (geekwire.com).

I guess the target demographic for Klikaklu (outdoorsy people and families) doesn't really strike a chord here.

</comment></comment><comment><USER5> Getting on the HN front page is a crapshoot...it's only partially related to the content of the submission and the headline, and strongly related to what else is trending and who happens to be checking the 'New' links. Everytime I think I'm being deliberately ignored, I think of the time poor Jeremy Ashkenas had to submit a PHP-related link just to get noticed: [https://news.ycombinator.com/item?id=2864185](https://news.ycombinator.com/item?id=2864185)

<comment><AUTHOR> Thanks for the reply, danso, I thought I might be in the Cone of Silence. Any thoughts on how to get there without being spammy?

I've been reading HN regularly for several years, so it feels a little weird to finally have something to say and have it just disappear like that.

<comment><USER5> It's just luck, I think...probably only 1 out of 20 of the links I submit get more than a few upvotes.

In regards to your app submission, the title does sound too spammy...and the content is probably a turn off for most HN users, who don't like having to actually log in/download something before finding out what it does. I'd consider writing a blog post that walks step-by-step through some of the technology/code you used to implement your app...Most people probably aren't initially excited by a treasure hunt app, but many of us hackers always like to be inspired by novel ways to use image recognition and/or GPS.

<comment><AUTHOR> That's what I was thinking the geekwire article would help with. But yeah, a tech article is a great idea, thanks!

</comment></comment></comment></comment><comment><USER6> I'm not 100% sure how it works, but I think the mods are very trigger happy when it comes to deleting content that they don't judge to be appropriate. This has a positive effect on maintaining the quality of the overall posts, but is a negative when one person's opinion shuts down a potentially interesting topic.

I think you erred by trying to make two posts about the same thing in one day that. That might be something that gets you flagged.</comment>


Twitter monetization advice: Be the next Microsoft, not AOL. Focus on developers. - <AUTHOR> http://www.micropersuasion.com/2009/04/twitters-monetization-strategy-developers-developers-developers.html

<comment><USER2> The only problem I see with this analogy is that Microsoft makes money when developers pull new users onto their platform ($50 per Windows license), which makes it a much more symbiotic relationship.

I am interested in seeing if these Twitter apps are still going to be pumped out in such a ferocious speed once Twitter starts to charge per use of their API.

</comment><comment><USER3> $600 dollars for visual studio, yah Microsoft loves devs.

Free for personal use, I'm going to keep suggesting it until I turn blue in the face.

<comment><USER4> Actually that's for the PRO edition (actually it's currently $799 USD.) It's $299 USD for the standard one.

I absolutely defy you to come up with a better IDE with better support (MSDN, etc.) It is a joy to work with.

They DO take care of their devs and always have.

<comment><USER3> I still don't see a justification for charging the at home devs for this. The benefits of a more vibrant development community around MS software FAR outweigh the peanuts they get from charging us that 300 dollars.

On the bright side they can still charge their corporate customers for the seats which is where all the VS revenue's come from anyway.

Running around screaming about "It's the best IDE evar!" doesn't justify charging independent devs for it. Provide the tools so that devs can build your ecosystem.

<comment><USER4> FWIW they provide an almost completely functional Visual Studio Express edition for free (that is a relatively new thing) and have even started including things like JQuery. It's a pretty slow process but I think they have always listened to their devs.

Incidentally, I do think it's the best IDE out there but I'm not a MS fanboi, and have spent plenty of time in other IDEs and even vi :-)</comment></comment></comment></comment>


What happens to viral Particles on the subway - <AUTHOR> https://www.nytimes.com/interactive/2020/08/10/nyregion/nyc-subway-coronavirus.html <comment> blaser-waffle Neat diagrams & animations. No way in hell ima ride the NYC subway, but now I can articulate why...</comment>


Hipster analytics: Best tools - <AUTHOR> http://venturebeat.com/2014/09/05/hipster-analytics-the-5-best-tools-youve-probably-never-heard-of/

<comment><USER2> Interesting to see that this story has 5 points in 5 minutes whereas the same link submitted an hour ago has still 1 point.

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

<comment><USER3> That URL has a # at the end: this one doesn't hence it missed the dupe detector.

<comment><USER4> Which means a `urlparse.urlparse` equivalent in arc would probably go a long way toward helping that.</comment></comment></comment>


Understanding go compiler tools (2) - <AUTHOR> http://yugui.jp/articles/865

<comment><USER2> Letting the OS free memory at process exit is a very viable approach for single-purpose tools that don't run a reasonable risk of running out of memory. (Structs over unions are also more debuggable and less prone to bugs.)

On the other hand, if you ever want to turn what you wrote into a library instead of a standalone process, not having taken more care over memory management will hurt.

For compilers, there's often a happy medium available: pool / arena-based allocation, with one pool per translation unit.

</comment><comment><USER3> For anyone who isn't familiar: Yugui is part of the Ruby Core team, so she knows a bit about language implementation.

</comment><comment><USER4> I read an estimate that about 40% of programmer time spent writing a C or C++ program goes into memory management. Compilers often don't really need sophisticated memory management techniques, as they don't run for very long. Go in particular seems designed to never compile really large compilation units (like you might in C++).

tl;dr if I was writing a Go compiler, I wouldn't worry about memory management either.

<comment><USER5> What is the world coming to, if three sentences need a tl;dr?

Might some functions behave like some compilers?

<comment><USER2> The moral equivalent in a function is alloca(), but that can be a fast path to stack overflow.</comment></comment></comment>


6,000-year-old temple with sacrificial altars discovered in Ukraine - <AUTHOR> http://www.mnn.com/earth-matters/wilderness-resources/stories/6000-year-old-temple-with-sacrificial-altars-discovered <comment><USER2> I find the culture itself interesting. There's a wikipedia page for the Trypillians: [https://en.wikipedia.org/wiki/Cucuteni- Trypillian_culture](https://en.wikipedia.org/wiki/Cucuteni-Trypillian_culture)

These were the biggest cities in Europe at the time, and I tend to believe the altars were altars, because they also burned down their own cities every three or four generations.

<comment><USER3> I was very surprised to learn about a city of that size in Europe that long ago! And I've never heard of the culture either - got to do some more reading... ;-)

</comment></comment><comment><USER4> Out of genuine curiosity/confusion, could someone explain how something like this gets "discovered?" It's a two story building that's 66 feet tall according to the article. Is it something that locals have seen but never cared about? Or have people just not been walking around that immediate area for the past several thousand years?

Perhaps because I'm from a super dense urban metro area, I don't fully appreciate how stuff like this works. I'd love to know!

<comment><USER5> Looks like it hasn't been that tall for some time, having been burnt down after it was abandoned[0]

[0] - [http://www.livescience.com/48352-prehistoric-ukraine- temple-...](http://www.livescience.com/48352-prehistoric-ukraine-temple- discovered.html)

</comment></comment><comment><USER6> How do they know it wasn't just a community kitchen?

<comment><USER7> That doesn't sound as cool, so clearly can't be it.

<comment><USER8> When a developer doesn't have a clue how to fix a bug, he declares it "a feature".

When an archaeologist doesn't have a clue what something is, he declares it to have been "for ritual purposes".

<comment><USER9> Like the part in "Motel of the Mysteries" where the discoverer tries to figure out what the toilet set was for.

[https://www.goodreads.com/book/show/108831.Motel_of_the_Myst...](https://www.goodreads.com/book/show/108831.Motel_of_the_Mysteries)

</comment></comment></comment></comment><comment><USER3> Several people have been commenting on how the archaeologists "know" that the raised structures were altars. Well, they don't. Not for sure, anyway. Here is an excerpt from a paper describing the find:

"Three different interpretations have been proposed: as 'altars', as 'hearths' and as 'platforms' [...]. The notion of 'altars' presupposes some ritual function and would be supported by differential concentrations of figurines, or other so-called ritual objects. However, there is no such concentration of ritual finds. The expected evidence to support the notion of 'hearths' would be the identification of burnt fired clay fragments, allied to concentrations of charcoal and/or ash close to the features. The absence of burning near these features diminishes the likelihood that they were 'hearths'. Nonetheless, short-term, low-temperature fires in the middle of a raised seating area for ritual participants may well have left few traces of ash or charcoal. The term 'raised area' is a more neutral term, indicating a proper concern with a feature that is raised from the ground-surface of the me- ga- structure, on which people could have sat or ritual objects could have been placed for short-term performances - objects which were then removed to other contexts [...]"

Once again, the popular press slightly twists science to present a "more interesting read"...

(Source: [http://www.jna.uni- kiel.de/index.php/jna/article/view/110](http://www.jna.uni- kiel.de/index.php/jna/article/view/110))

</comment><comment><USER10> Better links:

[http://www.archaeology.org/news/2650-141023-ukraine- trypilli...](http://www.archaeology.org/news/2650-141023-ukraine-trypillian- temple)

[http://www.jna.uni- kiel.de/index.php/jna/article/view/110](http://www.jna.uni- kiel.de/index.php/jna/article/view/110)

<comment><USER3> The second link is a very solid scientific paper - not yet done reading it, but looks good.

</comment></comment><comment><USER11> What if it was just a slaughterhouse?

<comment><USER12> Quote: "With such a fascinating culture it would be a shame to remember them just for a purported prophesy that failed to pan out."

A "fascinating culture"?

[http://mayaincaaztec.com/mateofhusa.html](http://mayaincaaztec.com/mateofhusa.html)

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

</comment></comment><comment><USER13> > Sacrificial altars

I fail to see how this is news worthy. No sacrificial alters would be news worthy.

<comment><USER14> Uhh 6,000 years old? It's a probably a historical goldmine.

<comment><USER13> Yes anything that is 6,000 years old is awesome. That there are sacrificial altars in a temple is just a horrible title. That is like saying 6,000 year old temple found with door ways and steps.

<comment><USER15> Anything involving human history 6000 years old is awesome. Otherwise I have a million year old rock in the river to sell you.</comment></comment></comment></comment>


Portraits from Ellis Island - <AUTHOR> http://www.cbsnews.com/pictures/ellis-island-melting-pot-immigrant-portraits/ <comment><USER2> This carries a lot of emotions, even for someone with no family links with the US. All these people starting from scratch... My father told me about an "aunt" of style who went through Ellis Island. I tracked down her entry registry (the ones digitalised by the Mormons). It is an amazing feeling to see that one line of text which meant a new life for her. I never tried to contact that "family" but sure hope that the 4th of 5th generation still remembers who brouth them there.</comment>


21H.001: How to Stage a Revolution - <AUTHOR> http://ocw.mit.edu/OcwWeb/History/21H-001Fall-2007/CourseHome/ <comment><USER2> Such huge potential yet such underwhelming delivery. Just read their "Reading List" and was unimpressed by it:

[http://ocw.mit.edu/OcwWeb/History/21H-001Fall-2007/Readings/...](http://ocw.mit.edu/OcwWeb/History/21H-001Fall-2007/Readings/index.htm)

It's mostly academic, capitalist/liberal pseudo reflection and philosophy. And more than half of the people on that list are the dullest, most conservative and anything _but_ revolutionary. The leftist literature has far more explosive, pin-point, HOWTO material.

Instead, read Gramsci, Camus, Marcuse, and Arendt for the philosophy. Then see Battle of Algiers and read the revolutionary struggles and biographies of Che, Trotsky, Mao.

Just studying Marxism is an individual act of revolution. The mental impact on one's mind, when you finally _get it_ , is irreversible. "Class Consciousness" is a revolutionary virus of the mind.

<comment><USER3> Hm, maybe, but I would actually be most interested in how to overthrow communist regimes. Almost all dictatorships in recent times I am aware of started out with communism or socialism.

Also, how much philosophy is really needed? I wonder how to overthrow a regime with a huge police force and secret police everywhere. Are there even any example where this happened without external forces? Maybe Rumania? In any case, it seems to be more a practical problem than a philosophical one.

<comment><USER4> > I would actually be most interested in how to overthrow communist regimes.

It is actually very easy - just get yourself a place on the CIA payroll. This will take care of funding for propaganda, bribes, and parties for the right locals. It will also arrange a speedy getaway should your plan fail. Do your best to create and gather up "dissidents." Hype the bright capitalist future with stylish American pants for everyone which will surely come. Provoke demonstrations at every opportunity, inciting the local regime to violence; or, if the latter has become sclerotic and emasculated, you can stage an "orange" revolution using herds of bored college students. After you're done, invite your moneyed friends to buy up whatever is left of the country's industry and natural resources.

This recipe has an excellent track record in the former Soviet block.

<comment><USER5> It's more accurate to say that this had little to no track record in the former Soviet sphere. The US had essentially no involvement (often to the despair of Soviet bloc citizens) in any of the three major uprisings (1956, 1968 and 1980-89). In fact, in the last of these (the period of instability beginning with the Gdansk Shipyard occupation in Poland, kicking up in 1988 and continuing through the "Year of Revolutions"), US reaction was initially completely curtailed by the lack of a coherent Reagan policy on Russia/Poland. People were speaking freely, striking on a regular basis and eviscerating censorship, and the US couldn't decide whether providing increased economic assistance to Poland in exchange for continued toleration of the political situation might be a threat to detente/whether detente was really the best solution at all. It wasn't until later in Reagan's presidency that Gorbechev handed him an effective Russian policy.

Another thing that I think it's hard for the modern observer to acknowledge, given the benefit of hindsight, is the incredible ambivalence the Western left felt for some of these revolutionary movements. Many leftists of the 1968 generation _wanted_ some form of socialism to work, and there was always a hope that an East Germany or Czechoslovakia could slowly reform into an authoritarian, yes, but competitive working-class social welfare state. The Polish uprising especially seemed to throw leftists off guard; here was a revolutionary movement dominated by conservative, Catholic traditionalists who wanted things to be _like they were before the war_. This wasn't in the discourse of the Democratic (by which I mean the party) mainstream, but it was a major element of leftist political thought of the time, and it's not hard to see how that could rub off on the measures and rhetoric American administrations were willing to take.

In short, the US was pretty much a nonentity when it came to "interference in the internal affairs" of Soviet puppet states. The "hardline" right was all talk and no action in deference to the longstanding policy of detente, and the moderate/radical left was too focused on criticizing American nuclear policy and too ambivalent about the broad-based dissident movements focused on individual liberties springing up in the Soviet bloc to push for intervention.

<comment><USER4> You have many good and interesting points, but

> The US had essentially no involvement (often to the despair of Soviet bloc > citizens) in any of the three major uprisings

How do we know this? There is an ocean of still-classified documents from that period.

> the US was pretty much a nonentity when it came to "interference in the > internal affairs" of Soviet puppet states.

In its official foreign policy, perhaps.

Talk to someone who reads the Russian-speaking blogosphere. This statement is heavily disputed there, for a wealth of excellent reasons (and not limited to the fact of just what kind of people benefited most from the overthrows.) The skeptics I'm talking about aren't on the level of the "9-11 truthers," either - the feeling that the US and its Western European lackeys deliberately undermined the USSR and its allies runs deep, and is not without foundation (see the Afghan War, for example. Or find someone who has heard Voice of America from the period. There is no shortage of evidence, if you care to look.)

<comment><USER5> Sorry, you are correct about US intervention in Afghanistan. I intended to limit the scope of my response to the Eastern bloc, not the entire Soviet sphere. Poor choice of words on my part.

The reason I can be pretty sure there wasn't much US involvement in Eastern bloc revolutionary movements is that these movements time and again followed one of two patterns: A. "Reformist" 1\. Trusted, committed Party members have falling out with Party Secretary, who is heavy-handed/incompetent/annoying. 2\. These Party members (usually Politburo) force out the Party Secretary and promise to get the worker's state back on track. 3\. These new leaders (to the surprise of everyone) actually become _popular_ by forcing out the hated leader and promising reform. 4\. The non-elite classes (i.e. those not in the Party) get a little too excited in the midst of this public euphoria, and start calling for cheaper meat, less overbearing local Party hacks, freely- elected union representatives. 5\. The Soviets march in.

B. "Dissident-led" 1\. A small group of self-proclaimed dissidents publicly and repeatedly denounce the regime. 2\. Because of this, they lose their (usually) intellectual, white-collar jobs, guarantee no secondary education for their children, endure frequent jail stints and get assigned back-breaking physical work. 3\. Nevertheless, they refuse to back down, and instead continue their public activities. 4\. The economy gets bad/a rally is organized for a slain WWII hero, and 10k-15k people strike/protest/rally in the streets of the capitol city. Anti-communist chants inevitably occur, and someone gets shot. 5\. The shooting, and the Party's embarrassment about it, encourages more people to protest and gives them a reason to protest. Soon as much as 1/4 of the population is in the streets on any given day. 6\. The Soviets march in/Gorbachev writes off the Eastern bloc.

Neither of these patterns is especially useful/conducive to US interests. The first severely damages right-wing interests; here is an example of the people of a Soviet puppet state showing trust and affection in their political leaders. If it had worked -- if Hungary or Czechslovakia had transformed into something closer to Sweden or even Yugoslavia -- the meme of socialism as perpetrator of evil would be tarnished. It's also difficult to generate political enthusiasm by more than a few hundred people. That just doesn't happen, no matter how much money/support you give.

The second pattern is even more difficult to produce. Anyone willing to be bought off is a rational actor, and in 1977 nobody believed the Soviet Union was going to disappear anytime soon. Why would you give up all earthly comforts for a future that would likely never come?

</comment></comment></comment></comment></comment></comment><comment><USER6> The true revolution changes social relations, changing people in power is quite superficial and it is foolish to blindly believe in it.

Revolutions is the usual sense happen when current structures are so rotten that something else is needed, then some other form of social organisation prevails, often not really what was expected at the beginning (think russia in 1917 vs. russia after the civil war in 1921).

But it is our role as humans to modify the world at our scale, to modify our ways of interacting with others and doing things to make the world a little better. Think of the changes between the middle age and now... there's so much room to do much better... At a bigger scale, for me, the next point is introducing more participative democracy in companies, especially big companies (they are truly the most prominent fascist-like organisations there...)

</comment><comment><USER7> This past year, senior year of high school, my history teacher based his curriculum on teaching us how to stage a revolution. He asked us to plan a revolution of the school, consider what/who needs to be revolted against, and how. It was entertaining at first and it made learning the Russian Revolution, the revolution in Argentina, and others more relevant but my teacher seemed to be bent on the fact that we should actually revolt against our government as soon as possible. I consider(ed) it nonsense.

I'll try to stay away from a political debate and focus on the psychological argument. That Political revolution in the United States can be done within its current system, through election and democracy, and as bad as things are, there is no need for a cataclysmic shift. As I see it, democracy is evolutionary, it continuously evolves, checks and balances are self correcting just like natural selection. I'm all about learning practical stuff and I just don't see where this fits beyond in establishing a critical mindset.

Please broaden my mind.

</comment><comment><USER8> Dup! <http://news.ycombinator.com/item?id=310818>

</comment><comment><USER9> I hear the final project's killer.

<comment><USER10> Don't you mean "revolutionary"?</comment></comment>


Micro Virtual Machines as Solid Foundation for Language Development - <AUTHOR> http://lambda-the-ultimate.org/node/5161

<comment><USER2> Their "concrete instantiation[s] of a micro virtual machine", their reference implementations, are in Java and Scala, which of course run on managed VMs, which makes me at first glance wonder what they think they've demonstrated with these implementations.

<comment><USER3> I wouldn't place too much importance on their choice of implementation language. I'd imagine the goal of showcasing their reference implementation is to demonstrate the operational semantics of their virtual machine. Equivalent implementations could be produced in C for example.

</comment></comment><comment><USER4> Epic comment on the thread - [http://lambda-the- ultimate.org/node/5161#comment-85861](http://lambda-the- ultimate.org/node/5161#comment-85861)

<comment><USER5> That reminded me of the lesson I was learned here two days ago: [https://news.ycombinator.com/item?id=9578178](https://news.ycombinator.com/item?id=9578178)

</comment></comment><comment><USER6> For those looking for the spec and early impl, see [http://microvm.org](http://microvm.org). The paper says it can currently run simple RPython scripts.</comment>


A Guide for the Perfect Daily Standup  - <AUTHOR> http://blog.standupti.me/post/126647667809/perfect-daily-standup <comment><USER2> While I agree standups can have a use, I find they get pretty useless at my current place of employment. We have a small dev team where every single person is working on completely different portions of the software and there is little collaboration/overlap. The stand-up is pretty much just people telling what they are working on, so I'm not sure it's an effective tool.

<comment><USER3> I've never seen a standup be useful.

Last year we built a team that was in constant communication threat the day, via slack and bug reports/statuses. We had ad-hoc conversations regularly. We all knew what was going on and what was being worked on.

And yet we were forced to have a standup every morning where we tried to summarize what we were working on for non-technical "managers" who always would have the wrong impression- either something that was hard was trivial and why weren't woe working faster on it, or someone would rattle off a bunch of trivial things and they would think they were working heard.

Technically competent management would be in the slack and watching the issues and not need a standup at all. A jira report is all you really need.

Just make a bug status that is "blocked" if your system doesn't already have one.

Then of course In all the companies I've worked at in the last 10 years that had standup, invariably there was some sort of management type (you can tell them because their job is having meetings, not getting things done) who wouldn't mind droning on for 20 minutes while standing. They don't care that they are standing.

I think the standup has become some sort of cargo cult relic from the days before slack and is maintained because it lets managers who don't understand technology feel like they are making their reports report every day.

Now a sprint meeting, once a week or once every 2 weeks... that's more useful.

</comment></comment><comment><USER4> On my team, we've had an evolution from daily in-person standup, to daily short google hangout, to daily status dump into a dedicated slack channel. While there's something to be said for face-time, I think this is working for us pretty well.

</comment><comment><USER5> "You Should be Standing Up." I use a standing desk so during our standup, while everyone else stands up, I sit down. The part about standing forcing people to be efficient and succinct doesn't really apply when you're already standing for 8 hours a day.

</comment><comment><USER6> I find that the daily standup is frequently a waste of time though often (maybe 1-2 times a week) issues I hadn't known about are brought to the fore. On a small team, I figure that if someone really needs something, they will reach out to the appropriate people to get it. This reduces communication overhead unless the whole team is required to make a decision.

I can see value in doing a standup somewhere between 1-3 times a week, but 5 times a week, unless everyone needs to work closely together on time sensitive issues seems excessive. The idea of everyone doing paperwork every day to be prepared for a low value meeting kind of gives me a headache. It seems like the opposite of lithe and agile.

<comment><USER7> You seem to be selfishly focusing only on the benefit to you. You are (or should be) part of a team. Even with your low 1-2 times a week, with 5 person team that is 5-10/wk. In otherwords every single day.

<comment><USER8> "Selfish" is the wrong word, and to me assumes a certain troubling kind of bad faith. People respond to incentives. If the performance of a team is not the primary evaluative factor for a developer (and it often isn't), then it makes no sense for somebody to focus on anything else. A developer must be incentivized to view those five to ten times a week as a plus to the point of not finding it worth complaining about.

</comment></comment></comment><comment><USER9> I injured my back in a fall a long time ago, 2 discs are bad. I literally can't stand for more than a few minutes without taking ibuprofen the rest of the day. It's time for standups to end and go back to the old fashioned sit around the table meetings.

<comment><USER10> Standing Up is a crutch to keep meeting short.

If you can keep the meeting short and effective with everybody sitting why you make people stand up ? It is not agile to apply practices out of principle, you apply them with a result in mind, and if the result can be achieved in a more efficient manner you just do it that way.

For example, my team has never suffered from anchoring. We stopped playing with the voting cards once it became clear the result we got with or without them were the same, just faster without the cards. We continued to stand up because that meant people going away from distractions but not requiring a trip to a meeting room.

<comment><USER11> This, I think, is what people so often miss when they are talking about agile.

It's not a magic set of hard-and-fast rules that should be applied to every situation regardless of how they fit. If you feel you can do without some parts of the canonical process, then drop them. If you feel you'd benefit from some different approaches, you can add them.

Standups are no different, and if your team doesn't need them, or has an alternative that works better for you, then go for it!

<comment><USER8> This is, however, used as a dodge by Agile proponents (okay, more specifically Scrum proponents, but the other "Agile" options have mostly receded) to avoid answering to the significant criticisms of the methodologies involved. "Oh, you changed it because we said it was flexible and could be changed? Now you're doing it wrong, the methodology(tm) is fine."

</comment></comment></comment></comment><comment><USER12> I don't see any reason that a standup is superior to sending an update email in the morning and many reasons why it's inferior. Mainly, it's a tool for managers to feel important. That's it. There's no need to optimize that except to make it go away, for which there is a great need in this industry. If it was a tool for managers to get updates, they'd use email, chat or something saner. Standups put developers under pressure unnecessarily and offer nothing to the development process in return. It's sad that they even exist and they're a perfect example of managers who don't know how to manage and can't figure out a proper way to stay updated. They make developers angry and less productive because now the developers are stressing over what they're going to say in the standup rather than developing. Yet another terrible idea from the agile camp that seems to have no shortage of such terrible ideas.

EDIT: Note that all the information available in standups is also available on a board or ticketing system for a manager's perusal anytime. That to me proves the uselessness of the standup and its only purpose being to make managers feel in control.

<comment><USER8> This doesn't reflect my experience at all. I'm not at all a fan of Agile as a practice, but I am a fan of well-run standups. Update emails can tell a manager what they want to know, but incentives virtually never align to get the rest of your team to read them and be up to speed on what everybody else is doing. And that's why standups work: you get a little face-time with your entire team, away from the desk, and it's a chance to have everybody's _undivided_ attention for a minute or so and to get them rummaging around the attics of their brains for things that might be relevant to you.

You say what you did and what you're planning on doing. If you are worried about the optics or politics of saying what you did, I would reflect on whether or not that's an issue, either with the team, its management, or you personally, separate from the process of a standup meeting itself.

<comment><USER3> It should be obvious, on an hour by hour basis, what is bing down, what is on deck and what is a blocker due to where issues are in the workflow. This is much more detailed and it's already being updated.

You don't need to interrupt your developers and take out 2 hours of productivity with a daily meeting.

I've never seen that undivided attention used for anything worth a damn- even the manager ends up giving filler.

It's like 24/7 news channels. There simply isn't enough content to fill a 15 minute (half hour) meeting every day. But they feel like they need to.

</comment></comment></comment><comment><USER13> I've pretty much given up on the old Scrum-style standup. It's just another form of torture that to put devs through. I agree with the ceremony itself, but for development teams, or even worse operation teams, trying to catalog and remember all the things you did yesterday, or Friday, is painful.

Since we've moved over to Kanban, I've found it's much more useful to walk the board. We start on the right and move to the left. The discussion is much richer and I've found people no longer struggle to remember what they did yesterday.

What the author suggests at the end, having everything written down in advance, is just another chore designed correct 'bad' behaviour (people not sure what to say, lots of 'umm, errs'). Perhaps we should be asking ourselves if it's the format rather than the people.

Here is a blog post describing something similar to the one we're using now: [http://brodzinski.com/2011/12/effective- standups.html](http://brodzinski.com/2011/12/effective-standups.html)

</comment><comment><USER14> Having a daily short, informal, morning meeting certainly helps us. You don't need to be standing up to have "standup". Dogma for dogma's sake is the king of anti-patterns.

<comment><USER6> For what it's worth, I have noticed that actual stand ups are shorter. When people settle in and sit they tend to start rambling. It is hard to convince people to actually stand though without being dictatorial. Here's a study of undergrads (so take it with a grain of salt) that shows that they are in fact shorter:

[http://nymag.com/scienceofus/2014/05/work-smarter-for- shorte...](http://nymag.com/scienceofus/2014/05/work-smarter-for-shorter- meetings-stand-up.html)

<comment><USER15> I think that's true. When I had a local team we stood, and the meetings seemed shorter. With global or national teams, that's a bit harder.

I have found for phone/web "standup" meetings, that the person running the show needs to set the pace and keep it moving along. Nice and short, keeps the team informed and gets help were its needed.

On the other hand, I've had leads who just let people ramble non stop, and doing that for weeks was just wasteful and demoralizing.

</comment></comment></comment><comment><USER16> You can't use methodology to change what is largely a people-problem. Your projects are failing not because you didn't have daily status meetings correctly, they're failing because your organization has a culture of lying to itself about work. Thinking you can fix that by fixing daily status meetings is a symptom of that culture.

A daily status meeting is about seeing what is going on, comparing that to what needs to happen, and changing course if necessary. You don't need a checklist of how to do that. If you can't figure out how to communicate with people you see every day on those points, then I don't know if you're clever enough to figure out how to write code in the first place. You're fired. Pack up your things and get out.

I've seen way too many organizations use "we're standing up" to mean "therefore, we're having a productive meeting". I've seen places do 50-person standup meetings. Yes, they would go two hours. I've seen other places get the number of people right but do full-status-report standup meetings. Yes, they would also go two hours. That's a quarter of your work day, probably half of your productive work day, just wasted on an emotionally draining process.

Last time I had daily status meetings that worked, I had my entire team in one room, we had a large whiteboard with every task we were working on between us, and when everyone got in, had their coffee, got through their emails, I would turn around in my chair, ask if everyone was ready, and we'd just go through the list. We would scratch things off when they'd get finished, so we always knew who was getting what done anyway, and everyone had their names next to what they were working on, so we knew what they were working on already. It was mostly just a chance for someone to ask for help on something. It took about 15 minutes. If new tasks didn't fit on the board, they didn't fit in the team's workload.

I think there is something to be said for not placing the focus on individual contributors but on the tasks as a whole, on the team as a whole. My meetings didn't pit people against each other, "oh, Jim got 3 things done yesterday and has never been blocked on 1 thing for over a week, but Dave has made zero progress on his task since two days ago. Shame, Dave, shame. Let us not question whether the task was specified correctly or appropriately broken down."

</comment><comment><AUTHOR> I know there is a large sentiment at HN that the Daily Standup is dead, or an anti-pattern. However, the truth is Agile and Scrum are still huge. Plus, most do not have a say in the methodologies they use at their job. Why not try and make the most out of it!

<comment><USER9> Standup was never part of Agile:

[http://www.agilemanifesto.org/principles.html](http://www.agilemanifesto.org/principles.html)

<comment><USER17> The standup is obviously one method of applying "The most efficient and effective method of conveying information to and within a development team is face-to-face conversation."

Agile also strongly discourages remote work, under the same principle.

</comment></comment></comment><comment><USER18> What if your work consists largely of research and experimentation? No tasks or stories, mostly many long spikes.

What if research and experimentation happens over a period of time and only later there is a period of focused prototype development?

Have you experimented with alternatives to daily standups? Standups three times a week? Changing the routine based on the stage of the work (research vs. development for example)?

What if standups are misused for micromanagement?

If there are so many ways standups can go wrong maybe its not a good generic tool after all?

<comment><USER11> _If there are so many ways standups can go wrong maybe its not a good generic tool after all?_

I don't think that's a useful conclusion to draw. Standups go wrong if they are too long, and that's about the only way they can fail.

 _What if your work consists largely of research and experimentation? No tasks or stories, mostly many long spikes._

"I researched this area yesterday. It seems like a good approach. I noticed we need to think about how it will scale, but I'm going to look into that further today."

Or even consider that standups are indeed not for your organisation. That's fine.

 _Have you experimented with alternatives to daily standups?_

This is something I would encourage every team to do if they don't feel standups are useful. Try a status email at the end of the day instead, or a weekly status meeting. I definitely think that a standup had value, but I imagine it depends on the environment.

 _What if standups are misused for micromanagement?_

Then fix it. If you are in a situation where you are being micromanaged, then it's not the fault of a standup – it's the fault of a micromanager, and eliminating a standup isn't going to fix that.

<comment><USER18> >> What if standups are misused for micromanagement?

> Then fix it.

That's easier said than done. It assumes that the micromanager has enough self-awareness and listening skills. If he had, maybe he wouldn't be a micromanager. I tried to fix it but eventually it was one of the biggest reason I left the company.

>> If there are so many ways standups can go wrong maybe its not a good generic tool after all?

> I don't think that's a useful conclusion to draw. Standups go wrong if they > are too long, and that's about the only way they can fail.

Micromanagement is another way we already mentioned. Fabulating stories about work done as a means of avoidance is another (as your sibling suggests). I'd say there are even more ways they can fail in general. In specific cases they might still be indispensable.

edit: formatting

</comment></comment></comment><comment><USER9> Is it just me or does everyone in the picture look younger than 30?

<comment><USER16> The one guy in the long-sleeve button-up shirt might be in his 30s or 40s.

</comment></comment><comment><USER19> Async standups may be a good alternative, you can do them over email or on Slack/Hipchat/Flowdock.

Different rules apply in async standups than in meeting-like standups. There's more focus on what your daily status can bring to other people.

I wrote about some tips here: [http://andrzejonsoftware.blogspot.com/2014/05/async- standups...](http://andrzejonsoftware.blogspot.com/2014/05/async- standups.html)

</comment><comment><USER20> I'm still confused why this isn't just handled via email. Send an email at the end of the day and be done with it.

<comment><USER21> Email is asynchronous. Impediments can't be addressed with the same immediacy.

<comment><USER20> Yeah, but do you want to have 10 people go through their 5 minute thing every day? Its basically a whole hour that could have been better used.

Reading the same thing in email form and replying would maybe take 15min.

<comment><USER11> _Yeah, but do you want to have 10 people go through their 5 minute thing every day? Its basically a whole hour that could have been better used._

Every company is different, but in my opinion that's just a meeting rather than the canonical standup. I wouldn't expect a 10-person standup to take more than 15 minutes.

<comment><USER20> 90 seconds per person?

I've never seen any meeting go that fast.

<comment><USER15> Then your "standup" meetings are being run by an incompetent person; I've had that happen on several teams, as well, and it resulted in some miserable months; but, when it works well it works well. It is completely up to the person leading the meeting to set the tone and keep the pace - they should be interrupting people who take too long and moving it along.

Properly run, people should just be reporting on status and impediments, not details.

Remember, most people don't have anything to report: "I'm working on my stuff, no issues, that is all."... that's like 10 seconds tops.

or, "I'm done, moving on to my next task". What's the next task? That's already been assigned at the start of the sprint, don't need to go over it here. If someone wants to know, they can look at the task tracker - if someone needs to change priority "need X done so I can work on Y", they can make a quick comment, or email after the meeting.

even if it is "I'm done with my last thing, i need something new" \-- you don't need to get that new thing in the meeting, the boss man knows you need something, they'll assign you something after the meeting.

... that leaves room for people with issues. And they still shouldn't take long. "I'm stuck! I need help with Z!" that gives time for a few people to say "I can help with that" and someone to be picked.

Anything more should be a meeting of its own with just the effected people (not the entire team). Detailed status should be in nice clear comments in your task tracker.

</comment></comment></comment></comment></comment></comment><comment><USER22> The perfect daily standup is an email.</comment>


Translations – Applications Marketing 101 - <AUTHOR> http://appicurious.com/2011/10/21/translations-applications-marketing-101/

<comment><USER2> Great article. One thing to bear in mind with translating your apps is that it's a complex field, and you want to do it right the first time around.

For an example of possible pain, you can't simply pass a string such as _Welcome, Thomas, you have {number_of_messages} messages_ to your translator and expect all to be OK. I speak a bit of Polish, and in this instance, the word _messages_ will take one of three forms, depending on whether it's 1 message, the number of messages ends in 2, 3 or 4 (but isn't 12, 13 or 14), and another form for everything else.

The gettext library is works really well for handling pain points like these, and the "About" section in its manual gives some common examples like the above: [http://www.gnu.org/software/gettext/manual/gettext.html#gett...](http://www.gnu.org/software/gettext/manual/gettext.html#gettext)

<comment><USER3> Gettext has most of the features needed, when translating software, like plurals, comments by developers and translators and fuzzy strings. There are projects that even use it for documentation purposes, like fedora.

Another good format for i18n is the TS format used by QT (<http://doc.qt.nokia.com/stable/linguist-ts-file-format.html>).

</comment></comment><comment><USER4> One thing to consider is that the users will expect support in that language as well. This may be much less of an issue for a game or mobile app, but much more for a SaaS offering for example.

</comment><comment><AUTHOR> As always I would love to hear the community thoughts on my article. Also if you have experience in this particular topic please do share.

Cheers

</comment><comment><USER5> Please do not editoralise titles like that. "Increasing your app downloads/usage" is pure spammy linkbait.

<comment><AUTHOR> I'm sorry... I fixed it to reflect the actual title. I didn't mean for it to be spammy.</comment></comment>


Sorry, Dropbox, I still don't trust you - <AUTHOR> http://www.zdnet.com/blog/bott/sorry-dropbox-i-still-dont-trust-you/4173

<comment><USER2> I certainly would like to see some more complete disclosure from dropbox to explain what's behind the experiences the Ed Bott relates.</comment>


Google Is Pulling YouTube Off the Fire TV and Echo Show - <AUTHOR> https://www.theverge.com/2017/12/5/16738748/google-amazon-feud-youtube-pulled-off-fire-tv-echo-show-nest-devices <comment><USER2> You know what, good for Google. I hate to sound like a child, but Amazon fired the first salvo by dropping the Chromecast a few years back. This move only seems fair.

<comment><USER3> Amazon removing the Chromecast from their store was, if anything, verification at the Fire TV was not a product that could succeed on its own.

I love my Chromecast and I buy new models directly from Google, because no matter what Amazon says I know the difference between Google's product, and Amazon's copycat version of it.

<comment><USER4> If they would give me an actual controller for the chromecast I might consider it

I have no desire to control my TV with my phone.

I may look into Roku as an alternative to FireTV now though,

<comment><USER5> I'll third the praise for Roku.

The only annoyance is that they put ads on the homescreen, (but that can be blocked at the network level), and that different apps tend to have slightly different/inconsistent UXs, for example pressing "up" while watching Netflix will show you the timeline without pausing, but doing the same in HBO Now will take you back out to the show info page.

The dedicated remotes are nice, though sometimes oddly slow to "wake up". Some models even have headphone jacks on the remote, which can be really handy.

All the versions can be controlled through a really nice Android app, which lets you directly enter text rather than pecking around in a grid keyboard, and also lets you forward audio to your phone/headset instead of the speakers or remote.

<comment><USER6> Roku, seemingly, accessed my device and disabled side-loading. An unlawful access (unauthorised access, unauthorised modification, both crimes under the Computer Misuse Act in UK).

Put me off an otherwise stellar experience.

</comment></comment></comment></comment></comment><comment><USER7> Last time [1] we speculated, some saying it's a straight tit for tat [2], others, like me [3], saying it can be because Amazon half-assed the implementation after getting no help from Google.

At least this time, we know the real reason.

[1] [https://news.ycombinator.com/item?id=15348063](https://news.ycombinator.com/item?id=15348063) [2] [https://news.ycombinator.com/item?id=15348063#15349384](https://news.ycombinator.com/item?id=15348063#15349384) [3] [https://news.ycombinator.com/item?id=15348063#15349084](https://news.ycombinator.com/item?id=15348063#15349084)

</comment><comment><USER8> The big winner in this would seem, to me, to be Roku - one of those rare cases where being independent actually helps.

<comment><USER9> roku is freaking terrible. have you even used one? compared to the seamlessness that chromecast plus the price, why would you use anything else.

<comment><USER4> >>seamlessness that chromecast

how is it seamless, I want a independent device to watch videos on, not a device that have to connect with my phone, tablet or pc then "cast" video to it.

I want a self contained video streaming device with its own physical remote, processor and OS that does not need anything else but a internet connection

Roku and FireTV are different classes of Devices than a ChromeCast

<comment><USER9> you're in like .01% of the population that wants that. the menu's and remote with the roku are horrendous, everything about a roku is terrible. You have log into an account within the 'roku os'. you also have to have the remote on you. I almost always have my phone on me. I'm already signed into all the apps that i want, with a much easier to use keyboard for searching. i tap a button on my screen and it's playing on my tv. The entire experience is 'seamless' just because you like to have 47 extra steps to watch a video doesn't mean that anyone else would like that. Roku is for people who don't know better or are technologically challenged. I mean, if you compared it to the appletv Roku is probably good?

<comment><USER10> > you're in like .01% of the population that wants [a self contained video > streaming device with its own physical remote, processor and OS that does > not need anything else but a internet connection]

Then why is Roku the most popular brand of streaming device?[1]

> You have log into an account within the 'roku os'

...and with Chromecast you have to log into an account within the Google Home mobile app. In both cases you only have to log in that first time.

> you also have to have the remote on you

No, you don't. You can use the Roku app on any iOS or Android device.

Most people who buy a device like this are trying to watch Netflix or Hulu; not trying to cast video files from a local storage medium. Note that the marketing copy on Roku.com[2] focuses on everything _except_ casting. And it's the same for Amazon[3].

[1] [http://www.businessinsider.com/roku-vs-chromecast-amazon- fir...](http://www.businessinsider.com/roku-vs-chromecast-amazon-fire-apple- tv-most-popular-study-2017-7)

[2] [https://www.roku.com/how-it-works](https://www.roku.com/how-it-works)

[3] [https://www.amazon.com/Amazon-Fire-TV- Family/b?ie=UTF8&node=...](https://www.amazon.com/Amazon-Fire-TV- Family/b?ie=UTF8&node=8521791011)

<comment><USER5> And even though it's not a focus, Roku still has a perfectly usable Miracast/WiFi Display implementation that works with any Miracast source. I've used it successfully from both my android phone and win10 laptop.

</comment></comment></comment></comment></comment></comment><comment><USER11> They were probably actively preventing them from releasing a YouTube TV app for the FireTV as well, I'm guessing.

I'd love to switch to YouTube TV (I've had MANY problems with PlayStation Vue, and Sling is decent, but missing some channels). They don't have a FireTV app, though. But frankly I'm ready to simply ditch my FireTV because of that alone. Throw in the fact that my FireTV is covered with ads now and it's kind of a no-brainer.

<comment><USER12> I watch the PBS NewsHour on Youtube on the FireTV because it tends to be available sooner than on the PBS app. After the last round of updates, I've gotten a lot of video stuttering in YouTube, such that restarting the FireTV is the only way to fix it. That, and the UI of the FireTV got way harder / less-logical to use a few months back (along with the ads).

Beyond the recent junking up of the UI and Youtube hiccuping, I'm getting really, really tired of the Google / Apple / Amazon / content / platform / device wars.

</comment></comment><comment><USER13> Is there precedent for a company restricting access to its website by a competitor's device for competitive reasons?

<comment><USER14> I don't it's blocking the site. They're discontinuing the app. FireTV doesn't directly support web browsing at all.

<comment><USER13> Echo Show switched to showing YouTube through the web after Google blocked it the first time. Now it looks like Google is blocking the website. [https://9to5google.com/2017/11/21/youtube-back-on-amazon- ech...](https://9to5google.com/2017/11/21/youtube-back-on-amazon-echo-show/)

</comment></comment></comment><comment><USER15> Tech Corps. coming of age. I'm looking forward to the next Google.

</comment><comment><USER16> But how exactly can you pull a website off, i mean it is a web site..

<comment><USER17> User-agent tracking will work just fine.

In a more non-corporate environment this would be the beginning of an arms race to try to figure out how to fiddle with headers to either block or not block the device, but since we're discussing corporate behemoths with legal teams larger than most companies, it'll stop here, because no legal team would sign off on the idea of fraudulently identifying yourself in a header in order to obtain services from a hostile competitor.

<comment><USER18> Can't I do this with my own home router? Or is this why Google pushed so hard for TLS everywhere?

</comment></comment></comment><comment><USER19> They probably want more control over the implementation of Youtube. Maybe it's not a good experience on the Fire TV and Echo Show.

<comment><USER20> That's not why. See the article. Google has stated this is because amazon doesn't sell certain google products through their store, and doesn't allow prime video on the chromecast.

</comment></comment><comment> oh-kumudo Monopoly in action? Anyone familiar with the business here, how is this going to play?

</comment><comment><USER21> Now we have a new motto: "Don't be Google" (or Amazon).

</comment><comment><USER22> I've been looking for a tablet for my kids without that filth finally a solution.

it's sucks I have to make a deal with the prime devil to get it.

</comment><comment><USER23> Why is this Google's call to make? I thought YouTube was a web site/service and the web was open?

<comment><USER24> YouTube is a commercial product. It's Google's choice to make YouTube free to view. Couldn't they block anything they want?

\- Client app implementations

\- Specific countries

\- Specific browsers

\- Specific users

Is this correct?</comment></comment>


How My Startup Raised $1.1 Million From a Single Cold Email - <AUTHOR> http://ericbieller.com/post/60847881635/how-my-startup-raised-1-1-million-from-a-single-cold

<comment><USER2> <queue 1million spam emails to Mark Cuban>

I've had some startup clients do this and it's not worked out well for them (of course, we're in Dallas, not SV, so the response/pace of business is different).

I think a lot of this sort of thing works "once in a blue moon" rather than "do this as a formula" as your email simply happened into someone's email box when they either felt that need and/or were receptive to something new.

<comment><USER3> Thanks for the input. I agree with this not being a sure fire way to get noticed. Again, it comes down to how you write the email, what your goal is and what your product is. But I don't agree that this is a 'once in a blue moon' type of thing.

We actually got quite a few responses from very influential people, not just Naval. The reality is, a lot of them spend hours on email a day. If you give them something worth responding to, they will respond!

<comment><USER4> > If you give them something worth responding to, they will respond!

The problem here is that not everybody is objective when it comes to determine what is worth responding to. So this will be applied as a winning recipe because it worked once for someone and that someone blogged about it.

I can see a whole pile of heavy hitters waking up to people trying this scheme out wondering what is the cause of this inbox deluge :)

<comment><USER3> I've actually gained several very valuable contacts from this method, not just one ;) So it's actually worked out for me several times in the past, which is why I still do it.

In either case there's no harm in sending the email. Of course your conversion rate is going to be low. But if you can send 10 well written emails and get 1 valuable response, that certainly seems worth it to me!

</comment></comment></comment></comment><comment><USER5> It looks like you guys built a solid product that's clearly useful, as well as a website that makes the value proposition immediately obvious. I would guess that this had more to do with your funding success than your cold email strategy.

<comment><USER3> Thanks a ton! Indeed having an interesting product helps, but what good is an interesting product if your email gets chucked straight into the trash because it's too long, or seems too arrogant? ;)

</comment></comment><comment><USER6> Turns out the founder of AngelList is a good person to have advocating for you.

<comment><USER3> Indeed he is, nice guy too ;)

</comment></comment><comment><USER7> It's almost like making a good product that solves a real problem is a differentiator in the Valley.

But also it further reinforces the notion that there is a ton of money to be made facilitating other startups.</comment>


Regular Expression Matching: The Virtual Machine Approach (2009) - <AUTHOR> https://swtch.com/~rsc/regexp/regexp2.html <comment><USER2> I'm reading this paper to follow along with this excellent implementation in Clojure of regular expression matching of sexps: [https://github.com/cgrand/seqexp](https://github.com/cgrand/seqexp)

Ghadi also made a version to parse PEG grammars but the VM is done in java i believe. Great talk about it:

talk: [https://www.youtube.com/watch?v=9Q-- oX5muxw](https://www.youtube.com/watch?v=9Q--oX5muxw) project: [https://github.com/ghadishayban/pex](https://github.com/ghadishayban/pex)

</comment><comment><USER3> I didn't know that Ken Thompson was one of the first programmers to implement regular expressions (in the QED editor for CTSS). That explains why there is so much use of regular expressions and pattern matching in Unix! Now it is quite common to see regular expressions in many tools and programming languages, but when I started using Unix in 1983 I was surprised to see so many uses of regular expressions.</comment>


Fast Finite State Machine for HTTP Parsing (2014) - <AUTHOR> http://natsys-lab.blogspot.com/2014/11/the-fast-finite-state-machine-for-http.html <comment><AUTHOR> State machines are really the ideal application of goto, where the semantics map directly - go to this state, making the flow of the code very clear. The performance benefits are nice too, so in that sense I think it's beneficial for both the machine and the programmer.

It'd be funny to see the results of an implementation with "proper OOP design using the State design pattern", I have a feeling that could be worse than the original switch/loop.

<comment><USER2> I've been using re2c lately and it's really great. It's this gem from the 90's that not a lot of people know about; I encountered it in the Ninja build system, where they were concerned about parsing megabytes of text very quickly.

It basically generates a bunch of gotos from readable regexes.

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

One thing I haven't explored is "push vs pull" scanners. It's basically the same thing as threads vs. async, so it could be really useful for async servers. Normal scanners will pull data in when needed, but if you pass -f, it can apparently have data pushed upon it.

I guess Ragel can be used easily like this since Mongrel is async (?)

</comment></comment><comment><USER3> > There was successful attempt to generate simple HTTP parsers using Ragel, > but the parsers are limited in functionality.

They are not limited in any way. You are free to combine as many state machines as you want with as convoluted logic as you want. But it takes some time to learn Ragel.

</comment><comment><USER4> I think that [http://www.ucw.cz/holmes/](http://www.ucw.cz/holmes/) has (or had) an HTTP parser based on perfect hashing of strings for maybe 15 years. It was written by some very smart people and there are lot of tricks like that in these sources.

</comment><comment><USER5> This is another reason these text style protocols are poorly designed. In addition to ending up ambiguous in practice, in addition to not being standard because of "liberal implementations", we get this terrible performance to boot.

SIP has the same issue. Though most VoIP companies don't have much bandwidth and you can just saturate them. But if they manage to filter that, overloading the actual system is not a difficult task.

<comment><USER2> Design has many dimensions; performance is only one of them.

Text protocols tend to grow ambiguities, but that's because they're evolvable. That's a feature, not a bug. A binary protocol would likely have already collapsed under its own weight. (Name a binary application level protocol that has achieved adoption as wide as HTTP)

HTTP also wasn't designed from scratch. The message format is shared with e-mail (RFC 2822, RFC 822), presumably so people could reuse existing code. HTML wasn't designed from scratch either; it was based on SGML. There are lots of good reasons that e-mail was text.

You're basically arguing against nature. Humans ostensibly design protocols, but it's really the laws of evolution and economics (nature) that determine which ones survive. It's like complaining that human knees and backs are fragile... yeah that's true, but there's nothing you could have done about it.

<comment><USER6> > That's a feature, not a bug.

No, it's definitely a bug. You can have extensiblity without ambiguity, see the examples below...

> Name a binary application level protocol that has achieved adoption as wide > as HTTP

TLS, SSH, DHCP, DNS

<comment><USER2> Why does SSH have v1 and v2? Honest question, I don't know the protocol. I would guess it's because v1 was too brittle to be upgraded.

SSH and TLS have very few implementations... and there also seem to be incompatible versions there, at least with SSL 2.0 and 3.0. That approach might work for the ecological niche of those protocols, but I don't think it would have worked for HTTP.

There are orders of magnitude more HTTP implementations than DNS, DHCP, TLS, SSH, etc. That's one reason for its wide adoption.

<comment><USER6> The different versions of SSH and TLS came about because the protocols' semantics needed to be revised in non-backwards compatible ways to resolve security issues. This has nothing to do with the format of the protocol. I would remind you that HTTP has also had similar revisions (0.9, 1.0, 1.1).

Hyperbole about "orders of magnitude" aside, I'm not sure having a very large number of implementations should be seen as a plus. Protocols like SSH, DNS, and DHCP have relatively few implementations because the vast majority of use cases are covered perfectly well by a handful of existing libraries and tools. By comparison HTTP implementations tend to be ad-hoc and tightly coupled.

<comment><USER2> HTTP 1.1 is backward compatible with 1.0, and I'm pretty sure 0.9 is. I think with SSH and SSL they basically have an (if version) statement at the top level, and then enter a completely different codebase for each version. They can get away with this because there are so few implementations.

With HTTP you had more graceful upgrade. They made "mistakes" but were able to accomodate it within the existing structure.

</comment></comment></comment></comment></comment></comment><comment><USER7> Two other benefits to the FSM-based methods:

1\. Easier to apply formal verification or at least model-checking to the parsers.

2\. Synthesis methods are available to directly generate hardware logic from several types of FSM's.

So, using the FSM methods gives an immediate benefit plus potential for future benefits.

</comment><comment><USER8> Of course it is way more elegant to use coroutines for parsing of stream data.</comment>