В чаты по PHP часто приходят с вопросами про развитие: какие книги стоит прочитать в первую очередь, на какие каналы подписаться, какие курсы хороши. Если повезет, в ответ чат поделится парой рекомендаций. Мы решили агрегировать их в список и собрали 150+ мнений по актуальным ресурсам для PHP-разработчика. 

Опрос был короткий. Спросили у ребят из сообщества:

  • Их грейд.

  • Какие ресурсы они используют для обучения и профессионального развития.

  • Какие ресурсы советуют новичкам, погружающимся в PHP.

Разбивка по уровню принявших участия в опросе:

  • 40% — мидлы;

  • 30% — синьоры;

  • 15% — тимлиды;

  • 15% — джуны и совсем новички.

Без длинных интро. Самые упоминаемые ресурсы идут первыми в разделах, а те, которые советовали новичкам, отмечены флажком ????. 

Начнем с книг

«Общий совет: больше читать» — участник опроса.  

Читать хаб «PHP» на Хабре со свежими материалами, кейсами и историями пройденных грабель — совет очевидный. А вот что рекомендовали из книг:

Зачем добавили ссылки

Ссылки на маркетплейсы оставляем не для рекламы площадки, а для удобства — можно прочитать подробную аннотацию и отзывы.

  • ???? «PHP 7 в подлиннике» (Д. Котеров) — мощная база по возможностям языка.  

  • ???? «Чистый код. Создание, анализ и рефакторинг» (Р. Мартин) — о том, из чего состоит «хороший код»: принципы, паттерны, правила написания и примеры по нарастающей сложности. Хотя мнения о том, подходит ли книга новичкам, среди участников опроса разделились: 

«Не согласен, что "Чистый код" стоит читать новичкам. Нужна практика в несколько лет и отсмотр разного кода, чтобы начать улавливать, о чем речь. А так новичку забивают голову абстрактными концептами, которые у него не складываются в систему» — Алексей Сундуков, организатор PHP-сообщества Самары.

«Я начал читать "Чистый код" через 2-3 месяца после начала работы. Он дал лучше понять принципы ООП и писать код лучше. Да, потом я его перечитал и нашел для себя новые вещи, но это не значит, что нельзя читать джунам» — Иван Поддубный, организатор ростовского PHP-сообщества..

  • ???? «Чистая архитектура» (Р. Мартин) — ответы на ключевые вопросы, касающиеся архитектуры и дизайна.

  • ???? «Идеальный программист. Как стать профессионалом разработки ПО» (Р. Мартин) — широкий список тем: от оценки проекта и написания кода до рефакторинга и тестирования.

«Люблю и всем советую книги Роберта «Дядюшка Боб» Мартина "Чистый код", "Чистая архитектура", "Идеальный программист". Эти книги помогли мне улучшить свой код. Идеальный программист помогла переосмыслить многие моменты работы и порефлексировать над проблемными местами» — участник опроса.

  • ???? «PHP 8: объекты, шаблоны и методики программирования» (М. Зандстра) — обзор объектно-ориентированных возможностей PHP. 

  • «Банда четырех» или «Паттерны объектно-ориентированного проектирования» (Э. Гамма, Р. Хелм, Дж. Влисидис, Р. Джонсон) — опыт ООП в виде двадцати трех паттернов. 

  • ???? «Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих» (Б. Адитья) — алгоритмы в 400 иллюстрациях, а также теория и задачи. 

  • «Рефакторинг. Улучшение существующего кода» (М. Фаулер) — более 70 методов рефакторинга. Для каждого описываются мотивация и техника испытанного на практике преобразования кода с примерами на Java.

  • ???? «Архитектура компьютера» (Е. Таненбаум, 4-е издание) — классика. Хотя об актуальность книги есть споры и в статьях на Хабре.

  • ???? «​​Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов» (Д. Скляр) — погружение в язык и его особенности, знакомство с веб-серверами, браузерами, базами данных и веб-службами. После глав даются упражнения для закрепления материала.  

  • «Экстремальное программирование. Разработка через тестирование» (К. Бек) — применение Test-Driven-Development на примере разработки реального программного кода.

  • «Высоконагруженные приложения. Программирование, масштабирование, поддержка» (М. Клеппман) — ключевые принципы, алгоритмы и компромиссы, без которых не обойтись при разработке высоконагруженных систем для работы с данными.

  • «Карьера программиста» (Макдауэлл Г. Лакман) — о собеседованиях от и до. Как устроен процесс в корпорациях вроде Amazon, техническая часть с сотней примеров задач и вопросов, как реагировать на отказ и что вообще делать после собеседования.

    ???? «Современные операционные системы» (Е. Таненбаум) — к основам в последнем издании добавилось много нового интересного материала. Например, про виртуализацию и облачные вычисления.

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

  • ????«UNIX. Профессиональное программирование» (У. Стивенс, С. Раго) — альтернатива «Современным операционным системам» Таненбаума. Книга подойдет новичкам, чтобы разобраться в ОС UNIX. Структура книги позволяет читать темы подряд или использовать в виде справочника.

  • ???? «Компьютерные сети» (Е. Таненбаум, Д. Уэзеролл) — основные концепции, которые определили современное состояние и тенденции развития компьютерных сетей.

  • ????«UNIX. Разработка сетевых приложений» (У. Стивенс, С. Раго) — альтернатива книге «Компьютерные сети». Посвящена созданию web-серверов, клиент-серверных приложений или любого другого сетевого программного обеспечения в операционной системе UNIX.

«Считаю, что книгу "UNIX. Разработка сетевых приложений" рано или поздно обязан прочитать любой программист, пишущий сетевые приложения. То есть в наши дни абсолютно любой программист. Новичкам ее нужно рекомендовать опционально, поскольку там большой объем информации для усвоения» — Алексей Сундуков, организатор PHP-сообщества Самары

  • ???? «Symfony 5. Быстрый старт» (Ф. Потенсьер) — в книге описывается создание приложения с нуля, вплоть до развертывания в продакшене.

  • «Git для профессионального программиста» (Б. Штрауб, С. Чакон) — обновленное руководство по использованию Git в современных условиях. Второе издание книги было обновлено для Git-версии 2.0 и уделяет большое внимание GitHub.

Телеграм-каналы, на которые советуют подписаться

«Рекомендую вступить в PHP-чат своего города. И главное — общаться с другими программистами в офлайне» — Валерий Горбачев, организатор краснодарского PHP-сообщества.

  • Список всех городских сообществ храним на сайте и в статье на Хабре. Стараемся обновлять по возможности. Там же лежат ссылки на русскоязычные чаты и каналы про фреймворки, новости языка, задачи с собеседований.

«Чем больше чатов в подписках, тем больше ответов можешь найти через поиск. Работает как второй Гугл» — Валентин Удальцов, автор канала Пых

В опросе чаще всего вспоминали и советовали:

  • ???? PHP Digest — канал Романа Пронского со сборками новостей и обновлений PHP и фреймворков. Канал временно не обновляется, но можно читать посты Романа на английском в блоге JetBrains.

  • Пых — канал Валентина Удальцова. А также Пыхтелка — чат канала.  

  • ???? Библиотека пхпшника — проект от канала Библиотека программиста. Статьи, анонсы, вопросы с собеседований, но бывает и реклама.

  • Чат конференции PHP Russia — это не только обсуждение докладов с конфы. В свободное от конференции время туда тоже можно зайти с нетривиальными вопросами и кейсами.

  • Software Design/Architecture/Zen — уютный чатик про ООП. У ребят есть страничка с полезными материалами по темам чата.

  • DDDevotion — все о Domain-Driven Design.

  • phpGeeks — общение, разбор рабочих моментов, иногда бывают вакансии. А в чат ???? phpGeeks Junior всегда можно прийти за помощью новичку.

  • ???? Beer::PHP — короткие заметки о PHP, Linux, Unit Testing, DB, OOP, etc., выдержки из статей, книг, видео, курсов и других материалов. 

  • PHP — обсуждают ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды.

  • ???? PHP Quiz — новые квизы по PHP и задачки с собеседований каждые 2-3 дня. PHP Quiz Community — разбор и обсуждение кейсов канала PHP Quiz.

Блоги

  • ???? Deworker — блог Дмитрия Елисеева. Скринкасты с разбором ключевых концепций разработки и архитектурных практик.

  • ???? ElisnDN — тоже блог Дмитрия Елисеева. Статьи, анонсы, митапы. Можно пробежаться по топу материалов, которые смотрели и читали в русскоязычном PHP-сообществе в 2021 году — там выделили сразу несколько статей Дмитрия.

  • DesignPatternsPHP — для изучения паттернов на конкретных примерах по ООП.

  • ???? Refactoring.Guru — сайт поможет быстро понять самые основные паттерны. Быстрее, чем книги :)

  • ???? PHP The Right Way — easy-to-read руководство для быстрого знакомства с правилами эффективного использования PHP, принятыми стандартами написания кода и ссылками на признанные руководства.

«PHP The Right Way — актуальный, лаконичный ресурс с рекомендациями по эффективному использованию PHP» — участник опроса.

Подкасты

  • «Пятиминутка PHP»  — подкаст Петра Мязина о PHP, DBA, архитектуре, DevOps и не только.

  • «Цинковый прод» в аудио и видео — ребята временно не выходят в эфир, но можно послушать старые выпуски.

  • «Между скобок» — новые выпуски подкаста не выходят уже год, но есть 14 готовых технических тем и интервью с крутыми людьми из отрасли.

  • The Backend Engineering Show — англоязычный подкаст.

«Я бы порекомендовал еще SDCast»— Александр Макаров, PHP Russia / Yii. 

А для общего развития советуют — «Запуск завтра», «Разговоры с СТО», «Пробоина» и «Подлодка».   

Ютуб-каналы

«Книги нужно читать в первую очередь базовые, которые не устаревают: Макконелл, Мартин, Фаулер, Эванс и так далее.

А для того, чтобы разобрать новую технологию, порой можно посмотреть актуальные видео с последних конференций или часть небольшого курса. И для многих новичков лучше зайдет актуальный видеокурс, чем старая книга» — Иван Поддубный, организатор ростовского PHP-сообщества.

  • PHP Channel — записи всех докладов с главной конференции по PHP в России.

  • Skyeng Tech — на канале есть плейлист с 40+ докладами с PHP-митапов и записи стримов русскоязычного сообщества.

  • HighLoad Channel — сотни докладов про высокие нагрузки.

  • PHP Point — видеоформат PHP Digest, а также крутые стримы от Валентина Удальцова и Романа Пронского.

  • CutCode — просто о Laravel.

  • Laravel Daily — туториалы, уроки и разборы интересных кейсов на Laravel.

Из более общих каналов советовали Диджитализируй, The Codeholic.

Курсы

Важная отметка в этом разделе — никакой рекламы. Делимся тем, что советовали ребята из опроса. Да и часть курсов бесплатные.

«OTUS (старого формата, до разделения на курс для новичков и обычный)» — участник опроса.   

Еще пара советов и полезных ресурсов

  • Твиттер — в нем необязательно активно вести аккаунт, но это хороший ресурс, чтобы читать новость и апдейты. Особенно англоязычного сообщества. Вот, например, аккаунты php.net, Laravel News и Фабьена Потенсьера и The PHP Foundation.

  • Читать примеры на GitHub.

  • И ответы на Stack Overflow.

  • А еще:

«Смотрю, как пишут в опенсорс-проектах код. Например, github.com/yiisoft/demo» — участник опроса. 

«Прокачиваться помогает чтение кода того, что ты устанавливаешь. Например, видишь, что есть какой-то баг — идешь в репозиторий и репортишь. Так становишься ближе к сообществу. А в какой-то момент начинаешь не просто репортить, но и фиксить сам. Это круто прокачивает, потому что к ревью подключаются люди с разными точками зрения со всего мира.

Дальше все больше интегрируешься в сообщество. Мне еще помог Slack Symfony — там пригодился английский. Но в европейских сообществах меньше споров. В русскоязычных интереснее :)» — Валентин Удальцов, автор канала Пых

  • Для начинающих — ребята из ростовского сообщества собирают список возможных стажировок по PHP и контактов.

  • А вот отличная страничка на Гитхабе про начало жизни в мире PHP от модераторов телеграм-чата PHP: статьи, курсы, полезные ресурсы.

Главный совет — читайте документацию. Об этом писал каждый второй в опросе:

Про онлайн-билет на PHP Russia 2022

Мы обещали разыграть среди оставивших в опросе почту онлайн-билет на PHP Russia. Вот запись. Билет достался — Mignedko. А еще мы выбрали пару ребят, которые поделились большим списком рекомендаций в опросе — lipai857@... и tupical@... Им подарим классные футболки.

Сама конференция PHP Russia пройдет 12-13 сентября. Подача докладов еще открыта.

Спасибо чату PHP-организаторов и PHP Russia за помощь со статьей. Если у вас есть совет по книге / чату / каналу — делитесь в комментариях. Дополним)

Комментарии (5)


  1. AnthonyAxenov
    23.06.2022 08:12
    +1

    Очень странно не увидеть здесь ссылку на блог Никиты Попова, до недавних пор одного из наиболее активных контрибьюторов в язык php. У него очень редкие, но меткие и очень хорошие статьи о работе php под капотом.


    1. alekciy
      24.06.2022 09:20
      +2

      Предположу, что причина в языке источника. Понятно, что нужно учить английский. Но если говорить про обучающие материалы, то очень часто даже на нативном языке понять новый для себя концепт довольно сложно. А когда это накладывается еще на необходимость делать это на не родном языке, то задача усложняется в разы. Что уменьшает эффективность обучения.


  1. prostonastya123
    23.06.2022 16:29
    +2

    Благодарю за книги! Я как раз новичок в этой сфере


  1. Kaiver
    23.06.2022 16:29
    +2

    «PHP. Объекты, шаблоны и методики программирования» (М. Зандстра)

    Ссылка дана на страничку с 3-им изданием. У него вышло 6-е издание от 2021 года, у которого в названии добавлено "PHP 8": РНР 8: объекты, шаблоны и методики программирования


    1. jm_sub Автор
      23.06.2022 16:30

      Класс! Спасибо. Поменяю)