VPS vs VDS vs виртуальный хостинг: что выбрать в 2026
Часто сервер выбирают по цене, а потом упираются в нехватку ресурсов, гибкости или поддержки. И почти никто не знает главного: VPS и VDS — это в большинстве случаев одно и то же, разница только в названии. Реально выбор идёт между хостингом (провайдер всё настроил, но конфигурация ограничена) и изолированным сервером с root-доступом.
В подборке 6 провайдеров под разные сценарии: от старта на виртуальном хостинге за ~123 рубля в месяц до VPS с зарубежными локациями. Внутри реальные цены, лимиты, условия по бэкапам, тестовым периодам и подсказки как сделать правильный выбор для своего случая.
Часто сервер выбирают по цене, а потом упираются в нехватку ресурсов, гибкости или поддержки. И почти никто не знает главного: VPS и VDS — это в большинстве случаев одно и то же, разница только в названии. Реально выбор идёт между хостингом (провайдер всё настроил, но конфигурация ограничена) и изолированным сервером с root-доступом.
В подборке 6 провайдеров под разные сценарии: от старта на виртуальном хостинге за ~123 рубля в месяц до VPS с зарубежными локациями. Внутри реальные цены, лимиты, условия по бэкапам, тестовым периодам и подсказки как сделать правильный выбор для своего случая.
❤1
django-scroll-to-top: кнопка «наверх», которая не ломается в проде
Кнопка «наверх» кажется мелочью, пока в проде не всплывают cookie-баннер, чат поддержки, нижняя мобильная навигация и строгий CSP. Автор собрал типовые условия в Django-пакет
Без jQuery, CDN и обязательной сборки. Если JavaScript выключён, остаётся обычная ссылка в начало страницы. Если в ваших Django-проектах кнопку надоело таскать между шаблонами, я бы заглянул в разбор на Tproger.
Кнопка «наверх» кажется мелочью, пока в проде не всплывают cookie-баннер, чат поддержки, нижняя мобильная навигация и строгий CSP. Автор собрал типовые условия в Django-пакет
django-scroll-to-top: один template-тег, Django Admin, настройка цвета и положения через админку без правки шаблонов.Без jQuery, CDN и обязательной сборки. Если JavaScript выключён, остаётся обычная ссылка в начало страницы. Если в ваших Django-проектах кнопку надоело таскать между шаблонами, я бы заглянул в разбор на Tproger.
😁10❤2💩1
GoFrame — интерфейсы на Go через WASM
Если хотите React-подобные компоненты, но с Go-типами в браузере, посмотрите на GoFrame. В разработке участвовал наш подписчик, который и рассказал о нём. Экспериментальный фреймворк компилирует Go в WebAssembly и предлагает JSX-подобный синтаксис в файлах .gox. Пока это не замена React/Vue, а песочница для типобезопасного фронтенда. Авторы, кстати, просят фидбек. Так что не поскупитесь на комментарии.
Я сохранил ссылку, чтобы посмотреть на совмещение строгой типизации Go с компонентным рендерингом. Если экспериментируете с WASM, заходите. Вы бы написали фронтенд на Go?
Если хотите React-подобные компоненты, но с Go-типами в браузере, посмотрите на GoFrame. В разработке участвовал наш подписчик, который и рассказал о нём. Экспериментальный фреймворк компилирует Go в WebAssembly и предлагает JSX-подобный синтаксис в файлах .gox. Пока это не замена React/Vue, а песочница для типобезопасного фронтенда. Авторы, кстати, просят фидбек. Так что не поскупитесь на комментарии.
Я сохранил ссылку, чтобы посмотреть на совмещение строгой типизации Go с компонентным рендерингом. Если экспериментируете с WASM, заходите. Вы бы написали фронтенд на Go?
GitHub
GitHub - graybuton/goframe: Experimental Go-first browser/WASM framework with GOX markup and the goxc toolchain.
Experimental Go-first browser/WASM framework with GOX markup and the goxc toolchain. - graybuton/goframe
❤3👍3🔥2🤯1
Почему ваш пет-проект ещё не бизнес, а вы — не предприниматель
У каждого второго разработчика в столе лежит проект, который «вот-вот станет бизнесом». Осталось дописать пару фич — и дальше всё поедет само. Спойлер: не поедет. Разбираемся, где заканчивается код и начинается бизнес: почему всё стартует не с технологии, а с чужой проблемы, чем фаундер отличается от тимлида и почему рабочий сервис с первыми пользователями и MRR — это не бизнес, а промежуточный результат.
Простой тест: уйдите в отпуск на две недели, и если без вас всё встало — поздравляем, у вас пока не бизнес, а вы сами и есть главный «производственный ресурс».
Внутри ещё и про AR-очки на трамвайном заводе, которые зарубили сами рабочие: история о том, как ценность решения определяете не вы.
У каждого второго разработчика в столе лежит проект, который «вот-вот станет бизнесом». Осталось дописать пару фич — и дальше всё поедет само. Спойлер: не поедет. Разбираемся, где заканчивается код и начинается бизнес: почему всё стартует не с технологии, а с чужой проблемы, чем фаундер отличается от тимлида и почему рабочий сервис с первыми пользователями и MRR — это не бизнес, а промежуточный результат.
Простой тест: уйдите в отпуск на две недели, и если без вас всё встало — поздравляем, у вас пока не бизнес, а вы сами и есть главный «производственный ресурс».
Внутри ещё и про AR-очки на трамвайном заводе, которые зарубили сами рабочие: история о том, как ценность решения определяете не вы.
👎6❤2👍2
Каждый, кто работал с легаси, знает это чувство: код вроде бы живой, но каждая фича даётся всё тяжелее, а на вопрос «почему так долго?» хочется ответить «потому что там всё сложно». Вот только бизнесу это ничего не объясняет — «плохой код» звучит как внутренняя боль разработчиков, а не как аргумент.
Аргументировать необходимость рефакторинга на самом деле можно. Оказывается, надо просто перевести техдолг в деньги: сколько теряется каждый месяц из-за замедлившейся разработки и багов и за какой срок рефакторинг окупится. В новом материале разбираемся, как посчитать ROI рефакторинга и с какими аргументами идти к менеджменту.
Аргументировать необходимость рефакторинга на самом деле можно. Оказывается, надо просто перевести техдолг в деньги: сколько теряется каждый месяц из-за замедлившейся разработки и багов и за какой срок рефакторинг окупится. В новом материале разбираемся, как посчитать ROI рефакторинга и с какими аргументами идти к менеджменту.
❤3
Go + PostgreSQL: тормоза чаще в драйвере, чем в базе
Если ваш Go-бэкенд на Postgres лагает, причина может быть не в запросах, а в том, через что вы к базе обращаетесь. Старый
Но главное — пул соединений. Без лимитов Go легко завалит Postgres коннектами: настройте
На средних проектах разница в нагрузке на базу и DX заметна сразу.
В разборе на Dev.to найдёте примеры пула, подготовленных запросов и работы с NULL.
Если ваш Go-бэкенд на Postgres лагает, причина может быть не в запросах, а в том, через что вы к базе обращаетесь. Старый
lib/pq фактически заморожен: новых фич и оптимизаций не ждать. Для новых проектов берите pgx: он быстрее, активно поддерживается и работает с database/sql через pgx/stdlib.Но главное — пул соединений. Без лимитов Go легко завалит Postgres коннектами: настройте
SetMaxOpenConns(25), SetMaxIdleConns(5) и ConnMaxLifetime. В циклах используйте prepared statements, чтобы не парсить запросы заново, и сканируйте NULL в sql.NullString.На средних проектах разница в нагрузке на базу и DX заметна сразу.
В разборе на Dev.to найдёте примеры пула, подготовленных запросов и работы с NULL.
🔥5
Бэкапы есть почти у всех. А вот быстро поднять систему после падения умеют немногие. Данные могут быть целы, но если восстановление инфраструктуры занимает часы, бизнес всё равно простаивает. Копия хранит информацию, а вот вернуть сервис в работу она сама по себе не может, это отдельная задача.
В новой статье на Tproger смотрим, как выстроить аварийное восстановление (DRaaS — Disaster Recovery as a Service) заранее, а не собирать его на ходу в момент сбоя. Внутри: чем DRaaS отличается от обычного резервного копирования, что стоит за метриками RTO и RPO (за сколько нужно поднять сервис и какой объём данных допустимо потерять), и как пошагово настроить репликацию VMware — от сетей до переключения и обратного возврата.
И главное: у плана восстановления есть срок годности. Если его не прогоняли полгода, в реальной аварии он может повести себя не так, как записано на бумаге. А когда вы в последний раз проверяли свой план восстановления?
В новой статье на Tproger смотрим, как выстроить аварийное восстановление (DRaaS — Disaster Recovery as a Service) заранее, а не собирать его на ходу в момент сбоя. Внутри: чем DRaaS отличается от обычного резервного копирования, что стоит за метриками RTO и RPO (за сколько нужно поднять сервис и какой объём данных допустимо потерять), и как пошагово настроить репликацию VMware — от сетей до переключения и обратного возврата.
И главное: у плана восстановления есть срок годности. Если его не прогоняли полгода, в реальной аварии он может повести себя не так, как записано на бумаге. А когда вы в последний раз проверяли свой план восстановления?
Tproger
Аварийное восстановление до аварии: как настроить DRaaS, пока ничего не упало
Чем DRaaS отличается от бэкапа, как работают RTO и RPO, пошаговая настройка репликации VMware и почему план тестируют до сбоя, а не во время него.
❤2
Как выбрать язык для высоконагруженного бэкенда в 2026-м
Я бы не стал выбирать язык для бэкенда по хайпу. В 2026-м под высокие нагрузки чаще смотрят на три варианта: Go, Rust и Zig.
У каждого своя ниша, и смешивать их в одной системе — уже норма. Go удобен для микросервисов: быстрая компиляция, большая экосистема, проще найти команду.
Rust заходит туда, где критичны задержка и контроль памяти, но команда должна быть готова к обучению. Zig берут для узких, критичных к скорости участков и работы с C-кодом, хотя экосистема ещё сыровата.
В больших системах работает гибрид: основа на Go, критичные участки — на Rust или Zig. Но мигрировать стоит только после профилирования. Без замеров вы потратите время на то, что не было узким местом. Разобрали, как не ошибиться.
Я бы не стал выбирать язык для бэкенда по хайпу. В 2026-м под высокие нагрузки чаще смотрят на три варианта: Go, Rust и Zig.
У каждого своя ниша, и смешивать их в одной системе — уже норма. Go удобен для микросервисов: быстрая компиляция, большая экосистема, проще найти команду.
Rust заходит туда, где критичны задержка и контроль памяти, но команда должна быть готова к обучению. Zig берут для узких, критичных к скорости участков и работы с C-кодом, хотя экосистема ещё сыровата.
В больших системах работает гибрид: основа на Go, критичные участки — на Rust или Zig. Но мигрировать стоит только после профилирования. Без замеров вы потратите время на то, что не было узким местом. Разобрали, как не ошибиться.
❤3😁3🤣1
Forwarded from Представляешь,
TypeScript 7 на Go: в 10 раз быстрее
В новом релизе, который анонсировала Microsoft, компилятор TypeScript, годами живший на JavaScript, теперь написан на Go. Причина — скорость: движок использует общую память и многопоточность и на полных сборках даёт прирост 8–12×.
Перевод с корпоративного: «TypeScript стал ещё дружелюбнее к JS», а по-честному «JS не справлялся со скоростью проверки собственного типизированного слоя». Установить релиз можно через
Теперь вы будете меньше смотреть на спиннер во время
В новом релизе, который анонсировала Microsoft, компилятор TypeScript, годами живший на JavaScript, теперь написан на Go. Причина — скорость: движок использует общую память и многопоточность и на полных сборках даёт прирост 8–12×.
Перевод с корпоративного: «TypeScript стал ещё дружелюбнее к JS», а по-честному «JS не справлялся со скоростью проверки собственного типизированного слоя». Установить релиз можно через
npm install -D typescript; VS Code и другие редакторы подхватят его через расширение с поддержкой LSP (Language Server Protocol).Теперь вы будете меньше смотреть на спиннер во время
tsc и больше на собственные ошибки типов. TypeScript наконец научился бегать, правда, на чужих ногах.🔥9❤5👎1
Forwarded from GameDev: разработка игр
80% корпоративных программ геймификации ломаются на одном и том же месте
По данным AmplifAI, игровые кампании дают в среднем вовлечённость на 100–150% выше, чем классические подходы, а геймифицированный контент шерится в 12 раз чаще. При этом примерно 80% корпоративных программ геймификации не достигают целей. Спрос огромный, качество — низкое, а причина проста: делать это берутся не те люди.
В статье разбирают, как корпоративные клоны механик упускают баланс и контекст, и что делать, чтобы прогрессия не превращалась в цифровой пендель. Для геймдевелоперов это отличная ниша, где есть и деньги, и возможность применить свои скиллы на практике.
По данным AmplifAI, игровые кампании дают в среднем вовлечённость на 100–150% выше, чем классические подходы, а геймифицированный контент шерится в 12 раз чаще. При этом примерно 80% корпоративных программ геймификации не достигают целей. Спрос огромный, качество — низкое, а причина проста: делать это берутся не те люди.
В статье разбирают, как корпоративные клоны механик упускают баланс и контекст, и что делать, чтобы прогрессия не превращалась в цифровой пендель. Для геймдевелоперов это отличная ниша, где есть и деньги, и возможность применить свои скиллы на практике.
❤1
Forwarded from Точка входа в программирование
GameDev: разработка игр
80% корпоративных программ геймификации ломаются на одном и том же месте По данным AmplifAI, игровые кампании дают в среднем вовлечённость на 100–150% выше, чем классические подходы, а геймифицированный контент шерится в 12 раз чаще. При этом примерно 80%…
Открыли игру или тест на сайте. Что решает, доиграете вы или закроете вкладку через 20 секунд? 👇
Anonymous Poll
22%
Коротко: вся игра на 2–3 минуты
4%
Результатом можно красиво поделиться — как квадратики Wordle
23%
Есть приз за прохождение
14%
Виден рейтинг — хочу обогнать других
41%
Тема цепляет лично меня — про профессию, про своё
14%
С каждым днём новый уровень — есть причина вернуться
43%
Просто красиво и залипательно сделано
35%
Ничего — закрываю почти всегда
❤1
UI-паттерны, которые скоро можно делать без JS
Если верстаете интерфейсы каждый день, я бы сохранил этот доклад Уны Кравец с CSS Day 2026 в закладки. Она разобрала, как новые CSS-возможности убирают типичный скриптовый код: sticky-заголовок прячется через
Ещё два момента:
Видео доклада на YouTube.
Если верстаете интерфейсы каждый день, я бы сохранил этот доклад Уны Кравец с CSS Day 2026 в закладки. Она разобрала, как новые CSS-возможности убирают типичный скриптовый код: sticky-заголовок прячется через
scroll-state(stuck: top), а hover-тултипы собираются на атрибутах interesttarget и popover=hint — почти без JavaScript.Ещё два момента:
sibling-index() задаёт staggered-задержки прямо в CSS, а border-shape позволяет рисовать необычные формы границ вместо border-radius. Пока часть фич работает не везде — polyfill для invokers не тянет на мобильные, так что в прод пока не нёс бы. Но следить стоит: платформа берёт на себя то, за что мы раньше тащили библиотеки.Видео доклада на YouTube.
🔥5
Анимированная радиальная маска на тексте через CSS
Если делаете запоминающиеся заголовки или интерактивные обложки, эта техника пригодится. Тут показали, как повторить на CSS эффект из блога Nikhil: слово «Hello!» перекрывается концентрическими кругами, и получается живое «просвечивание» текста.
Суть —
Можно сохранить в закладки и поиграть с параметрами в CodePen из статьи.
Если делаете запоминающиеся заголовки или интерактивные обложки, эта техника пригодится. Тут показали, как повторить на CSS эффект из блога Nikhil: слово «Hello!» перекрывается концентрическими кругами, и получается живое «просвечивание» текста.
Суть —
mask плюс repeating-radial-gradient. Прозрачные участки градиента скрывают буквы, непрозрачные оставляют. Чтобы понять механику, автор советует заменить радиальный градиент на linear-gradient — сразу видно, как альфа-канал управляет видимостью. Шрифт тоже важен: круглая буква «o» держит кольца ровно, поэтому взяли Fredoka.Можно сохранить в закладки и поиграть с параметрами в CodePen из статьи.
👍3❤1
Тёмная тема через веб-стандарты
Белая вспышка при загрузке, лишний React-контекст и рассинхрон с системой — Ollie Williams разбирает, как от этого уйти веб-стандартами.
Можно обойтись без тяжёлой темизации: по клику меняете атрибут
Главный вывод для меня: стандартный механизм снимает задачу с JS-фреймворка и даёт нативный фолбэк. Если у вас SSR или медленное соединение, такой подход выглядит надёжнее.
Белая вспышка при загрузке, лишний React-контекст и рассинхрон с системой — Ollie Williams разбирает, как от этого уйти веб-стандартами.
prefers-color-scheme берёт системную настройку, а мета-тег name="color-scheme" в head даёт браузеру подсказку раньше CSS.Можно обойтись без тяжёлой темизации: по клику меняете атрибут
content на light, dark или light dark и сохраняете выбор в localStorage. При следующем открытии применяете его до рендера, и вспышки нет.Главный вывод для меня: стандартный механизм снимает задачу с JS-фреймворка и даёт нативный фолбэк. Если у вас SSR или медленное соединение, такой подход выглядит надёжнее.
❤10
Chrome 151 даёт декларативный доступ к камере и микрофону через <usermedia>
Если делали видеочаты или редакторы с захватом с камеры, знаете боль: вызовы
Вместо скриптового запроса права вы получаете декларативный элемент управления, который сам отслеживает намерение пользователя, управляет запросом браузера и передаёт готовый
Если фича приживётся, запросы медиа-прав станут заметно чище.
Если делали видеочаты или редакторы с захватом с камеры, знаете боль: вызовы
getUserMedia(), ручные запросы разрешений и пользователи, случайно нажавшие «запретить» и застрявшие в тупике. Новый HTML-элемент <usermedia>, доступный с Chrome 151, убирает эту рутину.Вместо скриптового запроса права вы получаете декларативный элемент управления, который сам отслеживает намерение пользователя, управляет запросом браузера и передаёт готовый
MediaStream в приложение. Это сокращает шаблонный код и даёт браузеру достоверный сигнал о том, что доступ инициирован пользователем, а не страницей. Подробнее в блоге Chrome for Developers.Если фича приживётся, запросы медиа-прав станут заметно чище.
❤10
Webflow запустил полноценную платформу для разработчиков — и теперь CMS можно крутить из Claude
Если вы когда-нибудь залипали в UI Webflow, чтобы обновить поля CMS или перезалить настройки сайта, вот повод от этого отвыкать. Платформа даёт API и инфраструктуру для управления контентом, настройками и деплоем из кода, или прямо из агентов вроде Claude, Cursor и Postman через протокол MCP.
Теперь обновить десяток записей, переключить флаг, запустить деплой и многое другое можно прямо с помощью агентов без костылей. Документация и примеры уже на сайте, так что проверить на своём проекте можно быстро.
Если вы когда-нибудь залипали в UI Webflow, чтобы обновить поля CMS или перезалить настройки сайта, вот повод от этого отвыкать. Платформа даёт API и инфраструктуру для управления контентом, настройками и деплоем из кода, или прямо из агентов вроде Claude, Cursor и Postman через протокол MCP.
Теперь обновить десяток записей, переключить флаг, запустить деплой и многое другое можно прямо с помощью агентов без костылей. Документация и примеры уже на сайте, так что проверить на своём проекте можно быстро.
❤3
Forwarded from Инструменты программиста
FixCSS: пишите CSS без исторических ошибок спецификации
FixCSS берёт исправленные имена свойств, значения и селекторы — и на лету превращает их в валидный CSS, который браузеры уже понимают. Например,
Библиотека опирается на опубликованный CSS Working Group список ошибок в дизайне CSS и убирает необходимость помнить, какие имена свойств появились только из-за обратной совместимости. Демо на CodePen и установка через NPM.
Где пригодится: можно писать CSS так, как он выглядел бы без компромиссов, а FixCSS позаботится о финальном выводе для продакшена.
FixCSS берёт исправленные имена свойств, значения и селекторы — и на лету превращает их в валидный CSS, который браузеры уже понимают. Например,
white-space: no-wrap он сконвертирует в white-space: nowrap.Библиотека опирается на опубликованный CSS Working Group список ошибок в дизайне CSS и убирает необходимость помнить, какие имена свойств появились только из-за обратной совместимости. Демо на CodePen и установка через NPM.
Где пригодится: можно писать CSS так, как он выглядел бы без компромиссов, а FixCSS позаботится о финальном выводе для продакшена.
❤8