Category: it

Category was added automatically. Read all entries about "it".

флешмоб девяностые: свежий взгляд

Периодически — раз в несколько месяцев — приходят письма от людей, которые хотели, но не смогли запустить мою древнюю программку. Потому что написана она 20 лет назад на MS-DOS, понятия не имеет о Юникоде, работает с голым plain text'ом в консоли. Типа — а ну-ка выбирай, дорогой писатель, альтернативная у тебя кодировка-то или, может, KOI-8. Самому жутко.

Но письма все приходят. Будят совесть. И вот совесть была разбужена: я придумал, как помочь страждущим без того, чтобы писать костыли для мертвого кода. А именно: вот есть такие Google Docs, куда можно что хочешь положить — хоть вордовский файл, хоть какой. Удобная, легкая, бесплатная вещь. И есть у них свой Apps Script для аддонов, на основе Javascript. Взять да и портировать ее туда — а? Заодно в яваскрипте попрактикуюсь наконец, а то все вокруг все на нем пишут, а у меня все как-то руки не доходили.

Такой будет прыжок из девятнадцатого века в двадцать первый: все сразу в облаке, в онлайне, в AppStore. Это даже посовременнее, чем приспособа для MS Word, о которой меня все просили (но которую делать не было ну никакого желания). Какой там к чертям ворд — будущее же вокруг! Да?

Ну что. Потратил три дня, перегнал. Шесть тысяч строк кондового C ужались в 800 строк прозрачного яваскрипта. Прогресс, господа! Никаких тебе пойнтеров и маллоков, одни легкие анонимные объектики, как мыльные пузыри. Будущее!

Только вот упс. Все это хозяйство ворочается страшно медленно, оказывается. Намного медленнее, чем я думал. И Apps Script, что уж совсем издевательство, дает твоему скрипту максимум пять минут на работу, после чего вылетает с ошибкой. Пришлось следить за временем, доделывать сколько успел и прерываться с извинениями, не дожидаясь вылета. Успевает он за это время проверить тысячи три слов.

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

Нет. Нету на свете справедливости.

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

Впрочем, оно все open source. Смотрите, пробуйте сами. Хотя бы пока оно проверяется, документ вполне можно править — работает асинхронно, и на том спасибо. Тоже ведь прогресс. И эгалите: поскольку работает оно на гугловских серверах, скорость будет одинаковая у всех, независимо от вашего CPU.

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

Где и на чем в том будущем будут писать тексты, хотел бы я только знать.

Линукс сохраняет всё

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

И забыл я об этом на много лет. А сегодня с утра вдруг вспомнилось, и название программки даже припомнил. А потом открыл распоследнюю убунту в виртуалке, там software center - и вот же она, родимая. Ничуть почти и не изменилась за все эти годы, и мое имя там, оказывается, в acknowledgements. А главное-то, вот за что я линукс и люблю: как засунули ее когда-то в репозиторий Debian, так все годы она там и пролежала тепленькая, и ставится в три клика до сих пор где хотите.

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

Линукс сохраняет всё.