Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

  Here’s the problem with IP addresses: there aren’t enough of them....
  As a consequence, the Internet has allowed intermediate
  computers to rule. These are like parasites that have grown
  too large to remove without killing the host. The technical
  flaw that favored intermediate computers prefigured a world
  where middlemen business models thrive.
The handwave is the word "prefigure". How did IPv4 and NAT play any role in the dominance of Facebook, Airbnb et cetera? This is an analogy masquerading as an argument.

  It is not fundamentally necessary to have any intermediate 
  company profiting whenever a person reads news from their 
  friends, rents an apartment from a stranger, or orders a 
  ride from a driver.
The author provides no evidence that the services of Airbnb, Uber etc. have no value added. These companies carefully designed interfaces to help us find what we need. If they did not add value, we would still be using newsgroups.


>How did IPv4 and NAT play any role in the dominance of Facebook, Airbnb et cetera?

Very directly, I would say, by making the barrier to running your own low-traffic website too high. Modern social media is all about hosting content - microblogs, photos, etc. Geocities was an early workaround to an inability to host things, and it's worth remembering that MySpace was originally positioned as a kind of evolution of that with the social aspects bolted on - it (notoriously) allowed arbitrary HTML, so that you could make your own "homepage" on the internet. Facebook further evolved this, offering a much more restricted experience. Were it not for NAT, I would have expected an explosion in tiny self-hosted personal sites around the time that dialup was replaced by always-on cable connections, and before long we would probably have had various wordpress-like frameworks to do the social aspects. Which is not to say we wouldn't have eventually had a Facebook-like entity, but it would have faced much stiffer competition than it did, and people would perhaps have been less forgiving of its restrictions if they'd had an easily-accessible wild-west to compare it to.


I don't get this habit of always blaming every problem in the world on NAT.

NAT has (almost) nothing to do with that.

The real reasons are twofold.

1. As others mentioned, the work of maintaining a self-hosted service. Nowadays you can add two extra related problems: people expect reliability (which is difficult and costly to provide, for a hobbyist or a lambda), and Internet has become an hostile territory you must defend against all time (it's "cavemen meet Wild West" level of civility, all day long, no rest).

2. The main problem with self-hosting, is that the throughput is often asymmetric, and rightfully so. From 75/1200 bps modems to ADSL, we have always needed more download than upload so systems were designed that way. When we write one message, we read hundreds of messages from hundreds of people, when we upload one picture, we watch a thousand of them, and so on. When you self-host, you reverse the roles, and your access is very quickly saturated, it gets unsuitable as soon as you have a few connexions.

Just enable the port-forwarding feature of your Internet Box, and you can host what you wish on your server(s); it takes 2 minutes in its web interface and NAT 'problem' is solved. But the other two remain.


The barrier is from the tools, not NAT. Maintaining your own server is prohibitively difficult for pretty much anyone besides niche technology enthusiasts or IT professionals.

> Were it not for NAT, I would have expected an explosion in tiny self-hosted personal sites around the time that dialup was replaced by always-on cable connections

NAT never stopped you from port forwarding 80 to your local server and many people (myself included) do this/have done this with even e.g. DynDNS to have a decent looking host address. At the end of the day managing your own server hardware/software is a far bigger barrier than NAT.


Some (many?) ISPs block forwarding of port 80 specifically. I have a third party router as my main router, with the ISP provided modem/router/wireless AP box in bridge mode, because I can't forward port 80 through the web interface of my ISP's router.

Also, port forwarding is _hard_. It might not seem like it to us more experienced people, but it's a problem that's not very googlable because there's a billion different admin interfaces for routers, and they all do it differently enough that you have to understand what you're doing, not just follow a guide, to port forward.

In contrast, if it was possible to make some simple software which regular people could install on their personal PC, and then they got a WYSIWYG website editor, and that software handled all hosting gave the user a link (ip address) to their website which they could send to friends, I imagine a lot more people would experiment with web publishing. Obviously, in order to run a site 24/7 on a dedicated server with its own domain would still be prohibitively hard for many people, but people would've at least been able to experiment and play with hosting their own simple website which they can share with friends.


Protocols need not always be client-server. The barrier raised by middleboxes is mainly to peer-to-peer applications, whose progress may have been systematically inhibited as a result, in favour of server-based i.e. centralized applications. If that hadn't happened, then your personal micropublishing social media tool might today be a peer-to-peer application, rather than a centralized advertising behemoth. There's no intrinsic expectation that end-users must feel like they're running a server in that user story.

Consider this: the application protocols that arose in the early days of the Internet were decentralized/federated systems such as NNTP, SMTP, IRC. But application-level protocols that are developed with a P2P or federated architecture today are niche rather than mainstream (like BitTorrent), or dead because a major company killed their adoption (like XMPP).

The canary was the loss of old-school active-mode FTP, broken by middleboxes impeding connections. Plenty of people saw this coming.


Maintaining your own server might be hard because there's no incentive to make it easy for technophobes to do. If there were software that was dead easy to use, there'd still be roadblocks: NAT, $ for a domain, ISPs blocking port 80, etc.


also the computer must always be on, it can't interfere with your ability to use your own computer (QoS, throttling), and backups.


The last thing you want is to host things out of your home computer[1], especially when nowadays you can run a VPS for $2.50 a month [2].

If anything, fifteen years ago (when VPSs where prohibitively expensive) we had a much more open internet than now.

[1]. For security reasons (if someone breaks into your wordpress blog they won't get access to your main computer) and uptime reasons (do you want to keep your computer on all the time? Does your home ISP have an SLA?)

[2]. If you're fine with a static blog, a few cents for AWS/Google/Azure plus CloudFlare should be enough.


> How did IPv4 and NAT play any role in the dominance of Facebook, Airbnb et cetera? This is an analogy masquerading as an argument.

Because it made peer-to-peer no longer an option. Keep in mind that NAT is a poor man's firewall and once NAT'd systems were common peer-to-peer firewall transition became a real problem.

https://www.fourmilab.ch/documents/digital-imprimatur/ (2003, still as relevant today as when it was written)


so, that means going with IPv6 will bring back p2p networking? or do you see it's already too late?

p/s: it's more than relevant, it's eerily accurate in predicting our current situation


> so, that means going with IPv6 will bring back p2p networking?

It just might, but Cisco, Juniper and other vendors are already implementing NAT on IPv6.

https://www.juniper.net/documentation/en_US/junos/topics/con...

https://www.cisco.com/c/en/us/support/docs/ip/network-addres...

So what you'll see is IPv6 on the web with the LAN stuck on IPv4 because too many dumb devices don't do IPv6 and IPv4 is enough for local traffic.

That alleviates the need for more addresses on the net while keeping things roughly the same locally.


And this is important because the author misses the point as to why people get value from the "middlemen" -- to find stuff. Even with a content-centered web, there will be a need to find content and people, and new discovery engines and aggregators will emerge.


It's hard to imagine how things could be different, but for many services you don't need a middleman. For a long time, banking was thought to be a necessary middleman because you "have to" trust at least some actor to verify the transactions. Turns out you don't need to, with distributed ledgers (Bitcoin, etc).

When it comes to search engines, two things shake the centralized assumption: (1) you can crawl DHTs like https://github.com/boramalper/magnetico does for BitTorrent, and this can be done self-hosted, (2) too often we assume that searches must be global, but in many cases you are implicitly constraining your search space to regional boundaries or interest boundaries. E.g. as a westerner you are probably not interested in content from Vietnam or Pakistan. Also, when searching the Web, rarely do people browse through multiple Google search result pages. As a consequence, things like `awesome-*` lists ( https://github.com/bayandin/awesome-awesomeness ) are a good starting point for a decentralized curated catalogue that could cover that use case. So you could imagine a curated catalogue of programming websites compiled as a few hundred megabyte file, it could pretty much cover your interest boundaries, and as a file this can be shared over Dat today very easily. Want to search another 'interest boundary'? Run the same search software but on a different catalogue file. These things are possible.

In other words, centralization is overestimated. Maybe there are a couple of genuine centralized-middleman use cases but most of use cases can be very well covered by decentralization.


> Turns out you don't need to, with distributed ledgers (Bitcoin, etc).

The distributed network is the middleman in fact. The entire thing doesn't function without that middleman. To get to the end result, you have to go through that network. It fits perfectly as a middleman concept.

The notion that crypto-currencies can exist without middlemen, couldn't be further from the truth. They're entirely built on and dependent upon middlemen. The distributed ledger is one of the greatest middleman technologies ever devised.


I think there will always be a value in middle men for something, but to me the argument is about how many. As time moves forward there are fewer and fewer domains we go to for things. Facebook Google Amazon. Sure there will be competitors and that's what makes this still fair. But over time, the largest entity of each domain captures an ever larger percentage of traffic, revenue, etc..

The current method of aggregation is to empower fewer and fewer companies to control the rules, what you see, how to sell, what percentage they will allow a sale to generator for the seller, how products are shippped, and how returns work.

This works great for buyers, it always works great for buyers, but behind the scenes what is this doing to our economy and distribution of wealth. It also tends to have a major effect on the country of origin of products - everything is globabalized, so when we purchase something from Amazon we are purchasing something made also increasingly from a single country. Yes other countries will need to address that (as a separate issue too) but still the effect of letting fewer and fewer companies control the market, its no longer a free market.

Is there a way to regain independence? Can Cryptocurrency help? What other peer to peer technologies need to work in concert for us to break our dependency on Amazon, Google, Facebook?

Another way to ask the question: How do we make the online like the offline used to be (we drive down the street and go into a shop - except without the Walmart) but still make this fast-trustable and simple for the buyers.


I was struck with the same thing.

There is a reason we moved from newsgroups, to HTML and browsers to search engines. Each step became a better, more powerful tool to find content faster, more efficiently.

These days so many of the tools we're using are so entrenched, even with some of the changes the author talks about, it would still be a monumental task for people to change.

I mean, look at how bad FB is (on several levels) and look at all the alternatives which allow you to keep your information private and share what you want like Diaspora or Freenet. I tried (repeatedly) to get friends and family to join my Diaspora pod and tried to convey all the advantages of it being private. Nope, nada, no way. None of them ever joined and many just said FB has such deep roots into their lives, giving it up would have a huge effect on their lives, it was crazy.


Don’t forget that we WANT to eliminate all the middlemen if we can, because middle men = bloat. It IS undeniably cheaper to interact directly than it is through a middle man. Don’t forget that!

This is analogous to function pointers (or vtables or dynamic dispatch) in programming. It’s a really tight analog actually, almost literal. It’s slower (more expensive) to go through a cranks. You only do it for external reasons, but you should always try to eliminate them. I hope people around here saying these companies add value aren’t forgetting that we want to destroy them because in an ideal world things are more direct than they are already. We SHOULD want that too, that is the right direction to move in.


There's no way there's any "right and wrong" or any "should" about this. Also, middlemen save me money all the time. Without my grocery & retail middlemen I'd be out there trying to find an apple orchard, a dairy, a tailor, all by myself, and hassling them to sell me quantities too small to make any money on. And that's just the first dumb example I thought of. There is value in aggregation and in making connections and in brokering. My middlemen make me richer by me paying them. That's why middlemen have been around since there's been commerce and why you can't engineer them away. Engineering them away is just doing it cheaper, beating them in the "middleman services" market and becoming the new middleman.

Facebook is a shit middleman that doesn't provide enough value to me, so they're not included in this.


No right or wrong? Why not?


Well it's not always inefficient to have a middleman (sometimes it's more efficient, like in my example above), so you can't say categorically either "with a middleman" or "without a middleman" is always better, i.e. "right."

Also, let's say we're looking at one of the times when the middleman is less efficient. Even if a customer wants to take on those inefficiencies on purpose, we can't judge that person as being "wrong" because they might have other reasons. It's more complicated, is all I was really trying to say.


> FB has such deep roots into their lives, giving it up would have a huge effect on their lives

Then our task is to persuade them that the huge effect would be positive!

This reads like an episode of Black Mirror, only scarier because it's not science fiction: https://coolguy.website/writing/the-future-will-be-technical...


> Then our task is to persuade them that the huge effect would be positive!

How so? What makes Facebook so appealing is the fact that pretty much everybody is on there, just like a telephone book. As such an alternative, with a huge positive effect, has to deliver at least this "centralization" to fulfill the same needs Facebook has been serving until now.

This is a pretty common theme around IT savvy communities: People complain about Facebook and how there are so much better alternatives and how you supposedly don't even need Facebook. But the reality for over 2 billion people (among them many friends and family members of said tech-savvy folk) out there looks quite different, they use Facebook because it's what everybody uses, it wouldn't even work without that, which is what most Facebook competition comes to realize sooner or later.

I just don't see any good solution to any of this that doesn't involve some paradigm shift how we handle private information as societies and as businesses.


What if a lot of your friends and family are on it, and some interesting people you don't know yet are on it, and your favourite brands… aren't?

What if our secret advantage is that not everyone is on it?


> What if our secret advantage is that not everyone is on it?

Facebook might have started out that way, but don't think that angle is gonna help you build a new, even bigger, Facebook.

How long did Facebook actually stick to its "Only students" rule? Imho that was more marketing than anything else.


Scuttlebutt is designed deliberately so that you don't see the whole network, only the bits you care about.

Partly this is view-filtering, but also your user agent only requests and stores data if it might be relevant to you, i.e. friends of friends and replies to their messages.

It's not really one network, but a group of potentially-overlapping networks.


> It's not really one network, but a group of potentially-overlapping networks.

That might hold true for the technical implementation, but it doesn't hold true for the actual user experience.

If you are from the US and looking to befriend somebody from France, then you don't have to join "Facebook.fr" to make that connection, it all works through Facebook.com.

Not too long ago the same process looked pretty much like this:

"Are you on AIM?"

"No, are you on ICQ?"

"Nah, but I'm on MSM!"

"Sorry I'm not on MSM, but I'm on Linkedin!"

"No good for me I don't like Linkedin!"

"Guess I'm gonna make an MSM account -_-"

For that very same reason I ended up creating my first Facebook account on Facebook.de, which was a scam site back then. But decades of compartmentalization of users into "regions" convinced me that if I want to get any use out of Facebook I better sign up with their German version of the site, as most of my friends/family are German, that's how alien this whole "aggregate all your social contacts in one place" idea was back then.


> > It's not really one network, but a group of potentially-overlapping networks.

> That might hold true for the technical implementation, but it doesn't hold true for the actual user experience.

Talking about Scuttlebutt here, it's actually the other way round. It's one protocol and any two people on it could connect, but in practice you won't see everyone, because you only have a social connection to certain people.


>Then our task is to persuade them that the huge effect would be positive!

No, the task is to first create alternatives which are just as accessible and user-friendly as Facebook, and then sell them to the mainstream on terms they actually care about. Why would my 60-odd year old mother who uses Facebook to talk to her COPD support group even care about Diaspora? I don't know what the answer is, but I do know the answer has nothing to do with open source, anonymity or censorship-resistance.


> the task is to first create alternatives which are just as accessible and user-friendly as Facebook, and then sell them to the mainstream on terms they actually care about.

That's exactly my point! A term they might care about is: this is so much nicer to use than Facebook; I feel happier using this to keep in touch.

> I do know the answer has nothing to do with open source, anonymity or censorship-resistance.

Scuttlebutt is neither anonymous nor censorship-resistant. It's free of adverts and sponsored content experiences. It's a friendly, co-operative culture (hence the software is open source, but your mom only has to care about those details if she wants to help build the software).


> A term they might care about is: this is so much nicer to use than Facebook; I feel happier using this to keep in touch.

Here's the problem though - it's not really nicer to use than Facebook for someone who is already familiar with Facebook and who doesn't mind using it. The UX of these platforms tends to be rough in ways that would annoy many non-technical users, which is understandable given their newness, and the fact that technical users are early adopters, but still makes mainstream adoption difficult.

The Scuttlebutt client I downloaded has a search form at the top that will not behave as mainstream users will expect - they will wonder where their "newsfeed" is, try to search for a topic of interest and it will fail out of the box. Making an intellectual or emotional argument for why an alternative to existing social media clients is preferable won't work as long as the physical experience of using the alternatives is more complicated.

>but your mom only has to care about those details if she wants to help build the software.

But those are the details that dominate the frontpages of these platforms. She either has to care or else care enough to wade through it to find what she needs. That's a real problem.


Yes, I agree with you on all of this.

The user experience of using the app, and of discovering the app (i.e. its web presence), needs to be friendly and relevant to the user.

I don't think we want to imitate Facebook too directly, because we don't want it to be Facebook, but it needs to make sense as you use it :)

(By the way, I'm a mere end-user here, and this is just my opinion!)


I've been trying to explain this for years here. People don't care that much about privacy because they can't see it and it's hard for them to conceptualize the scope of what they're giving up. It's a selling point, but not that great of a selling point - certainly not good enough to overcome the network effect.

I forget who pointed it out, but I like the point that to disrupt a big incumbent you need to be not just 10% better, you need to be 50% better. You can get started by doing something that nobody else does which is useful. What FB did better than anyone else was provide a clean interface to social network curation that made it far more useful to the initial population than the alternatives that existed at the time.


> Even with a content-centered web, there will be a need to find content and people, and new discovery engines and aggregators will emerge.

Sure, but why should we rely on a single middleman who at some point could abuse his power? Something like Google search could possibly work in a decentralized fashion.


> Something like Google search could possibly work in a decentralized fashion.

How? Let's suppose I trust Google to crawl the Web and present a plausibly-accurate result to my query. This works because I communicate with Google using TLS (so I trust that Google is in fact Google), Google is the one performing the crawl, and I put my faith (for purposes of this exercise) in Google's editorial discretion and good judgement.

How does a distributed search work? What does my query look like? Where do I send it? How can I gauge how much I trust the response?


Here is a purely fictional example. I frankly don't know how feasible something like this would be:

The search index could be build using blockchain technolgy. Each transaction is an entry of the search index. For efficiency, such an index could then be mirrored by many different institutions. For example, universities. Each snapshot of the search index could have something like a sha256 sum. If the server you use per default returns a hash that differs from other institutions you rate trustworthy then you should be skeptical.

As for search queries, since the index should be standardized in some way there could be many open source apps that require their own syntax for queries so that they suit different purposes and preferences.


BitTorrent presents a plausible (but not complete) replacement. Most torrents nowadays are disseminated through the DHT. User clients can query the DHT to search for specific content, which is then downloaded via its content hash through trackers. Many websites are also available which provide indexes and other features (comments, virus scans, ratings, etc.) on top of this DHT database.

It would be a technical stretch to expand this to replace Google, but if you did you'd have many competing "search engines" built upon an open decentralized database.

I don't think I've expressed this idea well, but you should get the gist.


but then I'd want somebody to aggregate those competing engine results and sort them for me by relevance and applicability.


I don't see where the argument is made that there is no added value.

Instead, i think the author rightly points out that it is possible to do it a different way.


I get a completely different image from that passage in the article. I imagine both certificate authorities, and the domain system as great examples of mistakenly necessitating middlement in a systemically flawed manner.

With regards to the second passage, I suggest you address the literal wording instead of putting your own (strange?) spin on it. The author is pointing out that the value in the facebook post is from the user, your friend, aka a human. The fact that Berliners renting rooms out to a visiting Parisian will be using an AirBNB middleman versus the model a Craigslist entails, being essentially free classified ads. One can discuss WHY things are the way they are, but do try to get the basic gist of what the author is trying to communicate.


>"The handwave is the word "prefigure". How did IPv4 and NAT play any role in the dominance of Facebook, Airbnb et cetera?"

I don't see any handwaving in the word "prefigure" at all. The first middle men were arguably dial up ISPs. They literally brokered your connection to the internet. You got an IP from a dial up pool. Besides having a transit connection these companies had the pool of IP addresses you needed to be a node on the internet.

And so in some way that was the first "computer in front of your computer" business model. I think the author is drawing a through line from there and the business of brokering internet traffic. I don't believe they not saying that NAT enabled FB.


If they did not add value, we would still be using newsgroups.

I wish we were. Newsgroups were great, but they fell apart under commercial pressure; internally from spam, externally from the pretty graphics that were possible in a web browser. I really wish there were a clear successor to NNTP and a simpler, clearer markup standard - the popularity of FB and Wikipedia shows that people value simple, uncluttered interfaces almost to a fault.


> the popularity of FB and Wikipedia shows that people value simple, uncluttered interfaces

I agree with Wikipedia, but FB has a horrible interface.


It's full of dark patterns and I don't like the news feed algorithm. What I mean is that it relies on a small number of font sizes, styles and colors and is heavily standardized. Like, you could render FB in a text-based BBS software without losing much.


The author does not seem to be asserting that these services add no value, rather that similar value can be added by decentralized alternatives.


Indeed, decentralizing the algorithms that power things like Uber Pool (Lyft Line) seems like a monumental task. But, not impossible I guess.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: