Why the Internet Needs IPFS - <AUTHOR> http://techcrunch.com/2015/10/04/why-the-internet-needs-ipfs-before-its-too-late/ <comment><USER3> I view the favorable performance characteristics of IPFS at scale (over the current centralized client-server architecture of the present web) more as a general symptom of the pathology resulting from the incomplete, ill-planned architecture of the web in general.

The greatest advantage of an architecture like IPFS instead lies in its friendliness to more a democratic, semantic web, in which users and programs may make use of URI's at a fine-grained and peer-to-peer level. If we can decouple resources from a central server, and then build programs around these static resources, the web will not only become more permanent, but also more robust against walled-gardens robbing us of programmatic control of those resources.

To paraphrase the Plan 9 authors[1], it might make sense to say that a p2p, content addressable web should try to build a web out of a lot of little systems, not a system out of a lot of little webs. (Well, that doesn't completely make sense, and I'm starting to mix my metaphors, but my point is that what we have now is significantly hindered by lack of fine-grained semantics allowing interop. Hypermedia has the potential to be so much more than simply manipulating the DOM with some javascript!)

[1] [http://www.plan9.bell-labs.com/sys/doc/9.html](http://www.plan9.bell- labs.com/sys/doc/9.html)

<comment><USER4> (IPFS Dev) Yes yes yes yes! :)

This is very much what we're going for.

Glad you mention semantic web-- it tends to be a very tricky word with most hacker cultures, because everyone loves to hate on failed attempts :( :( -- but in fact SW (Linked Data!) is a super interesting model that has made Google and Facebook tons and tons of money (Knowledge Graph and Open Graph!). One interesting fallout of IPFS is that we can make Linked Data waaaaay more robust and faster, because you no longer need the _insane_ tons of little HTTP hits to query, retrieve content, retrieve other content + definitions, etc., on each request. With IPFS we can turn everything into a (merkle)dag and distribute it as a single bundle of objects. think Browserify/Webpack but for Linked Data. All with valid content addressing and signatures :)

And +1 to plan9 -- plan9 (in particular Fossil/Venti and 9p) have always been great inspirations for me, and their philosophy surfaces a lot in IPFS. From the fossil/venti (git) approach to content, to making everything mountable, to just using the path namespace for everything, etc. :)

(ps: woah, a message positive on BOTH Linked Data AND plan9! unexpected find!)

<comment><USER3> Thanks for the fantastic work. Your project represents something that I'd love to use, and would love to help succeed. I have some coursework to attend to, but I'd love to get involved at some point.

<comment><USER4> Thanks! and please do-- find us on github.com/ipfs/ and #ipfs on irc.freenode.org :)

<comment><USER5> Hi! I have a dumb question, is there a way to get cleaner URLs?

<comment><USER6> Yes, by using DNS TXT records. For example, the main ipfs.io website is actually just proxying [https://ipfs.io/ipns/ipfs.io/](https://ipfs.io/ipns/ipfs.io/)

</comment></comment></comment></comment></comment></comment><comment><USER7> I see two core problems with content addressable web:

      * Dynamic content
      * Private/sensitive information

Dynamic content on a distributed system poses rather hard challenges on data integrity - how would it be possible to ensure that different pieces of data you have are actually from the same [temporal] set? The very same HN - <USER2> would it be possible to see at least all the children of parent you want to comment to in a distributed manner? Anything I can come up with involves some sort of central dependency repository. Two child "commits" create branches in content tree. If these children are duplicates - we pick the better one and cast the other into abyss, the bigger challenge is how do we merge them together. This is a wide topic, so please excuse my brevity.

Private information is yet another rake to step on. I would really love my bank account information to remain accessible to me and the bank only. I don't even trust myself not to lose decryption keys, I don't trust long-term security of encryption algorithms (flaws could be found, brute forcing might become viable), therefore the information better stays in as little places as possible. Another end of this stick is authentication/authorization. Encryption does not work, because access rights change. What I'm authorized to view/do today might not be the same tomorrow. The only solution is not to serve the content in the first place. As for authentication I don't see a solution at all.

Although content addressable web is awesome solution for [more or less] static content - wikipedia, blogs, etc.

<comment><USER8> I see more core problems:

1) This only scales if enough people are willing to give up a portion of their storage devices. I would think twice about that for my SSDs.

2) Private customer internet connections often have a lesser upload bandwidth and that is part of the overall traffic calculation of ISPs. So the networks have to change a lot to face changing traffic requirements in this regard. That is something that will not scale with the demand of a successful protocol (see BitTorrent). Also this IPFS traffic may harmful to other traffic like gaming sessions.

3) Illegal content will be the killer. Don't expect laws to change for IPFS. No one will permanently use VPNs / anonymizers permanently for using IPFS, because some law firms will specialise on gathering endpoint information like they already do with BitTorrent.

<comment><USER6> 1) The plan is to incentivise people with schemes like [http://filecoin.io/](http://filecoin.io/)

2) Yeah, I'll admit the asymmetric nature of home internet is a bit of a hassle. I suspect you'll still require machines on the backbone seeding content, with domestic machines focussed more on providing content to local peers and/or seeding rarely accessed content. In the long-term, IPFS can help ISPs in reducing their costs (content can be grabbed from within their own network, instead of having to peer with another network for almost everything), which might help to convince them to change.

3) IPFS doesn't force you to host any content you don't want to. If you choose to host illegal content, that's your problem.

<comment><USER8> > 1) The plan is to incentivise people with schemes like > [http://filecoin.io/](http://filecoin.io/)

Adding a market to this problem is interesting and may work, indeed. But you must not forget, that most internet connectivity plans for private customers prohibit commercial use, where the network is the essential part of that business. If people start to make money on IPFS, the ISPs will not just watch. Another aspect of this is taxes that people must pay if they make a profit, and all the requirements to operate a business. With this in mind, I am skeptical that this will scale to a size where you can say: And now it is really a distributed thing.

> 2) Yeah, I'll admit the asymmetric nature of home internet is a bit of a > hassle. I suspect you'll still require machines on the backbone seeding > content, with domestic machines focussed more on providing content to local > peers and/or seeding rarely accessed content. In the long-term, IPFS can > help ISPs in reducing their costs (content can be grabbed from within their > own network, instead of having to peer with another network for almost > everything), which might help to convince them to change.

Many ISPs already do that. CDNs use ISP data centers to bring content to customers. In fact, IPFS is not much different from their solutions. But IPFS can be a standard for content distribution. That would be a good thing.

> 3) IPFS doesn't force you to host any content you don't want to. If you > choose to host illegal content, that's your problem.

It is not always obvious what content is legal. Copyright laws will test IPFS hard.

<comment><USER6> 1) Whilst it can be used to make a profit, it can also be used as a system to allow you to trade storage space on your own computer in return for replicating your own content on other people's machines. The more storage you provide, the more redundantly your own content is hosted on the network, and the longer you can still serve your own content whilst your own machine is offline. IANAL though, so I can't comment on the legal implications.

2) Sure, you can view it as a CDN anyone can participate in (including machines within your LAN).

3) There are plans for handling DMCA takedowns [https://github.com/ipfs/gateway-dmca- denylist](https://github.com/ipfs/gateway-dmca-denylist)

<comment><USER8> Well, I am thrilled to see it succeed. To me the most interesting part is IPFS acting as a CDN standard. That could make an impact, certainly.

<comment><USER9> Their incentive idea is realistic, it will work.

My research team has build very similar operational systems over the past 8 years. "Decentralized credit mining in P2P systems", IFIP Networking 2015 "Towards a Peer-to-Peer Bandwidth Marketplace", 2014 "Bandwidth as a computer currency", news.harvard.edu/gazette/story/2007/08/creating-a-computer- currency/, (PRE-Bitcoin), 2007

Their work is still early, essential thing about this type of approach is spam. You can often trick people into caching stuff. So not your typical DDoS anymore, but another resource eater. Plus there is the counterintuitive oversupply problem: <more citations to our own work> "Investment Strategies for Credit-Based P2P Communities"

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> I think the IPFS vision is fantastic.

The article misses the main advantage when it tries to say that IPFS would help corporations like Google/Youtube/Netflix.

Big players will always be able to expertly run powerful distributed CDN's, but newer smaller websites will always start with one server under the current model.

IPFS would help to level the playing field for distributed data services.

<comment><USER4> (IPFS Dev) Thanks! :) Yeah, we want to help sites scale without needing massive infrastructure funding.

</comment></comment><comment><USER11> "As I explain in my upcoming book...." now the article makes sense, TC is helping her pimp her book.

What the internet needs is a new financial model since the one we are have now isn't working in the long term.

<comment><USER12> > Now this article makes sense

This is all TC does, you can call it pimping or fluffing. Before this article did you think TC was an investigative journalism powerhouse?

[http://www.paulgraham.com/submarine.html](http://www.paulgraham.com/submarine.html)

</comment></comment><comment><USER13> IPFS is essentially web (here meaning htmls css & javascript) over torrent + a distributed hash table. Correct me if I am wrong but isn't this just freenet without the anonymity or kind of like tribler but for websites instead of pirated files?

<comment><USER14> IPFS shares a lot of similarities to the Freenet datastore, yes. Both support static and dynamic keys that map to content-addressed URIs and can be accessed via a DHT. IPFS lets you selectively (opt-in) save data locally and host it, unlike Freenet which can cache and serve that data to other clients without user action.

The lack of Freenet's anonymity feature means it can perform much faster and even be implemented in client-side javascript (Work In Progress) which will drastically increase user adoption.

<comment><USER4> (IPFS Dev) Yeah, we have many similarities with Freenet, but we also have significant differences. You mention the lack of anonymity, and yep, that's definitely one -- to speak more about this: this parts from our content model. Among explicit constraints, we have:

\- __content must be able to move as fast as the underlying network permits __. this rules out designs like freenet 's and other oblivious storage platforms, as the base case. Like you said, they're just way too slow for most of IPFS use cases. But, these can be implemented trivially with the use of privacy focused transports (like Tor and I2P -- there's actually work towards this and people are getting close), content encryption, and so on.

\- __IPFS nodes should be able to only store and /or distribute content they _explicitly_ want to store and/or distribute __. This means that computers that run IPFS nodes do not have to host "other people's stuff", which is a very important thing when you consider that lots of content in the internet is -- in some for or other -- illegal under certain jurisdictions. Legitimate companies have way too much in their plate to additionally worry about potentially be storing a ton of illegal stuff. For serious companies like Google to use IPFS, we need to have a mode of operation that allows implementations to ONLY move the content THEY want to move.

\- __Websites /Webapps must be able to operate entirely disconnected __\-- this means that it should be possible to build applications which create data locally, __signed by the user __, which can be distributed encrypted end-to- end to other users, without needing to ever touch specific backbone servers. This means users can move the data end-to-end via the closest route possible and in disconnected networks (think users on mobile phones on a plane using messaging webapp or web game and moving the bits over bluetooth or an ad-hoc wifi network. And this also means users in the broader internet do not _need to_ rely on backbone servers -- the model we 're going for is that dedicated computers in the backbone CAN of course and SHOULD help, but you shouldn't HAVE TO RELY on them.

Can write more about this :)

<comment><USER15> If you could compare/contrast with Tahoe-LAFS, that would be cool.

</comment></comment></comment></comment><comment><USER16> Criticism of the article aside, having a decentralised, heavily redundant, safer and harder to disrupt web is an excellent idea worth pursuing.

I can see how that could work for statics resources, but I don't get how you can decentralise the dynamic portion of a website without single points of failures to the backend.

<comment><USER17> It's not really harder to disrupt by any means, at the end the internet is a network, or how congress thinks of it a series of pipes.

Most internet censorship eventually works on L3, having a distributed alternative to the world wide web won't make the internet more resilient.

<comment><USER4> (IPFS Dev here) Maybe. I want to live in a web where,

(1) if a region's network uplink disconnected (like it was in Egypt) websites/webapps don't cease to work. People should be able to communicate + compute in these local networks without backbone access. yes this is possible.

(2) if i manage to make contact with you over a totally unorthodox data channel, like ham radio, or satellite, i should be able to _easily_ pipe my traffic and updates to you, and do so in the git-style of replication: offline first + bursts of condensed traffic.

this is not rocket science. (this is rocket science: [https://www.youtube.com/watch?v=Pl3x71-kJGM](https://www.youtube.com/watch?v=Pl3x71-kJGM) :D) our problems are much easier to solve, and we __must __solve them.

<comment><USER18> It's definitely not rocket science and yes i agree that it has to be solved.

I think it's important to make it useful to the non-techie person, so they know that whatever they put out there is guaranteed to last, rather than having to pay for hosting and such. This is just enthralling.

Creating an open content creation platform that will let users to create and upload media and text without any fuss will make IFPS a very viable choice.

I think it's interesting to consider the architecture of websites and how a non-decentralized content service has forced a centralized, systemized design of websites. Websites nowadays put more focus on design and fluff than on linkability of content. Maybe the very idea of a website is mainly because it's served from a single server. You couldn't have it coming from a million places, so you had to ensure that everyhting looked consistent and similar within this site.

But now with IFPS, we can reconsider the web stack and typical web design. We can reduce the content to themselves only and allow these to be linked with other content so everything's closer to being true hypermedia.

We really don't need any fancy web templates (think wordpress, squarespace, etc) if we are to achieve true decentralization. Heavily designed websites prevent them from being "decentralized" as in being too systematized/tightly coupled. Do I make sense here?

I'm actually working on this at the moment. I'm working on making it easy to create decentralized web content. I want to say I can, with some help from you and others, integrate IFPS as the backbone of this. Keeping IFPS in the picture brings back the decoupled nature of content with the guarante that the links won't go out of business. Nobody has to pay for hosting, nobody has to worry about content anymore. The world just became our one huge hard drive!

</comment></comment></comment></comment><comment><USER19> Sigh. There's talk about how the Internet's "own internal contradictions [will] unravel it from within", but I'm not seeing it. The first time I can recall an "the Internet is doomed" prediction is 1995:

[https://en.wikipedia.org/wiki/Robert_Metcalfe#Incorrect_pred...](https://en.wikipedia.org/wiki/Robert_Metcalfe#Incorrect_predictions)

At this point, there are circa 3 billion Internet users, nearly half the planet, so I think we're well past the point where "ZOMG GROWTH N STUFF" is a reasonable justification for this sort of hype. The Internet's growth rate peaked in the 90s:

[http://www.internetlivestats.com/internet- users/](http://www.internetlivestats.com/internet-users/)

Now it's under 10% user growth, which seems entirely manageable.

<comment><USER6> Internet != Web. The Internet isn't broken, HTTP is.

<comment><USER19> Well, the article says Internet, but if you're proposing that instead it's the Web that will unravel from its own internal contradictions, could you explain how that will happen?

<comment><USER6> The major issue is that the Web is vulnerable to single-points-of-failure (unlike the Internet). Personally I wouldn't use the phrase "unravel from its own internal contradictions", but I think most people have been bitten by a SPOF on the Web, even though the Internet itself is robust to failures. IPFS is about making the Web as reliable as the Internet itself.

<comment><USER20> most websites need a shared database for all users. how do you decentralize them?

<comment><USER6> See [https://github.com/ipfs/notes/issues/40](https://github.com/ipfs/notes/issues/40)

</comment></comment></comment></comment></comment></comment><comment><USER21> This kinda makes me sick to my stomach -- essentially, she's saying that a peer-to-peer internet is great because companies will be able to have better uptime.

She doesn't even cover the clearly obvious economic aspects of this -- why would I run an IPFS node if it just benefits the company and not me?

<comment><USER4> (IPFS dev here) I think she does, but perhaps the discrepancy may be that she's got a different target audience: the established website owners? Also to be fair, there's not much space in these sorts of articles __LOTS __gets cut by editors and -- from having done something like this -- you have to hit this absuuuurdly high level and can 't sink into details much at all. I'm actually pretty surprised at the level of technical detail in this article -- i would've expected much more to not make it past the "remove jargon - write for the average user" media filter. I've done some interviews / articles that ended up annoyingly waaaaay more high level and completely missed my expected mark. You might want to write to the author, too. :)

<comment><USER22> The OP asks an interesting question though: why would I run an IPFS node if it just benefits the company and not me?

<comment><USER6> There will be incentives in the future, both in terms of promoting a good seeding/leeching ratio like bittorrent ("bitswap"), as well as [http://filecoin.io/](http://filecoin.io/)

<comment><USER23> And how would you deal with materials that could get you either dead or imprisioned? Can you elect not to host content? For example, in china, you have a situation where you can be materially affected by political content. [https://www.privateinternetaccess.com/blog/2015/10/in- china-...](https://www.privateinternetaccess.com/blog/2015/10/in-china-your- credit-score-is-now-affected-by-your-political-opinions-and-your-friends- political-opinions/) Or what if you happen to live in a country hostile to LGBT content, like russia or Zimbabwe, where it may be dangerous to host such content?

<comment><USER24> That is exactly what ipfs does, in contrast to e.g. freenet. Mirroring is opt- in.

</comment></comment></comment></comment></comment></comment><comment><USER25> This might mitigate some bandwidth problem, for sure, but how can this improve our privacy and the right to be forgotten? I think I'm missing something. Isn't this just a modern reimplementation of distributed hash tables that were researched circa 2005?

<comment><USER4> It's more than that, take a look at the other comments in this thread, like [https://news.ycombinator.com/item?id=10329236](https://news.ycombinator.com/item?id=10329236) and [https://news.ycombinator.com/item?id=10329221](https://news.ycombinator.com/item?id=10329221)

One interesting thing is you can have totally end-to-end encrypted applications, encrypt the application code and all the generated data.

Also, remember that the HTTP Web itself was a reimplementation of decades-old hypertext systems. Hypertext hails all the way back to Xanadu (60-80s!).

</comment></comment><comment><USER26> "We use content-addressing so content can be decoupled from origin servers, and instead, can be stored permanently. "

Why should I believe that claim? What are the incentives for storing my data in the network? As far as I understand, no incentivization is done for running the network. That's why I wouldn't trust it to store anything but a trivial amount of data.

<comment><USER6> Not yet, but this is planned: [http://filecoin.io/](http://filecoin.io/)

<comment><USER27> OK, why would I believe that IPFS is able to handle this issue better than the numerous other projects trying to implement incentivization? IPFS focus has been quite clearly elsewhere.

<comment><USER6> You're right, this isn't the only possible incentive system, and ideally IPFS will be compatible with multiple ones. Could you link to the other projects you're talking about?

<comment><USER27> Storj, maidsafe at least. There has been some talk about incentivizing tahoe- lafs AFAIK. I think from the altcoin camp there are also more projects.

<comment><USER6> There's been some talk of collaborating with those projects, so it's definitely a possibility. IPFS is more about tying together all the existing components in a nice way, rather than trying to reinvent everything itself. Please get involved if you have ideas about the direction that should be taken :)

</comment></comment></comment></comment></comment></comment><comment><USER28> cf. [http://named-data.net/](http://named-data.net/) and [https://www.parc.com/work/focus-area/content-centric- network...](https://www.parc.com/work/focus-area/content-centric-networking/)

<comment><USER4> (IPFS dev here) +1 o/ NDN is awesome. If any NDN devs see this, please reach out. We'd love to work with NDN on things-- we think we can generate lots of demand for NDN

</comment></comment><comment><USER29> Such articles should start by: IPFS = Internet Protocol File system

Just because it makes stuff clearer. Heck the project page could use some of that too ;)

<comment><USER30> It's Interplanetary.

<comment><USER29> My point!

<comment><USER30> Gah!

</comment></comment></comment></comment><comment><USER31> One milestone for IPFS: get past the point of the primary informational site about it (ipfs.io) being categorically blocked by corporate content filters as "blocked: peer-to-peer". It's hard to convey the vision within your corporation when you can't even share the primary informational site.

<comment><USER4> (IPFS dev here) wow, that sucks. is this blocked in your corp firewall? Any chance of talking to the sysadmins? Blocking IPFS is like blocking HTTP :/ :/ :/

We may have to move our gateway back off our main domain, and have a "recommended blocker", so that people don't jump on this.

Anyway, one piece of good news: despite everyone's belief about UDP transports never going through corp firewalls, QUIC now handles MOST (>60%, close to 80% i believe) of "Google Chrome<\-->Google sites" traffic across the world.

So, temp setbacks may be annoying, but in the end, once users install IPFS -- and once we have browser implementations, we can make all the traffic look like HTTP TLS flows, so blocking it will be very hard without also blocking regular HTTP TLS traffic.

<comment><USER32> > so blocking it will be very hard without also blocking regular HTTP TLS > traffic.

Many large or data-sensitive companies do SSL MiTM at their firewall so unfortunately that's not hard at all.

<comment><USER4> true, but then you're not in a {censorship, attacker} free environment at all -- MITMing TLS _is_ violating the security expectations of today's websites. I wouldn't even check my non-work email.

i.e. all bets are off. there will always be pockets. but over time we could win even there, as the perf improvement will matter.

</comment></comment></comment></comment><comment><USER33> For publishers, it's probably best thought of as a combination of a free CDN and the Internet Archive.

But I don't think it's going to take off until there's a way to take down files you don't want published anymore. Even with the Internet Archive, if you add them to robots.txt, they will take it down. [1]

Removing things from the Internet is always going to be imperfect since there will always be people who archive old copies of files (and that's a good thing). But the official software should honor retractions or mainstream publishers won't be interested.

[1] [https://archive.org/about/exclude.php](https://archive.org/about/exclude.php)

<comment><USER34> If Bittorrent has taught us anything, you don't need a publisher's permission for a technology to take off.

This'll most likely start as CDN endpoints (that no longer need an origin), and move on from there.

<comment><USER33> I didn't say it wouldn't take off with the Bittorrent crowd. Website owners and file sharers are different users with different concerns. Publishers already have CDN's so if they can't undo, this would be a downgrade.

</comment></comment></comment><comment><USER35> I recently learned about MAID SAFE-- [http://maidsafe.net](http://maidsafe.net) \-- but I haven't researched it much. I would be interested if someone could compare and contrast the two.

<comment><USER6> [https://github.com/ipfs/faq/issues/2](https://github.com/ipfs/faq/issues/2)

</comment></comment><comment><USER36> I'm a believer in this idea generally --- that we should replace applications built directly on IP/TCP with applications built on a content-addressed overlay network running on top of IP/TCP --- but I think the logic used here is faulty.

For instance: I'm not clear on how IPFS protects applications from DDOS. Systems like IPFS spread the load of delivering _content_ , but applications themselves are intrinsically centralized.

<comment><USER4> (IPFS Dev here) hey again tptacek! o/

> I'm not clear on how IPFS protects applications from DDOS. Systems like IPFS > spread the load of delivering content, but applications themselves are > intrinsically centralized.

Think about an application whose content is moving around entirely distributed by IPFS as well -- think of apps who run mostly on clientside, with signed (+ maybe encrypted) data generated on the users' browsers, with maybe a few "non- browser" nodes contributing to building indices or providing trusted oracles.

What we're taking about is a model for webapps in which not just the content, but the logic + processing is decentralized too. At one extreme are bitcoin/ethereum style applications, where everyone runs the same computation to verify it, and another extreme where everyone just computes on their own data + the data they care about, and sign all their updates.

How to do this well is not easy-- distributing the content is one part, another is making a really good capabilities library (Tahoe-LAFS has done an excellent job with this, for example, and e-rights has tons more great ideas). Another part still is thinking about the sync models with ephemeral nodes which create tons of small pieces of data, blast them out to content bouncers, and go offline. Building scalable real-time indices on this sort of stuff is going to be tricky :)

Another interesting area is thinking about how databases look once you do this-- think both NoSQL AND SQL models on top of IPFS. yep, may sound crazy, but we have some preliminary work towards this (NoSQL is easy, SQL is less easy, but very doable! -- after all a database is just a good datastructure and good algorithms for operating on it).

Happy to write more about this, it's a super interesting model we're exploring.

<comment><USER37> Not tptacek, but could you give a bit more on the contrast between Ethereum an IPFS. Also, what is your "version" of DNS? How can I map a human readable name to a file/connection and verify authenticity? Project looks awesome, checked it out briefly last time an article was posted. Excited! Thanks.

<comment><USER4> (IPFS Dev) Sure!

We divide naming in two parts:

(1) Providing a long-term reliable mutable pointer. (no consensus needed) (2) Providing a long-term reliable short and human-readable identifier. (consensus needed)

Where "long-term reliable" means i can rely on it for decades for important businesses. I.e. nobody will just take it from me by a fluke of the protocol.

IPNS, the naming system of IPFS, separates these into two steps:

(1) First, it makes a cryptographic name-system (this is based on SFS -- by David Mazieres -- look it up, fantastic system and a prelude to the core design of IPFS, Gnunet, Freenet, Tahoe-LAFS and many other systems). This cryptographic name-system means a "name" is the hash of a public key ("eeew that's ugly"\-- yes, hang on). That hash name can be updated only by the holder of a private key (how? via the DHT and other record distribution systems, more on that later). The important part is that it (a) does not require consensus at all, anybody can make names (it's just a key pair!), and (b) it can be updated really fast over DHT, Pub/sub (multicast) and other network distribution systems.

(2) Second, it delegates the human-readable naming to _other, existing_ name authorities (note that _stable global solutions_ to this problem require consensus). We don't want to have to make _our own_ naming authority, lots exist already: DNS, all the DNS alternate universes, and more recently in the cryptocurrency world: Namecoin, Onename, and even Ethereum is making one. So, _instead of adding one_, we just work with all of them, and integrate. You can bind an IPNS name (a public key path, like `/ipns/QmbBHw1Xx9pUpAbrVZUKTPL5Rsph5Q9GQhRvcWVBPFgGtC`) to a name in those authorities _once_, and never have to do it again. For example, with DNS you do this:

       1. setup a DNS TXT record like: dnslink=/ipns/QmbBHw1Xx9pUpAbrVZUKTPL5Rsph5Q9GQhRvcWVBPFgGtC
       2. continue using QmbBHw1Xx9pUpAbrVZUKTPL5Rsph5Q9GQhRvcWVBPFgGtC as usual.

You'd have something similar with Ethereum, Onename, Namecoin and so on: you just link to the IPNS name once. Now you can use your private key to update that name whenever without paying the cost of going on the consensus network. And So, resolving an IPFS url like:

       /ipns/ipfs.io
       -> /ipns/QmbBHw1Xx9pUpAbrVZUKTPL5Rsph5Q9GQhRvcWVBPFgGtC
       -> /ipfs/QmcQBvKTP8R7p8DgLEtKuoeuz1BBbotGpmofEFBEYBfc97

(Note at time of this writing, /ipns/ipfs.io links directly from `/dns/ipfs.io -> /ipfs/QmcQBvKTP8R7p8DgLEtKuoeuz1BBbotGpmofEFBEYBfc97`, not through IPNS, as this is good enough to run a static website for now, and it makes it more robust as we experiment with lots of IPNS things).

One more thing: resolving names via local-names and paths (i.e. a web of trust, using either SDSI style naming, or SFS's much nicer path version) is entirely possible and averts the requirement of consensus for meaningful human names. This is really useful and cool, and we will experiment with it in the future. But in general, this doesn't (IMO) give you the ability to do "global long-term reliable" names, as "jbenet" might mean something different to different segments of the network, so i couldn't _print_ the words "yeah, just go to `/jbenet/cool-site`" in _paper_, because there would be no global consensus for `/jbenet` and i would like to make sure all my references are viewable by anyone across space and time.

Hope this helps!

<comment><USER37> Really helpful. Thanks for the detailed response. Going to dev, do a few experiments with this. Good luck.

</comment></comment></comment></comment></comment><comment><USER38> It's a lot like BitTorrent - everything is identified by its hash.

Many of the claimed advantages of IPFS can be achieved with subresource integrity. If you use subresource integrity, files are validated by their hash. We just need some convention by which the hash is encoded into the URL. Then any caching server in the path can safely fulfill the request.

<comment><USER3> This isn't really a valid criticism of IPFS, unless you can point to a competing initiative which implements 'subresource integrity'. Alan Kay said that each object on a webpage should have its own URI way back in 1997, and yet here we are.

<comment><USER4> (IPFS dev) Yes! One of my explicit goals is to help get to Alan Kay's "one address for each object" goal.

</comment></comment></comment><comment><USER39> Podcast about IPFS with Juan Benet: [http://softwareengineeringdaily.com/2015/08/25/interplanetar...](http://softwareengineeringdaily.com/2015/08/25/interplanetary- file-system-ipfs-with-juan-benet/)

</comment><comment><USER40> "[...] Before it's too late"... But when will it be too late?

EDIT: OP changed the title, it was originally written as "Why the Internet Needs IPFS Before It's Too Late"

</comment><comment><USER41> Hey, _prometheus!

What's an email I can reach you at? I'd like to pick your brain about some of this stuff and how it relates to databases.

Cheers!

</comment><comment><USER42> Meh, it's a distributed static website thing.

Of course if one doesn't need transactions, everything is easier even today -- I mean, who doesn't use a CDN? It's a very similar concept.

The problem is much tougher when the content is personalized or when there needs to be a transaction.

This makes distribution a huge huge problem no one has solved yet (even a blockchain, IIRC can't really scale up in transactions...)

<comment><USER4> (IPFS dev here) Hey! Yeah, we're focusing right now on "distributed static websites" because those are really easy to get right and make work all over the network. However, what's _really_ interesting about IPFS is making completely distributed applications which can do their process unhinged from a single origin -- websites/webapps without an origin server. Posted more about this elsewhere on this thread, take a look: [https://news.ycombinator.com/item?id=10329221](https://news.ycombinator.com/item?id=10329221)

Also see the Neocities + IPFS blog post: [https://ipfs.io/ipfs/QmTVcD87Ecjps6wv9jMaGhvMuzZ2BgP6NyXDcnM...](https://ipfs.io/ipfs/QmTVcD87Ecjps6wv9jMaGhvMuzZ2BgP6NyXDcnMU74RELx/)

Take a look also at this talk, which presents different use cases for this: [https://www.youtube.com/watch?v=skMTdSEaCtA](https://www.youtube.com/watch?v=skMTdSEaCtA)

Can also see some of the random crazy things we're planning in [https://github.com/ipfs/notes/issues/](https://github.com/ipfs/notes/issues/) \+ [https://github.com/ipfs/archives/issues/](https://github.com/ipfs/archives/issues/) \+ [https://github.com/ipfs/apps/issues/](https://github.com/ipfs/apps/issues/)

(Edit: fix links)

<comment><USER43> Are you working with [https://unhosted.org/](https://unhosted.org/) at all on the unhinged apps concept?

<comment><USER4> not yet, but we should! will email them, thanks for ptr!

</comment></comment></comment></comment><comment><USER44> You can tell this is a great idea by how much some people hate it.

</comment><comment><USER15> I wonder if IPFS can access resources via Tor onion services.

<comment><USER6> [https://github.com/ipfs/notes/issues/37](https://github.com/ipfs/notes/issues/37)

<comment><USER15> Thanks. I'll test.

</comment></comment></comment><comment><USER45> >our rapidly dwindling connectivity

...

Sorry to be extremely obtuse, but since when has our connectivity been rapidly dwindling? It seems to have only been growing since the network launched.

<comment><USER4> (IPFS Dev here) Sort of, actually. The gist is that in general yes, the network is growing and getting better. But, there's actually a growing divide between the hyper-developed cities and ... the rest of the world.

One example is this: if your bandwidth is too low, or your latency too high, you basically cannot use the Web as it is today. Native mobile apps do __muuuch __better, because you download them once and can use them mostly offline or with low network usage. The reason this is "getting worse" is more of a perception problem and an artifact of this fact: storage is getting cheaper faster than bandwidth is getting cheaper. Over time, our media usage (and thus perceived requirements) grows and grows, tons of websites today are _several megabytes!!_ and all the media we use keeps growing to fit our nicer screens. Also, as more and more people come on line, and their usage increases, the networks saturate. This causes the "perceived bandwidth" to decrease, meaning that the pipes (which are getting absolutely better) can handle a smaller percentage of our individual load and thus "feel worse".

Then, there's are other stupid problems, like the fact that many major websites/webapps will be totally useless if you go over certain latencies (particularly with wireless meshes, meaning lots of packet loss). This is because the servers' request timeouts are way too low. I was recently traveling through _Europe_ and in many places (trains on the countryside or small cities) the mobile (and sometimes wired even!) latency was so high that i could not browse the web. TLS handshakes wouldn't complete. HTTP servers would give up on me. It was terrible-- as a person accustomed to LTE + fiber ("Aaaaahhhhhh the data!!!") I couldn't believe just how stupid and bad of an experience we're giving our users out there. This was Europe-- now transport yourself to Bangladesh, or many places in rural India where people are beginning to be plugged into the internet. Think of places where access to Wikipedia, to Khan Academy, to the messenger services, could make huge life- changing differences for people. Having a bad web _there_ is blocking people from having the amazing powers of communication and computing that we all get to enjoy.

We must fix these problems. And we're going to fix them by improving the data model and the distribution protocols, not with optimistic policies.

<comment><USER19> Do you have any data that indicates that network saturation is getting worse? My experience is the opposite.

Also, how would your protocol help your example of you riding on a train? I'm not seeing it.

</comment></comment></comment><comment> vezzy-fnord It seems like a pastime of TC is to write sensational filler articles out of the more questionable bile emanating from HN. See also "Death to C": [https://news.ycombinator.com/item?id=9477878](https://news.ycombinator.com/item?id=9477878)

<comment><USER4> (IPFS dev here) "questionable bile"? we'd love your technical feedback. We know we have a ton of things to do better -- but what sort of things are you thinking about? what can we improve on?

<comment><USER46> The core of the modern web isn't static: it's transactional, it's personalized, and it's end-to-end encrypted for both security and privacy. How does a distributed caching model accommodate such things? If it can't, how can it be a replacement for http? If it's not a replacement for http, is it at least better than current CDNs? If so, how?

It's hard to imagine you haven't already thought of these questions and answered them somewhere, but this non-article certainly doesn't address it or point to better resources (besides "buy my book!").

<comment><USER4> IPFS is not _just_ a static system. See the comments above: [https://news.ycombinator.com/item?id=10329221](https://news.ycombinator.com/item?id=10329221) \-- note that git ant bitcoin are "just static systems" as much as ipfs :). It turns out all content is "static", it's just "static content" that is "dynamically generated" at times-- the point being that you can still do all the dynamic stuff just fine, and use IPFS as a transport for the data.

</comment></comment></comment></comment><comment><USER47> This is a naive idea that is wrong is so many way. It keeps popping up recurrently and I don't understand why people didn't see yet that it won't be the next Internet revolution. Oh well!

Let me try to explain it again. The idea of content base key is strongly narrowing the application domain of the system. Modifying your information (I.e. typo correction) invalidates all the keys. More precisely, people holding the old key won't be able to access the corrected information. of course this model fails completely with dynamic data.

The other problem that is often overlooked with such idea is the function that translate your key into the location of the information. That is: determine the IP address of the server(s) hosting the information from the hash key of it. One needs something like a distributed index for that. Don't use an algorithm because you don't want to add the constrain that your informations can't be moved or replicated.

Another problem is staying in control of your information. An owner of information want to be able to fix or modify it, or delete it when he wants.

Finally, another naive idea is sharing a distributed storage. This is a nice idea but it simply doesn't work. Some People will abuse it. To avoid this you need a system to monitor and control usage. Accounting ? good luck. By the way, this is the problem of Internet today. It is a shared resource, but a few are consuming a hell lot of it and earning a lot of money without sharing back the profit. I'm looking at you google with YouTube.

I'm thinking and working on this problem for a long time. My conclusions are :

        1. Decouple keys from content
        2. Make the distributed locating index your infrastructure
        3. Optimize keys for index traversal
        4. Owner of information must stay in control of Information
        5. Owner of information must assume the cost of hosting

<comment><USER15> > 4\. Owner of information must stay in control of Information

Once you put something on the Internet, you no longer own it.

<comment><USER47> That applies to public information. But I consider an extended application domain with access control to information. In this case controlling the information host is required. It's all about the application domain you target. For sharing public static data, IPFS would do it. But that is a narrow application domain already covered by the web.

<comment><USER15> I'm arguing that anything not air-gapped is potentially public. One can encrypt, control access, and so on. But once it's out there, it's far^N more vulnerable. And of course, there's a continuum. Even air-gapped stuff can leak through side channels. And some approaches to online storage are quite robust.

</comment></comment></comment></comment><comment><USER48> There are better things than this hack on top of IP. It won't work. It cannot work because the basic underlying protocols mean that the overhead of routing and other meta-traffic will rapidly overwhelm the scale required for it to work. Can we please stop talking about IPFS as if it could actually work???

Check out Content Centric Networking (ccnx.org) from Parc for something that actually has a chance at being a real solution.

<comment><USER4> (IPFS author here)

It turns out that:

\- (a) IPFS already works

\- (b) IPFS layers over CCN extremely well AND generates demand FOR CCN. (i'm a big fan of CCN actually, and want to see it in more and more systems. But CCN has huge adoption problems. Look, we don't even have IPv6 fully deployed yet! So if all IPFS does is generate enough demand for CCN to be fully deployed, we've done a good job.)

\- (c) all the routing problems are very real, but can be solved just fine. If you haven't looked deeper at how IPFS __actually works __instead of short summaries, you 'll realize that the IPFS specs define the routing layer as entirely pluggable for this reason: we need to evolve to better and better schemes over time.

Instead of blindly saying "this cannot work", read more first. Understand the systems _goals_, decisions, and roadmap. Ask questions if you're unsure how something could possibly work. Lots of very smart people are working on IPFS and we're doing it because we see that it can indeed (and does) work. Blind negativity does not help CCN, and does not help anyone make better things.

<comment><USER48> I see the goals and I've seen these exact problems attempting to be fixed in similar ways many times. I think the goals and roadmap are great, but overly idealized. I also think it's important to be skeptical of claims of this sort.

That being said, I hope you're right.</comment></comment></comment>


Five SQL Server Tips - <AUTHOR> http://www.helenanderson.co.nz/five-sql-tips/ <comment><USER2> Some of these points need context. The point on truncating needs to also say that if you have foreign keys it will fail and that truncating really is something to think about since it's not logged. In a replicated environment the truncation will not carry over to subscribers.</comment>


How often do we make dynamic type checks [in ruby]? (Martin Fowler) - <AUTHOR> http://martinfowler.com/bliki/DynamicTypeCheck.html <comment><USER2> ... and while you're developing / debugging? I only know I do it a lot in any significant Python code. If there's a secret I'm missing, I'd be glad to know what it is.</comment>


Notes for a 2016 Democratic Campaign Eric Schmidt April 2014 - <AUTHOR> https://wikileaks.org/podesta-emails/emailid/37262 <comment><USER2> Funny thing is Eric recommending AWS for HC's campaign.

"The computers will be in the cloud and most likely on Amazon Web services (AWS). All the campaign needs are portable computers, tablets and smart phones along with credit card readers."</comment>


Android overtakes iOS in desired smartphone surveys - <AUTHOR> http://blog.nielsen.com/nielsenwire/?p=27418

<comment><USER2> The Android installed base is 37% but only 31% of smartphone buyers-to-be want Android to be their next phone. The iPhone installed base is 27% but 30% of users want the iPhone to be their next phone. Whether or not this indicates the strength of Android, or the weakness of Android, depends on how many of those polled already own a smartphone. If most of the polled group don't own a smartphone at all, then it's pretty good for Android. If the polled group reflects current smartphone market share, then iPhone looks relatively strong, because that would indicate more existing Android owners want to move to the iPhone than vice-versa.

Other factors may also play a role. For example, Android is now outselling iPhone by a two to one margin. Most of these sales could be to people who have never had a smartphone before, and they could be totally wowed by Android. So it would make sense that these users, when polled, would prefer another Android phone--after all, it's miles better than the dumb phone that they were previously using. They've never used an iPhone and don't see why they need one, especially given the higher price of the iPhone (most Android phones are cheap, relatively speaking).

<comment><USER3> I find the rationalizations made in these iPhone/Android threads fascinating. Not sure doing so is healthy though.

<comment><USER2> Agreed. One of the delights of ambiguity is that it allows one to project one's own prejudices into the data. Allow me:

For example, what does it mean that 31% of people want an Android phone but a whopping 50% of them buy one? Is it because the lower price is compelling undecideds to switch? Or is it because carriers promote Android in-store because the advertising rev. share is more profitable for them (see [http://paidcontent.org/article/419-androids-secret-sauce- goo...](http://paidcontent.org/article/419-androids-secret-sauce-googles- little-known-advertising-rev-share-deals-/)). Or is it simply that Android simply kicks ass? Or all three?

But, on the other hand, what does it mean that the Android installed base is 37% greater than iPhone, but Android browser share is only 10% greater? Does that indicate that some people aren't using the smartphone features of Android, and instead are just buying them as cheap phones with cool cameras and email?

</comment></comment></comment><comment><USER4> Some iPhoners have said consumers were preferring to buy iPhones because they are somehow superior. I think that the masses really just want to buy the new hotness. They want what the other guy has.

</comment><comment><USER5> Its interesting because Android was outselling the iphone when the iphone was the most desired platform. It wouldn't be surprising if android took an even greater market share lead in future.

</comment><comment><USER6> I'm excited to see that the populace at large (not just tech enthusiasts) are learning about something other than iOS, but I'd be wary of calling this a big win for Google or something similar. Remember that APPL is still raking in much more cash off of their iOS devices than Google is from Android. This is probably true even if you consider the indirect income Google sees from Android.

I think something more telling is that RIM is still slipping. Will they be able to recover?

</comment><comment><USER7> I find it hard to believe that 30% of potential mobile phone purchasers even know what Android is.

I would love to know how they performed this survey.

<comment><USER8> Why do you find it hard to believe?

You should adjust your belief to fit the available data, don't adjust the data to fit your belief.

<comment><USER9> _You should adjust your belief to fit the available data, don't adjust the data to fit your belief._

I would normally agree, but in my opinion, surveys fall into the "Lies, damned lies, and statistics" category. They hold the same value as apache-bench numbers that are posted every time a new webstack appears.

</comment></comment></comment><comment><USER10> That's interesting, but I suspect it was biased a bit by the affordability and ubiquity of Android devices. It's hard to turn around in a mobile store these days without bumping into a load of extremely cheap Android phones.

Perhaps people are planning to get Android devices but would love an iPhone if it was the same price. It's the same with cars. If you surveyed people most would say they plan to get a Toyota, but only because Ferrari is outside their price range.

<comment><USER11> Well, of course.

It has been argued for years that pitting Android against the iPhone is unfair because Android comes in so many devices at many price points whereas the iPhone is just that-- _the_ iPhone. There are just two models (the previous, and the current. It used to be just one until 2 years ago.), one hardware spec (with varying memory sizes, sure).

But that's the game Apple chose to play. They intentionally crippled themselves (even if they don't think so), so this is really a comparison of Apple's strategy vs. Google's strategy. And Google's strategy seems to be winning in some aspects.

<comment><USER12> Google and Apple aren't playing the same game. Apple doesn't care about market share, they care about profits. Google cares only about market share: the OS is free, they give search revenue to manufacturers and app revenue to carriers.

Both strategies are winning given their specific (and different) goals.

</comment></comment></comment><comment><USER13> ~45-50% of people want to vote republican, but only 1% will benefit (and those 1% are probably the only people who know and believe all the details and tricks). I'm not saying Android is evil, or wrong, but its adverts have to depend on less truth and internal/natural interest than iphone ads.</comment>


Research redefines lower limit for planet size habitability - <AUTHOR> https://phys.org/news/2019-09-redefines-limit-planet-size-habitability.html <comment><USER2> Looks like Harvard SEAS staff should read some Tufte to avoid making such terrible visualizations. Showing a single dimension change with three- dimensional objects is exactly what Tufte slammed Pravda for. Of course the researchers didn't write the press material, but we should be able to expect better from a major research institution.

</comment><comment><USER3> How do such small planets hold onto their atmospheres?</comment>


Show HN: Rando, a Simple Tool to Help Fight Your Filter Bubble - <AUTHOR>

I've been getting very concerned by the "Filter Bubble" effect in the recent past, so I created a quick tool to fight it - for Twitter users, at least.
"Rando Cardrissian" is a Twitter bot which selects headlines from a range of sources across the political spectrum, from Tea Party to Green. I'm intending to extend him to sample other controversial topics in the future too.
Then, every 15 minutes he Tweets one of those headlines without attributing its source. A URL is included, but it's obfuscated.
The intention is to create a "white noise" on your Twitter feed that is more representative of the entire discourse in the world than your local filter bubble.
He comes in two flavors:
@rand_o_card is the US version.
@rand_o_card_uk is the UK version.
I wrote a bit more about why I'm doing this and why I think it's a problem over on my blog - there's a link to that and to the two Twitter accounts above in a comment below.
Have a look and let me know what you think! <comment><AUTHOR> URLs:

[https://www.twitter.com/rand_o_card](https://www.twitter.com/rand_o_card) \- US version

[https://www.twitter.com/rand_o_card_uk](https://www.twitter.com/rand_o_card_uk) \- UK version

[http://www.strangecompany.org/how-to-fight-the-filter- bubble...](http://www.strangecompany.org/how-to-fight-the-filter-bubble-new- twitter-app-thing/) \- more explanation of what a filter bubble is and why you might care.</comment>


Easel JS Simplifies Working with Canvas in HTML5 - <AUTHOR> http://gskinner.com/blog/archives/2010/12/easel-js-simplifies-working-with-canvas-in-html5.html <comment><USER2> Nice new addition to this already great list: <http://news.ycombinator.com/item?id=2109823></comment>


Chinese scientists are creating CRISPR babies - <AUTHOR> https://www.technologyreview.com/s/612458/exclusive-chinese-scientists-are-creating-crispr-babies/ <comment><USER2> On the one hand, hurray for them for trying to eliminate a couple of quite serious diseases.

On the other hand, we have very little clue what the long term effects of not having CCR5 will be for these children. Furthermore, do we really trust China to start messing with people's DNA? I could think up several uses for this that are downright dangerous in the hands of a country like China.

Some of them:

\- Remove a key gene in a metabolic pathway which can be mitigated by dietary supplements, creating a biological dead man's switch in order to make it easier to control the population.

\- Inserting a viral genome into the host genome (preferably also under some deadman's switch), creating in effect a biological weapon

</comment><comment><USER3> They have no ethics whereas it is for privacy or human tests. Of course having no ethics is the easy way to get a technological advantage over others that have some. And it's going to drive all country to do the same (like how US and China surveillance drove other countries to do the same). It's sad to see the world going towards exactly the dystopia described in sci-fi : total surveillance, data about anyone's whole life, AI discriminating people in their everyday life based on those data, and soon some people stronger / more resistant / more handsome than other because their rich parents payed the prenium gene editing package (and how many failed-babies experiment to get there ?).

But people are happy about it because less terrorism and less diseases right ?

</comment><comment><USER4> So, to take this to a logical conclusion...

Their Social Ranking is used to identify individuals with appealing DNA, and that DNA is used to make future model citizens.

</comment><comment><USER5> The Chinese are so advanced... I get the feeling with how rapid they are that we're going to be following in their footsteps rather than leading.

<comment><USER6> They are not more advanced technologically, this is being further advanced culturally/ethically/regulatory.

Of course those advances could over time lead to a technological advantage. For instance if they find a way to improve intelligence that could be a runaway advantage.

<comment><USER7> The average iq in asian countries are higher than average in western. Combine it with capitalism, and this is already an advantage for them.

<comment><USER8> Can you please cite a source?</comment></comment></comment></comment>


Value First, Price Second: Making good decisions in life and software development - <AUTHOR> https://www.zacsky.com/blog/2017/6/value-first-price-second <comment><AUTHOR> This is a constant challenge I have faced in leading software development teams...

The tendency, especially early on in a product's lifetime, is to think everything is a top priority and therefore rely on the development estimates (i.e. price) to decide what to build next. But that's like looking at the restaurant menu and picking the pumpkin soup and the tofu burger because they are cheapest when your customer would actually prefer to wait and just get the delicious steak.</comment>


Yosemite agrees to change the names of its locations to appease trademark troll - <AUTHOR> http://boingboing.net/2016/01/15/yosemite-agrees-to-change-the.html <comment><USER2> This is absolutely ridiculous. National parks are supposed to belong to all us, and the names are something I personally feel a strong emotional connection to. This company's behavior makes me sick.

<comment><USER3> _This company 's behavior makes me sick._

They're just trying to make a buck. What makes me sick is that it looks like they will get away with doing it.</comment></comment>


Google Wave will continue as Apache Wave - <AUTHOR> http://www.readwriteweb.com/archives/google_wave_will_live_on_as_apache_wave.php

<comment><USER2> Dup: <http://news.ycombinator.com/item?id=1977508></comment>


Vim as an IDE - <AUTHOR> https://blog.jez.io/2015/03/03/vim-as-an-ide/ <comment><USER2> No.

Step 1: Those two lines are completely useless.

Step 2: How about explaining those settings?

Step 3: Enabling the mouse for what, exactly? Is that necessary for using Vim, as an IDE or not?

Step 4: What is Vundle? Why is it necessary? Why Vundle and not the alternatives?

Step 5: That part is completely useless.

Step 6: Vim already has a file explorer. How about explaining why you think people should install a second one? And why this one and not the other alternatives?

Step 7: How about explaining why you think a huge plugin is needed for syntax checking when Vim already has everything needed? And why this plugin and not the other alternatives?

Step 8: Why is that useful? What about the built-in features?

Step 9: Again, why a plugin and why this one specifically?

Step 11: Why gitgutter and not a (much better) alternative? And why do you think it's a good idea to do version control stuff in your editor in the first place?

Step 12: How is that useful?

Step 13: How is that useful?

Step 14: That plugin is only useful if you use tmux which is itself of limited usefulness outside of a couple of very specific use cases… that you didn't talk about.

Step 16: Is that a joke?</comment>


Guitar Machine - <AUTHOR> https://www.media.mit.edu/posts/guitar-machine/ <comment><USER2> This guy probably has the best guitar machine I've ever seen. He's also made accordion machines:

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

<comment><USER3> Thanks for that link. This is the approach I've been interested in for a long time, it has the ability to play things that a human never could (the size of and number of fingers on the human hand limit the chords you can achieve). But it's pretty decisively the machine playing there. The human participation element in the MIT version is a very interesting addition.

I think a combination of their software and body-side mechanics with the Russian fretboard apparatus could do some really interesting things sonically. But it would still be less fun to play than the MIT guitar in its current form.

</comment></comment><comment><USER4> So functionally it's roughly equivalent to a Gizmotron [https://www.gizmotron.com/](https://www.gizmotron.com/) with extra solenoids to push the wheels up and down. Actually the Gizmo is better in several respects: it doesn't block the fretboard (though it can be an obstacle for the picking/plucking hand), doesn't prevent string bending and by now seems to have a less staccato and less harsh-sounding string activation.

<comment><USER5> It has a drive shaft, worm gears, and a single motor. Seems like an odd design. I wonder if I can build similar device using a 6mm DC motor for each string and some gears to crank up the torque?

</comment></comment><comment><USER6> AI augmentation, human-machine symbiosis, etc, are definitely interesting.

What's up with vimeo though? Almost 2020 and it still doesn't work properly. I don't think I've ever played a video without constant stutters, buffering, etc.

Letting it play all the way through in order to buffer the whole thing, so that you can play it again, this time 'preloaded', results in it starting the download over - arrghh!

<comment><USER7> I'm always pleased to see vimeo due to higher quality video, and lack of buffering, unlike youtube, which does buffer for me from time to time. So we definitely have very different experiences.

</comment></comment><comment><USER8> But does it _Kill Fascists_ ?

<comment><USER9> Yes, with deep learning model of Woodie Guthrie style and intention.

</comment></comment><comment><USER10> This could spice up the next Tame Impala[1] or St. Vincent[2] tours.

Mentioning them because both Kevin Parker and Annie Clark tend to be interesting in their guitar engineering, while creating popular, accessible and increasingly synth-driven pop/rock.

1 - [https://youtu.be/E2mNdT43M8o?t=366](https://youtu.be/E2mNdT43M8o?t=366)

2 - [https://youtu.be/3I89orRWN7I?t=153](https://youtu.be/3I89orRWN7I?t=153)

</comment><comment><USER11> reminds me of the Wintergatan Marble Machine

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

<comment><USER12> I'm fond of this Lego acid house machine: [https://www.youtube.com/watch?v=Fat8ptpiufA](https://www.youtube.com/watch?v=Fat8ptpiufA)

</comment></comment><comment><USER13> Pat Metheny's Orchestrion project may also be of interest here.

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

</comment><comment><USER14> Why not. This will make some interesting music.

</comment><comment><USER15> djent players love this one weird trick

<comment><USER16> No need for tricks when all you need is a broken trampoline and a mic to record djent.

</comment></comment><comment><USER17> I have effects pedals that do the same kinds of things. Its more or less an mechanical synthesizer.

</comment><comment><USER18> Can anyone identify the wireless communication chip they are using?

</comment><comment><USER19> I think Leo would get a kick out of this, also Les.</comment>


Early Retirement is a False Idol - <AUTHOR> http://www.37signals.com/svn/posts/1121-early-retirement-is-a-false-idol

<comment><USER2> This is a classic strawman. Most people I know who are aspiring entrepreneurs don't despise their current work and think everything will be roses after they've made a lot money. Most just want enough money so they never have to worry about it again. It's a question of _security_ and _flexibility_.

 _Choosing_ to work doing something you love is worlds apart from _having_ to work doing something.

<comment><USER3> _This is a classic strawman._

I don't think you're using that word correctly. The person works 80 to 100 hours a week and is miserable is a strawman? That's odd, because I've met so many of them. I've _been_ one of them.

Which is not to say that there aren't a few people in the world who want _nothing more_ than to work 100 hours a week. If you are one, good luck with that.

 _Most people I know who are aspiring entrepreneurs don't... think everything will be roses after they've made a lot [of] money.

Most just want enough money so they never have to worry about it again._

Am I the only one who sees a contradiction between these two sentences?

And just how much is "enough money that you never have to worry about it again"? I know people with _no_ money who never worry about money, and I know people with _pots_ of money who worry constantly. The worry has very little to do with the amount of money. _The worry comes from you._

DHH is suggesting that one way to be happy is to get a job you like, work a sustainable number of hours, live within your means, and then _stop worrying about it all the time_. You've got an education, a skillset, and a salary that is the envy of the world, so _what are you so afraid of?_

<comment><USER2> I may be mistaken, but I'm not using the term "strawman" incorrectly. I believe his portrayal of an overly extreme and super naive entrpreneur is intentionally used so that it's easily refuted. How many startup founders feel the work they're doing is so unbearable as to consider it "evil"?

> _I know people with no money who never worry about money, and I know people > with pots of money who worry constantly._

This seems really bogus. I know poor people, wealthy people, and ultra rich people. The kinds of things they each worry about are totally different. Sure, they may all technically "worry" about money, but that's where the similarity ends.

> _You've got an education, a skillset, and a salary that is the envy of the > world, so what are you so afraid of?_

A serious medical condition with myself, a family member, or a friend. Generally any problem that would prevent me from being able to work for an extended period of time. You don't have to be paranoid to worry about this. Unfortunately, it's just not that rare.

More personally I'm afraid of having to significantly limit my interests to fall within relatively limited amounts of expendable time and money or to things that are profitable.

<comment><USER3> "Strawman" implies a fictional or marginal debating opponent. You may believe that burnout is more rare, or less rare, but it's not fictional. People really do (try) to work 80 to 100 hours a week, it's not really that rare (I have several friends who are doing it right now), and it really does burn people out.

Fortunately, burnout is usually cureable. And it's a great learning experience. One learns how to avoid it in the future.

 _A serious medical condition with myself, a family member, or a friend._

Insurance. Yes, the insurance market in much of the USA is hideously broken, and so it might cost quite a lot. But I assure you that, for most people, it is easier, cheaper, and surer to get disability insurance than it is to become independently wealthy.

(For many people, it's probably easier to _become a citizen of a country with a better insurance system_ than it is to become independently wealthy. I wouldn't recommend that strategy to just anyone, but if that's what it takes to stop worrying...)

 _I'm afraid of having to significantly limit my interests to fall within relatively limited amounts of expendable time and money..._

Well, some people solve this problem by having _no outside interests at all_ , working 80 to 100 hours a day until they become rich. That's one method.

Other people take out insurance: They work a little, but then they play a little. That helps hedge against the prospect that you'll die of a stress- induced heart attack, or succumb to RSI and become disabled, before you get rich. If that happens you'll never get to play at all. Or, if your hobby is "having kids", it gives you a chance to pursue it before you grow too old.

</comment></comment></comment></comment><comment><USER4> I'm going to go out on a limb here, and say that most startup founders (those who stick with it, anyway) enjoy it a lot more than a 9-to-5 job or consulting work. In this context, then, the smallest value of "early retirement" really means "never having to take a 9-to-5 job or do consulting work again", not "never doing anything productive ever again".

<comment><USER5> But you don't have to do a 9-to-5 job or consulting work ever if you don't want to. You are working on a startup now and you don't have millions, I presume. There are endless possibilities for earning money in this world that are not mindless 9-to-5 jobs.

</comment></comment><comment><USER6> Early retirement is a euphemism for "fuck you" money. That's what people really want.

<comment><USER7> I assume that refers to dropping the F-bomb on the (lame|stupid|unappreciative|mean) boss that you toiled under pre-retirement.

Now, if you got your money from doing a startup, who gets your F-bomb? :P

<comment><USER8> Depending on how much you hold a grudge...

Everyone who picked on you at high school, everyone who picked on you at primary school, the disapproving family members who told you to go get a real job, the insecure best friend who constantly undermined your confidence, and generally anyone who ever doubted your ability to finish what you started in style.

At least, that's my motivation. It may not be very healthy, but it gets the job done.

<comment><USER9> Scary how true that is too me.

But I most of all want to create something to help people and I get very satisfied by solving problems.

</comment></comment></comment></comment><comment><USER10> Why retire after your startup succeeds? Why not just start doing something fun thats is not easily monetizeable? The idea is that you can have some real freedom. You can work on whatever you want. You can start another startup or continue your education or anything you want you can even start a music band or go traveling or anything that you find fun. Thats why people love money. They are a means to something, not a goal. You don't just get rich and then live some happy rich life, you get rich and get to do whatever you like, if you get rich enough, you could ignore laws too. I know a lot of people who if given a lot of money their first reaction would be to buy a lot of booze and celebrate. I have a friend who if given that amount of money would buy a biology research center and just play god with nature. My first reaction would be to buy a turn table and some 70's punk records or something, and then maybe a guitar. People want different stuff. And money gives it to them.

</comment><comment><USER11> It's too bad they perceive long hours at their job as a chore -- and they must since they are prescribing both short hours and four-day work weeks. When I'm in the groove doing something _I truly love to do_ , then 16 hour workdays fly by as if they're perhaps three or four hours in duration and in those moments, there's _nothing_ I'd rather be doing more -- including sleeping. I've been in that grove at my own startups and working for a big company where there's no chance that my efforts will translate into a pot of gold. And I love it.

Funny thing is, you seldom hear people give that advice to obsessed painters, sculptors, musicians, etc. Why? Because artistic passions are viewed differently than "jobs." But, what if your job IS your artistic passion? Why shouldn't entrepreneurs be viewed as "artists" instead of "workers?"

<comment><USER12> i'm assuming 37 signals doesn't kick people out of the building and/or prevent them from doing extra work at home. But it's nice to have the option to work 4 days a week and short hours.

</comment></comment><comment><USER3> _If you come to the realization that work in itself isn't evil, you can stop living your life as a waterfall-planned software project._

This simile is awesome.

</comment><comment><USER13> It's like 37signals is writing blog posts to specifically reply to news.yc posts...

<comment><USER3> It's a good idea. One that I need to do more of, really... my blog is echoingly empty, but it's not as if I don't write. I just do most of my writing here.

I should really do more blogging and less news.yc, or crosspost my blog entries as comments, or vice versa.

<comment><USER14> I think posting your comments as blog entries is of more service to the news.yc community than the converse.

</comment></comment></comment><comment><USER15> The vast majority of people do not like vast quantities of leisure time. They get bored. I do not get bored. I have never been bored nor will I ever be bored. I have never been wanting for things to do. I have never had too many hours in the day and not enough to do. People whose time isn't valuable can't understand someone like me. Every second of my time is valuable, not in a DOLLAR value, in a personal value. I have vastly many more interests than I have time to indulge all of them. Work is a cancer on my life.

</comment><comment><USER16> i dont like the do what you love and you will never have to retire saying...

Many of my hobbies and things I do for fun are not monetizeable.

<comment><USER17> Do what you love is not "do what you would do if you had infinite money". If I had infinite money I would be heli-skiing every day. That is not monetizeable. I could be a ski instructor for a lot less, but that is not what I want to do. So moving down to one of my interests, robotics, I work for a company doing close to that. Thus I'm happy at work.

I guess by extension if you did what you loved most we'd all be porn stars. It is more about doing something you like.

</comment></comment><comment><USER9> The point of a big score is not to retire.

It is having the privileige of not having to worry about money and being able to do exactly what you want.

If I sold a company for 200 million dollars I'd give half of it to charity, keep 10 millions as my own money and then put the rest in some big hard interesting project.

<comment><USER18> Couldn't you just do exactly what you want in the first place?

<comment><USER19> No, since the big hard project might require lots of money to do. Normally, money has strings attached (must be paid back, must give equity in a company with potential for liquidity, etc) which restricts what you can do. Do you think pg could have started YC w/o his ViaWeb $$? Or could tlb start AnyBots? Sure, you can work on stuff like that in your spare time, but huge projects usually require a bigger commitment than fits into spare time. Not having to sacrifice time or focus on earning money gives you a whole lot more to throw at a problem.

</comment></comment></comment><comment><USER20> It does seem like 37signals is responding to HN...

Anyway. If done right; Work is a hobby that makes you money, and a hobby is work that costs you money. Why retire when you can make money working on a hobby?

<comment><USER21> thats the way to think about it! - I don't think its healthy to do anything for 90-110 hours a week, no matter how much you enjoy it

</comment></comment><comment><USER22> I think the end of Frost's "Two Tramps in Mud Time" <http://www.etymonline.com/poems/tramps.htm> captures my sentiment about retirement

      But yield who will to their separation,
      My object in living is to unite
      My avocation and my vocation
      As my two eyes make one in sight.
      Only where love and need are one,
      And the work is play for mortal stakes,
      Is the deed ever really done
      For Heaven and the future's sakes.

</comment><comment><USER23> is there a real correlation between working 100 hours weeks in isolation and earning enough of a "jackpot" to retire? the people who i know who _did_ make enough to retire (if they wish) almost all still have friends and families (caveat: if they didn't have friends, they would also be less likely to know me).

both the post (and the sentiments) that inspired seem to be based on false premise: you can't, realistically, expect a jackpot in one year. working 100 hours won't create a jack pot for you either (but it may alienate those who are likely to increase your chances - co-founders, employees and helpful friends).

</comment><comment><USER24> _If you come to the realization that work in itself isn't evil, you can stop living your life as a waterfall-planned software project too._

Nothing wrong with "waterfall-planning" if it's done properly. Problem is, it usually isn't.

I understand that sometimes you need to release early and often. This is when you _can't_ conduct proper anaysis. Why not? Because you're trying for a home run building something big and you don't know where your project will take you or who will eventually use it. Like a Web 2.0 or social site.

But for the rest of us, "waterfall-planning" is just another name for the Systems Development Life Cycle (SDLC), which is an _excellent_ way to develop systems. But you _must_ conduct analysis first. You must answer the question "what" before you examine the question "how".

Most developers _do not_ know how to do this. How can you tell? When their waterfall phases take too long (more than a month for analysis for most projects). When they say things like, "The user doesn't know what he needs." Yes he does. You just have to keep digging until you know.

Once a good programmer learns how to conduct analysis he becomes a good developer. Then projects become like shooting fish in a barrel. You biggest problem will be convincing your customers that you can do what they think can't be done.

<comment><USER18> You've just highlighted everything wrong with the waterfall method, and the SDLC for that matter.

You said it yourself: Most developers don't know how to perform the level of front loaded analysis required for a successful SDLC project. Ergo, "most" waterfall methods fail miserably. The method is out of sync with how humans work.

When your process boils down to creating a team so elite that they would succeed regardless, it's not much of a process.

<comment><USER24> _The method is out of sync with how humans work._

Wrong.

The method works perfectly when done properly. _Because_ it's perfectly in sync with how humans work.

So why don't most people know how? 2 possible reasons:

\- All we really have to do is stay one step ahead of the users. So we don't have to be very good.

\- The field is so young we still don't have adequate well-established standards and procedures. Imagine "release early and often" as the standards for law, medicine, or bridge building.

I've heard this argument too many times from people who have never done it right so they think it can't be done.

<comment><USER18> Your argument is contradictory and therefore self-defeating.

If the method was in sync with normal work patterns, we wouldn't be having this discussion.

</comment></comment></comment></comment><comment><USER25> "False idol"? Work until you drop? DHH must've been raised Catholic. Or, wait, Protestant.

I'll do what I want to do the way I want to do it, thank you very much Mr. Hansen.

<comment><USER26> I think it's just a figure of speech. You are reading in to it a bit too deeply.

<comment><USER18> ...or not reading at all.</comment></comment></comment>


United States of Porn: Gov sites abused to get SEO by porn sites - <AUTHOR> https://www.bleepingcomputer.com/news/security/us-government-sites-abused-to-redirect-users-to-porn-sites/ <comment><AUTHOR> Abusing open redirects on many government sites including Weather.gov, spammers get easy organic SEO for porn sites.</comment>


How I Made It: Marissa Mayer, Google's champion of innovation and design - <AUTHOR> http://articles.latimes.com/2011/jan/02/business/la-fi-himi-mayer-20110102 <comment><USER2> I can't _believe_ Marissa Mayer is getting any hate here.

She talked at Stanford and her genius was evident.

She is intimidatingly smart and has business sense most people can only dream of.

The fact that she has been doing it for 11 years for virtually all of Google's products only further proves her prowess.

</comment><comment><USER3> I'm personally in awe of what Marissa has been able to do at Google. We had a small billing error with Google once and she personally signed off on the check.

I'm not entirely sure how she is able to stay involved with as many different products and services as she does. It's a remarkable ability.

It's why when she switched over to managing the Local team, we all knew that Google was finally getting serious about this category.

</comment><comment><USER4> I was just thinking today while wrestling with a Google presentation doc that the _UI_ sucks, as does the UI of many Google products. Yesterday I was wrestling with the Picasa Uploader.

However the totality of the _UX_ is ok, since I really need to share the information and that part works ok. In fact it is surprising how much suckiness I will tolerate in that tradeoff.

Sorry if this has nothing to do with Marissa Mayer. The only thing I know about her is that I keep hearing her name and seeing her picture, which is not unpleasant. Also, the original Google page was a miracle of minimalism in an era that gave us the Flash intro. If that was you Marissa, then thanks. Otherwise I owe another apology to someone.

</comment><comment><USER5> Under her watch google made several design changes which were direct copies of bing, I would be embarrassed if i was her.

<comment><USER6> Like what?

</comment></comment><comment><USER7> I can picture it, Marissa as employee nr. 20. "I really want to try this design thing". "Okay, you can do the page layout, while we code". Then, with Google's success, the design became a success, which in turn lead Marissa to a star designer - without much other merits.

No?

<comment><USER8> I can't help but notice that, with nothing in the way of demonstrable evidence, you are _presuming_ a female engineer to be incompetent and referring to her by her first name to boot. You're further implying that design is trivial work ("Okay, you can do the page layout, while we code"), subordinate to the real labor of coding. The general consensus I've surmised on HN is that design and UI are crucial for adoption; do you believe that Google's success was independent of the way that users used their product?

And if the public face of the world's most powerful search company has your imprint, isn't that _ipso facto_ evidence of merit? If design was in fact irrelevant, how could _any_ number of successful designs ever constitute evidence for the skill of the designer?

<comment><USER9> I don't see anything in the OP's comment that suggested a presumption of automatic female incompetence.

Design in many realms is not trivial work. At Google, at present, it is by no means trivial work. But one should bear in mind that consensus converges on Google's initial success as being predicated almost exclusively on relevance of results far more than any other factor.

Google destroyed Inktomi and AltaVista with a better search engine, not with a better interface.

<comment><USER10> His comment is written in a quite snide and belittling way. It's hard to avoid feeling that he either has a low opinion of Marissa Mayer personally, or female engineers in general.

Also, I would argue that while Google was indeed a better search engine, its clean minimalist design and fast loading times also did a lot to differentiate it from Altavista and Yahoo.

</comment></comment></comment></comment><comment><USER11> I'm not entirely convinced "Google" and "design" belong in the same sentence, unless we're talking about their original no-frills homepage and search results, before adwords and instant and live preview.

<comment><USER12> The "design" of the original Google search page was not so much in the aesthetics as the loading time. Every other search engine piled on decoration and most users had 56K connections. She was the one who convinced the founders not to imitate the other search engines, not to be portals, just let people search as quickly as possible.

That might have been more important than their search results in many cases. Design doesn't get better than that.

<comment><USER13> It's often hard to look back and attribute success to the things that one _did not_ do. I think this more than anything is Marissa Mayer's problem here on HN - it's tough to publicly point to anything she _did_ , except play the totally critical role of saying no a million times over. Few people can do that, fewer still are right.

<comment><USER14> It seems that people who say no for a living—designers, directors, critics, even big-league VCs—all fare poorly on HN. I wonder why that is?

<comment><USER15> Because HN is filled with prospective entrepreneurs and innovative software engineers, and these people need to say "Yes" in order to do their job.

Startups would never get off the ground if their founders said "No" to everything. The next great idea would be killed long before it could be developed enough to prove its worth.

The critical piece is being able to say "Yes" to everything early on, and then critically look at everything you've said "Yes" to once they're on the table and say "No, no, and no" to the vast majority of them.

</comment></comment></comment></comment></comment><comment><USER16> Who is this Marissa Mayer person? I've never heard of her before...</comment>


Tim Cook Admits Apple Has Stopped Growing In North America - <AUTHOR> http://www.businessinsider.com/tim-cook-apple-has-stopped-growing-in-north-america-2014-2

<comment><USER2> Cook astutely points out the category of "smartphones that function as or are used as feature phones", but the author's interpretation of this is quite naive. Yes, Android phones primarily make up this group, but they are also represented strongly in the "real smartphones" category by particular models and vendors: Samsung Galaxy S4, etc. To think that Apple is ignoring this threat is laughable. They simply recognize that people buying free-on-contract smartphones who are basically indifferent to their advanced functionality are not their customer. Competing with those devices is not a priority. If you're not a flagship phone from Samsung or LG (or a random few others), you aren't competing with iPhone. This is just reality. Furthermore, as phone sales remain predominantly subsidized in the U.S. the price difference is immaterial to market share and allows Apple to enjoy its huge margins compared to most everyone else.

Apple has locked up profits in North America quite effectively and will no doubt focus on maintaining its share of the market, but further growth will have to happen in other markets. The question is, what does Apple have planned to address other markets? And what will the impact of new market segments be on this growth?

I can understand the merit of these questions as a stockholder. To me though the disappointing aspect is that having built one of the most efficient cash generating machines imaginable, Apple hasn't seen fit to pursue a "Big Idea" that could only be realized with such an impressive cash hoard. Dividends seem so depressingly ordinary for what was so creative a company.

<comment><USER3> My question after reading the article is: is this bad? Is it a terrible thing that they're not growing in the USA? Apple is huge. What's really achieved by them being even bigger?

Is growth for growth's sake important?

If they continued to generate $billions each quarter, make great stuff, delight consumers all over the world, and did it for the next 20 years, I'd call that a roaring success personally.

Granted, that wouldn't make me want to buy their stock. But Apple don't seem to care about that. If their stock crashed, they'd probably take advantage of it and buy loads back, with their piles of cash. As long as they're making great stuff, in my book, that's enough.

Apple, to me, seems like a company that really should be held in a trust, or owned by its employees. Its goals seem kinda incompatible with the market and Wall Street.

<comment><USER4> Because "stopped growing" might easily convert to "started declining" soon (a part of which is evident by the sales charts shown in the article). And that'd be worrying for them.

</comment></comment></comment><comment><USER5> It's the law of large numbers - you can't keep growing forever, and that's clearly what's happening in the US. They're still a wildly profitable company, though, and there's plenty of room for growth in emerging markets like China.

<comment><USER6> of course yo can keep growing forever... just keep inovating.

</comment></comment><comment><USER7> Thank You for stating the obvious.</comment>


Trip Advisor couple 'fined' £100 by hotel for bad review - <AUTHOR> http://www.bbc.co.uk/news/technology-30100973

<comment><USER2> Duplicate of [https://news.ycombinator.com/item?id=8629019](https://news.ycombinator.com/item?id=8629019)</comment>


Marc Andreessen on Ning - <AUTHOR> http://blog.pmarca.com/2007/07/why-ning.html <comment><USER2> didn't see a submit and vote widget (didn't look too hard though). for me, this is a killer ap of forging a community.</comment>