Переворачиваем календарь — а там скидки, которые уже закончились.
Но мы их вернули на последний день 🤔
До 00:00 третьего сентября (цены как до 1 сентября):
▪️ Математика для Data Science — 35.199 ₽ вместо 44.900 ₽
▪️ Алгоритмы и структуры данных — 31.669 ₽ вместо 39.900 ₽
▪️ Основы IT — 14.994 ₽ вместо 19.900 ₽
▪️ Архитектуры и шаблоны — 24.890 ₽ вместо 32.900 ₽
▪️ Python — 24.990 ₽ вместо 32.900 ₽
▪️ ML для Data Science — 34.000 ₽ вместо 44. 000 ₽
▪️ AI-агенты — 49.000 ₽ вместо 59.000 ₽
👉 Хватаем скидки из прошлого
P.S. Машину времени одолжили у дяди Миши
Но мы их вернули на последний день 🤔
До 00:00 третьего сентября (цены как до 1 сентября):
▪️ Математика для Data Science — 35.199 ₽ вместо 44.900 ₽
▪️ Алгоритмы и структуры данных — 31.669 ₽ вместо 39.900 ₽
▪️ Основы IT — 14.994 ₽ вместо 19.900 ₽
▪️ Архитектуры и шаблоны — 24.890 ₽ вместо 32.900 ₽
▪️ Python — 24.990 ₽ вместо 32.900 ₽
▪️ ML для Data Science — 34.000 ₽ вместо 44. 000 ₽
▪️ AI-агенты — 49.000 ₽ вместо 59.000 ₽
👉 Хватаем скидки из прошлого
P.S. Машину времени одолжили у дяди Миши
❤1
📂 Шпаргалка по вводу-выводу в PHP
Чтобы не гуглить каждый раз: как читать из STDIN, быстро проглатывать целый файл, дописывать в конец и копировать потоки — собрали базовые, но практичные примеры.
Чтение одной строки из STDIN:
Основано на CLI-константе STDIN.
Чтение всего STDIN:
Чтение файла целиком:
Построчное чтение файла:
Используем классический цикл с
Запись в файл (перезапись):
Запись в файл (добавление в конец):
Флаг
Reintech
Копирование файлов (быстро и потоково):
Работа с буфером (in-memory I/O):
Библиотека пхпшника
#буст
Чтобы не гуглить каждый раз: как читать из STDIN, быстро проглатывать целый файл, дописывать в конец и копировать потоки — собрали базовые, но практичные примеры.
Чтение одной строки из STDIN:
<?php
$line = trim(fgets(STDIN)); // читает строку до перевода строки
echo "Введено: $line\n";
Основано на CLI-константе STDIN.
Чтение всего STDIN:
<?php
$all = stream_get_contents(STDIN); // либо file_get_contents('php://stdin')
echo $all;
php://stdin
— стандартный поток ввода процесса PHP. Чтение файла целиком:
<?php
$data = file_get_contents('file.txt');
if ($data === false) {
fwrite(STDERR, "Не удалось прочитать файл\n");
exit(1);
}
echo $data;
file_get_contents()
— предпочтительный способ прочитать файл в строку. Построчное чтение файла:
<?php
$fh = fopen('file.txt', 'r');
if (!$fh) { die("Не удалось открыть файл\n"); }
while (($line = fgets($fh)) !== false) {
echo $line; // обработка строки
}
fclose($fh);
Используем классический цикл с
fgets()
. Запись в файл (перезапись):
<?php
$bytes = file_put_contents('out.txt', "Привет, PHP!\n", LOCK_EX);
if ($bytes === false) {
die("Ошибка записи\n");
}
file_put_contents()
перезапишет файл (или создаст, если нет). Можно добавить LOCK_EX
для блокировки. Запись в файл (добавление в конец):
<?php
$ok = file_put_contents('out.txt', "Новая строка\n", FILE_APPEND | LOCK_EX);
if ($ok === false) { die("Ошибка записи\n"); }
Флаг
FILE_APPEND
дописывает, а не перезаписывает. Reintech
Копирование файлов (быстро и потоково):
<?php
$src = fopen('src.txt', 'r');
$dst = fopen('dst.txt', 'w');
if (!$src || !$dst) { die("Ошибка открытия файлов\n"); }
$copied = stream_copy_to_stream($src, $dst); // копирует весь остаток
fclose($src);
fclose($dst);
echo "Скопировано байт: $copied\n";
stream_copy_to_stream()
копирует данные из одного потока в другой (удобно и для сетевых/памятных потоков). Работа с буфером (in-memory I/O):
<?php
$buf = fopen('php://temp', 'r+'); // авто-переключение в файл при больших объёмах
fwrite($buf, "Hello, ");
fwrite($buf, "World!");
rewind($buf);
echo stream_get_contents($buf); // -> Hello, World!
fclose($buf);
php://temp/php://memory
— удобные «псевдо-файлы» для буферизации в памяти.Библиотека пхпшника
#буст
❤7🥱1
Наш подписчик спрашивает:
Я только начинаю работать с обработкой исключений. В учебниках часто приводят примеры с try-catch, но в реальных проектах я не встречал их так часто. Насколько часто в реальных проектах используется обработка исключений? И в каких случаях она действительно необходима?
🔹 Как вы используете обработку исключений в своих проектах?
— В каких ситуациях вы предпочитаете использовать try-catch?
— Какие ошибки чаще всего приходится обрабатывать?
— Какие подходы к обработке исключений сработали для вас лучше всего?
P.S. Если хотите задать вопрос, заполните нашу гугл-форму. Это займет 5 минут.
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
😎 Сколько баллов набрали вы?
Голосуйте, какой у вас уровень разработчика:
😁 — 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+ баллов (тимлид)
Но вот в чем прикол — опытный разработчик набирает баллы не случайными косяками, а осознанными решениями.
👉 Научим, как быстро прокачаться от стажера до сеньора
🤩4🥱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
Библиотека пхпшника
❤5🥱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
32%
глупые вопросы от коллег и клиентов
40%
созвоны
42%
работа с документами и отчётами
13%
презентации
15%
планирование
16%
написание рабочих писем
9%
собственно сами рабочие задачи
6%
свой вариант (напишу в комментариях)
⚡️ Будь как этот гений с картинки — предлагай свои условия работодателю, а не наоборот!
Кто нужен?
Но если вы пока джун — я бы предложил:
- Full-time контракт: 180к/мес после курса + опцион на карьеру в топ-компаниях
- Либо фикс за проект: стань ML-инженером за 39к вместо 44к с промокодом LASTCALL
🔗 Старт 9 сентября
Кто нужен?
Senior ML-Engineer с опытом работы более 6 месяцев в FAANG компаниях. Требование: разработать кросс-платформенное приложение-трекер зарплат с AI-распознаванием вакансий по резюме.
Но если вы пока джун — я бы предложил:
- Full-time контракт: 180к/мес после курса + опцион на карьеру в топ-компаниях
- Либо фикс за проект: стань ML-инженером за 39к вместо 44к с промокодом LASTCALL
🔗 Старт 9 сентября
❤2
💻 Подборка новостей по 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