Dependency Injection is dangerous for your career - <AUTHOR> http://stackoverflow.com/questions/2407540/what-are-the-downsides-to-using-dependency-injection/2407614#2407614 <comment><USER2> DI is generally used to solve one of three problems that are pretty much unique to Java:

Passing a function

Decoupling initialization from memory allocation (eg. making constructors work) (This problem is also shared by C# before 3.0 but you can kind of get around it by passing a function that does the initialization, or using an anonymous constructor in 3.0 and up)

Avoiding the FactoryFactoryFactory pattern where it's all factories all the way down which is a pattern designed to get around the constructor anti- pattern. Because constructors are somehow special and not just a function that returns a specific data-type. So in C# you'll wrap a constructor in a function so it can be passed, and in Java you'll use DI. (eg. Func<String> s = () => new string())

DI is primarily a euphemism for programming in XML or another language that sucks less than Java. Primarily it's a euphemism designed to assage the egos of Java programmers who don't want to admit you can't solve problems elegantly in Java so they move their code to other languages that interact with Java to pretend Java solves more problems than it creates.

<comment><USER3> _DI is generally used to solve one of two problems that are pretty much unique to Java:_

 _Passing a function_

If you will pardon my English: What a load of bullshit.

I'm sure it can be used for that as well (i.e. in implementing the delegation pattern, due to lack of delegates and first class functions), but saying that is what it all that is good for simply makes you look inexperienced.

For any system with a reasonable complexity you will find yourself wanting to separate your code into modules. It might be that you want to thoroughly implement SOC (seperation of concerns), it might be that you want your code to be more flexible (i.e. be able to replace a file-store with a db-store later) or simply that you realize that your system is so big, that you need to be able to work with components separately to be able to properly test your modules.

 _Decoupling initialization from memory allocation_

First you criticise Java, then you bring up a point which (usually) is not a very big concern in garbage-collected languages.

Maybe you mean "controlling initialization" which is crucial for testable code, but given how your first point is completely off base I'm not really sure I would give you the benefit of the doubt.

 _DI is primarily a euphemism for programming in XML_

You can implement DI without any XML. And no, for reference, I don't do Java.

<comment><USER4> I know you can implement it with out XML, I do DI all day long with functions. I just don't call it DI, I call it passing functions. When people talk about DI they're generally talking about using a DI framework. My point is that the concept is trivial enough to implement in the language itself and doesn't require a framework to help 'manage' it.

What problems can be solved with DI that can't be solved by passing a function? Or 'controlling initialization'

Allocation issues are present in GC languages because of the overhead of GC when you could just reinitialize an existing piece of memory. (You also get to keep your L1/L2 caches hot by not initializing new memory when old will do) Allocation has non-trivial costs. This is why using the methods that allow you to pass a byte[] buffer are often more efficient than those that allocate their own buffer. And we're not even getting into the fragmentation that can occur when you're rapidly allocating memory and some of that memory is locked by the OS so it can't be collected.

How is it that DI frameworks are necessary for large code bases yet most operating systems don't have DI frameworks?

When most people writing OO code have a problem, they think 'I know I'll use a DI Framework', now they have two problems.

<comment><USER3> _What problems can be solved with DI that can't be solved by passing a function?_

Any non-trivial interface implementation will have more than one function.

Let's say I have a core library which defines lots of possible actions for my application. This application will need to work with other applications although only one at a time (in my case, trough COM), however the operations which needs to be done in these applications remain the same. Applications, not one. Operations, not one.

Obviously this calls for a common interface (in a statically typed language) so that the you can make Application-proxy classes which handles the application interaction in a similar way.

Once you have those implemented as classes you typically pass those around, for instance via the constructor when setting up your instance. Even without a DI-framework this _is_ DI.

For this case "passing a function around" would be very impractical as you would have to pass several functions around. You would have to make sure all functions were created at the same time, with closures referencing the same application COM instances etc.

In fact, passing functions around here would make your solution more complex and error-prone with little benefit what so ever.

Don't get me wrong: I love what function-passing enables. I've written tons of code where function-passing is used to simplify the solution and make it more reusable, more elegant and generally better to work with. Being able to pass functions is awesome.

That said, function passing can be considered a primitive and it's not one which solves all problems. DI is for when your problem domain is bigger, more complex and function-passing would be you were only allowed to pass primitive objects (int,string,etc) around as opposed to sending class-instances around.

They are very, very different and if you can't see that difference, you really should step back and take another look.

 _Allocation issues are present in GC languages because of the overhead of GC when you could just reinitialize an existing piece of memory_

Sure. But your argument that this was one of "two" reasons to use DI is most certainly false. I've never seen anyone advocate DI because of memory issues. This is simply not an argument.

 _How is it that DI frameworks are necessary for large code bases yet most operating systems don't have DI frameworks?_

Because you don't need a DI-framework to implement DI in your code. If you think DI needs "frameworks", you are obviously missing the core point about it: It's a way to structure your code.

<comment><USER4> Totally agree with you re: DI as a way to structure your code.

I tend to start with function passing and yeah, when it gets to 5 functions you start putting them in a class or other structure that allows you to pass them as a unit. I like using tuples to pass gobs functions because it works better with type-inference in F#

I've just never heard it referred to as DI except in OO (Java) circles.

</comment></comment></comment></comment></comment><comment><USER5> Hilarious. :) Some of the other answers are worth reading, too. Specifically, there is a really good one a little lower that is worth reading:

[http://stackoverflow.com/questions/2407540/what-are-the- down...](http://stackoverflow.com/questions/2407540/what-are-the-downsides-to- using-dependency-injection/2408237#2408237)

> The same basic problem you often get with object oriented programming, style > rules and just about everything else. It's possible - very common, in fact - > to do too much abstraction, and to add too much indirection, and to > generally apply good techniques excessively and in the wrong > places...[answer continues]

</comment><comment><USER6> True. But what's even worse for your career is when you learn programming languages that don't need DI frameworks because that kind of clean separation is baked in (like Python) but then most jobs out there are Java :-(

<comment><USER7> I'll admit I've never done Java programming, but (so far as I understand the term) dependency injection is something I use a lot when writing Python code. For example, if I'm writing a method to transfer a file over a particular kind of connection, I'll make the connection object a parameter rather than have the method set up the connection itself. If I'm writing a class, I might make the connection object a parameter to the constructor, or just construct it in a helper method that I can override for testing purposes.

Am I missing some magic goo that makes Python not require DI, or do I just not understand what Java programmers mean by DI?

<comment><USER8> > I'll make the connection object a parameter rather than have the method set > up the connection itself

Parameter (Dependency) Injection.

> I might make the connection object a parameter to the constructor

Constructor (Dependency) Injection.

> construct it in a helper method that I can override for testing purposes.

Not DI.

<http://martinfowler.com/articles/injection.html>

Edit:

For languages such as Java and C#, wiring up these objects is quite a pain.

For duck typed languages such as Python and Ruby, it isn't that big of a pain. So we just do it. Just because you don't have an IoC framework doesn't mean you aren't practicing DI :)

<comment><USER9> Relevant, I guess: <http://onestepback.org/articles/depinj/index.html>

</comment></comment></comment></comment><comment><USER10> The following is a comment from Frank Atanassow on a LtU discussion about the Curry Howard correspondence:

blah blah blah dependency injection blah blah blah (This is a bit off-topic, but it came to mind, so what the hell.) You are correct in your observations that given most programming languages (even those such as Haskell), it is difficult to see exactly how Curry-Howard is useful. I recently stumbled across someone mentioning something called "dependency injection". I didn't know what it was, so I googled (I guess this is lowercase nowadays!) it and read Martin Fowler's article on it. It is a bit on the long side, and I kept waiting for the punch-line; you know, the point at which the author hits you with the insight which justifies the preceding verbosity and the hi-tech- sounding name ("dependency injection" — I can't help but think of "fuel injection", and gleaming motor engine showcases), but it seemed indefinitely postponed. And in the end, it turned out that "dependency injection" just means "abstraction" specifically by parametrization, by update and by what I think amounts to type abstraction plus update. (Apparently these are called — I kid you not — type 3 IoC, type 2 IoC and type 1 IoC...!) To me this all seemed rather obvious and it got me thinking about why it isn't obvious to the author or his readership. In Haskell, if I am given some type B which I need to produce somehow, and I realize that the B-values I need depend on some other values of type A, the first thing I do is write down "f :: A -> B". Then I write down "f a =", and then I start writing stuff after the equals sign until I have what I need. I do that because I know once I have the type that if there is an inhabitant of the type "A -> B" it can be expressed as "\a -> b" for some b, so the "f a =" part is always part of my solution and I will never have to change that unless I want to. So once I've written that down I feel one step closer to my solution. I know that for three reasons. First, because of my experience as a functional programmer. Second, because it is part of the universal property of exponentials ("factors uniquely"), that is, of function types. And third, because by the Curry-Howard correspondence with natural deduction, I can start any proof of A which depends on B by assuming A, that is, adding it as a hypothesis. So, why is it so obscure in Java? I think part of the reason is that in Java you have update, so there are complications and additional solutions. But part of the reason is also that it largely lacks structural typing, and that makes it hard to see that a class('s interface) is a product of exponentials. (With nominal typing, you tend to think of a class by its name, rather than its structure.) You could also blame the syntax of method signatures, which obscure the relationship with exponentials and implication. But is the syntax the cause or just a symptom? (You know what I think about syntax...) If CH could be readily applied to Java, perhaps Java's designers would have chosen a more suggestive syntax. But even if they had decided to stick anyway with C-style syntax, the idea of using abstraction to handle dependencies would have been more obvious.

More: <http://lambda-the-ultimate.org/node/1532>

</comment><comment><USER11> Thats probably one of the funniest stack overflow threads I have read.

</comment><comment><USER12> Dependency injection separates discovery from dependency. It's neither good nor bad but can be useful as well as abused beyond ad nauseum. End of story.

</comment><comment> brown9-2 How can you tell how closely coupled a codebase is when you're in the interview process and not yet an employee?

This is the real challenge. I don't think many companies, outside of perhaps small startups, will let you view their code - at your own perusal so you know they aren't just showing off the good stuff - to candidates.

</comment><comment><USER13> well known fact, game developers use DI like it was 2nd nature to them not matter what computer language they use..

..Gaming is Life</comment>


Google Street View logs WiFi networks, MAC addresses - <AUTHOR> http://www.theregister.co.uk/2010/04/22/google_streetview_logs_wlans/

<comment><USER2> I'm guessing they do this to provide location on phones without GPS, or to improve it. Apple uses this as well on the iPhone (I think) and the iPod Touch. I think they use this company: <http://www.skyhookwireless.com/>

<comment><USER3> That's interesting, but it perplexes me as well. I have an iPad/Wifi, and I believe that means it has no GPS. However, Google Maps is able to pinpoint my location almost perfectly, despite the closest mapped street view being more than a mile away on any side.

I suppose it's possible that the mapped my street but didn't publish it for some reason, but that'd be odd.</comment></comment>


Meltdown and Spectre Patches Bricking Ubuntu 16.04 Computers - <AUTHOR> https://news.slashdot.org/story/18/01/10/1634215/meltdown-and-spectre-patches-bricking-ubuntu-1604-computers <comment><USER2> "Bricked" is much too strong a word. Just pick the older kernel in the boot menu and you're fine. This is inaccurate blogspam for [https://www.bleepingcomputer.com/news/software/meltdown- and-...](https://www.bleepingcomputer.com/news/software/meltdown-and-spectre- patches-causing-boot-issues-for-ubuntu-16-04-computers/) which itself is a summary of several other threads.</comment>


The data behind the search for MH370 - <AUTHOR> https://geoscience-au.maps.arcgis.com/apps/Cascade/index.html?appid=038a72439bfa4d28b3dde81cc6ff3214 <comment><USER2> I'm going to have to disagree with many of the other comments and say that this is a very well designed website. In my opinion, it's the optimal way to present this data in an interactive format short of a presentation from someone in the same room. Large amounts of geographic data that covers as large an area as the search for MH370 did, is not easy to present.

Very cool.

<comment><USER3> I've I said earlier I'm primarily a webdesigner and not against animations etc But this is poorly executed.

Here's (almost) the same concept, with a far better UX :

[https://tympanus.net/codrops/2015/12/16/animated-map-path- fo...](https://tympanus.net/codrops/2015/12/16/animated-map-path-for- interactive-storytelling/)

As a user here's my main gripes when comparing the two UIs :

\- The map in tympanus is in svg. Lighter, see how the interaction is always in sync with the user interaction ? Why using tilze at maps if you can't zoom ? You're lazy loading but I'm not lazy reading.

\- The text flows naturally : you need to choose either you build a powerpoint with bullets either you write more elaborate content. This UI is more appropriate to bullets but is displayed with a powerpoint type UI because of …

\- Scroll hijacking : everyone not working in a webagency hates it. Even your boss who tells you that (s)he finds it cool hates it when they need to use it.

…And the stock video of water isn't bringing much (but that's another debate)

The only good piece of news is that the UI seems to be open-source (though bound to external services) so if you want to punish your users or improve the whole thing : [https://github.com/Esri/story-map- cascade](https://github.com/Esri/story-map-cascade)

But as I've also said earlier people died in this crash and families are still looking for explanations and I don't find this way to narrate the events appropriate. Maybe I'm old school and should just say to my relatives : _If I die in a tragic fashion please don't let any webagency and government agency do parrallaxes on the circumstances of my death and its side effects_

<comment><USER2> I don't have a background in webdesign so I cannot speak to the inefficiencies of how this is put together. I do, however, have a background in GIS/Geography and from that perspective I still maintain that this is a great way to present the timeline of events and information gathered. It's an especially great way to present the data for a layperson who

A) has a passing interest in geographic/oceanic/general data topics and

B) doesn't really care how efficient the UI is because they don't live in that world on a daily basis

That said, I also have the opinion that not all websites HAVE to be optimized for mobile viewing. There are instances, such as this one, where the data/information being communicated does not lend itself to mobile and therefore should not be compromised.

To your last point, I think I understand the direction you're coming from, but I have to disagree with the final argument you make. Just because a lot of people died in a tragic accident doesn't mean that we cannot celebrate and utilize information that is a direct result of that tragedy.

The designers of the linked site are not celebrating the deaths of these people, they're sharing and marveling in the data that was produced as an unexpected secondary and tertiary result of those deaths. One does not preclude the other and, I would argue, it would be a disservice those who died to NOT share and learn from the data produced.

</comment></comment></comment><comment><USER4> For some software the term "bloatware" was coined, which had to many features which do not add any useful functionalites, but made working with the software overly complicated.

Do we have a similiar term for overdesigned websites which makes reading them feel like doing hard work?

<comment><USER5> I'm generally not against this particular sort of design, mainly because it doesn't pretend to be a "normal" webpage. It's a very specific sort of guided presentation.

</comment></comment><comment><USER6> This is the most annoying page design/behaviour I have encountered in the last 30 days. I am very curious, but I just can't.

<comment><USER7> I don't understand this at all. You scroll, and new text appears and the map in the background simply shifts to different points and shows some different data. This seems exceedingly simple to display all the data they wanted.

<comment><USER8> I think the point is that the page designers want to show me a movie, while I want to read an article.

It's annoying, because the fate of this plane is far more important to me than tedious details of web design. But I find the page incomrpehensible and will have to learn the facts somewhere else.

<comment><USER9> literally the only mode of interaction to consume the content is "scrolling down with your mouse" and this is apparently beyond your capabilities of comprehension?

</comment></comment></comment></comment><comment><USER10> That's really neat. Jump down to the "Phase Two Data", they found some really cool stuff down there. Whale bones and ships and cable.

<comment><USER11> I would love to, but the site is basically un-navigable.

</comment></comment><comment><USER12> For those wondering why the plane wasn't found if we know about the 7th arc, take a look at the Air France 447[1].

There were much more information about it, the route was consistent with what was planned, even floating wreckage and bodies were recovered from the sea, and yet it took 2 years to find things on the ocean floor.

[1] [https://en.wikipedia.org/wiki/Air_France_Flight_447#Accident](https://en.wikipedia.org/wiki/Air_France_Flight_447#Accident)

</comment><comment><USER13> I am not in this industry so I am curious, what has been implemented if anything to prevent losing another plane is such a manner? have there been any general changes to requirements for airliners or crews?

</comment><comment><USER14> I'm of two minds on the use of scrolling as a method of interaction with the page. The term "scrolljacking" has been coined as the negative way to describe this particular style where the page itself is designed to render based on the scroll position. At the same time, I'm completely behind trying to find new and more effective ways of interacting with content.

To me, this page is mostly effective, but I'm on a Macbook Pro, which is probably the best-case viewing experience, but I can't imagine this working well on older mobile devices.

<comment><USER9> There's a lot of comments claiming the site is "un-navigable" which I find to be curious given that the only thing one has to do is _scroll down_

And this is coming from a person who is not into the whole "scrolljack" thing to bring things into and out of view. Its implementation here is a bit hokey, but that's the state of web UI these days. I was able to see all the information, I can say that at least.

<comment><USER15> Doesn't work for me on mobile - content is clipped on the screen edge

<comment><USER9> That is a valid criticism, then.

</comment></comment></comment></comment><comment><USER16> This was amazing! It's a bit sad that scientists had to piggyback on search missions to get high quality data but I am glad they made the best of the situation; a silver lining of sorts.

</comment><comment><USER17> I thought that was going to be about Bayesian methods:

[http://www.springer.com/de/book/9789811003783](http://www.springer.com/de/book/9789811003783)

</comment><comment><USER18> "The available data indicates the aircraft entered the sea close to a long, narrow arc in the southern Indian Ocean, the 7th Arc."

"indicates". If it did enter the sea along this arc, wouldn't they have found it? Perhaps the assumption is wrong? Where is the working showing the calculation of this arc? Where is the peer review and discussion of this work calculating this arc? As far as I know it has never been released (correct me if I'm wrong) and the arc has all the hallmarks of a wild goose chase.

<comment><USER19> > If it did enter the sea along this arc, wouldn't they have found it?

Perhaps you're unclear on how large the ocean is, how deep the sea floor is, how rugged the sea floor is, and how little we know about it... even with all of the scanning done.

It's entirely within the realm of possibility that MH370 fell and was covered by a landslide, or fell into a crevasse, or one of many other things.

It's not like the sea floor is a large flat plain with a shiny metal object sitting on top.

<comment><USER18> You should always question assumptions. Especially when millions of dollars are being spent searching. Do you have the data, the calculation of this arc, and the review of this method or not?

Do you think its strange that all the debris has washed up on the opposite side of the Indian ocean to this arc?

<comment><USER19> > Do you have the data, the calculation of this arc, and the review of this > method or not

I don't, and neither do you. But appeals to ignorance are a well-known logical fallacy.

My point (which you missed), is that it is entirely reasonable to think that the search is difficult, with a small chance of success. You don't argue with my points, because you can't. They're all 100% true, and you know it.

Instead, you play the conspiracy thinking game of pushing false doubts into the narrative.

> Do you think its strange that all the debris has washed up on the opposite > side of the Indian ocean to this arc?

i.e. you're entirely unaware as to how oceans work.

This is _normal_ for oceans.

So you deny reality, and instead pretend to be skeptical by raising irrelevant details.

No, you're not smarter than everyone else. No, there is no conspiracy to hide the evidence.</comment></comment></comment></comment>


Ask HN: If you had to build a clone of Facebook, what tools would you use? Why? - <AUTHOR> If you had to build the current version of Facebook from scratch, which technologies you would use and why?
Let's assume you had to build an application of complexity comparable to the current version of Facebook and can take all the time you need.
What technologies would you use for each part of the application? Why these? Which languages would you build it in? Any existing libraries or would you write everything from scratch? Why? <comment><USER2> I like your question... it's a shame it hasn't garnered more response.

Fundamentally, by removing the time consideration the question becomes very unrealistic, but I'll bite anyway.

First, you'd have to establish some purpose beyond cloning. Cloning to free the world of a centralized facebook and the surveillance burden that goes with it? Let's run with that.

Design-wise, we're looking for adoption. The easiest identifiers to use are email addresses and phone numbers, though neither are particularly secure we can play on the fact that many people have both to offer two factor authentication of public keys while supporting the only-has-one use case with snail mail or alternate communications path (eg. in person key digest validation) recommendations. OK, so now we've got half a basis for some decentralized exchange that supports mass adoption.

Next up is sell. How to make this more interesting to the average punter than Facebook, while maintaining global appeal and not having to take on the burden of content creation ourselves? Perhaps with strong support for the content classes people are time and time again proven to care about: drugs, porn and p2p media. This doesn't necessarily have to break any laws, but it probably will in some self-labelling-as-democracy-exporter draconian regime, so we have to include this factor in the design. Luckily, decentralization will be a big help.

Finally, we would want to incentivize people to market outside of the network to pull in new friends. This could be done by developing some unique physical use cases like phone-to-phone ad-hoc wifi based sharing and public use local storage drop wifi boxes around major cities.

The total hardware weight of such a clone would not be as big as Facebook, simply because of its distributed nature. In fact, it would be far smaller. The search would be different, and would only affect people who chose to register in a central registry. This could even be developed by a third party (or better: multiple third parties, seeded by giving away a proof of concept open source codebase) in order to enhance diversity and thereby strengthen the infrastructure against authoritarian takedowns.

Well, just some ideas. Less tech-stack oriented because connecting to fewer peers would probably remove most of the scaling problems. I think that mobile platforms generally demand a certain tech stack, and of course web stacks have been done to death here...

</comment><comment><USER3> A lot of the tools Facebook uses now are out of necessity because of the massive number of active users. Do I have to build something to support billions of users from day one? Or do I just have to support all of the functionality but just a handful of users? The two scenarios would require vastly different approaches.

<comment><USER4> Well said.

If I had to scale for tens of millions of users, 80% of which log in at least once per day, I would be focusing my effort on the most EFFICIENT technologies (watts per request). If there's capital, I'd look at what Facebook has done already and give it my own twist. I'd purchase the property and hardware up front and get to work building the platform, forking existing code where needed.

If we're talking about 10,000 users, then I'm going to pick a technology that gives me a lot more flexibility. In fact, I would probably just extend an off- the-shelf PHP/MySQL package with an nginx EC2 instance to save myself the effort of building from scratch, because I wouldn't have to.</comment></comment>


Hospital Bill for Ebola Grows at $1,000 an Hour in Dallas Case - <AUTHOR> http://www.chicagotribune.com/news/sns-wp-blm-news-bc-ebola-cost07-20141007-story.html

<comment><USER2> I spent the night in the hospital a few months ago for observation (there wasn't actually anything wrong with me other than a case of food poisoning) and my bill worked out to well over $1,000/hr.</comment>


RIP: Yahoo Design closed down - <AUTHOR> http://infosthetics.com/archives/2008/02/rip_yahoo_design_closed_down.html

<comment><AUTHOR> _"... an anonymous source just informed me the entire Yahoo! Design Innovation team ..."_

Expect more as public companies & VC backed start to stop the experimentation and look to save money.

<comment><USER2> I wouldn't read too much into it. My experience of the corporate world so far suggests that any group whose name explicitly mentions innovation doesn't actually do anything.</comment></comment>


Quality is Dead #2: The Quality Creation Myth - <AUTHOR> http://www.satisfice.com/blog/archives/251

<comment><AUTHOR> I particularly like the shifting of focus onto the notion of relationships.

If I may, I'd also point out that qualities such as "quality", the values embodied by practices, and the evolving nature of relationships over time all come down to intent. Amongst other things, without a clean connection to intent those other things devolve into static, abstract notionals devoid of life.</comment>


Climate change and the 75% problem - <AUTHOR> https://www.gatesnotes.com/Energy/My-plan-for-fighting-climate-change <comment><USER2> In reality, does anyone see anything other than a bad ending to all of this? I wish I could start a poll here, but does anyone really think there's still time? Really?

Political-economic forces, they're just not going to cave until it's too late. 10 years? Unless the economy fumbles soon Trump will have the next six of those. So, four left. Four damn years to change everything. I think a lot of the focus goes on reducing energy emissions because it's easy political blame gaming. But it's too late and it's not going to work. We're going to destroy the Earth while bickering about it.

Assume consumption will continue to rise, assume that oil will continue to own politicians. People will continue to consume, expect to maintain their standard of living off cheap goods shipped from China, heating for ever-larger homes, buying from companies with huge carbon footprints, and blaming others.

I think the reasonable thing to do is invest more in the cleanup scenario. But that doesn't score political gotcha points and it's not profitable /right now/, so that probably won't happen either.

<comment><USER3> Agreed. I wouldn't be so skeptical about the effects[0] if it wasn't because those researchers weren't being paid by big government, while recommending new taxes[1].

[0] it seems unlikely that humans have no influence on the environment. It equally seems improbable that we can predict sea levels half a century from now with any accuracy.

[1] before anybody puts words in my mouth, I reserve the same skepticsm for any other report coming out of the mouth of an institution which advocates it should have more funding...

<comment><USER4> [0] sounds like you're saying "my gut says its improbable that we can detect sea level rise 50 years ahead". Why does it seem that way? These scientists are using evidence for these estimates so they are not pulled out of the air.

[1] Are you going to remain skeptical without looking into it, seems more like you're dismissive rather than skeptical but maybe I am reading this wrong.? How could any researcher ever make the claim that something is a big issue and needs to be investigated further and fixed without triggering this skeptical reflex?

<comment><USER5> They're repeating the quasi-conspiracy theory that the reason climate scientists raise the issue of climate change is greed - they want more research money, so they can make more fake research, so they can get more money, because science is such a lucrative profession... sigh.

There's nothing more prestigious in science than being the one who proves the conventional wisdom of the scientific community is wrong. That's how you get your name in the history books. But this is lost on those who think of everything in terms of money.

<comment><USER6> "They" never look at the reverse situation though. The money to be made from government grants into scientific research pales in comparison to the profits made by the fossil fuel industry. An industry that a lot of the worlds most powerful people, corporations, and countries are heavily invested in.

</comment></comment></comment></comment></comment><comment><USER7> My suggestion is that every product should include environmental fact sheet, so that consumers could make better decisions. Every product should be tracked through the supply chain and every process including energy production and transportation would be included in the final product fact sheet.

If consumers would buy more environmentally friendly products, markets would direct every producer and supplier to be more environmentally friendly, without any other government intervention or sanctions. Just make it mandatory to be transparent and to include this information in every product. Put warning labels on products that have missing information.

<comment><USER8> Not just that. Companies should have to pay for their emissions. Like how we have to pay local government to take our garbage, companies should have to pay to pollute the planet. It's insane that Starbucks et al can produce as much waste as they want without any requirement to pay for the damage.

<comment><USER9> Good luck getting the oil industry to pay for their externalities

<comment><USER10> The challenge isn't the oil industry, it's regular people. A carbon tax would just make gas more expensive and people don't want that. Keep in mind that in order to be effective we're not talking about "people just pay more," we're talking about "the price is so much higher, people buy a lot less gas."

<comment><USER8> I would rephrase it as "the price is so much higher, suppliers are forced to develop alternative products to satisfy demand". Energy suppliers have been given massive subsidies for decades because they don't have to factor in the negative externalities. A carbon cost should be a part of the balance sheet in the way raw materials are. Given that, suppliers will have to innovate their way to bring price back down to equilibrium, or go out of business.

<comment><USER11> Option one: build solar panels. Option two: poor people no longer drive, and their standard of living falls. Capitalism, if given a pricing signal to "reduce emissions," will pick a completely merciless combination of the two.

<comment><USER12> Well, good. Our collective standard of living needs to fall in order for the planet to survive.

If you don't want it to hit poor people specifically you can subsidize the tax for them.

<comment><USER11> Well, there's always option three: keep things going and pray for a technical miracle. That's the default choice and probably the road we're on.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER13> > Cattle are a huge source of methane; in fact, if they were a country, they > would be the third-largest emitter of greenhouse gases!

Imagine how opposed to a carbon tax the beef industry would be.

<comment><USER5> Legit question, though - are cattle actually carbon-neutral? I mean, where does their carbon come from? Eating plants, that were grown specifically to feed the cattle.

Which gets to another question, since I'm not bothering to research before asking... how much worse is methane than CO2 as a greenhouse gas, per carbon atom involved? Because that's basically what cows do. They convert atmospheric CO2 (via plants) into atmospheric methane (via farts).

<comment><USER14> About 30x worse: [https://blogs.princeton.edu/research/2014/03/26/a-more- poten...](https://blogs.princeton.edu/research/2014/03/26/a-more-potent- greenhouse-gas-than-co2-methane-emissions-will-leap-as-earth-warms-nature/)

As far as carbon neutrality goes, you're drawing a conclusion about the value based only on the first derivative. If you hold livestock numbers constant (they're increasing, alas, but let's not worry about that yet) then there will be a rough equilibrium. However, the gas is in the atmosphere for some time until it gets fixed back into the soil, and continues to have a warming effect in the meantime.

Any carbon tax has to punish emissions. Net zero emissions isn't enough anymore.

<comment><USER5> Actually, they're not increasing. I looked it up. The number of cattle in the world has held steady (about one billion) since the 1970s. Given that the population has from about 4B to 7B in that time, and incomes have increased substantially as well, it suggests that beef consumption is level (which means per-capita consumption is shrinking).

And given a 9 year lifespan for methane, it's probably been stable for a long time.

Now, if you're taking the position that "net zero emissions isn't enough" as justification for a carbon tax, you need to focus on the goal. Is it carbon reduction, or puritanical punishment? Need to ask that, because there's a lot of people who want the latter but claim the former.

If the goal is carbon reduction, then a carbon tax is only a means to an end, and we have to ask if it will be effective. Can we carbon-tax beef enough to see a major reduction in its consumption, leading to a major reduction in the number of cattle? (Oh, and you'd better carbon-tax dairy while you're at it.) Does this seem like a reasonable conclusion? And if people aren't eating beef, what else will they eat instead, and what are its carbon costs?

I'm not rejecting the position, but I'm trying to think it through.

<comment><USER15> > Actually, they're not increasing. I looked it up

> And given a 9 year lifespan for methane

Can you please provide your sources? If this is true, it's not _that_ worrying...

<comment><USER5> Someone else referenced wikipedia on methane in the thread somewhere. Surprised me, too.

For cattle, got the numbers from the industry, which doesn't seem to have a particular agenda in this link... [http://beef2live.com/story-world-cattle- inventory-year-0-111...](http://beef2live.com/story-world-cattle-inventory- year-0-111523)

</comment></comment></comment></comment></comment></comment><comment><USER16> It's not clear to me that these issues don't simply boil down to energy problems.

The limiting case: an endless source of free energy. Using this, it seems obvious that any carbon-emitting procedure can be mitigated, by capturing the emissions and storing them.

The question is whether concrete, cement and so on are viable building materials under this model; whether meat is viable; and so on.

Essentially, these are uncaptured externalities. If you tax the emissions at a higher rate than it costs to capture them, they will be captured, the question is whether demand decreases as a result of increases in cost.

<comment><USER17> Exactly. Gates is being too cute by half here.

He starts by claiming that only 25% of greenhouse gases come from making electricity; a fact that is technically true but very misleading. He then goes on to name the contributors of the other 75% and almost all of them (with the exception of methane from farming) produce carbon through using energy in the form of fossil fuels.

Solving the energy production problem solves the vast majority of these other problems.

</comment></comment><comment><USER18> This is interesting for cattles, think I saw it here a few weeks back. [https://www.independent.co.uk/environment/cows-seaweed- metha...](https://www.independent.co.uk/environment/cows-seaweed-methane- burps-cut-greenhouse-gas-emissions-climate-change-research-a8368911.html)

<comment><USER19> I wonder how long it would take to scale up production of seaweed/algae if that turns out to be effective.

<comment><USER20> The linked article indicates that only a small amount of seaweed needs to be added to their diet to be effective and that seaweed is easy to grow, so it doesn't sound like it would take long to scale.

<comment><USER21> Not that it would eliminate the gains, but cows and seaweed are generally far apart geographically. Therefore you would need to ship the seaweed product to where the cows are.

</comment></comment></comment></comment><comment><USER22> Remote work tackles so much of this: Less cars on the road. Less cars being created. Smaller roads. Less gas/electric on transport. Fewer offices/smaller. Significantly less stress. Less stress eating. Fewer cows consumed.

<comment><USER23> Not only remote work but also just working less in general. I don't see why we as a sosciety can't go to working 4 or even 3 days a week and still maintain the same standards of living. Or even improving those standards.

<comment><USER24> Because wages for most people are tied to labor and time, and when you decrease the amount of time worked, you produce less labor. Convincing people with money to pay you more for less work is futile.

Why the hell would I pay more money to a contractor to work on my home for half the time? I don't understand this thinking. Believe it or not, there are people in the world that want to get shit done.

<comment><USER22> Paying per hour is a great way to increase hours on something. If your really into the free market you should understand the incentive structure. Many workers have different intensities of working.

</comment></comment></comment></comment><comment><USER23> I am wary of all this talk about breakthroughs. It diverts attention from the hard choices we have to make. Namely change diet, drastically reduce consumption, emphasise circular economy etc. Those breakthroughs may never come.

</comment><comment><USER25> There's something about the way most people talk about climate change that strikes me as really off. They talk about consumption and growth being the root cause of the problem. They also have a way of talking about wealth that makes it sounds like it means nothing.

There's something wrong with that world view. I'm unconvinced that the solutions to climate change are going to revolve around lack of growth and curtailing consumption. It seems more likely that they will come from applying wealth to the problem. Growth and wealth are tightly linked. Saying that we'll solve this problem by curtailing growth seems to me that we'll solve it without wealth - I don't think that will happen.

</comment><comment> Anth-ny Investing in alternatives is laudable but Bill Gates should support the only credible path to avert an unlivable earth: a worldwide progressive ban on fossil fuels and plastics made with fossil fuels. Then invest billions in alternatives.

</comment><comment><USER26> Saw this last night: [http://www.anotesark.com/](http://www.anotesark.com/) Had never heard of Kiribati (pronounced roughly Kiribahs). That country could be the canary in the coal mine for the rest of us. Glad there are people such as Gates who are not waiting around.

</comment><comment><USER27> Wow took the quiz at the end. Switching to plant base diet for 1 yr is only half as effective as not doing a transatlantic flight. In the future I think we'll agree to not take so many self indulgent vacations to other countries far away or have some sort of global 'travel credit' system to keep track

<comment><USER28> vegans will be the only people allowed to travel :D

</comment></comment><comment><USER29> Bill's putting his money where his mouth is with investments in Beyond Meat and Memphis Meats (meat alternative startups).

</comment><comment><USER30> There are cow backpacks. We can harness the energy from cows and we have an alternative clean energy source. We'd be tackling an electricity problem and the cattle issue.

<comment><USER30> I'm not making this up: [https://www.fastcompany.com/3028933/these-backpacks- for-cows...](https://www.fastcompany.com/3028933/these-backpacks-for-cows- collect-their-fart-gas-and-store-it-for-energy)

</comment></comment><comment><USER31> We would make a progress on some environmental challenges by simply taxing externalities and letting the market do it's work.

Climate change - carbon tax.

Trash Pollution - packaging and recycling tax.

</comment><comment><USER32> Bill Gates lives in a house that is SIXTY SIX THOUSAND SQUARE FEET.

Bill Gates flies in a private jet.

Bill Gates has a lot of work to do just to get his carbon footprint in line with the average multimillionaire let alone the national average.

Bill Gates should realize that the fundamental challenge is getting people to consume less than they can.

Maybe his net blog post should detail his personal impact relative to the average citizen and what he is doing to make his impact below average.

We don't need more blog posts. We already know everything we need to know to plot a course of action.

<comment><USER33> Isn't it fantastic to be lectured from up on high by the hypocritical elite? Us dirty, common, poor people are the problem, and people like Gates could be assured of living in utopia for eternity if only we'd listen to their "Do as I say, not as I do" platitudes.

EDIT: His house is much larger than his and Melinda's _needs_. His blog easily uses 20x more energy than it _needs_ (uBlock origin counts 19 attempted connections). He doesn't _need_ to fly anywhere for conferences/meetings with the power of the Internet and teleconferencing. Is he a vegetarian/vegan again, or was that just something he tried in his 20s? He doesn't _need_ to eat meat. He wants everyone else to sacrifice while he himself isn't willing to give up his lavish lifestyle. It's gross, hypocritical, and no amount of cashy-money donations make up for him not following his own preachings.

<comment><USER34> Right. I'm not saying climate change isn't happening. But it's clear that most celebrities don't act as if they believe it is themselves. No compromises in their own lifestyles. My own carbon footprint probably isn't 1% of 1% of 1% of the average super rich jetsetter like Gates or Bono or Al Gore. Leaders lead by example.

</comment></comment></comment><comment><USER34> _I'll be in Brussels this week_

A 10,000 mile trip to save the environment, hmm

<comment><USER35> Travel, commerce, civilization isn't going to stop because of global warming. That's childish hyperbole to suggest one person traveling on a plane or train that's going to be going anyway somehow undermines the goal of getting the whole world to address this issue in a meaningful and serious way.

<comment><USER10> But addressing the issue in a meaningful and serious way will probably require people to travel A LOT less by air.

</comment></comment></comment><comment><USER36> When did "global warming" become "climate change"? Did the boys in marketing decide its time to update.

<comment><USER8> Even though your question has been deservedly downvoted, it still deserves an answer. Global warming implies that our effect on the planet is restricted to an upward trend in global temperature. Although that's the principal result of human emissions, the issue manifests itself in many other ways, including but limited to: sea level rise, extreme weather events, substantial changes and extinction of flora and fauna, loss of coral reefs, loss of ice sheets, etc.

Climate change includes the broad ecological changes that stem from a warming planet, rather than a narrow focus on the warming itself.

<comment><USER37> 'effect' on the planet.

<comment><USER8> 4 hours of sleep doesn't do anyone any good.</comment></comment></comment></comment>


How We Got Rejected from YC and Moved into the SpeakerCave - <AUTHOR> http://www.metamorphblog.com/2010/07/the-speakercave.html

<comment><USER2> I didn't see a link in the post to <http://speakertext.com/>. I checked it out, and it looks like a really useful app! Best of luck to these guys!

<comment><USER3> At first I was thinking that youtube's recent sub title mod must of been a bit of a hit to their idea, but then I saw the functionality of quoting and sharing hyper linked quotes.

That's quite a cool feature and could be handy for stopping 'mis quoting' / 'quoting out of context' being used in many media's.

<comment><USER2> And it would eliminate the need to say "skip ahead to 4:25 to hear where he talks about such and such"

</comment></comment></comment><comment><USER4> _With my alumni discount, I had setup a booth at the Columbia Engineering Job Fair, looking for fresh talent._

Good idea. Has anyone else here ever recruited for a startup or a small company at a university job fair? How did it go?

<comment><USER5> I helped recruit for a 20-person startup at my alma mater in the fall, and found:

\- if your brand isn't immediately recognizable as a tech startup, signs like "Seeking CS / Math majors" are tacky but help immensely with capturing the interest of students who are browsing and want to know they won't be sucked into talking to a company totally outside their interests

\- we spent much more time pitching our startup and answering questions about "what we do" than I imagine the average recruiter at a larger company has to do

\- because the conversation almost always starts with them asking about us, if you're interested, you have to remember to turn the conversation on them to find out more, instead of just being left with a resume

\- (more general) knowing which classes are good / hard / produce interesting projects helps a lot in evaluating what a particular candidate has done, and whether it matches with your company's needs.

</comment></comment><comment><USER6> >"Your team hasn't know each other long enough," he told us––or something like that. But they'd be happy to talk to us again, later, in the fall, assuming we hadn't self-destructed already.

Oh man had that been me, I would properly double my efforts to get the startup to be the next facebook, just to mail PG and tell him he missed the boat...

<comment><USER7> Even though I was also rejected by YC without an interview - Not "ready" or "prepared", and no co-founder, were the likely reasons, I can accept being rejected.

I still believe that PG's opinion counts for a lot. I doubt many seed programs have partners that loose sleep over missed opportunities.

<comment><USER8> I think it's easy for a lot of people to forget that VC and seed-stage investors aren't in business to _help you_ ; they're in business primarily to help themselves, in the form of sexy portfolio companies, talent acquisitions, and investments that pay back later.

The relationship is at best symbiotic, so as long as they're healthy, I'm certain that they don't lose any sleep at all over the "opportunities" that they pass up.

<comment><USER9> I think pg really regrets not funding smanek. :)

</comment></comment></comment></comment><comment><USER10> Is there a technical reason preventing the big guys (youtube/yahoo /vimeo etc.) from developing this kind of thing? I always thought running voice recognition on user submitted videos would require massive infrastructure. How are you guys planning to solve that? Congrats & best of luck with the rest!

<comment><AUTHOR> We're doing machine-augmented crowdsourcing, not straight voice recognition. It's different, and allows us to provide consistent high quality at low cost.

Essentially, we've built a crowdsourcing QA system a la Crowdflower, expect better and more suited to the specific task of video-to-text, and augmented it with speech recognition.

It's pretty fucking cool, if you ask me, but also very different from how people have traditionally approached this problem.

Also, the current site and product will be completely replaced in 8 days with something MUCH much better. So keep you eyes peeled.

-Matt

</comment></comment><comment><USER11> Offtopic: I'd like to see an API for SpeakerText where I can point to my own video asset on an Amazon S3 bucket along with an API endpoint that I specify and you would send me a POST with the transcribed text whenever it's finished processing. I'd purchase that service tomorrow.

<comment><USER12> That'd be very useful for me too...

</comment></comment><comment><USER13> Matt,

You're still planning on moving out to Mountain View (based on your Twitter feed), right? When are you planning on doing that?

<comment><AUTHOR> We move in 8 Days.

<comment><USER14> will we see a post on why you aren't staying in NYC? too expensive? not enough early stage investors?

</comment></comment></comment><comment><USER15> What a great product! Congratulations, guys!

This product makes all of the videos out there indexable by its entire audio content. You could start crawling, processing videos and indexing them right?

Is that in your roadmap? To become one of the best video search tools out there?

<comment><USER16> Hi, thanks so much! There are so many areas we want to expand into, for now our goal is to provide video publishers with the ability to SEO their videos via transcripts and quotelinks. All that publishers have to do is put one line of javascript and one line of server side code on their webpages and now they can get their videos put on google's radar. Video search would also be interesting long term.

</comment></comment><comment><USER17> what is the speakercave?

<comment><USER16> SpeakerCave is the rawest form of a startup pad. Four dudes, no ac, shirtless half the time, coding like fiends and having a blast!

</comment></comment><comment><USER18> I would love to be able to use this for TekPub - being able to have people quote our videos and share it would be awesome marketing.

<comment><AUTHOR> We've got a major product overhaul coming soon that will be super-friendly for you. I'll ping you via email.

</comment></comment><comment><USER19> tl;dr: SpeakerText is their startup, the SpeakerCave is their house or apartment, and no mention is made of it being cave-shaped or made of speakers (bummer).

</comment><comment><USER20> Indeed. This is going to be a really useful app especially to those that have disabilities (mainly hearing impairments).

Best of luck!</comment>


Vegans Sue Burger King over 'Contaminated' Fake Meat in Impossible Burger - <AUTHOR> https://nypost.com/2019/11/18/vegans-sue-burger-king-over-contaminated-fake-meat-in-impossible-burger/ <comment> wes-k As a vegan, this lawsuit is upsetting. We should not be punishing companies for offering vegan food! And any vegan that cares about cross-contamination (many of us don't) already knows to ask. I hope they toss this lawsuit out and quick!

<comment><USER3> As a vegetarian, I couldn't agree more. All this does is make people think vegans are assholes. If you're that concerned and strict about these things, don't go to BK! I think it's great that they offer a meat free alternative. As the saying goes "no good deed goes unpunished".

<comment><USER4> I'm not a vegan. I'm a proud carnivore. I've never considered what BK and McD serve to be "meat". So it is unsurprising that a vegetarian would not consider an impossible burger not "un-meat" either.

It's simply cheap crappy "fast food". Neither herbivores, carnivores, omnivores, nor anything else should have to eat that. But they do take EBT!

</comment></comment></comment><comment><USER5> There's some very deep rabbit holes you can dive into, if you want to be 100% sure your vegan-burger never had any contact with any animal products.

Essentially, restaurants would need a completely separate kitchen to prepare the vegan meals in, since any surface or utensil also used for regular food could have traces of animal product on it.

So if you're an orthodox veganist, you might as well give up on eating out at places that serve regular food.

</comment><comment><USER6> I'm always curious to know, how many insects are killed to provide meat free vegetables?

<comment><USER7> I would imagine it's a similar number per unit of area/yield/weight to that required to feed animals.

In both instances, the crops are harvested and transported for use in very similar ways.

I don't know whether I'd include or exclude ground crops that are eaten by livestock in situ - not sure what percentage of crops they would amount to.

What was your line of thought with this comment?

<comment><USER6> I'd always imaged a large quantity of vegans were against the harming of animals. Doesn't insecticide go somewhat against this princible? Not to mention the river animals that are likewise poisoned by said insecticides? Or the birds that would otherwise be feeding on said insects.

OK. It's pretty much impossible to avoid this uncomfortable truth. But I'd like to see more vegan movements campaigning about the loose laws on pesticides - along with everyone else. The mass destruction of insect life should be a serious priority on a global scale, yet it barely makes the papers.

</comment></comment></comment><comment><USER8> They use same grill to make them taste better, whole thing reminds me of Cartman Burger (Ass Burgers, Season 15 Episode 8).

</comment><comment><USER9> No legit serious vegan would step foot inside Burger King. The 'Impossible Burger' isn't even vegan to start with! [https://www.peta.org/blog/why-it-is- impossible-for-peta-to-g...](https://www.peta.org/blog/why-it-is-impossible- for-peta-to-get-behind-the-impossible-burger/)

<comment><USER10> This talks about testing on animals, which is not condoned in ethical veganism, but superficially it is vegan.

<comment><USER9> Animal testing is not now, or has ever been, considered vegan. Veganism isn't a diet.

<comment><USER4> I don't at all agree with PETA or veganism. But these are valid points - <USER2> article title makes it sound like all the "VEGANS" are suing when no real vegan (nor carnivore) would set foot in BK. Nope they are the unethical ambulance chasing lawyers and git-rich-quick idiots that are suing.

I do disagree with the vegan crowd, but they are at least moral and largely consistent in their own beliefs so fine by me as long as they stay the F* out of my life.

But lawyers and idiots like this really tick me off and I hope they have to pay court costs for this frivolous lawsuit and I hope BK does not pay them off one dime.</comment></comment></comment></comment>


Google Faces Record Anti-Trust Fine - <AUTHOR> https://www.wsj.com/article_email/google-faces-record-european-antitrust-fine-1497602658-lMyQjAxMTA3MDE3NjYxNjYxWj/ <comment><USER2> > Penalty could reach as high as 10% of annual revenue, which was more than > $90 billion in 2016

What will they do with all that money?

<comment><AUTHOR> I always wondered what would happen to all the money from VW and now other manufacturers for their cheating. Not small sums at all.</comment></comment>


Why the Internet is creating more value than jobs - <AUTHOR> http://unenumerated.blogspot.com/2011/02/great-stagnation-or-external-growth.html

<comment><USER4> See also: Why the water mill is creating lots more value than jobs C14

Why the steam engine is creating a lot more value than jobs C19

Why electricity is creating lots more value than jobs C20

</comment><comment><USER5> Because software and the Internet are making it easier to provide more value, more quickly and more cheaply, than ever before. Thus, less jobs needed. Plus more of the jobs that are needed can be done off-shore, or, on-shore but with less office space and commuting, which in turn drives down money that needs to be spent on those sectors as well. Also the increasing popularity of so-called Agile and MVP philosophies is also driving down the cost of testing business ideas and getting to market. And yes, there's an increasing amount of actionable information, quality entertainment and useful functionality available for free on the Internet. So less money (needing to be) spent in those areas, thus less money available for jobs in those areas, for any given unit of product provided. Plus, due to the Internet, an increasing proportion of the revenue that comes into businesses (overall, but most proportionately in the software industries) can be captured by the owners/capitalists/entrepreneurs, rather than labor.

I'm not sure if this is a net win or net lose, overall, for the world. But it's certainly a net win for certain subsets of the population, and a net lose for other subsets. But even for those who it is a net lose, they are not forced to stay in some frozen static configuration or context, there are choices one can make to shift oneself to take better advantage of the new economic landscape, making it more likely to be a net win for them. It may not be easy. But few things in life are easy, and the universe doesn't guarantee anybody a free lunch (outside the more extreme cases of great inherited wealth, etc.)

One thing I'm sure of is that, all other things being equal, we're lucky to be in the field of software and the Internet at a time when this shift is occurring, because we're in a population subset where it can more easily be a net win for us.

<comment><USER6> But it is more than that. In my opinion there is kind of a nasty aversion in start up culture to permanence. Think food trucks vs opening a restaurant, outsourcing vs managing in house, renting a space vs building one, tele- commuting vs a vibrant office. It's not evil or anything, but in the aggregate I think it does lead to less commitment--building the type of foundation that other brick and mortar business do. Kind of a sad example is Amazon and their crazy Amazon Associates schemes to avoid paying taxes. Does it make sense from a maximizing shareholder value sense? Definitely. Does it maybe skirt some ethical obligations as a business and as people? Maybe.

</comment></comment><comment><USER7> Increased leverage of the individual. The information age (post-industrial) doesn't need the same labor inputs to achieve the same wealth creation as before.

While this is great for individuals on the right side of the digital divide, we'll continue to see the impact this will have on societies for some time to come.

</comment><comment><USER8> Technology makes a lot of manual work unnecessary. But the salaries that are saved are available to be spent on hiring people for other things.

Which is why mechanizing the farm didn't leave 80% unemployment in its wake.

The market for labor is like any other market. If prices are allowed to fluctuate, supply will continuously adjust to meet demand and vice-versa.

But if prices are kept artificially high, there will be a surplus. More workers will try to get the higher wages and jobs that are unprofitable for employers at the high price will not be filled.

You may not like, you may not even want to understand or acknowledge it, but this is how people behave in any market.

<comment><USER9> While I agree that it frees up manual labor it raises another specter. The unskilled manual farm-hand labor shifted to unskilled manual manufacturing labor.

We're now telling people well past their prime to switch to more cerebral jobs because we've automated or outsourced the low-skill value added jobs and the pool of what's left drives down wages further due to all the people competing for them.

The problem is that we've increased productivity efficiencies and passed the savings onto the shareholders. A free market is efficient, not perfect.

<comment><USER8> Frankly, I don't see how it is a problem. It is a continuous process in a developing economy. And its the process that makes capital available for all kinds of human investments.

I can assure you there is job security in a completely stagnant economy. But not very much capital for education, startups or mortgages, or freedom to live your life and take the risks that make it worth living.

</comment></comment></comment><comment><USER10> This article really speaks to some of the ideas presented by Paul Graham in his essay about the future of startups[1]. Combining ideas from them paints a particularly optimistic picture for the future of the individual. When a student can create and run a business in his spare time, it sort of marks the potential for a shift in the way value is measured. The emphasis on the utility or engagement of a service over strict monetary value could enable our growth going forward to be in quality of experiences rather than GDP (as Nick Szabo pointed out already isn't growing that much in developed nations anyway).

Going forward we could see applications that make it really easy for individuals without direct knowledge of HTML, CSS and a server scripting language to create valuable tools (they do exist know, but not really in a way that enable the right audience to create the right things). These, along with the existing social tools, are the things that could change the way an economy works by cutting out large corporations and creating an entire market of "externalities."

[1] <http://www.paulgraham.com/webstartups.html>

<comment><USER11> "externalities" don't put the food on the table, let alone buy the table.

or will the future economy be "click on this really cool web app and send its' creator a loaf of bread!"?

</comment></comment><comment><USER12> The US may be stagnating, but China and the other members of the BRICS aren't. The USA needs to find an industry that will grow quickly and large enough to drive its whole economy. The Internet isn't going be that industry any more, as the greatest part of its growth has already happened.

</comment><comment><USER13> Well-written interesting article, and good links too: e.g. to this site on orbiting data centres:

<http://server-sky.com/>

<comment><USER14> I would think that orbital data center would have some real problems with heat dissipation, since you can only cool via radiation in space. Terrestrial data centers already have a problem with heat, and they can cool via convection (which is what is ultimately going to cool those air-conditioners). And then there is the cost of lifting thousands of soon to be obsolete computers into orbit...

<comment><USER15> I'm not a scientist, but isn't it super cold in space, just above absolute zero? If you can keep the (direct and hot) sunlight off the boxes with reflectors, I'd think the ambient temperature would be far lower than anything attainable by earth-bound datacenter cooling systems, so therefore radiation would be a most excellent cooling system. In fact, you might have the opposite problem, and have to figure out how to reliably prevent the boxes from freezing when not exposed to sunlight.

</comment></comment></comment><comment><USER16> "These pessimistic observations of long-term economic growth are in many ways a much needed splash of cold water in the face for the Kurzweilian "The Singularity is Near" crowd, the people who think nearly _everything important_ has been growing exponentially." [emphasis added]

For the "great stagnation" folks, apparently "everything important" is macro and that indeed, in a documentable way has not been growing exponentially. For the singularity folks "everything important" is micro and has been growing exponentially in a documentable way.

If the article had an _argument_ why micro stuff has suddenly stopped mattering, that would one thing. But the discussion here seems to dismissal through mere trick-language.

<comment><USER17> Would define your use "macro" and "micro" here?

<comment><USER18> I believe he is referring to the exponential increase in computations per dollar which has been ongoing for almost half a century. Furthermore, he refers to the massive industries which have sprung from this growth in computation (personal computing, telecom, entertainment, social networking, etc.).

This being said, there is a large divergence between exponential increase in computation and macroeconomic growth. The gains from computation have been highly consolidated (to a small number of extremely talented entrepreneurs not unlike our own HN community), whereas other major industries have stagnated or declined (housing, finance, manufacturing). I believe Tyler Cowen and his "Great Stagnation" sums it up nicely in that the net loss in those industries has been larger and more relevant macroeconomically than the relatively concentrated gains in Silicon Valley.

tl;dr: computation is fueling rapid new industries which create wealth, but that wealth is highly consolidated as it does not require labor to grow (labor required is replaced by computation). This causes economic stagnation for the great majority of the population (+/- 2 std dev of mean or 95%) who are unable to capitalize on the computational opportunities.

<comment><USER16> "computation is fueling rapid new industries which create wealth"

I generally agree with your definition of my terms and your points. I would note that "Wealth" itself is a poorly defined term even compared other fuzzy economic terms. Micro-level technology is giving many people more _range of actions_ than ever before but it's impact on measured economic wealth has been obscure.

A much larger portion of homeless people have cellphones today than ten years ago. But larger portion of people are homeless today than ten years ago - <USER2> least if you believe this is a recession.

If tomorrow, a chemical was released into the atmosphere which doubled the lifespan of everyone on earth, most would agree life would be improved. Yet no one would have a cent more money and it is actually hard to say what its impact on the economic system would be.

<comment><USER11> _hard to say what its impact on the economic system would be_

if lifespan of everybody doubled it would have devastating effect on world economy, as one of the most important issues we face today is population aging (and not just in developed world, but in China as well for example).

</comment></comment></comment></comment></comment><comment><USER11> summary: intellectual property is very different from physical property and inevitably wants to escape into wider world, so called developing world in particular.

that's why we find our thesis that we should be selling higher margin products to developing world and leave cheap stuff to be produced by them broken - <USER3> get our knowledge essentially for free, leaving us without manufacturing base and without capability to fund innovation further. and there's nothing we can do about it either, in my opinion.</comment>


Searching For Online Video's Holy Grail - <AUTHOR> http://money.cnn.com/2008/02/04/technology/kirkpatritck_iamplify.fortune/index.htm?section=money_latest Guesses on what happens when you get people from Random House and McKinsey running a company, plus a CTO from Accenture? <comment><AUTHOR> Guesses on what happens when you get people from Random House and McKinsey running a company, plus a CTO from Accenture?

<comment><USER2> @0% affiliate fees on US$100 niche videos sounds really good. However, if the management doesn't understand their market then you'd be a fool to associate with this venture.</comment></comment>


Show HN: CLI to GitHub's Migration API - export all repo metadata - <AUTHOR> https://github.com/jneill/gh-migrations <comment><AUTHOR> I was in the middle of writing a script to pull down all the metadata from a GitHub repository when I stumbled upon their Migrations API[1]. Designed for moving organizations to GitHub enterprise, this feature creates an archive with everything in a set of repos: issues, pull requests, git repo, wiki, comments, attachments to comments, milestones, etc. It's in preview with no UI, and afaik no existing client library supports it, so I hacked together a quick tool to make it easy to use.

[1] [https://developer.github.com/v3/migration/migrations/](https://developer.github.com/v3/migration/migrations/)

<comment><AUTHOR> > and afaik no existing client library supports it

I spoke too soon: seems like [https://github.com/octokit/octokit.rb](https://github.com/octokit/octokit.rb) supports it</comment></comment>


news.ycombinator meetup - Cambridge, MA  - <AUTHOR>

We did a news.ycombinator.com meetup this past June and the turnout was great.  Let's do another.  It would be great to have a mix of summer ycombinator startups and people thinking of applying this October.
For a time/place, how about: Sunday, August 19th at 7 PM 1369 Coffee House in Central Square 757 Massachusetts Ave. Cambridge, MA 02139
Leave a comment if you are interested.

 <comment><USER2> Hey Bokonist,

This sounds great. I was actually planning on getting this organized myself but wanted to give the teams some time to cool off after Demo Day.

If you need any help organizing let me know (see profile). Jessica said she'd try to drop in so I'll let her know that a time has been decided. I also have the email list from the last meet-up and would be more than happy to pass that along.

</comment><comment><USER2> (I forgot to mention) I'm in. I'll probably drop in early to do some hacking in the coffee shop so if anyone wants to just chill and code, let me know.

Also, could the people attending tell us about themselves? It'd be great to see what kind of crowd we're going to get this time!

<comment><USER3> I graduated last May from the University of Florida and am now working in Boston for a startup that makes a web-based sports MMO. Before I took the job I applied to YC with an idea for a tool that would make administering and refactoring databases less painful, but was rejected, probably because my cofounder was still in college and intended to go back after the summer. The idea has since morphed into a web-based RDBMS designed to run on AWS.

Although I like the people I'm working with and think the company has a decent chance, ASP is rotting my brain. I'd be much happier working on the database startup if I could find a new co-founder and seed funding. I'm not planning on applying to this YC funding round since I'd rather wait six months for the next one and stay in Boston, but anyone interested in applying with me could persuade me otherwise.

</comment></comment><comment><USER4> This might be an opportune moment to mention the (not very active) IRC channel: #news.yc on Freenode.

<comment><USER2> incidentally, the last meet-up was organized in response to someone suggesting that news.YC set up an IRC channel

</comment></comment><comment><USER5> Sounds good. I just wanted to suggest Andala Coffee House nearbly because they have free WiFi in contrast to 1369.

Here's the link: <http://www.yelp.com/biz/QAbqOn5VhO4k15_wfSQdvg>

</comment><comment><USER6> Theres i also Diesel Cafe in Davis Square. Much Much bigger space with lots more tables and even a pool table. Also has WiFi

<http://www.yelp.com/biz/c67rQbz3CEXyI0nd5kG-Uw>

</comment><comment><USER7> Great idea, yes I'll be there. I am also looking for a co-founder before applying for winter program.

</comment><comment><USER8> Oh...man...I'd love to. But Sunday is bad for me, have a concert after 7pm. How about Friday ?

</comment><comment><USER9> You can't have had a news.yc meetup last June. The site wasn't launched till Feb.

<comment><USER3> I'm saving a screenshot of this comment before Paul drinks his coffee and looks at it again.

</comment></comment><comment><USER10> Not sure I can make that time, but I am interested and will try to be there.

</comment><comment><USER11> I'd like to come, although I am not planning to apply for the next cycle.

<comment><AUTHOR> sure, come anyway

</comment></comment><comment><USER12> How many folks from this round are still in Boston?

</comment><comment><USER13> great, I'll be there. although I second the vote for Andala's, as it is a block from 1369, larger, has better coffee, and free wifi.

</comment><comment><USER14> I'll probably be there. May be a little late.

</comment><comment><USER15> I'm interested and should be able to make it.

</comment><comment><USER12> My partner and I will be there. Sounds great.

</comment><comment><USER16> I'm interested and might be able to make it

</comment><comment><USER17> I will be there also.

</comment><comment><USER18> great. Will come with my partner from Babson.

-Li

</comment><comment><USER3> I'll be there.

</comment><comment><USER19> i am down.

<comment><USER20> Hey, this is Mac. I was interested in emailing you about our Synthetic Biology seminar lunches, but your email address is bouncing (email@example.com...) what's the best way to contact you?

</comment></comment><comment><USER21> +1</comment>


Ask HN: What framework do you use (if any) for your pure web games? - <AUTHOR>

It seems like there's one major (and a few popular alternatives) game framework for every language except pure web languages. What framework/engine is Hacker News using for creating web games without browser plugins like Flash and Unity? <comment><USER2> I use my own: Ludus

It's coded in Amber Smalltalk, you can see the source here: <https://github.com/bromagosa/amber/tree/ludus>

And some examples:

<http://reggaeperxics.com/pong.html> <http://reggaeperxics.com/sokoban.html> <http://reggaeperxics.com/cave.html>

</comment><comment><USER3> If I was going to make an HTML5 game I'd use Impact - <http://impactjs.com/>

<comment><USER4> I used impact.js in a recent game jam, it makes building tile-based / platformer games a cinch. It lacks a few niceities (motion animation, canvas text), but those can be hacked in as necessary without too much pain. The documentation is beautiful.

Our game: <http://ravegame.herokuapp.com/>

Post mortem: <http://bcjordan.github.com/games/rave-thru-dawn/></comment></comment>


Senate Passes Major Bill, Allocating $9.5B for National Parks - <AUTHOR> https://www.nytimes.com/2020/06/17/us/senate-national-parks-funding-bill.html <comment><USER2> The national parks are one of the crown jewels of American culture. They manage to hit a sweet spot of ease of access, preservation and diversity in a way that seems to be very rare in the world.

<comment><USER3> I definitely didn't appreciate this enough until I left the US. I'm Australian, and while we have large national reserves with really cool stuff out there, it doesn't have the same level of infrastructure and access. Now I live in Europe, where there are no where near as many national parks.

<comment><USER4> Try Poland

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

Or Slovakia

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

</comment></comment></comment><comment><USER5> Good deal. The National Parks are truly priceless and one of the best investments the country has ever made.

</comment><comment><USER6> Hopefully the money is for preserving nature, and not building bigger roads and tourism facilities like hotels.

</comment><comment><USER7> Thank you for saving these treasures

</comment><comment><USER8> I have a feeling this is going to get vetoed.</comment>


Software engineers have figured out how to turn charts into music for the blind - <AUTHOR> https://qz.com/921662/software-engineers-have-figured-out-a-way-to-turn-charts-into-music-for-the-blind/ <comment><USER2> The title is very clickbaity. Just search for "chart sonification" and see there is a lot of research in this area. Maybe they meant to emphasize that this is a browser extension?

<comment><USER3> Agreed - this idea has been around since 1914.

</comment></comment><comment><USER4> This is the problem Richard MacDuff was wrestling with at the beginning of Dirk Gently's Holistic Detective Agency. I love it when sci-fi from my childhood becomes reality.

<comment><USER5> Thank you for reminding me that that book exists. It's been a few years since I last re-read it.

</comment></comment><comment><USER6> At Science Hack Day, me and some friends built a version of Super Mario for the Blind that you can play in a similar way:

Play: [http://gleitzman.com:1339/](http://gleitzman.com:1339/)

Source: [https://github.com/miserlou/jsnes](https://github.com/miserlou/jsnes)

After a few tries, you can actually get through the first few levels!

<comment><USER7> It's an interesting idea! How does one know what each sound represents?

</comment></comment><comment><USER8> I know it's not exactly the same thing, but reminds me of this video from a while back:

This App Turns Your Photos into Music If You Want to Do That For Some Reason: [https://www.youtube.com/watch?v=zpNgsU9o4ik](https://www.youtube.com/watch?v=zpNgsU9o4ik)

</comment><comment><USER9> I'm holding out for the pie charts that are tasty, relationship charts that make it through the tough times, and line charts that get me high as fuck!

</comment><comment><USER10> Didn't this lady do this who is an astrophysicist (also blind)

something about gamma ray burst (heard it on NPR podcast)</comment>


Gmail app for iOS (from indie developer) - <AUTHOR> http://sentmailapp.com/

<comment><USER2> I'm assuming this is trying to take advantage of the botched official Gmail app launch today.

Not so sure I'm inclined to get too excited by 5 screen mockups, especially ones which have example labels of "bullshit".

</comment><comment><USER3> This envelope icon looks really familiar. Was it stolen from something else?</comment>


7 Myths of learning to code - <AUTHOR> https://blog.stephsmith.io/learning-to-code-apps/ <comment><AUTHOR> After saying I would for many years, I finally stopped making excuses and learned to code. Since then, I have built 4 projects, hit #1 on Product Hunt, been nominated for Maker of the Year, and more. For me, the most difficult part was getting over the initial psychological barrier.

On reflecting on the last year, I compiled my thoughts on what I think really prevents people from starting into the 7 myths of learning to code. Once you get past those 7 things, I truly think anyone can learn.

I also logged the days I spent coding last year and believe it doesn't even take that long: more precisely, 300 hours to learn, build, and launch multiple projects.

Do you agree with the myths? Are there any that are missing?</comment>


Chicago's Hemorrhaging Housing Market - <AUTHOR> https://www.city-journal.org/chicago-housing-market <comment><USER2> "Every penny that the city collects in property taxes goes into the (underfunded) pension system."</comment>


The Internet Maths Aperiodical – temporarily a periodical - <AUTHOR> http://acmescience.com/mathematics/1329 <comment><AUTHOR> I've noticed lately that pretty much every time I submit something about math it gets flagged. I can appreciate that math isn't to everyone's taste, but I do try only to submit stuff that can make you think.

So here's another one. It isn't about startups, and it isn't about entrepreneurship, but it does contain some technical curiosities, and links to some statistical and machine learning material.

I'd like to think it's more "deeply interesting" than some of the "news" that's submitted.

Maybe I'm wrong.</comment>


Startup Quote: Aaron Patzer, founder, Mint - <AUTHOR> http://startupquote.com/post/1721414611

<comment><AUTHOR> People do make judgments of trust on appearance - in the real world and online.

\- Aaron Patzer (@apatzer)

<http://startupquote.com/post/1721414611></comment>


Why the One Appealing Part Of Creationism Is Wrong - <AUTHOR> http://www.newyorker.com/online/blogs/elements/2014/02/why-the-one-appealing-part-of-creationism-is-wrong.html

<comment><USER2> The Bible says the earth is flat and can't move; and that pi is 3. It's also full of figurative language, similes, parables and allegories. There's often two different accounts of the same event, such as creation and the flood. So I don't understand why people try to interpret it literally.

Even so, Ken Ham's "young earth creationism" isn't the only "literal interpretation" of the age of the universe based on the Bible. There's also old earth creationism, gap creationism, progressive creationism, etc. See [http://en.wikipedia.org/wiki/Old_Earth_creationists](http://en.wikipedia.org/wiki/Old_Earth_creationists)

Yet these attempts to make the Bible compatible with physics fall short of the thirteenth century kabbalist Yitzhak ben Shmuel d'min Akko's fascinating Biblical deduction that the earth is 15 billion years old:

1\. Sefer HaTemunah says it is the 6th 7,000-year sabbatical cycle. Since the sabbatical cycles existed before Adam, they must be measured in Divine years, not earth years. So, the universe is 6 x 7,000 = 42,000 Divine years old.

2\. According to Psalm 90:4, a Divine day is 1,000 earth years long. So, a Divine year is 365,250 earth years.

3\. Therefore, the universe is 42,000 Divine years x 365,250 earth years / Divine years = 15.3 billion earth years old.

And that's a lot closer to what the Big Bang Theory says than Ken Ham's 6,000 years.</comment>


Geek Power: Steven Levy Revisits Tech Titans, Hackers, Idealists - <AUTHOR> http://www.wired.com/magazine/2010/04/ff_hackers

<comment><USER2> For those who've never read it, highly recommend the book Hackers by Levy. Awesome book for, well, hackers. Very well-written. Only time in my life where I've read something and thought, "That's _exactly_ what I want to be doing!". At least, when I was younger. He really captures the thought process and motivations of a natural/self-taught programmer.

</comment><comment><USER3> Also posted at:

<http://news.ycombinator.org/item?id=1278900></comment>


Faster Progress Bars: Manipulating Perceived Duration with Augmentations (2010) - <AUTHOR> http://www.chrisharrison.net/index.php/Research/ProgressBars2 <comment><USER2> It's also obvious to many users when a progress bar is "faking" progress, stalled, or clearly not representing the actual progress being made.

This makes me mad at your app, and very slightly less likely to use your software.

Good luck measuring my slight disdain.

<comment><USER3> Is it actually obvious though?

<comment><USER4> Often, yes. A progress bar that hangs at 99% for 50+% of the elapsed time teaches the user not to trust the bar.

<comment><USER5> It sometimes depends on what progress the bar is tracking. I think some developers (incorrectly) track the % of the actions they are completing EG I have 100 files of different sizes to load and I have loaded 45 of them whereas I think users always expect the progress bar to be a timer and progress smoothly from 0 to "done".

<comment><USER6> Like in many cases in which a programmer codes a user-facing piece of software (be it this, an error message, etc.), the programmer tells what he's doing instead of what the user cares about.

</comment></comment></comment></comment></comment><comment><USER7> The problem with progress bars as the coder is that it's often difficult to tell how far you are into a process if it's not a repetitive sequence of similar steps.

Transferring a file byte-by-byte is easier that a list of arbitrarily sized files. Fixing that would require reading all the file sizes first, or some complex logic to determine when to pre-plan the updates.

What about some kind of "learning progress bar"? It keeps track of the updates that have been made and predicts how long a new user will take based on previous users experience with the bar.

The classic case is installation progress bars, repeated uses of same/similar sequences of steps with indeterminate length of time. But if you aggregated the real-time data from all those progress bars, each new bar becomes a kind of dynamically-updated prediction of how much time is left on the bar.

<comment><USER8> That's an interesting idea. You'd still have an issue if the process has a very high standard deviation or a lot of outliers. You almost need some sort of useful UX for the error bars of the progress (+/\- 3%, +/\- 15 minutes), but if polling statistics seems to prove anything, error bar UX is something that we have never been able to build in a way that a person with no to little statistical background can appreciate.

Tangentially, I've experimented with a different sort of "learning progress bar", in that I think one UX problem we face is that we've learned the hard way that linear progress bars aren't allowed to go backwards/shrink. It confuses/angers too many users to watch a progress shrink and gives the wrong impression that something has gone wrong or is being rolled back (that progress is somehow "lost").

This is a problem because a lot of our problem solutions are recursive and we don't have a full estimate of the problem scope until we've recursed the full depth to the leaves of the problem tree.

My experiment [1] was with the idea that with a radial progress bar you can "shrink" it, but still give an indication of "forward" progress (clockwise movement in this case). You get to take advantage of the fact that perceptually people can tell the difference between small increments linearly, but not small increments radially (the reason why pie charts are actually not particularly great UX if you need someone to perceive subtle differences). It seems like a "best of both worlds" approach in that in the task discovery phase it acts like a "spinner" and as discovery completes it becomes more of a progress bar, and if for some reason a bunch of new tasks are discovered mid- flight you get a hybrid of the two.

[1] GitHub: [https://github.com/WorldMaker/compradprog](https://github.com/WorldMaker/compradprog) ; Blog post: [http://blog.worldmaker.net/2015/03/17/compradprog/](http://blog.worldmaker.net/2015/03/17/compradprog/) ; Demo site is currently broken (hello tech debt from 2015), sorry

</comment></comment><comment><USER9> This feels similar in nature to the reason that lifts (elevators) have mirrors in them, whilst waiting for them, or both: [http://platformliftco.co.uk/news- pr/why-do-lifts-have-mirror...](http://platformliftco.co.uk/news-pr/why-do- lifts-have-mirrors)

<comment><USER10> I like mirrors in an elevator if I'm the only one in there.

Otherwise it makes the ride more awkward because I try to avoid locking eyes with someone else through the mirror.

</comment></comment><comment><USER11> I think it's important to measure the annoyance factor of these 'augmentations' along with the perception of speed. The pulse that travels along the new Windows progress bars bugs the hell out of me and I wish I could turn it off.

<comment><USER12> For me, the annoyance comes from not being able to tell if the operation has stalled ("Did it just inch forward, or was that just a pulse?"), which decreases the amount of useful information available to me.

I would guess this is done intentionally, to keep impatient people from canceling the operation when they should really just let it run. If that's the case, however, I would argue that the real problem is not providing enough feedback to indicate whether the operation is still proceeding as planned. Ie, whether a long wait is expected at this step or not. I wonder if a progress bar is really the best indicator for this purpose.

</comment></comment><comment><USER13> My pet peeve is progress bars that increment based on the units of work, rather than extrapolating to an estimated time remaining. When there is no real correlation between how long different segments of the progress bar will take to complete, it basically becomes useless to me.

My general perception is that most commercial software is putting in the effort to calculate time remaining these days. Are there any open-source tools that help with this? It would be awesome to collect analytics during development (opt-in in production) and apply it to calculate more and more accurate time estimates.

</comment><comment><USER14> How about: _make your product faster so you don't need progress indicators_?

I see these _way_ too often, and most operations really should feel instant to the user. Little things should not be taking multiple seconds to complete.

And for the occasional actually-time-consuming task, calculate the end point so you can display a proper bar. An indeterminate spinner is laziness, forcing the user to wait an unknown amount of time when you can probably figure it out.

<comment><USER15> Any operations that rely on server-side compute/data must margin for nondeterminism. I would put in a loading indicator _just_ to cover the outliers.

Local (client-side) operations are a different matter entirely. Either precompute the result for common operations or optimize for speed!

<comment><USER14> Unless the device is physically out of space for storing things, there is no excuse for putting up a modal loading indicator because of a server-only problem.

As a general rule, every single edit should be able to return control to the user _immediately_. If the network can't be reached, save _locally_ and attempt an update in the background (showing a small, unobtrusive annotation that an update is pending, as opposed to a screen-erasing obnoxious progress popover). And definitely don't _erase everything the user did_ if the network ends up being unreachable.

<comment><USER10> What about if two users are editing the same object? How do you reconcile or merge the changes?

</comment></comment></comment></comment><comment><USER16> For those as impatient as I am (how ironic):

> Progress bars with animated ribbing that move backwards in a decelerating > manner proved to have the strongest effect.

So I guess that'd be the second, third and fourth from the bottom at the start of the video, but I'm listening without sound so perhaps someone can confirm.

</comment><comment><USER17> I think this research shows that you can influence perception of time without resorting to outright "making up" the progress bar. You can imagine using this technique not to lie about progress but just to make short progress bars appear to move faster.

I spent several hours in Google Analytics yesterday. It's been a few months since I've used it, and I remember thinking that it seemed a lot faster. They've recently refactored their UI, and possibly done some system improvements, who knows. But after looking at this research, I can see that they've also taken advantage of similar techniques to make their loading bars seem faster. It's a free improvement of 11% in perceived speed, just for changing an animation, without misrepresenting the underlying information.

<comment><USER6> I laughed a bit when the video said it made the perceived speed 11% faster. Two significant figures shouldn't be used to measure a perception that is subjective and probably not even linear.

Unless they have a scale of "perceived speed to actual speed" for regular progress bars, that they're using to gauge the enhanced ones?

<comment><USER17> You made me curious so I dug into the paper.

> For our final study, we selected a progress bar that featured Backwards > Decelerating ribbing, as this was slightly preferred over the pulsating > behavior in study three. This was compared against a standard, solid color > progress bar. The test interface, instead of simply recording participant's > preferences, used the responses to warp the duration of the ribbed progress > bar (the solid color progress bar had a fixed duration to act as a control). > Specifically, if a user felt the ribbed progress bar was faster, its > duration was extended (to slow it down). Conversely, if the user felt the > ribbing was slower, the duration was reduced (to speed it up). Equal > responses left the duration unchanged. The goal was to allow participants to > converge to a duration where they believed the two progress bars "felt" > equal. (For an extended discussion on method of adjustment > experiments,please refer to [3], "Difference Thresholds").

So I want to guess they were given some kind of interface that would let them decrease the speed in increments of 1%, perhaps.

</comment></comment></comment><comment><USER18> No thanks. I'm not interested in the manipulation of perception.

I'd like a progress bar to actually report on progress. If you can't do that, don't feed me bullshit blinking lights, and pat yourself on the back. Just tell which part is hanging up, so I can either clear the bottleneck, route around it or throw everything in the trash.

I'm torn at this point, about which non-progress bars I hate more these days, Apple's or Microsoft's. Windows used to have the most useless progress bars:

[https://www.xkcd.com/612/](https://www.xkcd.com/612/)

But Apple system updates for OS X are possibly much, much worse. Reporting 20 minutes and taking 90, opaque, inching along pixel by pixel, and not telling you anything about what's slow, or whether there are parts to the process. Just one stupid line, and if it fails in the middle, start over. Is it unzipping, checking the integrity of file hashes, connecting to the internet, not connecting and waiting for a time-out, compiling open-source packages for this particular chip set?

One thing's for sure, I've been promised so many minutes, and instead lost hours.

<comment><USER3> Alright, fine, but is there any reason to think you're anything like a typical user?

<comment><USER18> Is there any reason you'd advocate writing " _typical_ " software?

<comment><USER3> Unless you're writing a programming tool it's very unlikely that most of your users are highly technical users who think like a programmer.

<comment><USER3> As an addendum, I was once in a position where I'd have to provide essentially all the support for software I developed. That's no longer the case but the mindset of avoiding designs that are likely to confuse the user (and thus lead to people bothering you to ask about them) stays with me even a few years later.

</comment></comment></comment></comment></comment><comment><USER19> The best progress bar is in Gary's Mod when connecting to servers. It lists exactly what files are being downloaded to you underneath the bar so nothing is a mystery.

</comment><comment><USER20> The other day my home wifi was cutting out, I was amused when the netflix loading bar kepting chugging on before deadlocking at 97/99%</comment>