В чаты по 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» — участник опроса.
SymfonyCasts — курсы и скринкасты по PHP & Symfony.
LaravelCasts и LaravelDaily — скринкасты по Laravel.
Подкасты
«Пятиминутка 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
«OTUS (старого формата, до разделения на курс для новичков и обычный)» — участник опроса.
Hexlet — в описании платного курса есть карта изучения со всеми темами, которые нужно изучить новичку.
Stepik — бесплатные курсы PHP для начинающих и PHP — первое знакомство.
Курсы по PHP и профессии от Skillbox — на странице можно найти базовый и PRO.
Курс в формате небольших видео для погружения в Laravel с нуля от CutCode
Еще пара советов и полезных ресурсов
Твиттер — в нем необязательно активно вести аккаунт, но это хороший ресурс, чтобы читать новость и апдейты. Особенно англоязычного сообщества. Вот, например, аккаунты 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)
Kaiver
23.06.2022 16:29+2«PHP. Объекты, шаблоны и методики программирования» (М. Зандстра)
Ссылка дана на страничку с 3-им изданием. У него вышло 6-е издание от 2021 года, у которого в названии добавлено "PHP 8": РНР 8: объекты, шаблоны и методики программирования
AnthonyAxenov
Очень странно не увидеть здесь ссылку на блог Никиты Попова, до недавних пор одного из наиболее активных контрибьюторов в язык php. У него очень редкие, но меткие и очень хорошие статьи о работе php под капотом.
alekciy
Предположу, что причина в языке источника. Понятно, что нужно учить английский. Но если говорить про обучающие материалы, то очень часто даже на нативном языке понять новый для себя концепт довольно сложно. А когда это накладывается еще на необходимость делать это на не родном языке, то задача усложняется в разы. Что уменьшает эффективность обучения.