📚 node [[ошибки микоризы]]
Welcome! Nobody has contributed anything to 'ошибки микоризы' yet. You can:
  • Write something in the document below!
    • There is at least one public document in every node in the Agora. Whatever you write in it will be integrated and made available for the next visitor to read and edit.
  • Write to the Agora from social media.
    • If you follow Agora bot on a supported platform and include the wikilink [[ошибки микоризы]] in a post, the Agora will link it here and optionally integrate your writing.
  • Sign up as a full Agora user.
    • As a full user you will be able to contribute your personal notes and resources directly to this knowledge commons. Some setup required :)
⥅ related node [[ошибки_микоризы]]
⥅ node [[ошибки_микоризы]] pulled by Agora

Оригинал: [[https://t.me/bpblog/1329]] 2025-01-25

За четыре с половиной (?) года разработки [[Микоризы]] появлялось понимание того, какие решения в дизайне системы были верными, а какие ошибочными. Тут расскажу о некоторых из них. Надеюсь, что-нибудь в этом тексте сможет разозлить анонимных читателей.

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

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

Гит медленный, с крайне неудобной для задачи моделью данных: он работает с файлами с конкретными именами, а не с гифами. У него утомительно тяжёлое API. Щас даже разобраться не могу, как это работает в коде. И в него всё равно всё не засунешь. Всё, кроме гиф, хранится в файликах рядом с гит-репозиторием. Ну и толку тогда? Лучше бы всё в толковой быстрой базе данных лежало с разумной схемой. Конечно, полагаться на файловую систему так сильно тоже не стоило.

А, ещё, в Гите нельзя толком отбросить историю. Почти append-only! Сейчас я проникся идеей ПО, умеющего забывать, это прекрасно.

Другая ошибка — гифы. И название, и концепция. Я и сейчас считаю хорошей идеей не использовать слово «страница», но лучше бы я тогда догадался до слова «документ». В прошлом году проводил опрос в чате микоризальных ребят о переименовании гиф в документы — против были. Ну что за народ?

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

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

Четвёртая ошибка — поддержка сразу трёх форматов веб-фидов: RSS, Atom, JSON Feed. Взял бы один любой, и всё на этом. А сейчас и удалить жалко, и толку никакого. Всё равно все по RSS подписываются, наверное.

Пятая ошибка — использовал для шаблонизации HTML не стандартные шаблоны, а злоклятый quicktemplate. Три с половиной года как пытаюсь его искоренить из кодовой базы, но всё никак не получается. Вьелся конкретно, как плесень.

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

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

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

Выбор языка Го был хорош. Раст во многом был бы лучше, наверное, но вот на Хаброкарьере я вижу только одну вакансию на Расте, а на Го — свыше сотни. С Микоризами Го изучил, и теперь я профессиональный гофер. Не зря дороги хожены.

P. S. А ещё мне, на самом деле, нравится, что в последние два года разработка Микоризы сильно замедлилась. По асимптоте приближаемся к поистине завершённому состоянию. Completeness. С другой стороны, было бы здорово побольше времени уделять...

Что будет дальше? Ничего интересного. Да здравствует скучное ПО.

📖 stoas
⥱ context