TGViewer
ryzhov_dev ryzhov_dev @ryzhov_dev · 11 subscribers
Post #5 52
Что меня удивило в Go после 18 лет на PHP

Ну что, первый технический пост. Как писал в интро — заканчиваю курс по Go в Яндекс Практикуме и уже пробую его в боевых проектах. После 18 лет на PHP ощущения... специфические. Делюсь тем, что реально зацепило 👇

Обработка ошибок — никаких try/catch

Функция возвращает ошибку, и ты обязан разобраться с ней прямо здесь. Не "где-то наверху в catch", не "потом". Сейчас.


file, err := os.Open("config.yaml")
if err != nil {
return fmt.Errorf("failed to open config: %w", err)
}


Первую неделю это раздражает — код разбухает, if err != nil преследует во сне. Потом замечаешь: в проде перестают всплывать те самые "а откуда это прилетело?" ошибки. Стоит того.

Стандартная библиотека

HTTP-сервер, JSON, крипто, тесты — всё из коробки. На PHP я бы сначала полчаса ковырял composer.json и подключал пакетов десять, прежде чем написать первую строчку логики.

Деплой — один бинарник

Без PHP-FPM, без Nginx, без composer install на сервере. Собрал, скопировал, запустил. Кто танцевал с конфигами на пяти e-commerce площадках — тот поймёт, какое это облегчение.

Горутины вместо "один запрос — один процесс"

Конкурентность встроена в язык, а не прикручена расширением. Это не просто фича — это другой способ думать об архитектуре.

Типизация без компромиссов

PHP годами добавлял type hints. В Go типы — не пожелание, а требование. Компилятор ловит то, что раньше ловили юнит-тесты (если они были).

Go не лучше PHP — они про разное. Но после 18 лет в одной экосистеме полезно увидеть знакомые задачи с другой стороны. Буду делиться процессом — подписывайтесь, если тема близка 🤔
  • 🔥 4
More from @ryzhov_dev
  1. Aug 21, 2026Мой райтап неожиданно залетел в топ-10 и Авито прислали свой мерч 🎉
  2. Jul 24, 2026На прошлых выходных принял участие в AvitoCTF и решил сделать райтап для задания МедоИИд �…
  3. Jun 1, 2026Rate limiting в Go — без магии, по делу Рейт-лимитер — штука, которую обычно добавляют в п…
  4. May 26, 2026Индексы в MariaDB, которая тянет и OLTP, и OLAP Писал недавно про одну базу под две нагруз…
  5. May 14, 2026Вчера у меня приняли финальный проект на курсе Go разработчика в Яндекс Практикуме 🥳 Тепе…
  6. May 12, 2026Nginx как reverse proxy — баги, которые вылезают только после деплоя Nginx выглядит просты…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →