The Mobile Browser Is Dead, Long Live The App - <AUTHOR> http://www.forbes.com/sites/ewanspence/2014/04/02/the-mobile-browser-is-dead-long-live-the-app/

<comment><USER2> Forbes, as usual, churning out horrendously written and poorly thought through articles.

Time spent is a poor way for anyone to evaluate a market or even a single product. It could mean anything from "wow this product is amazing, let me stay on it all day" to "wow this product sucks, and I can't find anything but I need to so I'm going to spend 3 hours on it finding what I need".

Its an even worse choice to then extrapolate that metric into high level prognostications about what does/doesn't matter in the space.

Mobile Web has a role for consumers and companies. Mobile apps, like packaged software of the past, also have a role for consumers and companies. The value is in understanding why they have different use cases and building software that delivers value to users for what they need right now.

But hey, if this poorly written article resonates with you, feel free to listen. And the rest of us will laugh at you all the way to the bank.

</comment><comment><USER3> Apps are great right now because they are better than most of the web apps.

However, they aren't the future, because:

\- Web apps are always up-to-date, no updating necessary

\- Web apps are stored in the cloud, not on your device

\- Web apps work on any device/platform, apps need to be written for each

\- Web apps are there on demand, instantly, while vendors cannot expect you to download an app for every website, company and product.

Look at what Google is doing with the Chromebook and look at devices like the Synology where the best feature is the Web app interface served from the device itself. This is the future, the "Internet of Things".

<comment><USER4> Not really a compelling argument. If I invert your benefits they still read like benefits.

Mobile Apps are the future because:

\- Mobile apps allow you to keep the version you have, updating when desired

\- Mobile apps are stored on your device

\- Mobile apps are customized to your device and can take advantage of all its features

\- Mobile devices provide a browser for things that shouldn't ever be an app to being with.

I hope web based apps are the future but I think it will be for different reasons.

\- The promise of Java, they won't be written in Java but just like Java the idea that you can write portable applications is very powerful

\- Not being locked into an app store. App stores will still exist for discovery and monetization reasons but being able to run an app by visiting a URL will allow for all the things that companies like Apple won't allow.

<comment><USER5> > Mobile apps allow you to keep the version you have, updating when desired

Do you really believe that the user is actually in control of the upgrades ?

> Mobile apps are customized to your device and can take advantage of all its > features

Having to code specifically for each device sounds like a benefit to you ?

<comment><USER6> _Do you really believe that the user is actually in control of the upgrades ?_

On iOS at least, it's (by default) a manual process to update an app.

 _Having to code specifically for each device sounds like a benefit to you ?_

Benefit for the _user_ , yes.

<comment><USER7> _> Benefit for the user, yes._

I would agree with that if everyone _(companies)_ actually did that, but they don't. Often they pick the popular platforms, or choose frameworks that allow for a single codebase and output a often subpar UX App, or just don't make the app to begin with.

Making it harder for a company to give the end user the product, even if an arguably _better_ product, is not always a win for the user.

<comment><USER6> I see your point, but were I making a decision about what platform to use to build a mobile presence, I would focus on what provided the best user experience. Not what gave me the greatest initial coverage.

If you can be successful on iOS or Android first, you'll probably then have the resources available to develop for the other platforms as well.

</comment></comment></comment></comment></comment></comment><comment><USER8> Awesome, now even more sites will try and force me to download their shitty app when all I want is to read a fucking article! No wonder no one uses the mobile web when every other site does stuff like that.

<comment><USER9> exactly! ..but people making those sites will eventually learn how to make a better web sites that fits into the phone. "performance" advantages of apps vs mobile sites will go away ( imho )

</comment></comment><comment><USER10> So Facebook, Messaging, and Gaming apps make up 58% of mobile usage statistics and suddenly the mobile browser is "dead"? Mobile browsers have never been a strong target for gaming and won't be until Apple allows WebGL to run in Mobile Safari. What I take from this is that Facebook still dominates people's online activities and that most people spend most of their time playing Candy Crush Saga on their phones. This article is link-bait, nothing more.

<comment><USER6> I'd be surprised if the lack of WebGL is what's holding back mobile browser based games. I would imagine it's the relative difficulty in monetizing them vs the app store.

<comment><USER4> And I wonder if it is on purpose to keep the lock-in.

But strangely in Windows 8.1 (not phone yet) you can make Windows store apps using WebGL and JavaScript. FireFox OS also support WebGL.

</comment></comment></comment><comment><USER11> I feel the same. As a developer I'd like to just develop HTML5 Apps and be done with it. But as a user I always, ALWAYS, prefer an App over the website, even if both do the same thing. I don't know why but HTML5 Apps don't feel as easy, responsive, fast and integrated as the average Android App. I always feel a little tighten up when being in the browser, even the App is designed exactly for my screen size. Therefore I also decided that if I develop something for the phone it must be a native App.

<comment><USER12> This might be heresy round here, but I make the same argument for desktop as well. For one example, my native apps use a consistent application menu framework provided by my OS, yet every time I'm in a browser app I get a completely different experience, with no commonality between different vendors. There's poor integration of copy/paste; no integration with the file system; a 'back' button that nukes the whole app; keyboard shortcuts that kinda sorta work, but only if they don't step on the browser's own... It's like using DOS applications all over again.

Until web apps can run in a first-class embedded Javascript runtime with equal access to the OS's native frameworks, web apps are going to continue being second class citizens. Part of me thinks they're only popular now because developers like working on them.

<comment><USER13> I think that if Mac had been the dominant desktop platform, native desktop apps would still be more popular. For one thing, Mac emphasizes UI consistency more than Windows; observe that even Microsoft Office and the (now abandoned) Windows Live Essentials desktop apps don't use native Win32 controls. For that matter, even a lot of Windows utilities don't use standard Win32 coontrols for everything; Microsoft has an internal GUI toolkit called DirectUser that is used in various forms across several MS products. And this brings me to a reason why native Windows apps aren't popular among developers today: lack of a single good native GUI solution. Win32 is plain ugly, and shows its age. Windows Forms was stillborn, as Joel Spolsky said in "How Microsoft Lost the API War". WPF may be good for .NET apps, but Microsoft doesn't use it in their flagship products; that's hardly a vote of confidence. And now there's WinRT/Metro, which is cool... if you want to ignore the large installed base of pre-Win8 users. Is it any wonder that so many developers just decided to use web technologies instead?

</comment></comment></comment><comment><USER14> thing is that mobile web has not yet integrated into mobile platform per-se. Apps have access to far more features of the OS than web pages. I think if browsers would be able to expose and integrate web-apps something that can be a blend of an app and webservice then one will see how limited and stupid using isolated app is.

Open services promote integration and availability of things you want to do.. for example I can't instapaper an article in my safari browser, I am sure I could've fixed that if there'd been a layer of script language between OS apps and web apps. It is only a sliver but it has been annoying me quite a bit. If the mobile ecosystem will be scriptable and integratable then one can make web be a first class citizen on the mobile. For now browser is a pretty crummy way to do web on a mobile device. Screen is too small, value added features are only available to apps only. Maybe for a good reason - technological one, battery and security(those are the problems to solve). Yet I would like to program my alarm clock from the web and have it send me some news for the time when I got up ... something like that (I am brain storming here)

2c

<comment><USER15> What you're talking about isn't "a sliver." Given the underlying architecture of the various mobile OSes (FireFox OS excluded, perhaps--I don't know enough about it to say), it's actually quite probably a very big task.

I'm sure there are masochistic people who write code for browsers who'd love to maintain the browser-API abstraction over _N_ OS API implementations. I'm not so sure there is a sufficient number of them to get such a task off the ground. It's not some trivial matter of simply implementing something like an HTTP-based API.

</comment></comment><comment><USER16> Ah, these articles really make me feel uneasy.

I prefer this mindset instead:

[http://motherfuckingwebsite.com/](http://motherfuckingwebsite.com/)

<comment><USER17> Rdio & Google Maps would be absolute blasts to work with if that's how they were built.

<comment><USER16> Google Maps are for Googles to build. The problem arises when every one wants to build fancy applications that serve no real purpose. I prefer to see some "utilitarianism" in the web.

<comment><USER17> Agreed, I just took your comment as an all or nothing approach mybad.

</comment></comment></comment></comment><comment><USER18> I disagree; web apps are just warming up. Native apps are still the go-to for a seamless experience, but I think that will change. As devices develop greater fragmentation continues (now seeping into the iOS echo system by the looks of it) apps will need to get better at being responsive. Web apps have already figured out a lot of the challenges surrounding responsive design, and will continue to do so. Once devices become powerful enough that there's no significant difference between web and mobile things will change dramatically. I see Google being the next to adopt native HTML5 and JS (after Microsoft's lesser known adoption in Windows Phone and Windows 8). Google's support for native web apps will put pressure on Apple and they'll go the same way.

<comment><USER19> I can definitely see Google merging Chrome OS with Android

<comment><USER20> They're under the same umbrella now too. I personally think that will be a central theme in Android 5. Imaging how you'll be able to run Chrome packaged apps on you PC, tablet, phone, and Chromebook, with the same application and data stored in the cloud, synchronized everywhere. You only have to look at the changes they made in KitKat to see that Android is destined to become ChromeOS for mobile devices.

</comment></comment></comment><comment><USER21> That graph shows 68% of the time in games, facebook, chat, and music/video.

The remaining 32% is split between 14% in the browser and 18% in apps. That's not the same thing as the mobile browser being dead.

<comment><USER11> You can also choose between m.fb.com and the FB app. There are also HTML5 games for the phone, you can also use web IRC clients for chat etc. But people just don't! People use the apps, which is exactly what the article is saying, or not?

</comment></comment><comment><USER22> I think the author didn't exactly understand what Marc Dillon meant by saying:

 _> but I understand the utility of having applications. But they contribute to a tunnel vision of what a smartphone can do. They provide a good user experience, but poor integration. A smartphone is smart if it helps users day to day_

He didn't mean it to contrast native applications vs browser based ones. He meant it to contrast standalone / non integrated native applications vs integrated experience where the user doesn't see it as "working with application A", but sees it as "doing task A". Native vs Web wise, Jolla's Sailfish is actually heavy on the native side.

 _> The methodology of Android and iOS is the dominant viewpoint._

It's a not a reason to copycat it and to be a follower rather than a disruptor. Sailfish and FirefoxOS don't follow a lot of aspects of the established iOS and Android approaches and it's a good, not a bad thing.

</comment><comment><USER23> My opinion is there has been a failure of IT to realize that mobile is completely different from everything else and we continue to leverage desktop technology in the mobile world.

Apps work best because they do not carry baggage of the desktop world with them. People have the freedom to build specifically for mobile with mobile tools.

There are no two bigger movements that contribute to this than: Responsive Design and the Mobile first.

Responsive Design implies that mobile is just different from desktop based on the display size and that you can design a single interface that can work for both. Both of these ideas are completely wrong.

Mobile First implies designing for mobile and then desktop is the best approach but this can never work as both platforms will suffer from inferior implementations.

\----

Setting the ship back on course would take us building "Mobile Only" with mobile only frameworks, by dropping the ones that were created in the desktop era.

</comment><comment><USER24> The more damning thing is the web is rapidly becoming poor people and geekland, with apps becoming where the middle and upper classes are consuming, so the value is moving heavily towards appland.

It's been clear for a while that monetising apps is easier than the web, though the discovery problem is intense.

What I've not seen, and would be interesting, is how different this is for iOS and Android users. i.e. do iOS users spend more time on apps vs in browser than Android users?

<comment><AUTHOR> One argument caught my attention in the article is that the HTML5 approach of Firefox OS is not working.

Actually I prefer the HTML5 approach, but as you said, monetising apps is easier than the web. I believe this is the key issue here.

</comment></comment><comment><USER25> I love these article titles especially since I love getting my tech news from forbes the way I love my mechanic's baked goods. Apps have their place and the browser is not going away. If anything "The browser is dead...long live the mobile OS". I would cite reasons why I think this but I'll claim the same opinion piece rights media seems to enjoy lately.

</comment><comment><USER26> Why can't the "future" be one with both web apps and native apps? (e.g. like how it is now)

They both have their up-sides and down-sides, but which is best usually depends on the context in which they are being used, and if nothing else, user preference.

I don't see why one has to "win" per-say … it seems to me like the future is big enough for both to thrive :)

</comment><comment><USER19> One of the biggest reasons that native apps are getting more usage than mobile web apps is the existence of an app store. There is no central distribution center for web apps making discovery difficult. The process of getting a mobile web app pinned is not easy enough compared to a native app.

</comment><comment><USER27> The reason: web pages suck, and they increasingly suck worse and worse with more and more javascript and crap getting thrown in. I wish the simplification required to make a web app that is usable on mobile would find its way back into the web pages themselves.

mobile versions of websites are pretty much a joke. I can't stand what amazon does when I try to visit with opera (forces it to mobile). Makes it pretty unusable.

</comment><comment><USER28> Can we just discontinue submissions from forbes, wsj, bloomberg, theguardian, wired, and techcrunch?

<comment><USER29> Then we're left with 90% shitty blog posts that are a variation of "Why I do X and you should too", 10% actually interesting stuff from other sources.

<comment><USER28> Good point, I held back on mentioning such blogs, I'd definitely support filtering those out too.</comment></comment></comment>


Amazon-owned Whole Foods is cutting medical benefits for part-time workers - <AUTHOR> https://www.theverge.com/2019/9/13/20864636/amazon-whole-foods-medical-benefits-part-time-workers-jeff-bezos <comment><USER2> > Last month, Amazon joined a number of other tech companies and Fortune 500 > firms in signing a letter outlining the purpose of a corporation as > something not just designed to return shareholder value, but also to serve > employees and the community. "Each of our stakeholders is essential," the > pledge read. "We commit to deliver value to all of them, for the future > success of our companies, our communities and our country."

lol!

<comment><USER3> Matt Levine today:

"people were like "this is a revolution in capitalism," and I was like "nah this is just CEOs saying that they don't want to have to listen to shareholders"</comment></comment>


PostgreSQL's Imperfections - <AUTHOR> https://medium.com/@rbranson/10-things-i-hate-about-postgresql-20dbab8c2791 <comment><USER2> If I could have one thing on that list fixed it would be #9 - no planner hints.

I used Oracle (6 through 11) for both bespoke applications and to back large third party systems. I never saw widespread abuse of hints. Yet they were immensely helpful during development and troubleshooting. I put perhaps two queries into production with hints over 10+ years. No one ever had a reason to complain about either.

There are no perfect query planners. There is no perfect analysis. The notion that one must submit entirely to the mercy of PostgreSQL's no-hints dogma causes me to harbor some resentment. Fortunately you can frequently abuse CTEs to achieve a desired access pattern because (until recently) CTEs were an "optimization fence." But I've also resorted to creating functions and other hacks.

So I conclude the policy is simply wrong headed; there is no legitimate reason to fear hint abuse and the premise that hints aren't necessary is false.

<comment><USER3> While I won't say that the Postgres ideosyncrasies are correct here, I can tell you that your experience is not necessarily typical. In my career, hint abuse has always been rampant. From telcos to biotech companies, a high percentage of complex queries I had to interact with had hints in them. In one extremely egregious case, the company decided to purchase an Exadata server, and since its performance characteristics had little to do with the previous servers, a vast majority of hinted queries were very wrong, leading to months of developers rebuilding every query, despite having no schema changes.

So yes, a lot of people in the industry have been burned by hints to make the Postgres perspective understandable. At the same time, this doesn't make it good: Postgres' default settings over the years have lead to specific kinds of tables requiring extra love and care to make the query planner not do silly things. The most traditional failure case being a transaction table with an always increasing timestamp, where a vast majority of queries only care about today: The traditional thing to do was to convince Postgres that yes, this table needs very frequent stats recalculation, as to make it learn that there are more than 3 rows today, so nested loops will not do. Whether the Postgres quirks are better or worse than hint hell, I am still not sure of: A competent engineer can handle things either way.

<comment><USER4> > In one extremely egregious case, the company decided to purchase an Exadata > server, and since its performance characteristics had little to do with the > previous servers

I don't get this point. If the hinted queries changed performance for the worse, why wouldn't you expect unhinted queries to also change for the worse after migration? After all, the hints were there to overcome such issues already.

It sounds like the lesson should be "with large enough system, plan for extended time for query rewriting if you plan to replace your db engine", rather than anything about hints themselves.

<comment><USER5> > If the hinted queries changed performance for the worse, why wouldn't you > expect unhinted queries to also change for the worse after migration?

The hints can introduce wrong assumptions to the planner, which can lead to worse performance than if those wrong assumptions weren't there.

<comment><USER4> Same with lack of hints. We're not talking about simple queries which can be expected to just work. These were previously found to be badly optimised by the first engine, so we're in unknown territory either way.

</comment></comment></comment></comment></comment><comment><USER6> I largely agree, but a couple points I'd like to challenge:

Is hardware corruption really happening and making it into the WAL stream with checksums on?

The next point, on planner hints: it's really just something that hasn't been done. If a few engineers made plans to tackle the problem, a lot could be done in a couple releases' worth of work. In the mean time, people are getting by with various half-measures anyway, such as extensions[1], planner tunables[2], and statistics tweaks[3].

The only dogma is that a half-baked solution isn't wanted. It's got a lot of architectural impact and long-term supportability implications. And a lot of different use cases that need to be considered that may drive different technological solutions. "Make plans stable/managable" is a different use case than "I know something the planner doesn't" which is different from "Make the planner do this thing because I said so".

[1] [https://github.com/ossc- db/pg_hint_plan/blob/master/doc/pg_h...](https://github.com/ossc- db/pg_hint_plan/blob/master/doc/pg_hint_plan.html)

[2] [https://www.postgresql.org/docs/current/runtime-config- query...](https://www.postgresql.org/docs/current/runtime-config-query.html)

[3] [https://www.postgresql.org/docs/12/sql- createstatistics.html](https://www.postgresql.org/docs/12/sql- createstatistics.html)

<comment><USER7> Hardware corruption can happen anywhere to anything.

If you care about your data: Use ECC, and use a checksumming filesystem like ZFS, and _also_ on top of this all, export your WALs to a second machine.

<comment><USER6> Well, I'm asking specifically if the author saw corruption that snuck past the checksumming features that postgres has.

Extra layers are always good, but since I was one of the main authors of checksums in Postgres, I'd like to know if there's room for improvement. (Aside: the page checksum is only 16 bits, so if you have frequent corruption it's entirely believeable that a few sneak past. But I haven't seen it personally.)

</comment></comment></comment><comment><USER8> There's also one inherent data privacy problem in MVCC that I've been running into.

Suppose you have an app that lets people anonymously vote or comment on stuff, but only once. The vote in the DB must not have any connection to the person. So, you give the person a flag whether or not they voted already, and store the vote separately.

Now, you'd want to set both values in the same transaction for obvious reasons. But, since Postgres uses MVCC, the two tuples that are added to the database both contain the same transaction ID (XID), so there's the connection between user and vote again.

There seems to be no way to instruct postgres to "clean" those XIDs in any way. What we're doing now is periodically and manually updating every tuple in each affected table with dummy changes, essentially duplicating all tuples with all new XIDs, and then running VACUUM to delete the tuples with the old, potentially-deanonymizing XIDs. We haven't found anything easier...

<comment><USER9> > Now, you'd want to set both values in the same transaction for obvious > reasons. But, since Postgres uses MVCC, the two tuples that are added to the > database both contain the same transaction ID (XID), so there's the > connection between user and vote again.

The simple solution is that at each change, you rewrite the whole election, not just the new votes, and clear out all outdated tuples (basically, that you make the "periodic and manual" process you are currently doing automatic and integrated with the "real" transactions rather than additional side process.)

Alternatively, you don't do the changes in the same database transaction but in the same business domain transaction which is managed outside the database, and where any database artifacts related to the management of the business transaction are deleted and vacuumed after the transaction is completed.

<comment><USER8> Re "same business transaction": That would probably still allow for correlating the votes with the flags because they'll still be added with _some_ XID, which are monotonically increasing. Of course, it would require more effort and probably even guesswork, but still :)

Rewriting the election in the same transaction sounds smarter than the periodic solution. I need to discuss that with the team, thanks!

</comment></comment></comment><comment><USER10> > The on-disk binary format is incompatible across major versions

This is my major bugbear. If Postgres were able to upgrade its datastore on the fly (optionally, of course) that would make a massive difference. Instead I've had heart-in-mouth moments when Homebrew has decided that it wants to upgrade Postgres. (Yes, I do now use brew pin, until I transition off Homebrew for good.)

#2 for me is inefficient enum storage. Each value takes up 4 bytes. A single- byte enum would vastly reduce my database size.

<comment><USER11> Re upgrades, have you tried pg_upgrade for upgrades in place?

Re enums, we had a similar thing and simply went with a smallint column instead of enum.

<comment> yjftsjthsd-h > Re upgrades, have you tried pg_upgrade for upgrades in place?

This only works when you have both versions available at the same time, which seems likely to break when a package manager jumps major versions, and also doesn't work when running postgres in Docker ([https://github.com/docker- library/postgres/issues/37](https://github.com/docker- library/postgres/issues/37)).

</comment></comment></comment><comment><USER12> > Every time an on-disk database page (4KB) needs to be modified by a write > operation, even just a single byte, a copy of the entire page, edited with > the requested changes, is written to the write-ahead log (WAL). Physical > streaming replication leverages this existing WAL infrastructure as a log of > changes it streams to replicas.

First, the PostgreSQL page size is 8KB and has been that since the beginning.

The remaining part. According to PostgreSQL documentation[1] (on full page writes which decides if those are made), a copy of the entire page is only written fully to the WAL after the _first_ modification of that page since the last checkpoint. Subsequent modifications will not result in full page writes to the WAL. So if you update a counter 3 times in sequence you won't get 3*8KB written to the WAL, instead you would get a single page dump and the remaining two would only log the row-level change which is much smaller[2]. This is further reduced by WAL compression[3] (reducing the segment usage) and by increasing the checkpointing interval which would reduce the amount of copies happening[4].

This irked me because it sounded like whatever you touch produces an 8KB copy of data and it seems to not be the case.

[1] - [https://www.postgresql.org/docs/11/runtime-config- wal.html#G...](https://www.postgresql.org/docs/11/runtime-config-wal.html#GUC- FULL-PAGE-WRITES)

[2] - [http://www.interdb.jp/pg/pgsql09.html](http://www.interdb.jp/pg/pgsql09.html)

[3] - [https://www.postgresql.org/docs/11/runtime-config- wal.html#G...](https://www.postgresql.org/docs/11/runtime-config-wal.html#GUC- WAL-COMPRESSION)

[4] - [https://www.postgresql.org/docs/11/runtime-config- wal.html#G...](https://www.postgresql.org/docs/11/runtime-config-wal.html#GUC- CHECKPOINT-TIMEOUT)

<comment><USER13> That is correct. And neither is a full page write logged if the page is initialized from scratch. And even without WAL compression, the "hole" in the middle of the page if the page is not full, is "compressed" out.

That's not to say that FPWs are not a problem. The increase in WAL volume they can cause can be seriously problematic.

One interesting thing is that they actually can often very significantly increase streaming replication / crash recovery performance. When replaying the incremental records the page needs to be read from the os/disk if the page is not in the postgres' page cache. But with FPWs we can seed the page cache contents with the page image. For the pretty common case where the number of pages written between two checkpoints fits into the cache, that can be a very serious performance advantage.

</comment></comment><comment><USER14> Great list I would add one thing to it:

No query plan caching not even for sprocs or functions.

Was surprised by this one, looks like the optimizer is much simpler than other db's so it usually take less time to create to the plan but the overhead is still there.

This is why you see the recommendation to use prepared statements and many client libraries try to automatically, but a prepared statement cannot be shared between sessions so its only good if your repeating the same statement over and over on the same connection.

If your app calls the same statements over and over from different connections which most apps tend to do it can save significant overhead and reduce response times. It was pretty much mandatory to make sure you where using parameterised SQL or sprocs back in the day to make sure it was using a cached plan properly.

</comment><comment><USER15> I agree with everything on this list. Been bit by most of these at one point or another. XID wraparound was the worst.

Ironically we avoided a lot of the replication bugs by accidentally deciding to use logical replication from the start, but that of course brought in a whole different set of bugs instead.

I'm surprised there wasn't a complaint about the vacuumer. That was probably my biggest single pain of running a large active cluster. There was never a good time to vacuum, but if you skipped it, it eventually happened automatically, usually at the worst possible time, when the database was most active.

To be fair I haven't managed postgres since 8.3, so maybe that got better?

<comment><USER16> It's pretty darn different than 8.3 today.

</comment></comment><comment><USER17> The 'best database' article recently linked here, says

"PostgreSQL picks a method of concurrency control that works best for high INSERT and SELECT workloads. [...] tracking overhead for UPDATE and DELETE."

This one says "INSERT and UPDATE operations create new copies (or "row versions") of any modified rows, leaving the old versions on disk until they can be cleaned up."

I do think this one is wrong, but this is my wild guess as I am no expert in any way. INSERT should be fine. Or how would INSERT "create new copies"?

[Edit] See authors comment.

<comment><USER18> Author here. This should not have included INSERT. I updated the post to reflect that. Thanks for picking this up.

<comment><USER17> Thanks for your fast reply, much appreciated.

</comment></comment></comment><comment><USER19> I'm a humble web developer and I'm not very knowledgeable about databases.

I am glad I deal with an ORM for both personal and work projects instead relying on database specifics. That way, the app is DB agnostic and I can switch the database with ease. If your resource are limited, I think that is good.

When you have the resources, it's better to hire an architect and a DBA to tell you what DB to use and maintain it.

<comment><USER20> _I can switch the database with ease_

In my experience an organisation is far, far more likely to switch operating systems or hardware platforms or programming languages than they are the database. But no programmer bothers to code in a clever but restricted syntax that would be a valid program in both C# and Java. Or restricts themselves to a core set of OS features or hardware instructions just in case. It really is quite bizarre to watch.

<comment><USER21> Plus it's fairly common to end up with more than one program, in more than one language, reading from and writing to a DB. The more you've avoided using DB features (in featureful databases, anyway) the slower (in performance and dev time) and riskier (you _will_ have more bugs, and maybe some pretty bad ones) this is.

</comment></comment></comment><comment><USER22> Ok, I have mine:

When declare a custom type with a check, the error not show the row/table that cause the problem, only that something happen:

        CREATE DOMAIN TEXTN AS TEXT
        CONSTRAINT non_empty CHECK (length(VALUE) > 0);

However, doing the check inline show the error in full.

This cause me to rewrite all the tables, twice (one adding the new type thinking will help, once again inlining everything).

</comment><comment><USER23> Criticism is valid, but he talks about cases of millions connections to a single db, that is a significant scale many companies will never see. In addition to that, probably no database can serve under significant load without careful tuning, preferably with understanding of DB internals and knowing compromises DB authors took when designin it.

PostgreSQL is constantly improving. At least some of the problems with scaling with number of connections have more to do with locking rather than process- per-connection architecture, it is being worked on with impressive results doubling number of transactions per second for 200 connections: [https://www.postgresql.org/message- id/20200301084638.7hfktq4...](https://www.postgresql.org/message- id/20200301084638.7hfktq4sh2mcnuen%40alap3.anarazel.de)

<comment><USER24> I'll trust postgresql more when it can support a few thousand connections without resorting to running middleware (pgbouncer) all over. That was his point. PostgreSQL is just abysmally bad in this area.

The process per connection model works great for "my first rails project" so every developer brings it to $dayjob. Then they are caught off guard when they start getting real traffic. It's terrifying to watch a couple hundred connections take a moderately sized server (~100 threads) down the native_queued_spin_lock_slowpath path to ruin. That's just sad.

<comment><USER13> > I'll trust postgresql more when it can support a few thousand connections > without resorting to running middleware (pgbouncer) all over. That was his > point. PostgreSQL is just abysmally bad in this area.

Depending on your workload it's entirely possible to run PG with 2000 connections. The most important thing is to configure postgres / the operating system to use huge pages, that gets rid of a good bit of the overhead.

If the workload has a lot of quick queries it's pretty easy to hit scalability issues around snapshots (the metadata needed to make visibility determinations). It's not that bad on a single-socket server, but on 2+ sockets with high core counts it can be significant.

We're working on it (I'm polishing the patch right now, actually :)). Here's an example graph [https://twitter.com/AndresFreundTec/status/12346215343642419...](https://twitter.com/AndresFreundTec/status/1234621534364241920)

My local 2 socket workstation doesn't have enough cores to show the problem to the same degree unfortunately, so the above is from an azure VM. The odd dip in the middle is an issue with slow IPIs on azure VMs, and is worse when the benchmark client and server run on the same machine.

> It's terrifying to watch a couple hundred connections take a moderately > sized server (~100 threads) down the native_queued_spin_lock_slowpath path > to ruin. That's just sad.

Which spinlock was that on? I've seen a number of different ones over time. I've definitely hit ones in various drivers, and in both the generic parts of the unix socket and tcp stacks.

<comment><USER24> >> native_queued_spin_lock_slowpath path >Which spinlock was that on? I've seen a number of different ones over time. I've definitely hit ones in various drivers, and in both the generic parts of the unix socket and tcp stacks.

Not sure yet. It was on a server with 1000 stable connections. Things were fine for a while, then suddenly system would jump to 99% on all 104 threads and native_queued_spin_lock_slowpath was indicated by perf.

Ironically we cleared it up by having sessions disconnect when they were done. Boggled the mind that increasing connection churn improved things, but it did.

<comment><USER13> That sounds like you could have hit transparent hugepage / compaction related issues. They, IME, tend to hit more often with lots of long running processes, than when there's a lot of churn. It has gotten a lot better in more recent kernel versions, but if you're on an older kernel, it can be really bad.

<comment><USER24> THP => never. I thought about that, too.

</comment></comment></comment></comment></comment></comment><comment><USER25> Moving to PostgreSQL on Amazon Aurora simplifies all the replication issues listed. We (Remind) use an autoscaled PostgresQL Aurora cluster and have been pretty happy with it.

<comment><USER23> How much knoweldge is transferable? Isn't Aurora just protocol and SQL dialect compatible, but underneath it has nothing to do with postgres?

<comment><USER26> Each flavor (and version) of Aurora is compatible with a corresponding version of the open source software. For example Aurora MySQL 1.* is compatible with MySQL 5.6

At my current gig we use it in Prod, but we are also able to run our software during development pointing to locally installed open-source versions of MySQL just fine. I imagine it's the same for Postgres.

<comment><USER27> I believe he was asking whether an understanding of "under-the-hood" of postgres transfers to Aurora -- that is, does your tuning knowledge transfer as well, or is it just you can migrate your codebase transparently

Though now that I think about it, I think Aurora gives relatively little in tuning accees, so it's more of whether the hueristics transfer (eg the ol' avoid all joins, which I've always been suspicious of, but still don't know if it's a useful saying)

</comment></comment></comment></comment><comment><USER28> I'm surprised that no-one is complaining about the lack of Active Directory integration for authorization.

#disclaimer - Author of an AD integration solution that never got off the ground.

[https://github.com/gregn610/padnag](https://github.com/gregn610/padnag)

<comment><USER29> I think it's a bad idea for a database to start implementing third-part vendor related features.

That's the type of feature that should be implemented as a plugin.

<comment><USER30> You could just call it "ldap authentication". AD comes with an LDAP interface.

<comment><USER13> Postgres does have ldap based auth, and also can authenticate against AD using sspi/gssapi.

The problem with that is that it requires users to have been created inside postgres first, and that you can't manage group membership inside AD.

<comment><USER28> yup, that's what I meant by authorisation, keeping the roles and groups in pgsql up to date.

</comment></comment></comment></comment></comment><comment><USER31> Can I bounce this idea off you guys.

Would there be a market for a dba to charge maybe 100-200. Just comes in, listens to your DB use cases, and recommends various config/setting changes, hardware, etc?

It seems so much better than having a team of programmers study Postgres settings for a week. That was my last experience with it at least.

<comment><USER32> Why wouldn't an automated interface be able to give similar recommendations ?

<comment> no-s >Why wouldn't an automated interface be able to give similar recommendations ?

you being sarcastic? If only we had an automated interface to make decisions about what code to write, then we wouldn't need programmers. Look how well that turned out IRL. We don't really need many assembly language programmers any more, but now we have all these nifty new programming languages...

<comment><USER32> I am under the impression that all the combinations of all configurations would still be small enough to present neatly maybe in a wizard.

</comment></comment></comment></comment><comment><USER33> Does anyone know any good book with PostgreSQL tips and tricks and cool snippets? Coming from MySQL, I'm always finding exciting things: checks, date ranges and GIST, to_tsvector(title) @@ websearch_to_tsquery('foobar')...

</comment><comment><USER32> Wow this article and this thread is so full of useful information for getting started to ventur into DB management/engineering.

</comment><comment><USER34> Not sure if this makes sense, however, I've always preferred MariaDB to Postgres because it _feels lighter_. And I haven't really come up against any significant limitations in MariaDB that would make me want to switch to Postgres.

<comment><USER35> Heavy writes, mulitstep transactions is where PG has always won for me vs Maria and MySQL - it was even more pronounced when I decided I'm all in on PG c2003

<comment><USER36> 1) 2003 was 17 years ago.

2) PG has a write amplification problem with multiple indexes that MySQL Innodb doesn't have.

<comment><USER37> I'm curious how innodb solves this, given that the theory of indices pretty much demands write amplification by definition. Postgres' WA is worse?

<comment><USER35> Its from an Uber post - more story and follow up in this post [https://dba.stackexchange.com/questions/226879/did- postgresq...](https://dba.stackexchange.com/questions/226879/did-postgresql- write-amplification-reduction-warm-efforts-get-released-in-10-1)

<comment><USER38> Yeah - they indexed every single column.... also - what may not have worked for uber, will be just fine for 99% of usecases. How often do you work with that kind of load. What they moved to isn't so much mysql, rather mysql used as a key value store with 0 relational database usage. Not really a postgres issue, rather one of being too big for relational databases.

</comment></comment></comment></comment></comment></comment><comment><USER39> As a not very tech savvy person, object/hierarchical data querying in pg is horrible. The query syntax is alien and just feels tacked on.

<comment><USER16> Mind giving an example?

</comment></comment><comment><USER40> Anyone else getting a 500 error for the link?

<comment><USER41> Hopefully a database problem

:-/

</comment></comment><comment><USER42> why does postgresql use a process per connection? Is there some advantage to doing this over using threads for each connection (or even asynchronous connection handling)?

<comment><USER43> Postgres dates back to the era when multiple processes were the normal way of doing this kind of thing on Unix-like OSes, and POSIX threads were often poorly supported on free ones.

</comment></comment><comment><USER44> Anyone got postgres (or general db) tips for a CoW-fs? I'm using postgres on zfs.

<comment><USER45> Ensure that the dataset containing your postgres data is configured with record size equal to postgres page size or close enough (Lots of places use 8kB ZFS records for 4kB pages).

This will reduce write amplification due to excessive read-modify-write cycles.

<comment><USER16> Pg uses 8kb pages by default. You do really want your fs/db page size to match though except in very very specific scenarios.

<comment><USER44> Why doesn't pg query the fs for the default scenario I wonder

<comment><USER16> Because it's a compile time flag, not a init or config parameter.

I agree it would be nice if the page size was more adaptive to just not have FS page size alignment issues.

</comment></comment></comment></comment></comment><comment><USER46> Its scary that my company is replacing old Oracle DBs and teams of specialist DBAs with developers running their own PostSQL instances. Sure it saves money but its gonna blow one day soon...

<comment><USER16> Getting rid of Oracle, fine... But getting rid of specialists is probably not the smartest move. I don't think Postgres will have anything to do with the problems your company may face.</comment></comment>


Program to reduce energy consumption persuaded some Republicans to consume more - <AUTHOR> http://www.slate.com/id/2251658/ <comment><USER2> After these two comments:

 _Not bad, but probably not enough to save the planet._

and

 _...also look for guidance from the patron saint of right-wing fundamentalists, Rush Limbaugh_

I decided that the piece isn't interested in any objective analysis.

I'd like to offer an additional explanation for the phenomenon that doesn't seem to be considered: the distributed flyers revealed to those Republicans that the high-and-mighty Democrats talked a good game about conservation, but were actually burning more power than those GOPers. Now convinced that the environmentalists are hypocrites, they say "screw it".

<comment><USER3> To quote the Instapundit, " _I'll believe it's a crisis when the people who say it's a crisis start acting like it's a crisis._ "</comment></comment>


Study finds very high level of salmon fraud in restaurants - <AUTHOR> http://www.usatoday.com/story/news/nation-now/2015/10/28/salmon-fraud-oceana-study/74714950/?utm_source=feedblitz&utm_medium=FeedBlitzRss&utm_campaign=usatoday-newstopstories <comment><AUTHOR> As a serial salmon eater, this concerns me because the economic incentives for properly labeling salmon are formed by public opinion. I highly doubt that farm raised salmon is any worse than wild salmon from Alaska, yet people clamor for the latter while eschewing the former.</comment>


Setup a complete Django server, deploy, rollback – all in one powerful script. - <AUTHOR> http://www.askthepony.com/blog/2011/07/setup-a-complete-django-server-deploy-rollback-%e2%80%93-all-in-one-powerful-script/

<comment><USER2> I have a morbid fascination with improving my workflow and programming environment, so I absolutely adore combing through other developer's fabfiles. This one is definitely nicely put together, and there's some nice gems I look forward to adapting into my own.

I'll say this though: while fabric is _ok_ at configuration management and provisioning new servers/instances, it's absolutely dwarfed by real tools for that kind of job. If you value your sanity and want another excellent tool in your arsenal, look into using Chef or Puppet for building servers (with a dose of Blueprint for reverse-engineering your existing requirements). Fabric is great at everything else it does, but for building new servers it's very flimsy and prone to break, which can cause many a needless headache. I prefer Chef, but Puppet is equally excellent. Do yourself a favor and take the afternoon to learn one or both.

<comment><USER3> I've heard many good things about Chef -- seems to be the tool get job done. Could you guys share your Chef script/config so we can all benefit from learning by example?

<comment><USER4> Yes, I've often heard people say this is the way to go, but please blog about your own django server setup process using chef / puppet so we can see the details.

</comment></comment></comment><comment><USER5> This looks super nice. One thing I've found that really speeds up deploys using git (inspired by github's deploy process[1]), is having your production copies of your app just be a clone of the git repo. To deploy new code the commands that get run are just:

$ git fetch origin

$ git reset --hard origin/<production branch>

A rollback is just:

$ git reset --hard HEAD^

Fetching pulls down the new code, without replacing your production code just yet. Then git reset --hard is a super fast way to point the production server's working copy at the current head of the origin/<production branch>. Saves you the time of having to upload an archive of your entire app the server everytime. However, it also gets complicated if you want to rollback more than one deploy. I've been looking into maybe auto-tagging each deploy and using the tags for rollbacks.

Also, for uploading assets to S3 checkout s3cmd. It has a really nice sync command, that's basically like rsync for s3 --only uploads files that have changed.

[1] [https://github.com/blog/470-deployment-script-spring- cleanin...](https://github.com/blog/470-deployment-script-spring-cleaning)

<comment><USER6> If you're deploying multiple commits at once, rollback is a bit more complicated than that. Check out <http://www.viget.com/extend/deploying-the- git-way/>.

</comment></comment><comment><USER7> It'd be best to talk about the rationale behind this script.

Since I'm currently diving into Fabric I have to say the very script isn't really pretty (rather hacky). Still, it's useful.

On the other hand one can invest a lot of work initially by using Chef (or Puppet) and never again be bothered with setting up deployment scripts.

</comment><comment><USER8> Very nice! I made a similar script a couple of weeks ago. <https://github.com/gcollazo/fabulous></comment>


The Game (Theory) within the Game - <AUTHOR> http://theincidentaleconomist.com/the-game-theory-within-the-game/ <comment><USER2> It is not true at all that your odds of getting to second base are the same whether you steal or do not steal. Consider a situation with two outs. Stealing percentage is usually around 70%, so if you steal you are likely to get to second. But on-base percentage is generally less than 50%, so if you do not steal you are not likely to get to second.

In general this is not the right way to use game theory to analyze baseball. The relevant goal isn't getting to second base, it's winning the game, with a good proxy of scoring runs. If you successfully steal with no outs you are much more likely to score a run than you are if you advance later when there are two outs. So getting to second is a bad proxy for scoring runs.

<comment><USER3> (a) It is a highly stylized example to illustrate game-theoretic concepts. In a sense I am asking the reader to imagine that THE GAME is about the runner getting to second or not holding all else about the game constant. That's not really baseball, but it is a baseball-like situation.

(b) The situation described is both vague (was the probability referenced by the color commentator for this runner? For this team? For this situation?) and specific (a specific runner/pitcher pair, there are zero outs not two).

(c) You are right about the goal of baseball. I had originally written it with the goal being scoring. But then it is a vastly more complex game.

<comment><USER4> A _very_ good article. I'm just getting into games now, and seeing lots of small simplified examples like this is exactly what I need to improve my intuitional understanding.

<comment><USER3> I'll have more on basic game theory, including a post that will explain a relatively painless and fun way to learn the basics. Stay tuned.</comment></comment></comment></comment>


Building Better Pocket - <AUTHOR> There are always new articles, videos, podcasts, blogs, tweets, websites, books or plaintext thoughts that I'd discover or get recommended by friends. It's impossible to consume all that content as soon as it arrives. But it's also really important that it doesn't get lost and I do get round to going through it at some point.
I would use several reading lists (or apps) which is a great solution in many ways. But they didn't feel like a problem off your chest. On the contrary, you need to remember where all your reading lists are so you get back to them at some point. I still have several of those buried somewhere on my computer.
Another big problem with reading lists is that it's so difficult to just pick the next item to read. Which list do I go for? Do I start off the top or at the bottom?
And when I've picked up that one article or video, I'm pretty sure there was a specific reason why I'd saved it or perhaps someone recommended it to me but I've forgotten now. Also, I'm pretty sure I've saved something more recent and relevant on the same topic since. At this point, all the context is gone.
That's why we built Itemsy around the exact experience I would've wanted for myself. Here is how it works:
1. Start emailing links to any content you want to save for later to firstname.lastname@example.com (optionally, include a note or email of a person you want to share it with) 2. You get delivered your personalised newsletter that's just the right volume so you can read it as soon as you get it
To me personally, the main thing has been that I can forget all about the reading lists and actively trying to find time to go back to them. Just dump all the links onto Itemsy, they won't get lost and will be delivered to you in bite-sized chunks at a frequency of your choice.
We'd love for you to try it out. Signing up takes 10 seconds: https://itemsy.com/ <comment><USER2> As usual: the proper way to submit your thing is (a) in a normal submission, not a text submission, and (b) prefixing it with "Show HN", because people like Show HNs and you've got a better chance of getting noticed.</comment>


How Restaurants Got So Loud - <AUTHOR> https://www.theatlantic.com/amp/article/576715/ <comment><USER3> Locally (Stockholm, Sweden) the head of the city libraries has made a statement of battling the 'quietness norm' in libraries. Most of them now have playgrounds, one in Kista (where I happened to live at the time) won awards for best library in the world and in Sweden the same year.

It was completely unusable for what me and my fiance usually do at the library. The study rooms had the ventilation system for the building running through them with a loud dull noise making going back out to the playground- ridden small library with build int coffee-shop feel like putting on active noise supressing headphones. And the playground + café + it being placed in a mall (as opposed to across the street in the municipality building like it used to be) made reading or browsing a hard task.

My fiance who has ASD really has no public space available at all in this city anymore and we are moving to another city where we know of accessible quieter places, including parks and libraries without built-in noise generators.

./rant

Carpeting here is extremely rare. Scandinavian minimalism everywhere. The article helps me understand why the local chinese restaurang, with carpeting, tablecloth and padded chairs, is so nice to stay at.

<comment><USER4> I'm a big fan of the making-libraries-loud (loud as in happy) movement, but I'm usually bringing my kids to browse the shelves and pick books to bring home, not to actually spend time there reading them. In my experience kids find quiet libraries intimidating. (Which is at odds with my own preferences, I should add, but I prioritize the kids.)

What the libraries need is a quiet reading room, rather like the trains have added quiet carriages.

I don't know which libraries you are meaning, but it sounds like their study rooms are broken, rather than the whole concept is broken.

So, lets fix the study rooms! :)

<comment><USER5> Libraries are not playgrounds.

This idea that the primary functional purpose of an important space should be some kind of afterthought is rather depressing, but I guess is follows from the entertainment-centric culture we live in. The purpose of a library is to read, not to entertain your kids.

<comment><USER6> Kids that grow up associating libraries with fun are much more likely to want to visit them after they learn to read. Libraries are closing down because they don't have any readers.

<comment><USER7> is this a joke? the last thing most young adults like is to be surrounded by screaming children. The louder you make libraries the less people will ever want to go there.

<comment><USER8> That's why you have a children's _section_.

</comment></comment></comment></comment></comment></comment><comment><USER9> There's an ice cream and bagel place in town. In the late evening it's consistently packed with people on their laptops or reading books.

One day I noticed the music was much louder than usual, and asked the staff to turn it down. I figured it was a mistake because it was normally much quieter.

They told me this was the new company policy. To set the music uncomfortably loud to make people leave, after finishing their food or drink.

(Around the same time they also instigated a 30 minute time limit on Wifi if you bought something. Even though I was willing to keep buying, I couldn't get through a new tea every 30 minutes!)

Theory being it's more profitable to make your customers leave and make room for others, than to make a place people want to go to.

I haven't been back. Even with noise-cancelling headphones(∗), and earbuds under the headphones, it was too loud for me. And the wifi policy was really annoying.

Sadly, I've noticed ultra loud music seems to be the policy at a lot of places these days. I find Starbucks and Costa ok - but some of my friends won't go with me because they find the music there too loud as well.

(∗) I wear noise-cancellers at most places now. It probably makes me look unsocial or "hipster", but it's to protect my ears from the loud music just about everywhere insists on playing, and helps me concentrate when I'm working in a café. I enjoy talking with people if they want to.

<comment><USER10> It probably won't be the most popular opinion but I'm siding with the business for this one. I never got people who use cafe bars, delis, etc.. as personal offices. I personally can't get 'in the zone' in such a public place where:

\- I need to buy/consume something every X minutes

\- have to overhear irrelevant stupid/mundane conversations

\- people have a habit of bringing their dogs everywhere now and I'm not even going to get into how disruptive that is

\- deal with the passive-aggressiveness of the employees when you spend a couple of hours there

Whenever I work from home and I need a 'public' place in order to separate home and work, I go to the local library for which I pay taxes. It's probably the only place I can walk in, not be expected to buy anything and just enjoy the silence. Other times when the weather is nice I just go the park or on a bench on the public trail and use my phone as a hotspot.

The bagel/coffee/sandwich/donut shops are businesses where people should walk in, buy something, have a date/meeting/chat and then leave. I'm probably a weirdo but again, I never got this working from a coffee shop thing.

<comment><USER11> > I never got this working from a coffee shop thing.

This is an old tradition.

Cafes, bars, tea houses, etc have served as social hubs and placed to read or work on documents (now computers) for literally thousands of years, everywhere on the planet. There's simply a social need for a space like that, because it's a more efficient usage of space to have people work on a revolving basis in a shared space than everyone have a private space of their own or not be able to work.

It's only with the modern invention of corporate coffee shops that misvalue social fabric that we see the churn happening. (PS -- those corporate stores are wrong about the short term boost from churn improving their long term fortunes, at least from what I've heard from the big ones.)

I also find it interesting you approve of one "office-like" usage -- having a chat or meeting -- but disapprove of another -- working on documents.

<comment><USER12> Actually the thing which kills this model nowadays is the obscene cost of real estate and the rentier class. Coffee shops simply can't be profitable as workspaces any more.

You still can see coffee spots as social places in developing countries.

<comment><USER13> But more people need these work spaces as they can't work in the closet like apartments they are sharing with 2-3 other people. You are correct in saying it's because cost of real estate

</comment></comment></comment></comment></comment><comment><USER14> I work remotely and find myself working from a lot of Starbucks. The music level seems consistent no matter where you go to the point where it feels like a policy. It is just loud enough that you can't drown it out with a good set of headphones or take a conference call without annoying the rest of the group. It seems too consistent to be unintentional.

Conversely, there's a new coffee shop in Chicago that is designed from the ground up to facilitate work. It has tons of natural light, freely available whiteboards and almost no music call Limitless coffee. It is such a joy to not have to deal with the din that I go there even when I'm not working. You can almost hear yourself think.

<comment><USER15> Honest question, have you considered it might be on purpose so you are not using Starbucks as your personal office?

<comment><USER16> It seems a bit strange that they encourage laptop usage at Starbucks then if they don't want people to use it as an office. The have laptop plug in ports at special bars and tables all over the place.

<comment><USER17> Likely they want to be a reliable stop for business travelers, but they don't want you parking at a table for 8 hours everyday.

</comment></comment></comment></comment><comment><USER18> This is a pet hate of mine - glad to see it's not just me getting older. A restaurant round the corner from me has acoustic foam on the under-side of all the hard wood chairs and tables, and that helps a little. As soon as I find a bar that's decided to carpet its ceiling, it's going to be my new favourite hang (I understand why places don't want carpet on the floor. Apart from anything else, it's hard to keep clean)

<comment><USER19> The Met Office in the UK has a canteen, and at one point, they decided that it was too noisy. Their solution was to make a load of person-sized wool "clouds", and hang them from the ceiling. They look cool, and they absorb noise.

A couple of months ago, I went to a conference in San Diego, and went to a restaurant in the evening with colleagues. We could hardly hear the person next to us shouting. I left as soon as I had eaten.

<comment><USER20> With regard to the restaurant, maybe that's the goal: encourage people to settle up and leave quicker so the restaurant can serve more customers?

Or maybe I'm just getting old and cynical...

<comment><USER21> If you read blogs like "not always right" you'll find that most food service employees are _not_ on board with the customers sitting around and taking up tables. They take it as a personal attack on their income and are very rude about people who sit there.

Even if the management isn't against it, the employees are.

<comment><USER22> This is a direct consequence of how food service employees are paid in the U.S. They have an income of next to nothing and depend on tips. Tips do not play such a large part in (most? all?) of Europe and are smaller than in the U.S., so customers that stay longer mean less work without too much pay reduction. At least that is my pet theory. I only visit the U.S. every couple of years and this year I noticed that the "standard" tip crept up to 15%-20% instead of the 10%-15% that I remember. Seems that employers are paying food service workers even less of a wage than before.

</comment></comment></comment></comment></comment><comment><USER23> It's worth mentioning that the noise levels of restaurants and public spaces can also be inaccessible to those who hearing impairments and those who may be sensitive to overstimulating audio input. I can personally attest to being in busy restaurants in which my grandmother simply cannot have a full conversation with me since there's so much surrounding noise.

<comment><USER24> Yeah, my hearing's not the best and I really just cannot hear what people are saying half of the time. It's like... everybody's struggling to hear each other, but I _really_ cannot hear. I just can't do those kinds of spaces, at least not if I want to have a conversation.

<comment> saiya-jin Test your hearing on higher frequencies, those are usually the first lost when hearing degrades. Normal headphones/loudspeakers can go way higher than people can hear, so you can do basic test yourself.

I have something similar - normal conversations are OK, but in loud environment it becomes very hard. Its not great to be the only one in group who doesn't understand what others are saying. I blew my hearing probably in front rows on metal concerts.

<comment><USER24> (I realize that online hearing tests aren't reliable, but they would have false positives, not false negatives)

Frustratingly, I've done those online hearing tests which test your ability to hear human voices amidst background noise and they tell me I have no hearing loss.

However, my hearing cuts out around 9khz, which is low. Definitely not my listening equipment because my wife can hear >9khz just fine on the same gear.

</comment></comment></comment></comment><comment><USER25> I'm surprised the article doesn't mention this, but one of the reasons restaurants are so loud is that many modern restaurants pack people in like sardines to maximize revenue. Many places I have been to lately give you about a foot of space between you and the people next to you. Not only does this high density create a lot of noise, but a lot of noise actually becomes necessary to have any semblance of privacy. It's ruined a lot of dining for me. If I wanted to eat as fast as possible while not saying anything of substance to the people I'm with for fear of being overheard, I would get take out and bring it back to my workplace to consume.

</comment><comment><USER5> I'd love to read an analysis of how the world in general has gotten so loud. Even a few hundred years ago, the centers of massive cities like Paris, Rome, or Istanbul must have been significantly quieter, being that cars, horns, trains, speakers, boomboxes, industrial plants, airplanes and everything else that creates noise pollution didn't exist.

<comment><USER26> Cars must surely be the main cause. There is an interesting phenomenon known as "shifting baseline syndrome" where we tend to compare our environment to what we recall as a child and inevitably conclude that is has gotten nosier/busier/more polluted, not realizing that environment of our childhoods were already heavily degraded.

The world in which we evolved would have been almost silent, almost all of the time, apart from the sounds of birds and insects. And there would have been very little to 'look' at (no text/decor/branding, few hard surfaces, few straight lines, little color and texture variation). And of course no pollution, and very little to 'do'! So it shouldn't be a surprise to find that the sheer sensory intensity of modern living contributes towards depression and schizophrenia [1].

What is the endgame here?

[1] eg [https://www.gwern.net/docs/nature/2010-peen.pdf](https://www.gwern.net/docs/nature/2010-peen.pdf)

<comment><USER27> I agree with cars being the problem. I only thought about that when I learned that laws were drafted to force electric cars to make noise - for a brief couple of seconds I realised how different the world would be if all cars were silent... and then I got my hopes crushed.

I truly cannot picture what life would be like without car noise and light pollution.

<comment><USER28> In the UK at least, there's a good reason behind the law. Electric cars are required to make noise so that visually impaired people know a car is approaching.

<comment><USER29> They already make plenty of road noise just from the friction of the tires. If visually impaired people can't hear it, then it's likely because of all the OTHER sources of noise pollution around them.

</comment></comment></comment></comment></comment><comment><USER30> I hate loud restaurants, I hate loud cafes, I hate when I have to listen to dumb music all the f __ing time.

I am also very surprised that no one has figured out a way to offer a quieter version to customers like me. I'd pay more to have a quieter experience.

<comment><USER31> Yes nearly everywhere plays music nowadays. I think it's to drown out the feeling of existential dread of actually having to hear yourself. Don't think about it too hard people, just buy more.

<comment><USER32> > I think it's to drown out the feeling of existential dread of actually > having to hear yourself.

To a certain extent, this is actually true.

I have read more than a few stories recently where people have literally said they hate quietness, and need noise surrounding them (especially other people), so that they didn't have to be alone with their thoughts.

I find that to be depressing.

</comment></comment></comment><comment><USER33> One thing that's becoming near-impossible is finding places to drink (as in pubs or bars) without piped music. This contributes significantly to noise. It's done of course so that we shout ourselves hoarse trying to have a conversation, so we buy more drinks to lubricate our throat, but even formerly quiet pubs near me have started doing it.

<comment><USER34> In the UK my partner and I have started going to Wetherspoons pubs. They're reviled in middle-class circles as a cheap, chavvy chain that buys-out traditional pubs but they're clean, friendly and QUIET.

<comment><USER35> Ugh, they're usually not clean or friendly, the staff are also usually incompetent and slow. I have been in them a lot over the years for various reasons and my best description of weatherspoons would be a bit shit.

That they don't buy a music license is a cost saving measure.

They're ok when they first open, but after a year or two get a bit of a run down feeling.

I also walk past one of my local ones occasionally at 9:30 in the morning, there's always a few old men already drinking pints of lager in there, it's sad.

<comment><USER33> Old men drinking pints of lager in Spoons early in the morning is a national problem. It's basically treated as cheap daycare for elder relatives by some families - drop dad off with £20 first thing in the morning and pick him up at closing time.

The worst part by far is how they never sit together, they all sit individually alone.

</comment></comment></comment></comment><comment><USER36> One thing I didn't see mentioned in the article is that loud restaurants can provide diners with a sense of privacy. In a sea of noise your conversation will easily be drowned out before reaching others. Additionally, more ambient noise means less chances of being irritated by other diners.

<comment><USER37> It also means I can't understand my wife when she speaks. It is bad enough at home with my kids yelling at the top of their lungs (any ideas on how to break them of this?), when we go out it is impossible.

<comment><USER15> Use a water spray bottle - No one, including [children], like to be squirted with water, so you can try a quick spritz at your [child] if they are somewhere or doing something they shouldn't be.

<comment><USER38> Respectfully, this advice is absolutely idiotic. If your toddler pees their pants, do you rub their face in it too?

I'm not a proponent of treating children identically to adults, but children should still be afforded some aspects of human dignity. Spraying them with a water bottle like a malfeasant feline is not a polite way to treat anyone, regardless of age.

If you do this to your child, you are teaching them that this is an acceptable way to treat people that bother them. If you do not end up with an egocentric and inconsiderate child after subjecting them to this, it will be from pure luck.

<comment><USER15> Don't be respectful, it's a copy/paste for how to shut up meowing/misbehaving cats.

</comment></comment></comment></comment></comment><comment><USER39> I once was at a huge car expo, and French and German halls were adjacent to each other. For some reason, all French car makers had extremely loud music at their spaces, like if they were trying to be louder than each other. It was basically impossible to be there.

The German hall (all three major makers) had complete silence inside. So this is also a cultural thing, and a pretty strong one as this happened in Moscow, and most of the workers were Russians of course.

</comment><comment><USER40> I thought I recognised this title. Did some digging, Vox wrote an article [0] with the same title a while ago.

[0] [https://www.vox.com/2018/4/18/17168504/restaurants-noise- lev...](https://www.vox.com/2018/4/18/17168504/restaurants-noise-levels-loud- decibels)

<comment><USER41> Also that one was discussed here [https://news.ycombinator.com/item?id=17629497](https://news.ycombinator.com/item?id=17629497)

</comment></comment><comment><USER42> I read once, can't remember where, that once the sound in a room with people talking reaches a certain level, it will get increasingly loud. The reason being, if sound is below a certain level, we can hear each other while we speak at normal volumes and the other person near us will be able to understand us.

However, once volume reaches a certain background level, we have to raise our voices to be understood over the background noise which increases the overall background level which causes others to have to raise their voices over the new background level ever increasing.

<comment><USER43> Definitely consistent with my experience. One time I was in a restaurant where this sort of arms race dynamic was occurring, and at some point a guy just did one of those really loud two-fingered whistles, then in the resulting silence said something like "let's all try to keep it down in here". It worked incredibly well, and the effect was actually very persistent.

</comment></comment><comment><USER44> Restaurants in Germany I've been to are usually pretty quiet. This excludes fast food places, bars (restaurants that serve cocktails are included in that), low-end non-German places (I don't know any non-fast food low-end German places) and all 3 American(-style) restaurants I've been to.

For normal restaurants, I can actually have a conversation. But when I go to some club or bar, I need to align my ears carefully and have the speaker talk directly to me, otherwise, I'd have no chance of understanding anything.

<comment><USER45> > I don't know any non-fast food low-end German places

In Berlin there are a lot of low-end (as in cheap) Vietnamese and to a lesser extent Thai restaurants that I would call real restaurants. Tend to be pretty quiet in my experience even when they're relatively full.

</comment></comment><comment><USER46> Yes! It seems like somehow many bar/restaurant owners have no interest in making their spaces sonically comfortable. I've been in some that felt like they were designed for maximum reverb. The few ones with acoustic panels on the walls / ceilings are so nice in comparison. I really hope caring about the way your place sounds becomes standard.

</comment><comment><USER47> I strongly dislike restaurants for their extreme noise levels and rarely manage to sit in one for longer than an hour without getting agitated.

There are few restaurants I know that allow us to be seated in quiet areas and/or that are much more quiet due to their design, and those are the restaurants that I'll visit often.

</comment><comment><USER48> The author, Kate Wagner, is also the author of the McMansion Hell blog: [http://mcmansionhell.com/](http://mcmansionhell.com/) If you haven't read it before, spend a few minutes there. It's a treat.

</comment><comment><USER49> Some of the best restaurants I've been to, sonically speaking, have been in old houses that were converted into dining establishments. Because there's a limit to how much they can knock out interior walls, there are only two or three tables to a room, and the loud kitchen is necessarily in a different room from the dining. This really keeps a lid on the noise and lets you have an intelligent conversation at your table.

</comment><comment><USER50> I don't enjoy going out to eat anymore and prefer to DoorDash food precisely because it's too loud. The ironic thing is I have hearing damage so you'd think it would bother me less.

I can't think, can't hear my wife, and can't relax and enjoy my meal.

I do not understand why every small restaurant has to have high ceilings with no plenum so the A/C sounds like a jet engine. Surely I'm not the only customer annoyed by this.

</comment><comment><USER51> There's a really nice restaurant in our neighbourhood, with amazing food, and you need to reserve a couple days in advance. But whenever we go there, it's ridiculously noisy. They went for a bare stone industrial look, and that clearly doesn't dampen any sound, so you end up hearing everybody in the restaurant all at once.

But we are also to blame; when we bought our house, we removed some walls to let more light in, and everything is really tight and smooth, and therefore reflects all sound. We got bad acoustics in our home.

We've got a neighbour who works in a sound studio and advised us on some sound absorbing panels, but they don't really fit in our interior anywhere.

Please the eye and punish the ear, seems to be the interior design rule of today.

<comment><USER29> >We've got a neighbour who works in a sound studio and advised us on some sound absorbing panels, but they don't really fit in our interior

Can't you just mount them on a wall or ceiling?

Otherwise you can do lots of good by just putting down rugs or hanging woven artwork. Plants work too

<comment><USER51> We could, but we're not sure where. No matter where we put them, they would ruin the lines of the room.

My wife hates rugs. We have some plants, but that's clearly not enough.

</comment></comment></comment><comment><USER52> "The result is a loud space that renders speech unintelligible."

which works because everybody's on their phones... :-(

</comment><comment><USER53> Reminds of another problem in restaurants, the annoying music they pipe in.

[https://www.nytimes.com/2018/07/23/dining/restaurant- music-p...](https://www.nytimes.com/2018/07/23/dining/restaurant-music- playlists-ryuichi-sakamoto.html)

</comment><comment><USER54> There is a chinese place I go to specifically because it is quiet. I'm so tired of loud places to eat. It's draining on you after a while.

</comment><comment><USER55> Note that restaurants are not loud if you go to Europe (except for the UK) or Asia. I don't know why it's so loud in the US.

<comment><USER56> it's quite venue dependent. in some italian trattoria you can get people almost screaming at their table, even without a loud music, because they need to overcome the loud mouths at the nearby table to have a conversation.

</comment></comment><comment><USER57> I guess it also helps getting people to eat and leave faster, which enables restaurants to seat tables more frequently.

<comment><USER58> I think McDonalds are designed for that purpose in a way less obtrusive way - ironically enough by the decorating being loud making people not want to linger. The chairs and seats are tight and limited in manuverabilify for one in addition to the "openness". How well does it work? Well do you want to go hang out at a McDonald's?

Ironically they later tried McCafe iniative to make lingering spaces to try to compete with Starbucks after seeing how many go there for coffee - <USER2> taking the form of a nook which fails pretty badly at the task because of the previous decorating. Illustrating quite a few other negative things about the leadership.

<comment><USER59> A LOT of people hang out at McDonald's. Older folks, kids after school, etc. In some neighborhoods they function as something like community hubs (third spaces) during their non-peak times.

<comment><USER20> I noticed similar in a MAX in Upplands Vasby (Sweden, near Stockholm). People just hanging out, but similar fast-food-style high-contrast decor.

The big difference between that and the McD's (or even the Subway down the road) was the food at MAX was far better...! (so I can see why people were hanging around and ordering more)

</comment></comment></comment></comment><comment><USER60> Non-mobile link: [https://www.theatlantic.com/technology/archive/2018/11/how-r...](https://www.theatlantic.com/technology/archive/2018/11/how- restaurants-got-so-loud/576715/)

</comment><comment><USER61> Tip: get noise-cancelling/in-ear headphones, and use a white-noise app like Noisli. This combination makes most cafes tolerable as a work space.

</comment><comment> d--b > Restaurants are so loud because architects don't design them to be quiet.

Wrong. Restaurants are so loud because people are so loud.

My wife and I were at Freeman's in Downtown Manhattan the other day. It was so loud we decided to scream to see if anyone noticed. And since noone seemed to turn their heads, we screamed louder and louder, and literally no one could hear us.

This is an American thing, it doesn't happen in Paris, nor in London, nor in Japan, nor in Mexico.

<comment> compiler-guy Yes, Americans are loud. But the acoustics of the space one talks do in fact make a difference. If the surrounding space reflects a lot of sound, the restaurant will be louder than if the surrounding space absorbs a lot of sound.

And that, in fact is what the article is about.

<comment> d--b sure, yes, but architects _never_ paid attention to acoustics when designing restaurants (or maybe the very few super sound-concious).

</comment></comment></comment><comment><USER62> loudness + bright lights = eat it and get out

The shift over time appears to be a dwindling respect for people.

</comment><comment><USER63> Can't believe how Joe & The Juice are allowed to play so loud music at airports

</comment><comment><USER64> .</comment>


13 ways the NSA spies on us - <AUTHOR> http://www.vox.com/2014/7/9/5880403/13-ways-the-nsa-spies-on-us

<comment><USER2> They seem to have missed the bit where the NSA intercept delivery of network hardware and implant monitoring tools ( [http://www.theguardian.com/books/2014/may/12/glenn- greenwald...](http://www.theguardian.com/books/2014/may/12/glenn-greenwald- nsa-tampers-us-internet-routers-snowden) )

</comment><comment><USER3> We were afraid of Orwell vision, but it's the Huxley vision that really happened. And we "just don't care" ;)</comment>


Why Militaries Destroy Cities to Save Them - <AUTHOR> https://mwi.usma.edu/militaries-must-destroy-cities-save/ <comment><USER2> There were a lot of interesting factiods in this article, but it didn't come together for me into a cohesive piece.

The US has no honorable reason for being in the Middle East - if it did, it would also have invaded large chunks of Africa, probably North Korea, Saudi Arabia wouldn't be a US ally and maybe send some troops into a few well chosen South American countries for good measure. The world is horrible, and it is highly suspicious that the Middle East was the first mob in need of 'saving'.

With that observation as a premise, it is questionable that the US military is reporting their objectives honestly. I think I can keep track of who the current bad guys are, but I can't keep track of which ones were US allies or created by US adventures over the past 20 years.

If the take-away is the US military would be more effective with flamethrowers then that makes sense to me. If the argument is that they are struggling to achieve their objectives in the Middle East then I assume they are lying about what they are trying to achieve.

<comment><USER3> > _The US has no honorable reason for being in the Middle East - if it did, it > would also have invaded large chunks of Africa, probably North Korea, Saudi > Arabia wouldn 't be a US ally and maybe send some troops into a few well > chosen South American countries for good measure. The world is horrible, and > it is highly suspicious that the Middle East was the first mob in need of > 'saving'._

Not only that -- for this assumes that it's ok that the world should have some "savior" state, and even more so, a self-proclaimed one -- as opposed to sovereign countries solving their own problems.

<comment><USER4> This is a tough one. If Nazi's hadnt tried to expand their borders, but still kept killing all the jews in Germany, is that a sovereign country solving its own problems?

<comment><USER5> Well, yes it is. Ask the cambodians or the chinese.

<comment><USER6> .. or the Australians.

</comment></comment></comment></comment></comment><comment><USER7> Articles written in the US about the US military destroying cities to "save them" are always positive like this.

Compare that to American media coverage of ISIS's "Management of Savagery" (e.g. [https://www.cnn.com/2015/11/14/opinions/paris-attacks- isis-s...](https://www.cnn.com/2015/11/14/opinions/paris-attacks-isis- strategy/index.html)) in which essentially the same strategy of destruction, rebuilding, and recivilization is described as 'the end goal is to inflict significant political, economic and social consequences through "savagery"' (a complete misunderstanding of the tactic, if not a purposeful fabrication).

Simply put: this is not a strategy for "saving cities or people". That drinks directly from the propaganda line. It's merely a tactic for gaining control of a population and geography as an aspect of a larger strategy to achieve national/group interests (be they oil, geopolitical, religious...)

</comment><comment><USER8> It seems that the case being made there is that because the forces of goodness and freedom can't actually take on the forces of bad and evil whole cities must be leveled to the ground to drive out the enemy and the people... And then when the enemy is fleeing like rats it's easy pickings for the divine superior air power of the forces of goodness and freedom.

Obviously the billions to be made rebuilding cities by the banks of the forces of goodness and freedom is a definite incentive. Not to mention multi-national oil companies which will help rebuild these countries. Sure you might use chemicals like Agent Orange to defoliate entire forests so you can get at the enemy for similar reasons, but that's a small price to pay for the forces of freedom and goodness to prosper.

But what about real solutions? How about not starting wars and creating power vacuums and minding your own business. But you say war is our business. And I can't help but nod and agree.

<comment> noir-york > How about not starting wars and creating power vacuums and minding your own > business

Democracies tend not to pick fights. Unfortunately Russia (Ukraine) and China (Taiwan) are on a revanchist path.

Should Taiwan just let the PLA over for tea and a chat? What should the West do if the CPC decides that its time to "restore China to its former glory" and take back Taiwan by force?

<comment><USER9> Do you give up the US as an example of a democracy or your thesis outright to keep counting the US as democratic? Because you can't have both.

<comment> noir-york I wrote "Democracies _tend_ not to pick fights" because I knew someone would mention either the US or the UK.

Of course the US is democratic, however it is also a super power and until recently was a trusted keeper of the peace (securing blue ocean, trade routes, etc). The US is not really a valid counter example to my main point as its sui generis.

</comment></comment></comment></comment><comment><USER10> >> _When the former residents of Mosul returned, there was little left. Over forty thousand homes and sixteen neighborhoods were completely destroyed. Authorities estimate the cost to rebuild all the destroyed cities in Iraq to be over $88.2 billion, $42 billion just for the province that includes Mosul_

Tangent, but, If I was one of those Iraqis, I might be mad. Saddam was bad, but was predictably bad (shut up and you'll get your security and food rations) now Iraqis have nothing. All that money has gone in black holes and US based consultants.

</comment><comment><USER11> As other people mentioned, the only correct way to approach wars is to not have them in the first place.

But since we do have them...

The article failed to convince me that flamethrowers would be in any way less destructive than artillery and/or bombardment. As a Pole, we have had experience of our cities being systematically burned to the ground by Germans during WWII. Notable examples would be Warsaw Ghetto Uprising and Warsaw Uprising. In both cases Germans used flamethrowers to deliberately burn the place to the ground, building by building.

"Almost all Warsaw is a sea of flames. To set houses afire is the surest way to deprive the insurgents of their hiding places. When we crush the uprising, Warsaw will get what it deserves – complete annihilation." \- Hans Frank, German Governor-General

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

On the other hand tear gas seems like quite civilized way to force an enemy out of a building. I don't see why it should be banned in close range combat.

</comment><comment><USER12> Islamic State (or Viet Cong) didn't have to raze the same cities to the ground in able to 'occupy' them. Putting myself in the position of a civilian in these scenarios, I always bemused how "please leave your home, whilst we convert it and anybody left behind to rubble" as liberation like to win the hearts and minds of me and my family. My take on the article is that it's the reasonable analysis of how to do what you've been ordered to, whilst minimizing your own casualties. Fair enough. The writers job. Still, strikes me as if it were the instructions of how to "best remove a screw when you've been given a hammer" (without any consideration of why the screw needs to be removed).

<comment><USER13> I don't think it's the role of the army to consider why the screw needs to be removed, that's the job of the politicians.

<comment><USER12> That was my point, I could have made it clearer.

</comment></comment></comment><comment><USER14> I never thought I'd hear flamethrowers being advocated as the benign option, and not only that, I'd find myself nodding reluctantly!

<comment><USER10> Insurgent that came in power thanks to US taking out Saddam enter's poor Iraqi's house. US flattens the house built with sweat and tears and moves to the next target.

Maybe a flamethrower leave the walls intact or something?

<comment><USER14> It's exactly that - bombs just makes everything a rubble, streets, pipes, electricity, houses and also more collateral death.</comment></comment></comment>


Twitter May Raise Another $200 Million - <AUTHOR> http://www.sfgate.com/cgi-bin/article.cgi?f=/g/a/2010/10/23/businessinsider-twitter-may-raise-another-200-million-2010-10.DTL

<comment><USER2> God Dammit! (Sorry...but) I cannot believe that a business such as this is not able to fund itself! I own and operate a highly successful, bootstrapped, Web based business, and when I see funding that comes in in the millions I'm sometimes shaking my head.

Really.. _two hundred million_? If you haven't made it now, I can't imagine you'll make it in the future unless you drastically change your business model. _drastically_!

My position is if you can't monetize your business _soon_ after coming out of the gates, you are just living a dream.

It appears there is absolutely no real concentrated approach to monetizing Twitter's business model. This seems analogous to AT&T providing free SMS's to all customers, and then trying to figure out a way to monetize SMS's.

Thank God I don't have to even think about funding, much less _multiple rounds._

<comment><USER3> The faster the innovation the easier it will be for Twitter to block out competition in the future, not to mention keep a significant runway going for expansion. While this strategy wouldn't be good for the average successful startup, Twitter is obviously one of the top dogs in the web space right now so they have the luxury to REALLY shoot for the stars. We obviously can't tell what's in their innovation pipeline over the next two years, so it's hard to make a judgement call like that. I mean look at Facebook, they don't see any reason to become very profitable yet.

</comment></comment><comment><USER4> Looks like they're raising money because they can (good valuation), but little seems to be said about why (especially given that they still have money from the last round)

<comment><USER5> Money never hurts. Raise as much as you can, spend as little as possible.

Running out of cash is the first reason why company go out of business ( _nota bene:_ you can run out of cash and be profitable, cash != profits).

<comment><USER6> Dilution hurts.

<comment><USER7> Perhaps Twitter is forecasting a future environment where raising cash will be more difficult or under less favorable terms.

That happened at my last company. Management sold a lot of bonds with stock warrants although we didn't need it at the time. The market tanked and we would have been unable to raise additional cash. That bond money kept the company going a little longer.

</comment></comment></comment></comment><comment><USER8> Kinda minimal on the content side for this article. But the linked article [http://mediamemo.allthingsd.com/20101022/is-twitter-going- ba...](http://mediamemo.allthingsd.com/20101022/is-twitter-going-back-to-the- funding-well-for-a-giant-new-round/) does have some interesting info in it. Partly that "...the company still has the majority of its cash from the last round in the bank"

</comment><comment><USER9> I remember Fred Wilson saying that Twitter is building a war chest to prove that it's going to be around for the long haul, which is important to know if you're building something on the Twitter platform. (Of course, since then Twitter hasn't done the best job of befriending platform developers).

</comment><comment><USER10> One reason : attracting the right people

</comment><comment><USER11> I simply can't fathom how this company has so much venture money already, and is raising even more, and is over 3 years old, but still goes over capacity practically hourly.

How hard is it to staff a team of engineers to get that damn site to be stable when they have 10's of millions in the bank?

</comment><comment><USER12> \---Thinking out loud---

There has been a significant evolution in the last 3-5 years respect to building and growing a company.

Google/Facebook/Twitter/Zynga [and others] are all direct competitors.

They all vie for the same thing [time/information/attention] of their audiences. There is no difference in what energy they need from their respective audiences in this matter; thus their business execution strategy requires vast capital to maintain their current hold on the slice of audience energy in the long term.

It also plays into how they are defensible. Twitter is taking an offensive position with its platform and how it treats apps built by the community. This money will likely be used to acquire and defend itself until it irons out is business model.

Zynga has been very silo'd in how it acts (their product originality issues aside) with respect to innovation.

Facebook has an incredible committed user base that is not going anywhere anytime soon.

Thus in the next two years, we will really see a battle on useful extensions (profitable extensions) of these platforms that are all competing for the same resources of their audience (attention and time).

So these companies all are hedging against coming innovation from each other with respect to how they will garner that audience attention.

The evolution that I mentioned then, is in that the aggressive manner in which these companies raise enormous funding is all based on their understanding that they really are competition in the information state, and it doesn't matter that one seems to be in a different space or appear to currently be dependent on one another.

I think we really are on a precipice with respect to the landscape of how people will primarily consume/contribute through their preferred sites.</comment>