Live data from Hacker News

I Got Sick of Remembering Port Numbers

gregraiz.com

51–60 of 171 posts

Re: I Got Sick of Remembering Port Numbers

#51
post #6

It's like someone should make a file... maybe in /etc ... and put short names for services in it... maybe it could be called /etc/services...

This is exact problem I see with all of those vibe coded software: In few years everything will be super fragmented, everyone will be using their own set of tools, or vibe coding them, themselves. Communication between teams or even between team members will become very hard because of those differences. 'What do you mean production is down? On my vibe coded dashboard everything is green!'

Re: I Got Sick of Remembering Port Numbers

#52

There is no need to come up with "local TLDs" like .vibe, .local, .test and so on -- there is already an industry convention! macOS and most Linux distros support subdomains of localhost, so .localhost works. You still need the reverse proxy to do the host->port mapping, but you save yourself local DNS fiddling.

> There is no need to come up with "local TLDs" like .vibe, .local, .test and so on -- there is already an industry convention! macOS and most Linux distros support subdomains of localhost, so .localhost works. That would work if your goal was to route traffic to localhost. What if it isn't? There are reasons why the likes of example.com exists.

It looks like this will win: https://en.wikipedia.org/wiki/.internal

example.com, and the reserved TLD ".example", exist for technical documentation and writing. If you are writing a comment on HN, or a curriculum for a networking class, then you can discuss "foo.example.com connects to bar.example.com" or "Let's hypothesize about two offices called accounts.example and human-resources.example"

The "example" domains are never supposed to reflect anything that is actually deployed onto LANs, or test labs, or the Internet, current situation notwithstanding.

https://en.wikipedia.org/wiki/.example

There are, likewise, IPv4 and IPv6 ranges that are reserved to be used in documentation. Not the 192.168.0.0/24 or 10.0.0.0/8, but separate ranges that writers only write about, and are never deployed, not even in private.

localhost is only ever going to be the loopback interface, never across a network: https://en.wikipedia.org/wiki/.localhost#Conventional_use

See also: https://en.wikipedia.org/wiki/.test

The latter article lists foreign-language TLDs which serve the same purpose.

Some proposals are described here: https://en.wikipedia.org/wiki/.home

Re: I Got Sick of Remembering Port Numbers

#53

Earlier quoted context omitted.

this is a nice idea, but idk why, in macos if i do `nc -l 127.0.0.1 gopher` and then try to open url " http://127.0.0.1:gopher/ " - safari does not open it, no requests visible in the `nc` output. also `curl -v http://127.0.0.1:gopher/ ` gives error message * URL rejected: Port number was not a decimal number between 0 and 65535 * Closing connection curl: (3) URL rejected: Port number was not a decimal number between…

> http://...:gopher is it http or gopher? :)

i chose gopher port just as an example. try with any other service name mapped to a port number from /etc/services and the result will be the same. the OP's goal was to use many http/https services, so we are talking about many http(s) services.

i just wanted to make the point that even if you have service names in /etc/services, it is not possible to use that names easily to host/access http(s) services.

Re: I Got Sick of Remembering Port Numbers

#54
post #46

Earlier quoted context omitted.

this is a nice idea, but idk why, in macos if i do `nc -l 127.0.0.1 gopher` and then try to open url " http://127.0.0.1:gopher/ " - safari does not open it, no requests visible in the `nc` output. also `curl -v http://127.0.0.1:gopher/ ` gives error message * URL rejected: Port number was not a decimal number between 0 and 65535 * Closing connection curl: (3) URL rejected: Port number was not a decimal number between…

As bandie pointed out, you‘re explicitly making a http request. Duh. nc is for generic connections and handles it well.

i know, but the OP's goal was to host/access http(s) services with names and avoid port numbers, and gopher service name was chosen by me as an example. my point was that /etc/services cannot be used for the OP's need.

if you host an http(s) service on port 11111 you can reach it with url http://127.1:11111, but url http://127.1:vce/ would not work in most software.

  $ grep 11111 /etc/services
  vce  11111/udp   # Viral Computing Environment (VCE)
  vce  11111/tcp   # Viral Computing Environment (VCE)

Re: I Got Sick of Remembering Port Numbers

#55
post #6

It's like someone should make a file... maybe in /etc ... and put short names for services in it... maybe it could be called /etc/services...

Perhaps we could even make the file the port itself, perhaps calling it a “socket”? A “unix socket” would be a great name. If we could place all these files behind a local reverse proxy then we could use localhost/jekyll or localhost/fastapi. It’s just a dream

Re: I Got Sick of Remembering Port Numbers

#56
post #6

It's like someone should make a file... maybe in /etc ... and put short names for services in it... maybe it could be called /etc/services...

This is exact problem I see with all of those vibe coded software: In few years everything will be super fragmented, everyone will be using their own set of tools, or vibe coding them, themselves. Communication between teams or even between team members will become very hard because of those differences. 'What do you mean production is down? On my vibe coded dashboard everything is green!'

Why do people always assume that change is permanent?

It's never.

After decentralisation we always see decentralisation. After a period of growth, a decline will follow. After the vibe coding hype, consolidation will follow. After rain comes sunshine.

Re: I Got Sick of Remembering Port Numbers

#57
I think this product demonstrates the atrophying of thought that results from too much LLM usage: design was obviously a long back-and-forth with a sycophantic LLM.

I find out what all my local servers are by `cat /etc/hosts`, because I put them in there. They run using an entry in the nginx config.

For short-lived stuff I don't even bother with that, I just use `whatever.localhost`.

If there was no LLM, author would have put a little more thought into this, maybe did a google search, and realised that all he needed were two shell scripts.

The more you use LLMs, the less you actually think

> The real annoyance is that it wasn’t just one machine. It was layers.

> I wanted a simple launcher for all the things that aren’t traditional desktop apps. Not Finder, Alfred or Raycast.

The entire damn article is like this - why would I trust software to run on my local machine when it was written by someone who did not even take care writing a blog post? How much care would they have possibly put into reviewing their vibe coded slop if they couldn't even bother to review their blog post?

Re: I Got Sick of Remembering Port Numbers

#59

I think this product demonstrates the atrophying of thought that results from too much LLM usage: design was obviously a long back-and-forth with a sycophantic LLM. I find out what all my local servers are by `cat /etc/hosts`, because I put them in there. They run using an entry in the nginx config. For short-lived stuff I don't even bother with that, I just use `whatever.localhost`. If there was no LLM, author would…

That was my exact post a couple days ago: https://news.ycombinator.com/item?id=47936315 (didn't get much traction)

Re: I Got Sick of Remembering Port Numbers

#60
post #6

It's like someone should make a file... maybe in /etc ... and put short names for services in it... maybe it could be called /etc/services...

> It's like someone should make a file... maybe in /etc ... and put short names for services in it... maybe it could be called /etc/services... People shit-talk container orchestration systems like Kubernetes, but if anything they greatly simplified (if not completely eliminated) the need for this sort of network bookkeeping.

You forgot the /s at the end.
Post reply on HN