tgoop.com/logofalprog/233
Last Update:
Как делать сайты в 2024
Итак, пришло время рассказать, как же всё-таки трушно нынче делать сайты. Речь, конечно же, не идёт о каких-то гигантских коммерческих высоконагруженных порталах. Это мы оставим для душных дебатов одухотворённых фронтендеров. Я же говорю о сайтах, которые мы делаем не профессионально, но которые по тем или иным причинам может захотеться сделать трушному девелоперу. Это всевозможные сайты-портфолио, личные блоги, лэндинги библиотек или пет-проектов, да и просто места складирования всякого полезного шмурдяка.
Короткий ответ: сайт надо хостить на Github Pages, генерить статику с помощью Jekyll.
Теперь напишу более развёрнуто, как я дошёл до таких мыслей. Личных сайтов у меня, как и у многих, была целая куча. Штук 6 или 7 разных итераций. Начиная от кринжовой странички AlprogCompany на народе с фоткой в разделе «обо мне»; и заканчивая блогом на PHP с самописной админкой контента. Проблемы у этих сайтов всегда одни и те же, и к ним я ещё вернусь. Но изначально я решал вообще другую проблему.
Как вы возможно знаете, я иногда пишу рассказы на всякие литературные конкурсы, и закономерно встаёт вопрос: куда их выкладывать? Требования очень простые: хотелось залить куда-то один раз в одно место и забыть на миллион лет, но чтобы оно всегда было доступно по прямой ссылке в читабельном виде. С одной стороны есть специализированные коммерческие ресурсы, типа Литрес или Автор.тудей, но они пихают рекламу и часто меняются. С другой стороны вырвиглазный Самиздат и зашкварная Проза.ру, на которых в принципе не очень приятно находиться в окружении web 1.0 и иконок одноклассников. Пилить и поддерживать своё решение ради этого тем более казалось оверкиллом.
Решение нашлось гениальное: github.com. Просто кидаем файлы в репо и всё: ваши рассказы доступны по прямой ссылке, они читабельно свёрстаны, в окружении нормального дизайна, есть список всех рассказов, да и ссылка на них явно в большей сохранности, чем большая часть интернета. А может быть ещё и во льдах арктики забекапят на случай постапокалипсиса.
В первой итерации это уже лучше, чем любое специализированное решение для хранения рассказов. Во второй итерации можно использовать возможности Markdown, чтобы навести красоту. А когда я пощупал третью итерацию, которой являются Github Pages и генератор статики Jekyll, я уже всерьёз задумался о полном переезде всех личных сайтов.
Потому что у личных мелких сайтов проблемы всегда одни и те же:
- Дизайн устаревает быстрее, чем они выбираются из под плашки «Under Construction»;
- Обновления случаются так редко, что ты порой уже и не помнишь, как там правильно добавлять контент. И какой пароль от FTP;
- Неудобно обновлять контент и управлять версиями. Либо для того, чтобы стало удобно, надо сделать ряд дополнительных приседаний. Особенно на новой машине;
- Надо думать о хостинге. Регулярно платить ему какие-то деньги, да ещё и сталкиваться с его закидонами: то он работы на серверах будет проводить, то PHP обновит до неудобной версии, то тарифы и ограничения поменяет;
- Домены имеют свойство протухать, угоняться киберсквоттерами и прочие неприятности. Из-за чего у вас потом по всей сети протухшие ссылки в старых постах. Нет ничего более жалкого, чем протухшие ссылки на личную страницу.
Всё это говорит о том, что личный сайт нужно делать как можно проще по дизайну и как можно проще для поддержки. В идеале полная статика, потому что чем меньше всего задействовано, тем меньше, чему ломаться. Кучка md-файликов, которые декорируются простым скриптом — это именно такое решение. При этом если вы девелопер, то в отличие от всяких хостингов, гитхаб у вас всегда под рукой, вы не забудете от него пароль. Сделать коммит через сайт или выкачать репо вы сможете всегда и везде за 5 минут.
Кроме того, Github Pages это уже что-то вроде стандарта индустрии для лэндинга и документации по всяким опен-сорсным библиотечкам. Почему бы не расширить это на личные сайты в принципе?
Я так запилил свой личный сайт (там можно почитать мои рассказы) и сайт нашего подкаста (там уже можно послушать новый выпуск про эмиграцию).
BY Log of Alprog
Share with your friend now:
tgoop.com/logofalprog/233