Complete.Org: Mailing Lists: Archives: gopher: August 2008:
[gopher] Re: Gopherness
Home

[gopher] Re: Gopherness

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: gopher@xxxxxxxxxxxx
Subject: [gopher] Re: Gopherness
From: "Matthew Holevinski" <eylusion@xxxxxxxxx>
Date: Mon, 4 Aug 2008 16:57:38 -0500
Reply-to: gopher@xxxxxxxxxxxx

How about Versions? If http, went from 1.x 2.x 3.x 4.x etc. so on. Why
not gopher.

I think i understand the problem with the item types and mime subjects
everyone is talking about, it appears as though if one server employs
a type of mime for file type differences a client used to item types
might get confused and vica versa, then everyone has discussed a
myriad of ways to implement both or either features including others.

Could we not worry about breaking old gopher protocol and we could do somet=
hing
like releasing versions of a new gopher server, hopefully this
wouldn't create bloatware
but what if say there was a new Gopher implementation that is fully compata=
ble
with the old standards, and we could call that version 1.x, and then
clients that
are compatible with all old standards would be 1.x compliant. Now, when som=
eone
would want to say release mimetypes instead of the itemtypes, all
those little additions
could be say Gopher 2.x, but here's the trick with the clients, I
guess I supppose
when a client negotiates a connection with a gopher 2.x server and
it's only 1.x compatible(only a label), the server could send just a
teeny tiny datapacket saying
hey are you old skool or new skool, at which point if the client
responds i'm 1.x yo'
the gopher server could either say, okay your too old for me come back
when you update, or some type of uber server script that rewrites it's
data in realtime, like, if the
entire gopher filesystem is in mimetypes and such, it will know better
say when sending mime/mpeg or whatnot to be retrieve as itemtype 9 or
whatever it is, so the older client would know how to interpret the
data.

Seems to me all a lot of these features, could be backwards
compatable, and I'd hate to
see the size of the server software grow considerably in size, but
wouldn't a new server software that just says Hey, I'm Gopher Server
Side Software version 1x, I include all that is gopher+ and oldschool,
then get everbody to work on some new gopher daemon that doesn't
break, what gopher is philosophically and now technically.

Therefor, say, if your client understands what's going on when it's
talking to say Gopher 2.x, it won't have any trouble understanding
subclasses of plain text, like ascii, or UTF-8, no biggie, but if the
server realizes the client is an older client it'd just convert the
UTF-8 to ascii on the fly, and then we could all agree on something
right?

Or is all of that just not possible? Understandingly, i have
absolutely no idea what I'm talking about, everyone is getting all
worked up over some minor details. I don't see why a new (or existing)
gopher server daemon, that's tried and true to the way it was back in
the early nineties can't, encompass a lot of these changes everyone is
equating to what should happen or how these things should be treated,
when this improved server could handle all the new functionality
everyone wants to see put into it, but if parsay an old client comes a
long, the new server just won't be able to "transcode" back down for
them. That way everybody is satisfied.

Matt

On Mon, Aug 4, 2008 at 1:08 PM, Nuno J. Silva <nunojsilva@xxxxxxxxxx> wrote=
:
> "Jay Nemrow" <jnemrow@xxxxxxx> writes:
>
>> On Mon, Aug 4, 2008 at 10:19 AM, Kyevan <kyevan@xxxxxxxxxxx> wrote:
>>> What about older clients, though? Modern clients will probably handle
>>> UTF-8 at least well enough to not explode, but older clients might not.
>>> Generally, it seems safest to stick to the subset that is ASCII when
>>> reasonable, only using UTF-8 or such when it's actually needed. ... is =
a
>>> perfectly readable replacement for U+2026, even if it's not
>>> "typographically correct." On the other hand, if you're trying to post =
a
>>> text in, say, a mix of Arabic, and Klingon, go right ahead and use
>>> UTF-8.
>
> There are also these iso* charsets which just use 8 bit to encode the
> text, not allowing a greater collection of characters, and using those
> you wouldn't be able to mix charsets.
>
> For iso*, AFAIK, some sort of character detection, or configuration
> would be required on the client side (it is possible to do that getting
> the document language using gopher+ - and URLs pointing to the specific
> view (even if it is just one) would be required to autodetect when
> browsing a non-ASCII URL). utf8 will have to be supported, for the small
> (but not zero) scenarios in which two non-ASCII alphabets are mixed in
> the same text, and auto-detect would fail (unless a special language
> code is used for mixed-language documents, or if the client handles more
> than one non-english language (if it is allowed to specify more than one
> in the gopher+ attributes) as utf8).
>
> On the other hand, even if the choice was utf8 (so the documents would
> be ASCII or utf8), I'd keep iso* support, just in case (therefore my
> question is 'should we use the same sort of character encoding when
> publishing non-english documents? if yes, which one?' and not 'what
> should a client support?').
>
> What's the actual scenario? Is there any client which crashes due to
> utf8? Which clients are not able to render it correctly? And what about
> iso* charsets support?
>
> <snip/>
>> If we do a version of Gopher which is basically new (adding UTF-8 or
>> MIME or whatever), I think we should ask for and get a new port
>> assignment for it.  If you wanted Goph08, send the request through a
>> Goph08 port number.  Gopher request continue to go through port 70.
>> Just have your server listen on two ports instead of one, using the
>> old idea that if you are using a different protocol (essentially), you
>> should use a different port.  (Crazy idea, I know.)  I guess this gets
>> back to an old point, which is that a modern version of Gopher is
>> essentially a new protocol and should be treated as such.  If you guys
>> want to change Gopher to "improve" it, it ceases to be Gopher.
>> "Updated" nostalgia is not nostalgia at all.
>
> Adding a new way to do the mime part would be a reason to make another
> version of the gopher protocol, or a protocol under a different name,
> but about utf8, it's not about gopher, it's about the way text is
> rendered by the client, not requiring any change in the protocol.
>
> --
> Nuno J. Silva (aka njsg)
> LEIC student at Instituto Superior T=E9cnico
> Lisbon, Portugal
> Homepage: http://njsg.no.sapo.pt/
> Gopherspace: gopher://sdf-eu.org/11/users/njsg
> Registered Linux User #402207 - http://counter.li.org
>
> -=3D-=3D-
> ``Now we'll have to kill you.''
>  -- Linus Torvalds
>
>
>
>



[Prev in Thread] Current Thread [Next in Thread]