Live data from Hacker News

Gopher Protocol (2020)

mncomputinghistory.com

1–10 of 38 posts

Re: Gopher Protocol (2020)

#3
Does it has functions for sending data, i.e. submitting forms? I'm curious if gopher could be a sufficient lightweight web protocol for all normal real life tasks including internet banking and shopping.

Re: Gopher Protocol (2020)

#4

Does it has functions for sending data, i.e. submitting forms? I'm curious if gopher could be a sufficient lightweight web protocol for all normal real life tasks including internet banking and shopping.

No. The protocol seems very simple: connect, provide a document reference, server responds with the document, and the connection is closed. Document may contain references to other documents.

Imagine HTTP with only GET, no headers, no request bodies. RFC 1436 explicitly says:

> No state is retained by the server.

Re: Gopher Protocol (2020)

#5

Does it has functions for sending data, i.e. submitting forms? I'm curious if gopher could be a sufficient lightweight web protocol for all normal real life tasks including internet banking and shopping.

No, it's entirely read-only. That's probably the main reason (outside of the University of Minnesota trying to charge licensing fees for using the protocol) that HTTP ended up replacing it. The other reason is that Gopher without non-canonical extensions can only transmit plaintext, images and binary files.

Gopher is extremely simplistic to implement because it basically can only do GET requests (but without all the header overhead).

All you need to do to retrieve a document is open a TCP connection and send the path you want to retrieve suffixed by CRLF. The server will then just return the requested data. For full text search (the only serverside expected feature for type 7 documents), add a tab character and then the search string.

The only other special feature on the client are Gopher menus which are a dedicated response type (type 1). They're basically the closest you get to rich text on Gopher - they're formatted text files which contain reference links to other addresses on Gopher.

It's all in all easy to see why Gopher got replaced. That said, I still recommend experimenting with it. It's very much a relic of a different time period, but that doesn't have to be a bad thing. HTTP and the general web stack has become rather bloated over the years due to its versatility. Gopher is laserfocused in its simplicity which gives it its own charm.

Re: Gopher Protocol (2020)

#6
post #4

Does it has functions for sending data, i.e. submitting forms? I'm curious if gopher could be a sufficient lightweight web protocol for all normal real life tasks including internet banking and shopping.

No. The protocol seems very simple: connect, provide a document reference, server responds with the document, and the connection is closed. Document may contain references to other documents. Imagine HTTP with only GET, no headers, no request bodies. RFC 1436 explicitly says: > No state is retained by the server.

That's Ok. I wouldn't mind viewing a catalogue in a lo-fi read-only browser, then sending my order by e-mail using a dedicated e-mail client app.

Re: Gopher Protocol (2020)

#8

Does it has functions for sending data, i.e. submitting forms? I'm curious if gopher could be a sufficient lightweight web protocol for all normal real life tasks including internet banking and shopping.

Not natively, though some have heavily abused search selectors for form input: https://github.com/michael-lazar/flask-gopher/blob/master/de...

For sending data a Gopher server would need to be paired with an FTP server.

Re: Gopher Protocol (2020)

#9
I love Gopher, it's a nice, extremely light protocol with none of the added BS I hate about the web. The only people who use it these days are a particular type of person, the type that I generally enjoy reading the thoughts and work of.

I actually setup a new service on Gopher recently, a lightweight Google News reader[1] and it works better than I could have really hoped.

[1] http://muezza.ca/projects/gophernews/

Re: Gopher Protocol (2020)

#10
post #4

Earlier quoted context omitted.

No. The protocol seems very simple: connect, provide a document reference, server responds with the document, and the connection is closed. Document may contain references to other documents. Imagine HTTP with only GET, no headers, no request bodies. RFC 1436 explicitly says: > No state is retained by the server.

That's Ok. I wouldn't mind viewing a catalogue in a lo-fi read-only browser, then sending my order by e-mail using a dedicated e-mail client app.

I remember doing exactly this. An online bookstore had you either call to order or send an email using PGP to order a book with a credit card.

Reminds me that in 1996-7 we were also usually paying for items by mailing checks on eBay's AuctionWeb.

Post reply on HN