Стремление к маленьким сайтам

Любое программное обеспечение, которое создаём мы как разработчики, должно быть быстрым. В идеале мгновенным.

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

Но, как правило, сайты, которые мы создаём, не являются чем-то титанически сложным и/или большим. Это блоги, лендинги, интернет-магазины, порталы, веб-приложения и т.д. Но при этом средний размер сайта, который мы создаём, составляет порядка 10-20 МБ. И продолжает расти. Сайты грузяться ужасно долго, а иногда и вообще не грузятся. Кнопки “выпрыгивают” из под пальцев, формы не успевают прогрузиться, а пользовтелей заставляют смотреть на “очень красивый” прелоадер.

Пожалуйста, хватит. Уважаемые разработчики, давайте:

  1. Перестанем создавать сайты, которые грузятся дольше, чем 1 секунду
  2. Перестанем делать прелоадеры, которые не дают пользователю взаимодействовать с сайтом, а потратим это время на оптимизацию сайта
  3. Перестанем впихивать анимации просто ради анимаций

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

Средний размер сайта ещё в 2016-ом году ПРЕВЫСИЛ РАЗМЕР ОБРАЗА ИГРЫ DOOM. Сейчас ситуация ещё хуже. Наши компьютеры стали в тысячи раз быстрее, а интерент в целом стал медленее. И это не из-за того, что мы стали пользоваться медленными интернетом, а из-за того, что сайты стали грузиться дольше.

Перестаньте вдохновлятся “супер-пупер” цветастыми сайтами, на котроых у кажой кнопки есть по 250 разных эффектов. Начните замерять производительность своих сайтов.

Инструментарий для этого есть.

  1. PageSpeed Insights
  2. WebPageTest
  3. Lighthouse (встроен в Chrome DevTools)
  4. Hugo (статический генератор сайтов)
  5. Webp и Avif для веб-изображений

Ссылки для вдохновения:

  1. 1kb.club
  2. 250kb.club
  3. 1MB.club
  4. A Demonstration of Modern Web Bloat
  5. Motherfucking Website
  6. Better Motherfucking Website
  7. Why your website should be under 14kB in size