😎 Сколько баллов набрали вы?
Голосуйте, какой у вас уровень разработчика:
😁 — 5-12 баллов (стажер)
👍 — 13-25 баллов (джуниор)
⚡️ — 26-40 баллов (джуниор+)
👏 — 41-60 баллов (миддл)
🔥 — 61-80 баллов (миддл+)
🎉 — 81-100 баллов (сеньор)
🤩 — 100+ баллов (тимлид)
Но вот в чем прикол — опытный разработчик набирает баллы не случайными косяками, а осознанными решениями.
👉 Научим, как быстро прокачаться от стажера до сеньора
Голосуйте, какой у вас уровень разработчика:
😁 — 5-12 баллов (стажер)
👍 — 13-25 баллов (джуниор)
⚡️ — 26-40 баллов (джуниор+)
👏 — 41-60 баллов (миддл)
🔥 — 61-80 баллов (миддл+)
🎉 — 81-100 баллов (сеньор)
🤩 — 100+ баллов (тимлид)
Но вот в чем прикол — опытный разработчик набирает баллы не случайными косяками, а осознанными решениями.
👉 Научим, как быстро прокачаться от стажера до сеньора
🤩6🥱2😁1
Плагин EM‑Assist анализирует длинные методы, предлагает, какие части кода стоит вынести в отдельную функцию — сгенерирует название, покажет фрагмент и применит рефакторинг в IDE.
• Recall 53.4 % vs 39.4 % у классических инструментов
• 94 % разработчиков довольны результатом
• Работает через пайплайн: LLM → фильтрация статическим анализом → топ‑3 варианта → рефакторинг одним кликом
Установка & использование:
1. Plugins → Marketplace → ищите "EM‑Assist" → Install → Restart IDE
2. (Опционально) Tools → Large Language Models → вставьте OpenAI API Key
3. Правый клик в методе → Show Context Actions → Extract Function experiment → выберите вариант → Apply
Отличный способ быстро очистить большие методы и улучшить структуру кода с минимальными усилиями!
Библиотека пхпшника
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5🥱3
🚀 Как построить workflow в PHP без боли
В каждом бизнес-приложении есть процессы: обработка заказов, онбординг клиентов, согласование документов. Но чаще всего именно workflow превращается в ад для разработчиков: куча сервисов, сложные тесты и боязнь что-то сломать.
Что обычно делают? Пишут огромный
🧩 Почему state machine не спасает
Кажется логичным уйти в state machine: всё по шагам, есть переходы. Но на деле — YAML-конфиги на десятки состояний, логика прячется в хендлерах, а изменения становятся кошмаром. State machine управляет состоянием, а бизнесу нужна прозрачная поведенческая логика.
🌱 Ecotone Orchestrator
Ребята из Ecotone предлагают другой путь — Orchestrator на базе Routing Slip pattern.
Теперь бизнес-процесс — это просто список шагов в коде.(на фото)
📌 Что это даёт:
🔸Понятные шаги вместо монолитных методов
🔸Масштабируемость без синхронизации и БД-состояний
🔸Асинхронные шаги там, где это нужно
🔸Прозрачная обработка ошибок и ретраи
🔸Изменения в workflow без миграций и даунтайма
💡 В итоге: меньше хаоса, больше контроля и возможность адаптировать процессы под клиента или продукт.
👉 Medium
Библиотека пхпшника
В каждом бизнес-приложении есть процессы: обработка заказов, онбординг клиентов, согласование документов. Но чаще всего именно workflow превращается в ад для разработчиков: куча сервисов, сложные тесты и боязнь что-то сломать.
Что обычно делают? Пишут огромный
OrderProcessingService
, где валидатор, оплата, склад и уведомления перемешаны в одном методе. В dev это ещё как-то живёт, но в проде любая ошибка превращается в пожар 🔥🧩 Почему state machine не спасает
Кажется логичным уйти в state machine: всё по шагам, есть переходы. Но на деле — YAML-конфиги на десятки состояний, логика прячется в хендлерах, а изменения становятся кошмаром. State machine управляет состоянием, а бизнесу нужна прозрачная поведенческая логика.
🌱 Ecotone Orchestrator
Ребята из Ecotone предлагают другой путь — Orchestrator на базе Routing Slip pattern.
Теперь бизнес-процесс — это просто список шагов в коде.(на фото)
📌 Что это даёт:
🔸Понятные шаги вместо монолитных методов
🔸Масштабируемость без синхронизации и БД-состояний
🔸Асинхронные шаги там, где это нужно
🔸Прозрачная обработка ошибок и ретраи
🔸Изменения в workflow без миграций и даунтайма
💡 В итоге: меньше хаоса, больше контроля и возможность адаптировать процессы под клиента или продукт.
👉 Medium
Библиотека пхпшника
❤8🥱2
🎮 КВЕСТОВАЯ ЛИНИЯ: «Путь Data Scientist'а»
⮕ Твой стартовый набор искателя данных:
⚡️ АКТИВЕН ВРЕМЕННЫЙ БАФФ: «Щедрость наставника»
Эффект: –30% к цене полного набора ДСника
Было: 121.800 ₽ → Стало: 84.900 ₽
☞ Что ждет тебя в этом квесте
📎 Забрать бафф
Рассрочки: 3 мес | 6 мес | 12 мес
⮕ Твой стартовый набор искателя данных:
Python — твое легендарное оружие (урон по багам +∞)
Математика — твой базовый интеллект (влияет на понимание алгоритмов)
Машинное обучение — твое дерево навыков (открывает новые способности)
⚡️ АКТИВЕН ВРЕМЕННЫЙ БАФФ: «Щедрость наставника»
Эффект: –30% к цене полного набора ДСника
Было: 121.800 ₽ → Стало: 84.900 ₽
☞ Что ждет тебя в этом квесте
— Получение артефактов: портфолио проектов и сертификаты— Прокачка от новичка до Senior Data Scientist— Босс-файты с реальными задачами из индустрии— Доступ к гильдии единомышленников
📎 Забрать бафф
Рассрочки: 3 мес | 6 мес | 12 мес
Что вас больше всего раздражает в работе?
Anonymous Poll
31%
глупые вопросы от коллег и клиентов
41%
созвоны
42%
работа с документами и отчётами
13%
презентации
15%
планирование
16%
написание рабочих писем
11%
собственно сами рабочие задачи
6%
свой вариант (напишу в комментариях)
⚡️ Будь как этот гений с картинки — предлагай свои условия работодателю, а не наоборот!
Кто нужен?
Но если вы пока джун — я бы предложил:
- Full-time контракт: 180к/мес после курса + опцион на карьеру в топ-компаниях
- Либо фикс за проект: стань ML-инженером за 39к вместо 44к с промокодом LASTCALL
🔗 Старт 9 сентября
Кто нужен?
Senior ML-Engineer с опытом работы более 6 месяцев в FAANG компаниях. Требование: разработать кросс-платформенное приложение-трекер зарплат с AI-распознаванием вакансий по резюме.
Но если вы пока джун — я бы предложил:
- Full-time контракт: 180к/мес после курса + опцион на карьеру в топ-компаниях
- Либо фикс за проект: стань ML-инженером за 39к вместо 44к с промокодом LASTCALL
🔗 Старт 9 сентября
❤4
💻 Подборка новостей по PHP за неделю:
🔹 CakePHP 5.2.7 — поддержка UUID V7, исправления в
🔹 Laravel 12.26 — добавлены
🔹 PHP 8.5.0 Beta 2 — вторая бета PHP 8.5. Цикл релизов продолжается.
🔹 PHP 8.3.25 и 8.4.12 — багфикс-релизы, обновление рекомендуется всем пользователям.
🔹 Symfony 7.3.3 — очередной стабильный релиз с исправлениями.
🔹 Symfony 25–31 августа 2025 — сообщество вспоминает Райана Уивера (SymfonyCasts), чьи уроки вдохновили тысячи разработчиков. Его вклад в Symfony и теплоту общения будут помнить и продолжать через обучение и поддержку семьи.
Библиотека пхпшника
#свежак
🔹 CakePHP 5.2.7 — поддержка UUID V7, исправления в
getEnv()
и валидации вложенных сущностей.🔹 Laravel 12.26 — добавлены
withHeartbeat()
для Lazy collections, toPrettyJson()
для коллекций и моделей, а также Wayfinder в React/Vue стартер-китах для типобезопасных маршрутов.🔹 PHP 8.5.0 Beta 2 — вторая бета PHP 8.5. Цикл релизов продолжается.
🔹 PHP 8.3.25 и 8.4.12 — багфикс-релизы, обновление рекомендуется всем пользователям.
🔹 Symfony 7.3.3 — очередной стабильный релиз с исправлениями.
🔹 Symfony 25–31 августа 2025 — сообщество вспоминает Райана Уивера (SymfonyCasts), чьи уроки вдохновили тысячи разработчиков. Его вклад в Symfony и теплоту общения будут помнить и продолжать через обучение и поддержку семьи.
Библиотека пхпшника
#свежак
❤1🔥1
Forwarded from Библиотека задач по PHP | тесты, код, задания
⌨️ Топ-вакансий по PHP за неделю
Backend (PHP Laravel) Developer — от 1 500 до 2 000 $, Удалёнка (Москва)
Senior PHP developer— 300 000 ₽, Удалёнка (Москва)
Программист PHP/Laravel/Vue.js — до 200 000 ₽, Удалёнка (Москва)
Senior/Lead PHP Developer — от 2500 до 4000 $, Удалёнка (Москва)
➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs
Backend (PHP Laravel) Developer — от 1 500 до 2 000 $, Удалёнка (Москва)
Senior PHP developer— 300 000 ₽, Удалёнка (Москва)
Программист PHP/Laravel/Vue.js — до 200 000 ₽, Удалёнка (Москва)
Senior/Lead PHP Developer — от 2500 до 4000 $, Удалёнка (Москва)
➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs
Иногда реально ощущение, что нас держат в Матрице.
Большинство сидит, читает статьи про ML, смотрит ролики «как это работает» — и всё.
❗ Сегодня последний день промокода Lastcall (−5000 ₽).
Уже завтра стартует первый вебинар по Машинному обучению — полный набор для выхода из Матрицы.
Кто готов вырваться из симуляции и ворваться в сезон найма?
👾 — я уже в команде Нео
👍 — хочу красную таблетку
🤔 — пока думаю, но интересно
Забирай полный комплект для ML-разработки: Python + Математика + Машинное обучение.
🔥 Скидка 30% действует только до 9 сентября → забираем себе
Большинство сидит, читает статьи про ML, смотрит ролики «как это работает» — и всё.
❗ Сегодня последний день промокода Lastcall (−5000 ₽).
Уже завтра стартует первый вебинар по Машинному обучению — полный набор для выхода из Матрицы.
Кто готов вырваться из симуляции и ворваться в сезон найма?
👾 — я уже в команде Нео
👍 — хочу красную таблетку
🤔 — пока думаю, но интересно
Забирай полный комплект для ML-разработки: Python + Математика + Машинное обучение.
🔥 Скидка 30% действует только до 9 сентября → забираем себе
🌚1
How to: Использование SQLite в продакшене с Laravel
SQLite — это отличная база данных для многих Laravel-приложений, особенно если ваша система не требует огромных масштабов. Она позволяет эффективно работать даже с большим количеством одновременных запросов, при этом не требуя сложной настройки сервера, как в случае с MySQL. Главным преимуществом SQLite является его простота: это один файл базы данных, который можно легко копировать, делая резервное копирование и миграцию простыми. В отличие от MySQL, который требует работы с демоном сервера и дополнительной настройки, SQLite использует ту же среду, в которой работает ваше приложение, минимизируя накладные расходы на межпроцессное взаимодействие.
Преимущества использования SQLite:
Легкость в настройке: Для работы SQLite достаточно лишь одного файла, что упрощает резервное копирование и перенос данных.
Минимизация накладных расходов: SQLite работает непосредственно в том же процессе, что и ваше приложение, исключая лишние расходы на сеть и межпроцессное взаимодействие.
Простота использования: Для большинства небольших и внутренних приложений SQLite может быть быстрее и проще, чем более сложные решения, такие как MySQL.
Этот подход подходит для приложений, которые не требуют огромной масштабируемости и могут работать на одном сервере.
В статье рассмотрены основные практические советы для использования SQLite с Laravel, включая улучшение производительности с помощью режима WAL и особенности работы с транзакциями.
👉 Читать статью
Библиотека пхпшника
SQLite — это отличная база данных для многих Laravel-приложений, особенно если ваша система не требует огромных масштабов. Она позволяет эффективно работать даже с большим количеством одновременных запросов, при этом не требуя сложной настройки сервера, как в случае с MySQL. Главным преимуществом SQLite является его простота: это один файл базы данных, который можно легко копировать, делая резервное копирование и миграцию простыми. В отличие от MySQL, который требует работы с демоном сервера и дополнительной настройки, SQLite использует ту же среду, в которой работает ваше приложение, минимизируя накладные расходы на межпроцессное взаимодействие.
Преимущества использования SQLite:
Легкость в настройке: Для работы SQLite достаточно лишь одного файла, что упрощает резервное копирование и перенос данных.
Минимизация накладных расходов: SQLite работает непосредственно в том же процессе, что и ваше приложение, исключая лишние расходы на сеть и межпроцессное взаимодействие.
Простота использования: Для большинства небольших и внутренних приложений SQLite может быть быстрее и проще, чем более сложные решения, такие как MySQL.
Этот подход подходит для приложений, которые не требуют огромной масштабируемости и могут работать на одном сервере.
В статье рассмотрены основные практические советы для использования SQLite с Laravel, включая улучшение производительности с помощью режима WAL и особенности работы с транзакциями.
👉 Читать статью
Библиотека пхпшника
Единый код валидаторов на фронте и бэке (PHP + FFI + Go + JS)
Когда фронт и бэк на разных языках (например, JS + PHP), часто приходится писать одинаковые валидаторы дважды. Это не только лишняя работа, но и риск ошибок, когда логика валидации на фронте и бэке не совпадает.
🎯 Решение: Используем FFI (Foreign Function Interface) для запуска JavaScript-кода на PHP с помощью Go. Это позволяет использовать один и тот же валидатор и на фронте, и на бэке, обеспечивая синхронизацию логики.
✅ Преимущества: Один код для валидации на двух уровнях, меньше ошибок и проще поддержка.
🚨 Недостатки: Может быть немного медленно из-за FFI и проблемы с поддержкой юникодных символов в Go.
🔧 Хабр
Библиотека пхпшника
Когда фронт и бэк на разных языках (например, JS + PHP), часто приходится писать одинаковые валидаторы дважды. Это не только лишняя работа, но и риск ошибок, когда логика валидации на фронте и бэке не совпадает.
🎯 Решение: Используем FFI (Foreign Function Interface) для запуска JavaScript-кода на PHP с помощью Go. Это позволяет использовать один и тот же валидатор и на фронте, и на бэке, обеспечивая синхронизацию логики.
✅ Преимущества: Один код для валидации на двух уровнях, меньше ошибок и проще поддержка.
🚨 Недостатки: Может быть немного медленно из-за FFI и проблемы с поддержкой юникодных символов в Go.
🔧 Хабр
Библиотека пхпшника
😁21❤2😢1🌚1
composer/pcre — Библиотека-обертка для стандартных функций
Это обёртка над стандартными функциями PHP
✅ Делает вызовы функций регулярных выражений безопаснее и удобнее.
✅ Генерирует исключения при ошибках (вместо того, чтобы просто возвращать
✅ Возвращает более предсказуемые результаты (например, всегда массив строк, а не
✅ Упрощает написание кода и улучшает читаемость — не нужно постоянно проверять
Для чего нужна
📦 В первую очередь библиотека используется внутри Composer, чтобы избежать неожиданных багов при работе с регулярками.
👨💻 Её можно использовать и в своих проектах, если хотите работать с регулярными выражениями в более строгом и типобезопасном стиле.
🔗 Github
Библиотека пхпшника
#инструменты
Это обёртка над стандартными функциями PHP
preg_*
, которая:✅ Делает вызовы функций регулярных выражений безопаснее и удобнее.
✅ Генерирует исключения при ошибках (вместо того, чтобы просто возвращать
false
и молчать).✅ Возвращает более предсказуемые результаты (например, всегда массив строк, а не
false|null
).✅ Упрощает написание кода и улучшает читаемость — не нужно постоянно проверять
preg_last_error()
или === false
.Для чего нужна
📦 В первую очередь библиотека используется внутри Composer, чтобы избежать неожиданных багов при работе с регулярками.
👨💻 Её можно использовать и в своих проектах, если хотите работать с регулярными выражениями в более строгом и типобезопасном стиле.
🔗 Github
Библиотека пхпшника
#инструменты
❤4👍2🔥1🌚1
Берём под контроль TODO-шки в коде php
Проблема со сложностью управления TODO/FIXME комментариями в коде очень стара. Ей больше 50 лет. Дошло до того, что в некоторых проектах начали запрещать их со словами: «или исправь сразу или не создавай мусор». Вот о том как можно автоматизировать управление ими и превратить из мусора в полезный инструмент и пойдет речь.
🔗 Хабр
Проблема со сложностью управления TODO/FIXME комментариями в коде очень стара. Ей больше 50 лет. Дошло до того, что в некоторых проектах начали запрещать их со словами: «или исправь сразу или не создавай мусор». Вот о том как можно автоматизировать управление ими и превратить из мусора в полезный инструмент и пойдет речь.
🔗 Хабр
Forwarded from Библиотека программиста | программирование, кодинг, разработка
This media is not supported in your browser
VIEW IN TELEGRAM
GitHub Breakout — GitHub Action, который превращает твои коммиты в SVG в стиле Breakout, ежедневно обновляется и переключается между светлым/тёмным режимом
Это мы используем
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰3
На собеседовании обычно всё внимание сосредоточено на вас: опыт, проекты, навыки. Но важно помнить — интервью это обоюдный процесс. Вы тоже выбираете компанию. И тут возникает вопрос: а что спрашивать в ответ?
Вопросы к HR:
• Как устроен процесс адаптации новых сотрудников?
• Какие возможности для роста есть у специалистов на моей позиции?
• Как компания относится к переработкам и work-life balance?
• Есть ли внутреннее обучение или компенсация внешних курсов?
Вопросы к будущей команде:
• Как проходит рабочий день: митинги, планирования, коммуникация?
• Как распределяются задачи и кто принимает решения по приоритетам?
• Как команда решает конфликты или технические споры?
• Чем гордятся в проекте, а что считают слабым местом?
👉 Какие вопросы вы задаёте на собеседованиях?
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
🎯 Команда дня: Сжатие и минификация CSS/JS через Node или PHP
📌 Команда (Node.js + Terser для JS):
💡 Команда минифицирует ваш JavaScript, сокращает код и уменьшает размер файлов, используя Terser.
📌 Команда (Node.js + CleanCSS для CSS):
💡 Минифицирует CSS, удаляя пробелы, комментарии и упрощая записи, что ускоряет загрузку страницы.
🔍 Зачем это нужно?
🔹 Ускорение загрузки страниц: Меньший размер JS и CSS сокращает время передачи данных.
🔹 Оптимизация производительности: Минифицированный код обрабатывается браузером быстрее.
🔹 Чистый продакшн: Убираются ненужные пробелы и комментарии, что делает код компактным.
⚙️ Дополнительные опции Terser:
Пример с source map:
⚙️ Дополнительные опции CleanCSS:
Пример:
💡 Советы:
Для больших проектов удобно автоматизировать минификацию через npm scripts или Gulp/Webpack.
Минифицируйте только для production, чтобы не усложнять отладку на development.
Используйте source maps для удобного дебага минифицированного кода.
📌 Команда (Node.js + Terser для JS):
npx terser src/app.js -o dist/app.min.js -c -m
💡 Команда минифицирует ваш JavaScript, сокращает код и уменьшает размер файлов, используя Terser.
📌 Команда (Node.js + CleanCSS для CSS):
npx clean-css-cli -o dist/style.min.css src/style.css
💡 Минифицирует CSS, удаляя пробелы, комментарии и упрощая записи, что ускоряет загрузку страницы.
🔍 Зачем это нужно?
🔹 Ускорение загрузки страниц: Меньший размер JS и CSS сокращает время передачи данных.
🔹 Оптимизация производительности: Минифицированный код обрабатывается браузером быстрее.
🔹 Чистый продакшн: Убираются ненужные пробелы и комментарии, что делает код компактным.
⚙️ Дополнительные опции Terser:
-c
или --compress
: Сжимает код, удаляя лишние конструкции.-m
или --mangle
: Переименовывает переменные и функции, уменьшая размер.--source-map
: Генерирует source map для удобного дебага минифицированного кода.Пример с source map:
npx terser src/app.js -o dist/app.min.js -c -m --source-map
⚙️ Дополнительные опции CleanCSS:
--compatibility
— задаёт совместимость с браузерами.--level
— уровень оптимизации (1 или 2).Пример:
npx clean-css-cli -o dist/style.min.css src/style.css --level 2
💡 Советы:
Для больших проектов удобно автоматизировать минификацию через npm scripts или Gulp/Webpack.
Минифицируйте только для production, чтобы не усложнять отладку на development.
Используйте source maps для удобного дебага минифицированного кода.
❤1👍1