Обновить

Какой была бы Всемирная паутина, если бы вместо WWW был Gopher

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели38K
Всего голосов 84: ↑82 и ↓2+106
Комментарии66

Комментарии 66

Я еще застал. Даже довелось вживую попользоваться в конце 90-х. А еще были популярны hotline-серверы (ну и клиенты, соответственно), использующие уникальный одноименный протокол.

А вот я, в середине 90-х, уже нет. FTP - да (даже до сих пор раз в пару лет что-нибудь откуда нибудь по нему перекладываю), а вот Gopher-om, ни через клиента, ни через bash-консоль ни разу не пришлось воспользоваться. Всё-таки WWW уже в 1995 был развит куда боле - Yahoo там разные, .edu и пр.

Пользовался не так давно, когда следовал гайду, а как собственно писать gopher клиенты. Более того есть целый браузер, поддерживающий десяток подобных протоколов, включая тот же gopher и gemini.

И тут уместно напомнить про Minitel...

К своему позору узнал о нем только из сериала, пошел посмотреть, что это за минитель такой и реально прифигел от масштаба.

France Telecom выдавал минители бесплатно, в довесок к медной паре и телефонному номеру. То есть терминал стоял приктически в каждом доме. Было удобно, например я помню как проверял возможные задержки рейса, прежде чем ехать в аэропорт.

Отчасти минитель был причиной медленного старта интернета во Франции.

Да сейчас то я знаю, прочитал историю, был очень удивлен масштабом.

Это такой телетекст по телефону?

С телешоппингом и телебанкингом. Но без отвлекающих факторов в виде лишней мультимедии.

про векторный православный фидонет

"...здорового человека"

фидо же живо а живые суслики есть?

А чем он отличается от ftp тогда?

Он не для передачи файлов, он для отображения текстовой информации

read only ftp с встроенным просмоторщиком тестовых файлов?

Скорее броузер текстов в базе данных и сами данные. Хороших WWW-ресурсов было мало, поисковиков не было, каталоги сайтов были так себе. Информация была в Gopher, в Usenet и на BBS.

Он не для передачи файлов, он для отображения текстовой информации

Email изначально тоже был «не для передачи файлов, он для отображения текстовой информации», но потом кто‑то придумал UUE, и всё заверте...

Например, из-за минимального веса страниц всё прогружалось бы максимально быстро даже на медленных сетях, а о существовании всплывающих окон и баннерной рекламы мы бы даже не слышали. 

Ну, вы поняли...
Ну, вы поняли...

Через пару лет в Gopher-мире появился бы пункт меню типа (AD) Buy cheap viagra!!!, который вел бы на другое меню, полностью состоящее из такой же рекламы

А особо нехорошие люди ещё подбирали бы название так, чтобы пункт оказывался в середине списка

Уже лет 20 назад можно было попробовать получить список каналов на каждом IRC-сервере, любой из них в среднем начинался примерно так (сейчас такая картина наблюдается гораздо реже):
!!! HOT GIRLS
!!!!!! Free stuff
+++++ SINGLES
И т. д., и т. п. Вряд ли бы эта чума в своё время обошла Gopher.

Сейчас она наблюдается гораздо реже, потому что IRC-серверов и каналов стало на порядки меньше. А если серьёзно - то и в конце 90-х - начале 00-х, когда я плотно сидел в IRC - вакханалии не помню. Если сервак не совсем помойный, и там есть админ - то каналы либо просто так не создавались, либо чистились.

ох, пасибо за статью! как будто посмотрела фантастический фильм про параллельную реальность

Ай, мои олдскулы!

По сути Gopher — это такой условный FUSE к интернету, по которому можно лазить через условный FAR/Total Commander

Более того некоторые современные Gopher-клиенты как раз и пытаются реализовать эту метафору, интегрируясь с файловым менеджером ОС

Было бы желание, можно было бы и совместить. Это просто разные потоколы. Но, видимо, никакого желания не было.

Это же ТЕЛЕТЕКСТ)

Только телетекст шифровался в радио сигнал, а гофер передаётся обычным tcp потоком

Одно из распространённых объяснений упадка Gopher заключается в том, что он не поддерживает гипертекст, который должен быть неотъемлемой частью интернета.

Гипертекст - не свойство протокола, это свойство "богатого" контента. HTTP ничего не знает о ссылках внутри HTML. Тоже самое можно сказать о поисковиках. Индексация - не вопрос протокола, это вопрос работы поисковой машины с контентом.

Тут главная причина в том, что Gopher - это очень примитивный протокол, он не поддерживает никаких команд, кроме получения ресурса, он не поддерживает заголовки, он не является расширяемым в той мере, в которой может расширяться HTTP. В Gopher только одна возможность расширения - создание новых типов контента, да и то в рамках одного символа.. Хотя, со сломом обратной совместимости, можно и через префикс расширять дальше, только вот надо ли? Сравните с типами MIME. Чувствуете разницу?

Ну и, конечно же, безопасность. Историю просмотра страниц, переданную через формы информацию и данные можно было легко перехватить. Шифрования в Gopher не было.

Ну, тут тоже пальцем в небо. Сам по себе HTTP ничего не шифрует, он как был, так и остается текстовым человекочитаемым протоколом, а туннель SSL/TLS - это только туннель, туда можно и Gopher завернуть, только вот кому оно надо? Кстати, появление всяческих Secure SMTP, SFTP, FTPS и фреймворков типа SASL.

На самом деле я бы считал реализацию Gopher-браузера хорошей задачкой для тренировки начинающих программистов, желающих прокачать сетевое взаимодействие и изучить кое-какие базовые библиотеки, включая UI и мультимедиа.

Ну, и, да - https://habr.com/ru/articles/581692/

Ну справедливости ради, в http/0.9 тоже никаких заголовков не было, был один-единственный метод и ноль майм-типов. И обратную совместимость ломали уже три раза, с каждой мажорной версией.
Может быть, и не технические ограничения перевесили чашу весов

В HTTP/0.9 вообще ничего, кроме GET, не было, даже кодов ответа. Но давайте уже не будем обсуждать версии протоколов с нулем в мажоре и не имеющих официального описания (RFC для него нет). Обратная совместимость вполне себе существует, поскольку протокол версионированный. К примеру в RFC1945 написано:

HTTP/1.0 clients must:
- recognize the format of the Status-Line for HTTP/1.0 responses;
- understand any valid response in the format of HTTP/0.9 or HTTP/1.0.

Может быть, и не технические ограничения перевесили чашу весов

Технические и только технические. Gopher не имеет возможности расширения, версионирования и т.п., продуман очень плохо (заточен под текстовый режим, позволяет только считывать ресурсы, совмещает в себе неразрывную связь контента и протокола, поддерживает только ASCII) и так же плохо документирован: RFC1436.

Gopher поддерживает ещё передачу одной строки для поиска. Так что есть Gopher-поисковик, Veronica-2. Но не поддерживает виртуальные хосты, куки, сжатие, шифрование, определение кодировок (вы помните как это было?), а также неуверенную поддержку utf-8.

Например если открывать русскоязычный ресурс через floodgap.com, то требуется кодировка 1251, а через прочие клиенты utf-8. Но с utf-8 то ли сервер (я использовал gophernicus), то ли клиент иногда портит многобайтовые буквы.

Так же есть бардак со ссылками, иногда нужно дописывать тип ресурса после первого слеша, иногда не нужно:

gopher.floodgap.com:70/gopher/clients

gopher.floodgap.com:70/1gopher/clients

gopher.floodgap.com:70/1/gopher/clients

А Gopher+ поддерживает передачу двух строк. Что это меняет? Все, что вы тут пишете про кодировки, лишь подтверждает то. что Gopher является изначально неполноценным протоколом.

Вообще я всю жизнь был уверен, что Gopher - это отсылка к Go for it...

— Gopher видишь?
— Нет...
— А он есть!

Только векторный гипертекстовый фидонет, только харкор!

Чой-то Мицгол пропал из информационного поля. Он живой, интересно?

Живой. Пишет в свой ТГ-канал на 1300 с копейками подписчиков.

Ну вот, идет в ногу со временем, а его всё ретроградом обзывают.

Ну и, конечно же, безопасность. Историю просмотра страниц, переданную через формы информацию и данные можно было легко перехватить. Шифрования в Gopher не было.

Сомневаюсь, что люди 90х мыслили подобными категориями. Бум HTTPS начался ближе к середине 2010-х, когда гугл продавил это решение буквально через глотки с помощью своего супероружия для контроля за интернетом в виде разноцветного шара с синим центром.

А так, еще в нулевые это было преимущественно уделом банков и некоторых им подобных. Да и даже в 2010м году посещение сайтов типа вконтакте через обычный HTTP еще было мейнстримом.

В 90х же это было чем-то, о чем единицы даже среди IT-специалистов слышали, и единицы из этих единиц пользовались. А до 95-го года SSL и вовсе не было.

Вы забыли о том,

для чего на самом деле нужен интернет

Гофер просто не дожил до момента, когда каналы связи стали позволять относительно быстро передавать изображения и видео. Если бы дожил, то очень быстро все недостатки порешались бы, и он перестал бы быть «тихим» и «сдержаным».

Вместе с «громкостью» пришёл бы вал контента, в том числе UGC. Его надо было бы обрабатывать - здравствуйте, полнотекстовые поисковики. С ростом массовости рос бы запрос на user-friendly контент - и вот они, языки разметки страницы, затем client-side, а потом и server-side скрипты, асинхронное исполнение, интерактив с пользователем. Параллельно в сети стали бы появляться чувствительные данные - и мы приходим к шифрованию и ограничению доступа. Где-то по пути кто-нибудь догадался, что каждый раз начинать сёрфинг с корня очень муторно, и придумал бы что-то типа закладок на узлы - то, что сейчас мы знаем как URL.

И в итоге получилось бы примерно то же самое, что и сейчас, только «под капотом» были бы совсем другие технологии.

Ну как другие, просто порт другой был бы, но скатилось бы всё туда же

Gopher штука интересная, и главное поддерживаемая в curl. Где-то в районе 2019 нашелся интересный баг - в некоторых сайтах на php где картинки перед вставкой в посты/комменты можно было загружать на хостинг сайта, эта загрузка была реализована через curl. А curl по дефолту не фильтрует протокол.

Так как gopher в запрос не добавляет отсебятины вроде заголовков в http, можно было делать запросы к локальным сервисам, если они работают не через файловый сокет, как часто было с php или mysql например.

Таким образом можно было стучаться в любой доступный с локалхоста сервис. Пишешь нужный порт и тело запроса под сервис куда стучишься, и вот уже у тебя доступ к тому же php, практически без ограничений. А из php уже есть доступ к терминалу и файловой системе.

Тут баг в php или фреймворке, на котором сайт сделан. Какая разница, что там curl спросил.

Уязвимость в самом коде сайтов конечно - не было фильтрации протоколов в url.

Да ну, ерунда какая. HTML/CSS/JS тоже когда-то кардинально отличались от текущего состояния веба. И по внешнему виду очень были похожу на gopher.

И что? Все пришло к тому, что нравится пользователям. Красивенько, быстренько, удобно. Ну и gopher эволюционным давлением "а что нравится юзерам" пришел бы примерно к такому же. Ну была бы lua вместо JS, ну была бы какая-нибудь другая технология вместе CSS. Внешний вид был бы ровно такой же, с небольшой поправкой на нюансы реализации.

Интересная статья, большое спасибо принимавшим участие. Университет прямо максимально странный: в бесплатном интернете начать взимать деньги за продукт, который не обновляют и не поддерживают при наличии бесплатной альтернативы... План надёжный, как швейцарские часы :)

Чтобы продать воздух, нужно хотя бы патент оформить. Непрокатило.

НЛО прилетело и опубликовало эту надпись здесь

То есть что мы имеем:
- нет полноценной рекламы
- централизация хранения
- отсутствие медиа формата.
Нет, он бы не взлетел массово. У него нет ничего для привлечения бизнеса и массового юзера.

А даже если бы он взлетел за отсутствием альтернатив, современный мир бы не выглядел не так как в статье. Мы забываем что массовый юзер это не технический специалист, и он не особо любит даже читать, не то что копаться в списках.
Так же не стоит забывать какое влияние интернет оказывает на влияние смежных технологий, например производство компьютерной техники.
Я думаю, если бы гофер взлетел в свое время, компьютеры бы так и остались чем то отдаленным для большей части населения планеты, а смартфоны либо бы не выстрелили вообще, либо бы мы намного раньше пришли к формату приложений(которые под капотом рылись по гофер сети, а юзеру бы уже отображали привычный интерфейс), а не сайтов.

Отдельно хочу выделить централизацию хранения, это отдельное зло, так как превращает любую такую сеть в аналог телевизора, так как именно администрация центральных серверов решает что будет показываться клиентам, а что нет.
Я думаю решение вводить плату за гофер именно на это и делало ставку, что государства/корпорации быстро оценят преимущества централизации и возьмут технологию под свой контроль. Нагородят гофер-чебурнетов, а на законодательном уровне выдавят конкурирующие технологии.

Гофер не взлетел - и хорошо. Хоть чуть чуть свободно подышали.

Про отсутствие шифрования - так себе аргумент. HTTP трафик то в значительной мере не шифровали ещё первое десятилетие XXI века. Только эдак году в 2014 все стали повально внедрять HTTPS, где-то после разоблачений Сноудена.

Современный инет за счет централизации тоже достаточно стандартизирован. Социальные сети - у всех стандартные странички. Всякие телеграмы еще менее удобны чем gopher - даже меню нет, просто линейный список сообщений. На этом фоне gopher не так уж плохо выглядит:)

Вообще гипертекст и встроенная в страницы мультимедиа как идея замечательны и очень удобны, но вот жабоскрипт все испортил - веб-страницы превратились в приложения, концептуально закрытые и несвободные сущности. ИМХО нужна некая золотая середина. Простого текста недостаточно, а современный веб чрезмерно перегружен возможностями. Был же flash - вот и надо было его оставить для "приложений", игр и прочего подобного, не имеющего отношения к представлению Знаний.

На золотую середину нет запроса. Сейчас вообще ничего не мешает делать хоть статические сайты с информацией, хоть быстрые и надежные с рендером целиком на сервере, причем никаких новых технологий для этого не нужно. И если бы сколько-нибудь значимое число клиентов, допустим, банка, ругалось бы на невозможность работы сайта без JS - он бы работал без JS...

Если б остался еще и флеш, было б только хуже. Пустая страница, внутри бинарник, индексировать нечего в принципе.

Глубоко копаете.

Вспомните Adobe Flash, который всего-то ничего назад был настоящим королем интернета, в конкуренцию которому Microsoft продвигала Silverlight.

А потом в одночасье всё это схлопнулось, похоронив под целый огромный пласт накопленной экспертизы.

В свете бурного развития lora meshtastic городских сетей, которые имеют низкую пропускную способность, нужно будет реинкарнировать проект...

А оно правда бурное? Может уже пора на али покупать какой нибудь usb-свисток или даже смартфон (если таковые имеются) с поддержкой этого lora ?

Найдите в телеге группу meshtastic вашего города и оцените... После того как побединский пропиарил на ютюбе многие чаты городские прорвало... сейчас многие сайты и блоггеры форсят эту тему, так что популярность растет заметно в посл время...

Классическая история о том, как бизнес решение убило технологию.

Решение Университета Миннесоты ввести плату за Gopher в 1993 году - это выстрел себе в ногу на фоне CERN, который в то же время объявил WWW общественным достоянием. Это был не технический, а чисто экономический и идеологический выбор, который и предопределил победителя

Нет, не взлетело бы - бо базировалось на ограничениях и самоограничении.
Вообще, это модель Телетель/Минитель и им подобных.
Соцсети? Фидо с эхами и ньюсы - были бы тогда живее всех живых, функционально - это те же (или почти те же) соцсети.
Реклама (и подлый конь-тент для взрослых) - ну так с него же кормится интернет, по этому WWW и бесплатен, а Гофер - захотел денюшшку за хостирование. В общем - не-ааааааааа.

HTTPS массово попёр в сети при стремительном развитии банковских web-клиентов. Вот тогда возможность перехвата и искажения данных стала приносить реальную угрозу. Куда там Сноуден, 99,9999% населения планеты пофиг, кто там что о них читает. Да и не хватит на них ресурсов, так что и они сами по себе пофиг тем, кто может это делать.

Это браузер ViolaWWW (1995-й год), собранный под MacOS :-)

Интересная реконструкция альтернативной истории. Думаю, Gopher бы рано или поздно всё равно столкнулся с теми же проблемами масштабируемости и коммерциализации, просто позже и мягче. WWW победил не только гипертекстом, а скоростью адаптации под рынок

История не знает сослагательного наклонения.

Это больше похоже на обычный ftp сервер в глобальных масштабах, чем на альтернативу www

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds