айрхеология

«Виола»: математический модуль

Наверное, можно подумать, что я забросил заниматься браузером «Виола» — первым графическим браузером с потрясающими для своего времени возможностями. На самом деле — ничего подобного: почти каждый день, с редкими пропусками, я что-то в нём правлю.

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

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

Скриншот веб-страницы «Complex Mathematical Formulas Test» с формулами: e^(iπ)+1=0, x=(-b±c)/2a, интеграл e^(-x), сумма квадратов и e^x².

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

Вот как выглядят формулы:

<math>&integral;<sup>&infin;</sup><sub>0</sub> e<sup>-x</sup> = <box>&sigma;<over>2</box></math>

Это третья формула на моём скриншоте, можно посмотреть чему соответствуют отдельные элементы. Как можно убедиться, реализованное в «Виоле» почти в точности совпадает со стандартом HTML Math, разрабатываемым когда-то Консорциумом Всемирной паутины, который так и остался в стадии черновика. Правда в браузере реализована только малая часть.

Синтаксис довольно простой, но, в принципе, несложные формулы записать можно. Вся математика отображается красным, я думал это какой-то баг, но нет, это такая особенность.

4 комментария

Продолжаю возиться с «Виолой»

Продолжаю понемногу возиться с браузером «Виола», оживлением которого я недавно занялся. Благодаря нейросетям, на это ушли не годы, а всего несколько дней.

Чтобы не нарушать аутентичность, решил править только ошибки — их там нашлось и ещё найдётся немало — и доработать работу с сетью. Добавил менеджер соединений, поддержку HTTPS и транслитерацию кодировок: иначе пришлось бы заменять шрифты, а это в мои планы не входит. Кроме того, сделал забавную вещь — поддержку протокола «Веб-архива»: если сайт не резолвится, браузер ищет его в «Веб-архиве» через их API и переходит туда.

Если желаете тоже прикоснуться к истории, проект лежит на «Гитхабе», можно попробовать себе его собрать. Только сразу скажу — я собираю под «МакОС», под другие платформы без переделки собрать не получится.

Скриншот веб-страницы Viola Home Page в браузере ViolaWWW: заголовок, описание гипермедийного инструмента Viola и ссылки на документацию, демо и скриншоты.

3 комментария

Браузер ViolaWWW ожил

В 2017-м году я в своих раскопках в интернете наткнулся на браузер ViolaWWW. Он совершенно незаслуженно забыт, хотя обладал в своё время поразительными возможностями: имел встроенный язык программирования Cmm и собственную реализацию таблицы стилей! Это задолго до появления стандарта CSS!

Пожалуй он заслуживает быть вписанным в историю развития интернета!

В последний раз браузер, думаю, компилировали в 90-е и на моей системе он не собирался. Но я в тот раз сделал попытку оживить его, правда неудачную — окно появилось, но дальше я не продвинулся, слишком много исправлений пришлось бы сделать.

Но теперь ведь у нас есть нейросети! В итоге, я запустил редактор «Курсор», дав ему утром задание успешно запустить браузер, и вечером получил работающее приложение. Мы даже добавили в него поддержку русских букв!

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

За один рабочий день нейросеть портировала этот брайзер под «МакОС» и перевела 32-битное приложение в 64 бита!

Скриншот веб-страницы с заголовком «Editing Photos with Neural Networks» и текстом о редактировании фото нейросетями, включая пример улучшения фотографии Шигирского идола.

5 комментариев

99 бутылок: JOSS

Продолжают писать американскую считалочку «песня о пиве» на всяких странных и не очень языках программирования.

85. JOSS (JOHNNIAC Open Shop System) — язык, созданный Клиффордом Шоу в RAND Corporation в 1963 году для машины JOHNNIAC.

Именно в этом языке впервые появились условные выражения, диапазоны, функции и компактный синтаксис ветвлений, позволявший записывать целые решения в одну строку. Из «Джосса» выросли TELCOMP, STRINGCOMP, CAL, MUMPS, «Фокал» и «Бейсик» — целое поколение языков, унаследовавших его простоту и интерактивность.

Что в «Джоссе» необычного? Из тех языков, с которыми наиболее вероятно столкнуться в реальной жизни, он, разумеется, напоминает какой-нибудь простенький «Бейсик», но при этом содержит конструкции, которые редко встречаются в современных языках программирования.

Во-первых, строки здесь нумеруются с точкой. Это позволяет наглядно группировать подпрограммы — принцип, без изменений перекочевавший в «Фокал», с которым я сталкивался в детстве. Кстати, многие операторы «Фокал» так же позаимствовал у «Джосса».

Во-вторых, интересно устроена запись функций. Такого я, кажется, нигде больше не видел: в моём коде функция b(n) принимает один аргумент и возвращает значение в зависимости от того, какая проверка сработает.

В-третьих, в языке используется постфиксная запись операторов — for и if ставятся после выражения. Похожие конструкции существуют в «Перле» — не самом популярном сегодня, но всё ещё используемом языке.

Ну и мелочи: перевод строки обозначается подчёркиванием (_), умножение — интерпунктом (·), «звёздочка» при этом служит для экспоненты, «неравно» записывается отдельным символом (≠). Таких деталей в «Джоссе» много — перечислять можно долго.

* "99 Bottles of Beer," written in JOSS on Oct 16, 2025
* by Evgeny Stepanishchev (https://bolknote.ru)

Let b(n)=[n=1:" bottle"; n≠1:" bottles"].

1.1  Set n=99.
1.2  Do part 2 for i=n(-1)1.
1.3  Do part 3.
1.4  Stop.

2.1  Set j=i-1.
2.2  Type i, b(i), " of beer on the wall, ", i, b(i), " of beer.".
2.3  Type "Take one down and pass it around, no more bottles of beer on the wall." if j=0.
2.4  Type "Take one down and pass it around, ", j, b(j), " of beer on the wall." if j>0.
2.5  Type _.

3.1  Type "No more bottles of beer on the wall, no more bottles of beer.".
3.2  Type "Go to the store and buy some more, 99 bottles of beer on the wall.".

Go.

Язык давно уже не используется, поэтому мне не удалось найти, где можно было бы выполнить на нём программу. Обычно в таких случаях я просто пишу код по описанию, не проверяя его, но здесь впервые пошёл другим путём — написал несколько тестов и «завайбкодил» интерпретатор по описанию, взятому из «Википедии».

Колеблюсь, выкладывать его или нет. С одной стороны, кому он нужен — интерпретатор давно почившего языка? С другой стороны, вдруг кому-то нужен, но в этом случае его надо бы, по хорошему, поддерживать, а мне, если честно, не хочется.

Текст песни «10 бутылок пива на стене» в терминале: отсчёт от 10 до 0, затем «пойти в магазин и купить ещё, 99 бутылок на стене»; внизу строка «bolck: JOSS $ _

5 комментариев

Первая BBS в Казани ★

Около полугода назад я заинтересовался темой появления казанских BBS — это системы электронных доски объявлений, которые были распространены до эпохи интернета. В одном из источников, которые я использовал для исследования, всплыло указание на первое казанское объявление в газете «Вечерняя Казань», которое рекламировала первую казанскую BBS.

Доска объявлений называлась «ORPHAN’S BBS». Модерировали её Амир Шабашвили, с которым я когда-то был знаком, и Марат Якубов. Последний и дал объявление в газету за космические 130 рублей, переплатив за срочность и пятничный номер.

Поискав по казанским фидошникам фотографию, скан или вырезку из газеты с этим объявлением, я успеха не достиг — ни у кого искомого не обнаружилось. Поставив себе задачу в список «когда-нибудь» разыскать архивы «Вечерней Казани» и поискать в ней объявление, я занялся другими делами.

Газета «Вечерняя Казань» от 7 августа 1992 года, пятница, № 119 (379), общественно-политическая газета с гербом и орнаментом в шапке.

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

Недавно я выделил время и сходил-таки в библиотеку. Завёл читательский билет и засел за чтение подшивок. Из найденного источника мне было известно, что объявление опубликовано в весной или летом 1992 или 1993-го года в разделе частных объявлений.

Нашёл не без труда, объявление совсем крошечное. Латинского шрифта в газете в те времена ещё не было, поэтому BBS написали как ВВС:

Владельцы модемов! Информацию о первой в Казани ФИДО-ВВС Вы можете получить по тел. 76-85-59.

Объявление: владельцам модемов в Казани — информацию о первой ФИДО-ВВС можно получить по телефону 76-85-59.
Объявление было опубликовано 7 августа 1992 года

Думаю, на этом я для себя тему казанских BBS закрою — копать тут особо больше нечего. Разве что у кого-нибудь найдутся какие-нибудь фотографии оборудования, на котором это всё крутилось, или скриншоты заставок, но надежды мало.

11 комментариев

99 бутылок: Входной язык ПЭВМ Искра-1256

Сегодня у меня рубрике «99 бутылок» язык настолько редкий, что у него даже отдельного названия нет. Иногда его называют «русскоязычным Бейсиком Искры-1256», но это вряд ли верно — на какой-либо Бейсик он едва ли похож. Там где на нём много программировали, конечно, выдумывали какие-то локальные названия — например, «Дуб» за дубовость синтаксиса или «Кузик».

В редкой профессиональной литераторе по теме его называют «входной язык…» или «символьный язык ПЭВМ „Искра-1256“».

83. Входной язык ПЭВМ «Искра-1256» — язык программирования с операторами на русском языке, который использовался на отечественных портативных (по тем временам) ЭВМ «Искра-1256», эта машина выпускалась на заводе «Счётмаш» в Курске с 1981 по 1989 год.

Машина работала с алфавитно-цифровым дисплеем, загружала программы с кассетного магнитофона и выпускалась в нескольких модификациях — с оперативной памятью от 4 до 64 килобайт.

С языком программирования пришлось разбираться по листингу сохранившихся программ, никаких следов его описания к сожалению, не обнаружилось. Впрочем, если прочитать все нашедшиеся программы, основное понять можно, сложного там ничего нет.

Страница руководства с описанием программ 8 и 9: вычисление НОК двух чисел и генератор псевдослучайных чисел, включая формулы, код и примеры использования.

Строки нумеруются подряд, видимо в этом кто-то углядел сходство с Бейсиком, но дальше идут сплошные различия.

Номер строки тут, кажется, используется только для удобства набора текста программы, переход же в языке делается не на номер строки, а на метку, причём их минимум два вида — метка для передачи управления, начинающаяся с буквы «М» (например — M01), и метка подпрограммы, которая начинается с «П» (П01).

Операторы записываются русскими буквами. Например ПЕРЕХ П01 — вызов подпрограммы, перед которой стоит метка П01. Оператор перехода часто используется с условным оператором, у которого нет какого-то явно обозначенного начала. Это просто сравнение с переходом, причём оператор перехода записывается впритык, без пробела: И12=0ПЕРЕХ П01.

Переменные так же записываются русскими буквами, их буквенные префиксы значимы. Со всеми префиксами разобраться не удалось, но некоторые я понял: например, буквами «И» и «А» обозначаются переменные, содержащие числа. Разница, кажется, в том, что на вторые каким-то образом отображается массивы, которые имею префикс «АИ». Помимо того есть префиксы «СА» и «СИ» — так обозначаются символьные переменные, второе, думаю, тоже массив.

Необычно выглядит присваивание — оно тут записывается как => и присваивает левое значение правому операнду.

Но самое странное — это функции.

Во-первых, тут они почему-то записываются английскими буквами. Во-вторых, могут стоять после аргумента. В-третьих, тут есть функции, которым, прямо как в Перле, можно присваивать значение: СИ01=>STR(СА00, И02, 1). В-четвёртых, и это самое, наверное, странное, их можно записывать подряд без пробела: (1.234567↑2+8.76543-0.551122)ABSINTLNEXP.

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

1 ПЕЧАТЬ(HEX(03),,)
2 ЦИКЛ(И01,0,98)
3 И01-99=>A01
4 ПЕРЕХ П02
5 ПЕЧАТЬ(" ON THE WALL, ",,)
6 ПЕРЕХ П02
7 ПЕЧАТЬ("!",HEX(0A0D),"TAKE ONE DOWN, PASS IT AROUND,",)
8 А01-1=>А01
9 ПЕРЕХ П02
10 ПЕЧАТЬ(" ON THE WALL!",)
11 ЦИКЛ*
12 ПЕЧАТЬ("NO MORE BOTTLES OF BEER ON THE WALL,",)
13 ПЕЧАТЬ("NO MORE BOTTLES OF BEER!",)
14 ПЕЧАТЬ("GO TO THE STORE AND BUY SOME MORE,",)
15 ПЕЧАТЬ("99 ON THE WALL!",)
16 П01
17 "S"=>СА01
18 А01=1ПЕРЕХ М01
19 ""=>СА01
20 М01
21 П02
22 A01=0ПЕРЕХ М02
23 ПЕЧАТЬ(А01(2.0),,)
24 ПЕРЕХ М03
25 М02
26 ПЕЧАТЬ("NO",,)
27 М03
28 ПЕРЕХ П01
29 ПЕЧАТЬ(" BOTTLE",СА01," OF BEER",,)

Разобраться в языке мне помогли следующие книги, найденные в интернете. В них нашлось какое-то количество программ, по которому удалось понять что из себя представлял этот язык:

  • «Комплекс вычислительный „Искра 1256“. Комплект контрольных тест-программ. 1.320.118 Д15»;
  • «Процессор интерпретирующий „Искра-1256“. Библиотека программ. 3.050.187 Д14»;
  • «Задачник по аналитической химии», Н. Ф. Клещев, Е. А. Алферов и другие, М., «Химия», 1993;
  • Журнал «Вычислительная техника и её применение», №3, 1988.

Самым большим тёмным пятном остался оператор СЕЛЕКТ(). Без чёткого описания понять его функцию мне кажется невозможным. Всё, что я смог о нём узнать, заключено в цитате, найденной в одном из обсуждений: «там половину языка составлял оператор СЕЛЕКТ(n, параметры). В зависимости от этого n он чего только не делал».

Добавлено позднее: действительно, оператор СЕЛЕКТ() чего только не делал, например через него можно было производить смену режимов дисплея или указывать задержку.

3 комментария

Мой первый сайт

Показывал тут коллегам свою зачётную книжку и обратил внимание, что свою первую курсовую работу я сдал в мае 1998 года. Это был набор страничек факультета, на котором я учился. Почему-то я думал, что это произошло на год раньше, поэтому не мог найти её в веб-архиве.

В 1998-м с документацией было тяжело и мой научрук в этом тоже ничего не понимал, поэтому ни о какой вёрстке «руками» я и не помышлял. Все страницы создавал в визуальном редакторе. Тогда таких было навалом — располагаешь элементы, он тебе делает вёрстку. В том случае это был «Netscape Composer».

Собственно эта программа и подтолкнула меня изучить вёрстку — работала она мучительно медленно, а генерируемый ей код повергал меня в ужас.

Скриншот сайта факультета КГУ: основан в 1978, 80 преподавателей, современное оборудование, © 1997–2000.

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

Всё по гайдлайнам 90-х — неуместная анимация, кнопки, которые «проваливаются» при наведении и даже звук был — я наговорил в микрофон фразу «Glad to meet you on our page». Она проигрывалась каждый раз при заходе на страницу. С сожалению, веб-архив её не сохранил.

Помню научрук попросил меня распечатать получившийся код — тогда это было необходимое требование. В итоге, я израсходовал на это всю предоставленную им бумагу, плюс пришлось использовать все черновики, которые мы нашли на кафедре. И всё равно всё не поместилось. Мы решили, что никто не заметит, что части кода нет и оставили так.

6 комментариев

Programm BBS

Поторопился я, когда сказал, что на моей малой родине, в Лениногорске не было BBS. Оказывается всё это было, правда я уже жил в Казани. В списке поинтов Фидо тех лет, который я нашёл в интернете, случайно заметил родной город, после чего разыскал контакт через общего знакомого.

Владимир Задвинский (адрес Фидо: 2:5049/33 aka /36.24), преподаватель информатики в Лениногорском нефтяном техникуме, в 1998 году организовал BBS (электронную доску объявлений) и ноду сети Фидонет в Лениногорске. Оборудование для BBS и Фидонета было установлено на 286-м компьютере в корпусе типа «крокодил», который находился в техникуме.

«Крокодил» — это корпус, похожий на лежащий на боку чемодан и раскрывавшийся, как пасть крокодила.

В техникуме была телефонная линия «ТатАИСНефть», используемая для охраны помещения. Она не задумывалась для чего-либо ещё, но возможность звонить по ней имелась. К счастью, звонки в город Набережные Челны по этой линии были бесплатными, что позволяло Владимиру поддерживать связь с другими узлами Фидонета через челнинский узел (2:5093), где сисопом был Алекс Бронин. Связь с осуществлялась через встроенный модем на 2400 бод, установленный на ISA-шине — старенький Sportster.

Откуда он взялся непонятно, понятно, что когда-то купили для чего-то, но для чего и когда — загадка.

Устаревшая компьютерная станция с ЭЛТ-монитором, показывающим сетевой график, и множеством проводов, подключенных к оборудованию на стене.
T-Mail на экране и горка модемов IDC. Фото предоставлено Владимиром, снято 31 марта 2005 года

BBS Владимира, которая называлась Programm BBS, работала на базе программного обеспечения найденного, вероятно, в интернете. Тогда доступ к нему уже начал повляться. Основной интерес для пользователей представляла фидошная часть, а сама BBS не пользовалась большой популярностью из-за низкой скорости соединения (2400 бод) и ограниченных возможностей для файлообмена.

Всё это исправно работало года два или три. Позже, Владимир уволился из техникума и перешел на работу в коммерческую структуру. Нода в техникуме продолжала работать, но уже под управлением его друга Николая Киселёва. Когда-то Владимир переманил его в техникум вторым преподавателем.

Интересно, что в коммерческой структуре, куда перешёл работать Владимир Задвинский, для работы использовалось то же программное обеспечение, при помощи которого организовывалась и работа Фидонета. Бесплатного межгорода не было, но зато был модемный пул на несколько входящих номеров, что было удобнее для фидошников Лениногорска — одновременно соединяться с нодой могли несколько пользователей. Поэтому было принятно решение перенести ноду на новое место.

Хотя от исходящих междугородних звонков пришлось отказаться, челнинского сисопа это не смутило, он регулярно инициировал модемную связь по межгороду со своей стороны, что позволяло обмениваться пакетами Фидо. BBS после переезда поднимать не стали — наглеть не стоило.

Рабочее место с двумя компьютерами, принтером, сетевым оборудованием и чайником; на стенде надпись «Пункт приема стеклотары».
Фото предоставлено Владимиром

Всего в Лениногорске, в период расцвета Фидонета было около 16-18 поинтов (пользователей), которые узнавали о BBS и ноде через сарафанное радио и нодлисты. К сожалению, заставка Programm BBS не сохранилась, так как все данные остались на старом 286-м компьютере, судьба которого неизвестна. К 2009 году активность в сети Фидонет значительно сократилась, и к 2010 году нода окончательно прекратила свою работу.

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

8 комментариев

The Golden Horde и Сrasher Warezzz BBS

Случайно открыл пифос Пандоры. Посидел над источниками на тему казанских электронных досок (BBS) и оказалось, что они были у очень многих казанских фидошников, среди которых у меня довольно много знакомых. Написал нескольким и потонул в потоке воспоминаний.

Заодно устроил перепись казанских BBS, всего пока получилось 65 штук.

Хотелось бы продолжить разговор на эту тему, но прежде всего, некоторым читателям стало интересно, что такое этот ваш модем, про который я писал в прошлый раз? Не все застали, это понятно.

Модем в те времена — устройство, которая позволяло двум компьютерам обмениваться между собой информацией поверх стационарной телефонной сети. Для этого оно преобразовывало цифровой сигнал в звук, а на другом конце делало обратное преобразование.

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

Модем Datatronics Discovery 2400CM с надписями MNP 5 MODEM, BELL 103/212A CCITT V21 V22 V23bis MODEM и переключателем VOICE/DATA; горят индикаторы MR, HS, AA, OH.
Модем родом из 90-х — Datatronics Discovery 2400CM, справа внизу он же, сфотографированный на мои часы Casio WQV-3, картинка в оригинальном разрешении

Пока тема для меня свежа, я напишу ещё о нескольких казанских BBS.

Ещё одной электронной доской владел И. Б. (адрес в Фидо: 2:5049/113.15) в начале 2000-х. Его доска носила название, которое он точно не помнит. Что-то вроде Crashed Warezzz или Crasher Warezzz и проработала полгода-год.

Доска принимала пользователей с 21⁰⁰ до 3⁰⁰ ночи, именно в это время можно было дозвониться к нему домой и получить доступ к контенту, который он выкладывал — софт и книжки. Рекламой свой BBS он особо не занимался, разве что иногда упоминал о ней на сисопках, которые было по пятницам на Чёрном Озере — одном из известных мест общения фидошников того времени.

Другой мой знакомый, П. И. (2:5049/7) был владельцем The Golden Horde BBS в середине 90-х. В то время в ЦИВТ КГУ был приобретён модем для работы с UUCP-почтой через «Релком», и вскоре начались поиски других точек для подключения.

Сначала был найден открытый X.25 шлюз в Казани, позже подключились к «Фидонету», где использовался пакетный режим связи с периодическими созвонами для обмена накопленными данными. В промежутках модем работал в автоответчике и запускал BBS, если не звонил фидошный мейлер. Компьютер, куда дозванивлись пользователи, стоял в здании ЦИВТ КГУ, в комнате 201.

На BBS выкладывались актуальные программы, а для рекламы часто добавлялись файлы с ASCII-артом в архивы. Пользователи, обмениваясь программами, распространяли с ними реквизиты BBS. Также существовал список BBS, который распространялся через Фидо. Фидо и BBS были тесно связаны: почти все BBS имели фидо-ноды.

29 комментариев

Pulse BBS

Оказалось, что один из моих старых знакомых, Р. Х. (адрес в Фидо: 2:5049/46.21) когда-то управлял BBS в Казани — это были электронные доски объявлений, которые существовали до широкого распространения интернета в том виде, в котором мы его знаем. BBS позволяли подключаться к сети через телефонную линию с помощью модема. Пользователи могли обмениваться файлами, читать сообщения и общаться в чатах.

Я никогда не видел этих досок вживую — они почти исчезли, когда я только переехал в Казань. В моём родном городе их, похоже, не было вообще. Однако в те годы, когда мы обменивались софтом на дискетах, на некоторых из них можно было увидеть заставки BBS, выполненные в ASCII-графике.

Я немного расспросил его о тех временах — ведь это часть истории, и мне было интересно её зафиксировать. Вот что он рассказал.

Скриншот интерфейса BBS TORNADO с текстом на английском: список групп (BABYLON, SiLICON DREAM), контакты, упоминания демо-сцены, кодирования и shareware.
Заставка Pulse BBS не сохранилась, но вам пример как могли оформляться заставки досок в те времена

В 1996 году, когда ему было 15 лет, он настроил свою собственную электронную доску с помощью популярной в те годы программы — «Tornado BBS» и назвал её «Pulse».

Программа «Tornado» позволяла создавать интерфейсы с использованием ASCII-графики, организовывать разделы для обмена файлами и даже делать чаты. Мой знакомый покупал CD-диски с софтом и утилитами, которые потом размещал на своей BBS.

Его доска работала преимущественно ночью — с 19⁰⁰ до 9⁰⁰, когда телефонная линия не была занята. Это время он оставлял для пользователей. Он активно рекламировал свою BBS на других досках, благодаря этому у него часто было много посетителей. Когда он спал, из его комнаты нередко раздавался характерный звук подключения по модему — это значит на BBS зашёл пользователь. Одновременное подключение было невозможно — для этого нужен был пул из нескольких телефонных номеров.

Посвящая всё своё свободное время сбору и раздаче софта, он иногда даже прогуливал школу. Его BBS проработала два или три года, но с развитием интернета в Казани электронные доски потеряли свою актуальность.

28 комментариев

Прошлое: Дни Интернета в Казани ★

Вчера встретил в кафе нашего офисного центра своего друга А. Х., который общался о чём-то за столиком с тремя молоденькими девушками. Он махнул мне рукой, я подошёл поздороваться и оказалось, что эти трое — журналистки, собирающие воспоминания о том как развивалась отрасль айти в девяностых и двухтысячных.

А. Х. попросил меня помочь, но сначала мне пришлось отказаться — меня ждали на встрече. Позже выяснилось, что встречу передвинули и у меня есть минут 15—20, чтобы спринтом пробежаться по памяти и чем-нибудь поделиться.

События очень давние, поэтому вспомнить удалось не так много как хотелось бы, но зато в памяти всплыл один забавный случай, про который я нигде не писал. Журналисткам он не подошёл по тематике, поделюсь здесь.

В конце девяностых—начале двухтысячных в Казани проводились Дни Интернета. Событие, насколько я помню, должно было стать ежегодным, но не стало. Его провели не менее двух раз и в какой-то момент оно благополучно загнулось.

В интернете об этом упоминаний не сохранилось, но кое-что можно наковырять в веб-архиве, в частности на сайте передачи «Система 104».

Таблица: 15 окт — розыгрыш билета на День Интернета, 8 окт — передача, 1 окт — сюрприз, 24 сен — Степанищев о безопасности.

Я был на двух «Днях». Один из них проводил на свои деньги известный тогда в казанском интернете деятель Daddy Hab, а второй, если мне не изменяет память, провайдер «Сантел-интернет», ныне несуществующий. Но может и не он.

Кажется оба раза это было в зале НКЦ «Казань», но что там конкретно было, я уже и не помню. Вероятно, просто тусовка с алкоголем. Но что я помню хорошо, что перед одним из этих событий в качестве приглашённого гостя был анонсирован Артемий Лебедев, в те годы — абсолютная суперзвезда в интернете.

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

Как пошутил А. Х., я делился файлами через облако до того как это стало модным.

Разумеется я не помнил этого в таких подробностях, но вчера написал Артемию, в надежде, что у него осталось это письмо и не обманулся — он мне его переслал, после чего эта история проступила в памяти более ясно.

Скриншот письма от 25 октября 1999 года от Степанищева Евгения к теме@tema.ru с темой «День Интернета. 3-я попытка. :)» и ссылками на файлы флайера в разных форматах.

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

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

13 комментариев

Perl 1

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

Я тут недавно сообразил, что программирую на ПХП с третьей версии, однажды попробовал в действии вторую версию и что-то читал про первую, но никогда не видел Перл старее пятой версии, на которой я и программировал когда-то.

К счастью, его исходники довольно просто найти, причём какие-то энтузиасты даже заставили их компилироваться под современными системами, надо только поставить пакет со статическим glibc и указать путь до него при компиляции.

Командная строка с выводом версии Perl: ./perl -v, заголовок perly.c,v 1.0.1.3 от 28.01.1988, уровень патча 10.

К первой версии идёт пятьдесят тестов, написанных на Перле тех времён. Я бегло их просмотрел и, на первый взгляд, язык как будто мало изменился, тем не менее какие-то различия бросаются в глаза. Например, массивы с какого-то перепугу, выглядят иначе — временами без @ в начале, do каким-то образом позволяют обращаться к ещё не объявленным функциям, а ещё в языке существует переменная с именем «пробел».

Для интереса попробовал запустить небольшую программульку для подсчёта количества счастливых билетов, которую я когда-то писал. В исходном виде она не заработала, пришлось немного её изменить:

for ($i = 0; $i <= 999999; $i++)
{
    $a = ('0' x (6 - length($i))) . $i;
    $c++ if (substr($a, 0, 1) + substr($a, 1, 1) + substr($a, 2, 1)) ==
    (substr($a, 3, 1) + substr($a, 4, 1) + substr($a, 5, 1));
}
print "$c\n";

Вот что пришлось исправить: изменить синтаксис цикла, ну и скобок побольше наставить.

Производительность, кстати, изменилась значительно — первая версия выполняет эту программу за 1,7 секунд, а современный Перл на том же оборудовании — за 0,8 секунды.

4 комментария

Американская народная игра «Убей вампира»

Сегодня знаменательный день! Сегодня закрылся мой детский гештальт, а именно — я нашёл игру, в которую играл на компьютере «Радио-86РК» в 1991-м году. Я не смогу объяснить чем она меня зацепила, но мне почему-то всё это время мучительно хотелось сыграть в неё ещё раз.

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

Поиск в интернете ничего не давал, но однажды, когда я заинтересовался языком «Фортран» и искал что бы на него портировать, нашлась игрушка «Hunt the Wumpus», в которой я увидел сюжет искомой игры про вампира.

Это мало что дало, разве что объяснило почему в игре моего детства было прилагательное «американская». Позже я пытался найти хоть что-нибудь по словам «Вампус Радио-86РК», но безрезультатно.

Тот компьютер принадлежал моему дяде и я хорошо помнил, что все игры и другие программы он набирал из каких-то журналов. Так что я стал искать вероятный источник. В какой-то момент я узнал, что некоторые программы переносили на «Радио-86РК» с компьютера «Микроша». Я сделал себе заметку посмотреть нет ли реализации «Вампира» для «Микроши» и на какое-то время поиски прекратил.

Сегодня я предпринял очередную попытку и преуспел! Для начала я снова выкачал все программы для «Радио-86РК», какие нашёл, но в полученных архивах «Вампира» не было, а после начал смотреть программы для «Микроши».

И вот на одном из сайтов я нашёл её — Американскую народную игру «Убей вампира»! Это точно она, та самая игра!

Правила игры: игрок может перемещаться или стрелять кривыми стрелами по вампиру; если стрела попадёт в вампира — победа, в игрока — поражение; проигрыш также наступает, если…
На чёрном фоне белым пиксельным шрифтом написано: «А НУ-КА УБЕЙ ВАМПИРА» и ниже «АМЕРИКАНСКАЯ НАРОДНАЯ ИГРА». Слева внизу — мигающий курсор.
Та самая заставка, которую я искал столько лет! Игра запущена в эмуляторе Emu80

13 комментариев

86-DOS version 0.11

Мне интересно иногда посмотреть на старые операционные системы и программы, которые я не застал или пропустил в своё время. Предтечу MS-DOS, которая называлась 86-DOS, я уже как-то видел, но там речь шла о версии 1.0, а тут в доступе появилась 0.11.

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

Первом делом скачиваем IMD-образ операционной системы и распаковаем его из-под ДОСбокса набором утилит ImageDisk 1.19. Получившийся после распаковки образ переименовываем в 86dos.imd.

Качаем первый попавшийся эмулятор Altairz80 под требуемую операционную систему, компилируем, в папку эмулятора кладём файлы scp86mon.txt, scp86mon.rom и образ операционной системы.

Вводим команду ./altairz80 scp86mon.txt, потом уже там несколько раз «Ввод», латинскую B, снова «Ввод» и, по идее, всё должно запуститься.

Скриншот терминала эмулятора Altair 8800: запуск 86-DOS, команда DIR показывает файлы, включая CHESS; пользователь выбирает чёрных и делает первый ход в шахматной игре.
Версия 86-DOS версии 0.11, запущенная в эмуляторе Altairz80

Смотреть там, конечно, особо не на что, хотя есть редактор, ассемблер и шахматы, а так же работают кое-какие привычные со времён ДОСа команды — COPY, DIR, TYPE и RENAME. Из непривычных есть ERASE, которая удаляет файл и CLEAR, очищающая содержимое диска.

Теперь могу говорить, что я своими собственными глазами видел самого раннего предка MS-DOS, которого только можно найти в интернете.

Оставить комментарий

«Трубо Паскакаль»

В конце 90-х у меня был выбор какой язык сделать своим основным, — Паскаль или Си. Не помню почему, но я выбрал Паскаль.

Это был хоть и случайный, но удачный выбор, — позже появилась совершенно гениальная среда разработки «Делфи», где я заработал немало масла на свой хлеб. Кроме того, в Университете всё программирование преподавалось на Паскале, очень выручило, что я знал тогда этот язык.

До «Делфи» разработка происходила в среде «Турбо Паскаль», глядя в синие окошки которой, я провёл много-много лет. В общем, у меня был очень длинный период, когда большинство своих программ я писал на Паскале.

Поэтому, наверное, понятно, почему когда я в комментариях к одной из статей на «Хабре» увидел упоминание пародийной программы «Трубо Паскакаль», не смог пройти мимо.

Программа поверхностно имитирует «Турбо Паскаль», где в меню спрятаны разные приколюхи. Если вы когда-то программировали на «Турбо Паскале» и не видели этой пародии, скачайте, запустите, мне кажется, не пожалеете, — выглядит забавно.

Скриншот меню со списком: Станок ТС-122-089 (ГОСТ 77843-64), Станок ФРС 556-ЗА (ГОСТ 10023-76), Пресс РД 86-12 (ГОСТ 23446-32), Винт HD-286/287.
Пародийная программа «Трубо Паскакаль», штука одноразовая, но забавная

2 комментария

Док ик ак ук (ftp-2-mail)

Примерно в 1997-м году, когда я ещё учился в вузе, по локальной сети недолгое время ходил файл, озаглавленный FTP2MAIL.TXT. В этом файле неизвестный доброход поместил описание сервисов, которые сейчас уже прочно забыты — они позволяли заказывать себе на почту файлы, расположенные на файловых серверах, доступных по протоколу FTP.

Это специальный протокол для хостинга файлов, сейчас он всё ещё используется, но распространён мало. Надо упомянуть, что FTP — текстовый протокол, команды надо было писать руками в командную строку, благо их довольно просто было выучить.

Это были времена, когда интернет только начинал появляться и многие о нём ещё даже не слышали, не говоря о том, чтобы пользоваться. Поэтому даже такое окошко в него было очень интересным. Сама идея того, что программы можно было получать как-то иначе, бесплатно, не покупая пиратские диски с ними, как это делали почти все, представлялась очень заманчивой.

Выглядело всё следующим образом. Если мы знали адрес нужного сервера FTP, то список команд к нему надо было выслать на один из специальных почтовых адресов. Некоторые я помню до сих пор:

ftpmail@ftp.uni-stuttdart.de
ftpmail@doc.ic.ac.uk
ftpmail@suusite.unc.edu

Письмо могло выглядеть как-то так:

connect ftp.netscape.com anonymous user@example.org
cd pub/windows/netscape
binary
get netscape30.zip
quit

Если всё было правильно, обратно приходили пронумерованные письма с кусками бинарного файла в текстовом формате UUC. Их надо надо было собрать в правильном порядке в один файл и декодировать программой uudecode.

Откуда я брал имена FTP-серверов, честно говоря не помню, но помню кое-что другое.

Во-первых, протокол FTP пускает пользователей только после авторизации. Но многие из них пускали так называемых «анонимных пользователей» — для этого вместо имени пользователя надо было написать любой адрес электронной почты, а вместо пароля — любую строку.

Во-вторых, FTP позволял ходить по дереву папок удалённого сервера, как по файловой системе. Её содержимое можно было изучать, подавая специальные команды, но всё самое интересное как правильно лежали в папке pub (от слова public — публичное). Часто ещё была папка incoming, доступная на запись, — туда можно было положить что-нибудь, что нужно было передать владельцу сервера.

А в-третьих, сервисов с бесплатными ящиками не существовало, а студентам мой вуз адреса не давал, так откуда у меня было доступ к электронной почте?

Я его получил нечестным способом, — узнав пароль своего друга, аспиранта моей кафедры, Андрея Г. Аспиранты не студенты, им адреса почты положены были, и выдавались в виде Имя.Фамилия@ksu.ru.

Андрей как-то проговорился, что пароль у него очень сложный, никто не догадается — вставляется в розетку, девять букв. Так я моментально понял, что это «фумигатор». И пользовался его ящиком несколько месяцев, пока однажды неосторожно не исчерпал его квоту, получив ему на почту какой-то слишком объёмный файл.

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

6 комментариев

Видео на компьютере в 80-е

На «Хабре» вышел перевод статьи «Nude Pictures on early Retro PCs — Was it Possible?», автор оригинала попытался разобраться как смотрели на голых девушек по времена ДОСа и даже раньше.

В каком же формате смотрели айтишники развлекательные картинки до изобретения форматов графики, которыми мы пользуемся сейчас?

Я те времена не застал, но ещё помню переходный период — когда графика сейчас уже античных форматов заменялась на более-менее современные. Пришлось напрячься, чтобы вспомнить, что в ходу были форматы PCX (придуман в 1985), PIC (1984) и, разумеется, GIF (1987, тогда он ещё не поддерживал анимацию) — они частенько попадались на дискетам и жёстких дисках компьютеров моих друзей в самом начале 90-х годов.

GIF сейчас хоть и используется, но статичные картинки в нём уже никто не смотрит.

Две молодые женщины с темными волосами и серьгами, обрамленные зелеными листьями на фиолетовом фоне, смотрят прямо в камеру.
Файл под названием «ORIENTL3.PCX» с сиди-диска «Universe Of PCX», сконвертированный в формат PNG

Но на дискетах ходили и пикантные видеофайлы в экзотическом сейчас форматах GL. Видеоконтент был тогда в диковинку, так что нас поражала и форма, и содержание. В интернете и сейчас можно найти файлы этом формате. Файлы нередко занимали несколько сотен килобайт и на дискету умещалось от одного до трёх таких файлов.

Посмотреть современным софтом их не получится, но я сконвертировал для вас кусочек файла MTV2.GL, чтобы вы имели представление о том как это было.

Логотип MTV: стилизованная буква «M» с сетчатым узором и надпись «MUSIC TELEVISION» под ней на чёрном фоне.
Небольшой фрагмент из видео «MTV2.GL», сконвертированный в GIF

GL расшифровывается как GRASP Library, где GRASP, в свою очередь, тоже аббревиатура — GRaphic Animation System for Professionals. Концептуально формат был придуман в 1984 году программистом Дугом Вулфграмом, а реализован годом или двумя позже.

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

Первые реализации были условно-бесплатными, но в 1987 году пакет программ для создания и просмотра GRASP-файлов стал коммерческим продуктом. Продукт продавался до начала нулевых, но концептуально проиграл — чисто скриптовый подход стал слабо смотреться на фоне визуальных редакторов конкурентов, кроме того и сам язык был запутанным и с очень высоким порогом входа.

В самом конце 80-х появился формат GIF89a, который поддерживал анимацию, но её в этом формате я увидел только в интернете во второй половине 90-х.

Скриншот окна программы Netscape Navigator версии 2.01 с логотипом, информацией о лицензии и копирайте Netscape Communications Corporation за 1994–1995 годы.
Netscape Navigator 2.01. Нетскейп — первый браузер, который научился играть анимированные гифы, это случилось в сентябре 1995 с выходом версии 2.0

Мой рассказ был бы неполным без упоминания формата DL, хотя появился он позже 80-х — в 1990-м году. Тем не менее на дискетах моих друзей файлы GL и DL часто встречались вперемешку.

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

Рука музыканта играет на электрогитаре в темноте, акцент на струнах и грифе инструмента.
Демонстрационный файл из пакета DL-VIEWER 3.1, сконвертированный в формат GIF и увеличенный в два раза

В отличие от GL, DL — честный видеоформат, который создавался именно для этой цели. Всё что он умеет — проигрывать зацикленное видео со звуком. DL — расшифровывается как Davide Luca, по имени и фамилии одного из создателей формата (он итальянец). Первые версии редактора и просмотрщика были бесплатными, но с версии 3.0 продукт стал условно-бесплатным, работающим без регистрации только ограниченное время.

Последняя версия, которую можно встретить в интернете — 3.1, датируется 1994-м годом, по всей видимости это примерный год смерти этого видеоформата.

Скриншот терминала с командами: конвертация PNG в GIF через awk и gifsicle, очистка файлов.
Процесс конвертации формата DL в GIF

Оба формата можно сконвертировать для просмотра утилитой deark (я использовал версию для «Мака»), она распаковывает кадры в файлы PNG и VOC (в них звук), естественно, убивая тайминги. Её я использовал для конвертации DL, а для файла GL использовался альтернативный способ — встроенный в DOSBOX видеозахват, там я запускал оригинальный плеер GLPro.

2 комментария

«ВАМПИР»

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

Одному из моих гештальтов в этом определении почти 30 лет — в начале 90-х у нас в семье не было своего компьютера и мы ходили в гости к нашему родственнику, у которого был самосборный «Радио-86РК». Там у меня был первый опыт отладки чужой программы — игры «ВАМПИР», написанной на «Бейсике», которая никак не хотела запускаться.

Игру удалось починить и возможно поэтому она мне так запомнилась, что через много лет мне захотелось её найти и сыграть. Тем более, что эмуляторов «Радио-86РК» в наше время, как грязи.

Но не тут-то было, никаких следов игры «Вампир» для этого компьютера в интернете не нашлось. Сюжет я худо-бедно помнил — в этой текстовой игрушке нужно было бродить по комнатам и убивать вампира, кроме того, в «дневниках жизни» нашлась фраза из неё: «американская народная игра убей вампира». Правда это никак не помогало найти саму игру.

Шли годы, я без особой надежды регулярно гуглил эту игрушку, но она никак не находилась.

Чёрно-белый рисунок «HUNT THE WUMPUS» авторства Gregory 408: летучие мыши с номерами 19 и 20, спящий монстр W в пещере, яма с табличкой PIT и стрелки на земле.
«HUNT THE WUMPUS» By Gregory Yob, рисунок из статьи в «The Best of Creative Computing Volume 1», 1976

Но тут недавно, когда я подбирал чего бы мне такого портировать на «Фортран», в списке старых игр на «Бейсике» увидел игру «Hunt the Wumpus» 1972 года и по листингу понял, что передо мной — исходный вариант игры «Вампир», следы которой я до сих пор никак не мог разыскать!

Хоть какая-то реальная зацепка!

Все программы для этого компьютера в те времена набирались вручную из печатных источников — из журналов, возможно из каких-то книг по программированию. Осталось узнать где в те годы напечатали переведённую и адаптированную игру «Hunt the Wumpus» для «Радио-86РК», набрать её в эмулятор и наконец сыграть в неё ещё раз!

3 комментария

Архив программ

Честно сказать, я считаю проект «Архив Интернета» более важным проектом, чем «Википедия», жаль что ему достаётся незаслуженно мало внимания. За 20 лет существования моего сайта, в старых заметках поумирало 100% ссылок и только «Архив Интернета» позволяет понять что когда-то по ним было.

В нём же я нередко ищу старые книги, подшивки газет и прочие бумажные материалы — некоторые издания можно найти в интернете только там. Но кроме этого, как оказалось, там бывают старые компьютерные программы, причём запускаемые прямо в окне браузера!

Скриншот командной строки с выводом каталога файлов RATFOR (1985–1986) и фрагментом кода на языке RATFOR, включая цикл сравнения строк и условные переходы.
Препроцессор Ратфора в Фортран, запущенный в ДОСБоксе

Я тут заинтересовался препроцессором «Ратфор», который был разработан в 1970-х — он транслировал си-подобный синтаксис в популярный тогда язык программирования «Фортран». Кстати, Фортран до сих пор встречается в современных математических библиотеках, возможно поэтому и он сам, и «Ратфор» без проблем ставятся из «брю» на «Мак».

Пока гуглил информацию по «Ратфору» (литературы не так уж и много), в «Архиве Интернета» нашёл реализацию, запускаемую в окне браузера под портированным ДОСБоксом. Очень здорово придумано — можно сразу бегло посмотреть требуемое.

1 комментарий

JUnix ★

Вкратце: выложил на гитхаб свой старый проект «эмулятора» Линукса, который я писал в 90-е и начале 2000-х

В 90-е мало кто видел потенциал применения ДжаваСкрипта в браузерах, тогда он, в основном, использовался для несложного интерактива — покрасить кнопки при наведении мышкой и прочие задачи того же уровня.

Мне тогда этот язык невероятно нравился, я был в бешеном восторге и такое вот несерьёзное к нему отношение меня очень задевало. Как-то я фантазировал на тему того, что можно было бы такого интересного сделать в браузере, чтобы показать значимость ДжаваСкрипта, и как-то мало-помалу в голову пришла идея запрограммировать эмулятор «Линукса» — я как раз активно изучал эту ОС в те годы.

Эта фантазия меня так увлекла, что примерно год я посвящал ей все вечера, в ущерб учёбе в Университете и личной жизни. Позже я ещё долго возвращался к этому проекту, правда моя активность всё угасала, пока в 2003-м году я не забросил эмулятор окончательно.

Скриншот терминала Unix-эмулятора JUnix v5.52b с командами whoami (root), df и mount, показывающими файловые системы и их параметры.
Старый, пыльный JUnix в современном браузере. Пришлось немного повозиться, чтобы запустить

Конечно настоящий эмулятор у меня не получился, да я и не пытался его создать, получилась имитация командной строки «Линукса» на том уровне знаний, который у меня был в те годы.

Реализованы кое-какие горячие клавиши, работа с историей и буфером обмена, основные команды (список выводится по команде «?»), перенаправление ввода-вывода, «пайп», работа с переменным, ветвления и циклы, виртуальная файловая система с возможностью написания плагинов и многое другое.

Поскольку шеллом по-умолчанию у меня тогда был tcsh, некоторые конструкции выглядят непривычно, кроме того, ряд команд я просто неправильно понимал и реализовал в соответствии со своими заблуждениями.

В своё время появление этого «эмулятора» понаделало шуму — о нём написали все основные российские сайты про программирование, а я каждый день получал письма от тех, кому понравилась моя игрушка.

Постепенно домен, на котором это всё располагалось, потерялся, а потом со старым винтом умер и бакап сайта. Осталась только копия в «Веб-архиве».

Так бы он там и лежал, но вчера в разговоре Леонидом Кагановым я случайно помянул почивший проект и Леонид, который его моментально вспомнил, предложил забрать сохранившееся с «Веб-архива» и куда-нибудь выложить.

Честно говоря, я и сам давно об этом думал — всё-таки, учитывая сколько души и времени вложено в этот «эмулятор», у меня с ним связано много хороших эмоций.

И вот вчера я наконец выкачал слепок первой попавшейся качалкой, поправил очевидные баги, чтобы всё заработало в современных браузерах — они всё-таки ушли далеко вперёд за это время, немного почистил от мусора и залил на «Гитхаб».

Кстати, если вам нравится в таком копаться, можете посмотреть сколько костылей в то время приходилось городить и как беден был раньше этот ДжаваСкрипт.

Я потестировал кое-какие основные команды, как будто теперь всё работает, но это не точно — всё-таки внутри больше пяти тысяч строк нетривиального кода без юнит-тестов. Интересующихся приглашаю ознакомиться с проектом по ссылкам ниже.

Репозиторий проекта: https://github.com/bolknote/junix.
Сайт проекта, где можно посмотреть всё в действии: https://bolknote.github.io/junix.

2 комментария

← 1 2 →