SMOLNET PORTAL home about changes
iInit begginers tutorial - gopher-tutorials - The gopher tutorials project.	Err	bitreich.org	70
hgit clone git://bitreich.org/gopher-tutorials/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/gopher-tutorials/	URL:git://bitreich.org/gopher-tutorials/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/gopher-tutorials/	bitreich.org	70
1Log	/scm/gopher-tutorials/log.gph	bitreich.org	70
1Files	/scm/gopher-tutorials/files.gph	bitreich.org	70
1Refs	/scm/gopher-tutorials/refs.gph	bitreich.org	70
1Tags	/scm/gopher-tutorials/tag	bitreich.org	70
i---	Err	bitreich.org	70
1commit 58cf4b88c986080868a330292971f1cc21bebffb	/scm/gopher-tutorials/commit/58cf4b88c986080868a330292971f1cc21bebffb.gph	bitreich.org	70
1parent ec3ae31b44a84392069b3eded4c70a7c303baa00	/scm/gopher-tutorials/commit/ec3ae31b44a84392069b3eded4c70a7c303baa00.gph	bitreich.org	70
hAuthor: Solene Rapenne <solene@perso.pw>	URL:mailto:solene@perso.pw	bitreich.org	70
iDate:   Tue, 30 Jan 2018 08:29:33 +0100	Err	bitreich.org	70
i	Err	bitreich.org	70
iInit begginers tutorial	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  A beginners.txt                       |      93 +++++++++++++++++++++++++++++++	Err	bitreich.org	70
i	Err	bitreich.org	70
i1 file changed, 93 insertions(+), 0 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/beginners.txt b/beginners.txt	/scm/gopher-tutorials/file/beginners.txt.gph	bitreich.org	70
i@@ -0,0 +1,93 @@	Err	bitreich.org	70
i+Hello dear reader,	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+if you have heard of gopher and you want to explore its space but that	Err	bitreich.org	70
i+you are lost about how to achieve this, this text is for you. We will	Err	bitreich.org	70
i+assume that you have no technical skill so everyone can read this.	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+Gopher is the name of a protocol to share content like text, images or	Err	bitreich.org	70
i+any kind of file. A network protocol is a set of rules which allow to	Err	bitreich.org	70
i+create a common service for different people, everyone needing to	Err	bitreich.org	70
i+respect thoses rules to be able to communicate each other. Some	Err	bitreich.org	70
i+developpers will write "Clients" software for the end-user and others	Err	bitreich.org	70
i+developpers will write "Servers" software which will allow to publish	Err	bitreich.org	70
i+content. The Gopher protocol is so easy that anyone with basis of	Err	bitreich.org	70
i+computer science can write its own client or server, and being that	Err	bitreich.org	70
i+easy. Using Gopher implies to understand the protocol itself, but we	Err	bitreich.org	70
i+promise it's really easy.	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+Gopher is an enjoyable way to browse informations. Every gopherhole	Err	bitreich.org	70
i+[that is the name we gave to someone gopher content] looks like	Err	bitreich.org	70
i+another one. There is no way to customize a gopherhole apart from the	Err	bitreich.org	70
i+text. While this can look a bit harshe, this makes Gopher	Err	bitreich.org	70
i+universal. If you know how to browse one gopherhole, you will know how	Err	bitreich.org	70
i+to browse all others because the way to do is consistent.	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+So, let's speak about how Gopher works. First, Gopher requires 3	Err	bitreich.org	70
i+informations if you want to get content. You will need a remote	Err	bitreich.org	70
i+address to connect to [it's called an hostname, like "floodgap.com"],	Err	bitreich.org	70
i+the data type and a path to the data. The url looks like this :	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+    gopher://hostname/type/path	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+The most important type is the type 1, which is the Gopher menu	Err	bitreich.org	70
i+type. A Gopher menu is made of differents lines, each line having a	Err	bitreich.org	70
i+type field to know what kind of data it lead to. It will allow you to	Err	bitreich.org	70
i+browse from menu to menu or from a menu to a content (image, text,	Err	bitreich.org	70
i+music...).	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+Each line of a menu contains 4 fields separated by a Tabulate	Err	bitreich.org	70
i+character. The fields are, in order :	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+1. text to display (with the first character being the type)	Err	bitreich.org	70
i+2. path to the content on the remote server	Err	bitreich.org	70
i+3. hostname of the remote server which contains the content	Err	bitreich.org	70
i+4. TCP Port[1] of the remote server (default is 70)	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+The tricky part is that the type of the line is not a separate field,	Err	bitreich.org	70
i+it's the first character of the line we is contained inside the first	Err	bitreich.org	70
i+field. Gopher clients usually hide it when displaying the text.	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+Here is the list of the most used data types allowed on Gopher, the	Err	bitreich.org	70
i+complete list is defined in a document named RFC 1436 which defines	Err	bitreich.org	70
i+the Gopher protocol :	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+- type i is a line of text in the menu, it's not a link	Err	bitreich.org	70
i+- type 0 is a link to a text document 	Err	bitreich.org	70
i+- type 1 is a link to another gopher menu	Err	bitreich.org	70
i+- type 3 means an error	Err	bitreich.org	70
i+- type 7 (search) asks a text input and lead to another menu	Err	bitreich.org	70
i+- type 9 is a link to a binary file (data archives, music...)	Err	bitreich.org	70
i+- type g is a link to a GIF file (animated picture)	Err	bitreich.org	70
i+- type I is a link to an image file	Err	bitreich.org	70
i+- type h is a link which lead to use another protocol (irc, http...)	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+Only the types menu and search can lead to another content. Asking	Err	bitreich.org	70
i+another type will lead to downloading a file.	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+When requesting a Gopher menu, the text transferred through the	Err	bitreich.org	70
i+network could be read as-this, without a Gopher client. When a server	Err	bitreich.org	70
i+responds a menu with a few entries, the raw content transmitted to the	Err	bitreich.org	70
i+client looks like this :	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+iText here, others fields are set with the null value        null        null        null	Err	bitreich.org	70
i+1Another gopher menu        /help/        floodgap.com        70	Err	bitreich.org	70
i+1The menu leading to this help        /tutorial/        bitreich.org        70	Err	bitreich.org	70
i+IA cut cat picture        /cute-cat.jpg        floodgap.com        70	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+The previous menu will display 4 lines, the first will be a text and	Err	bitreich.org	70
i+the others last 3 lines will be links to another content, as you may	Err	bitreich.org	70
i+have noticed, the server is not necesserarly the same for every	Err	bitreich.org	70
i+line. Gopher allows to go to another server from another in a	Err	bitreich.org	70
i+transparent manner. A Gopher client could render the previous menu	Err	bitreich.org	70
i+like this, allowing to select the lines using arrows on the keyboard :	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+      | Text here, others fields are set with the null value	Err	bitreich.org	70
i+MENU  | Another gopher menu	Err	bitreich.org	70
i+MENU  | The menu leading to this help	Err	bitreich.org	70
i+IMAGE | A cut cat picture	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+[1] : a TCP Port could be explained as a door on a server where a	Err	bitreich.org	70
i+      network service waits behind. You need to knock to the right	Err	bitreich.org	70
i+      door when you reach the server. Gopher waits by default	Err	bitreich.org	70
i+      behind the port 70.	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/gopher-tutorials/commit/58cf4...
Content-Typetext/plain; charset=utf-8