Comments 4
Кодинг сеньора. В мечтах: чистая архитектура, понятные функции, предсказуемый результат.
В реальности - это ещё и легаси. Открываешь error.log, а там бесконечные PHP Warning. Где фатал? Его просто не видно за шумом. Почему не работает? Null прилетел из запроса, строку забыли взять в кавычки, конфиг на проде отличается от локального.
Где документация? В голове Васи, которого уволили. Тесты устарели. В коде комментарий «потом разобраться». Задача «на полчаса» идёт уже третий час.
Один фикс тянет за собой два, а те - ещё три фикса. Рефактор откладывается «до лучших времён». Деплой в пятницу был плохой идеей.
В итоге просто вставляем log, log, log, log прямо в код и ищем, где именно всё ломается.
Это не echo Hello World.
Если честно, не очень понял к чему ваши комментарии, по крайней мере не вижу конкретики или связи с проектом или статьей.
Логи - конкретно в статье пример логов, и они INFO, могут быть и варнинги и ошибки, зависит от проблематики и они будут приходить с соответствующими типами WARNING и ERROR. На скрине ошибок соответственно нет.
Документации у проекта более чем достаточно, все досконально описано и лежит на гитхабе, можете самостоятельно посмотреть и ознакомиться.
Кодинг Junior. В мечтах: задача на два часа - сделана за два часа. Тимлид объяснил, помог разобраться. Код прошёл ревью. Все довольны, тикет закрыт.
В реальности. Тимлид: «Спроси у GPT». GPT: «Вот рабочий пример». Рабочий - да. Безопасный - нет.
Пример «рабочего» кода из интернета:
Чиним права. Плохой пример. Ну на php контейнер docker.sock тоже плохой совет был.
Php
<?php
$user = $_GET['user'];
$cmd = "sudo -u root useradd " . $user;
echo shell_exec($cmd);
chmod("/var/www", 0777);
?>
Поздравляем. Удалённое выполнение команд, root-доступ, 777 на проде. Можно сразу открывать хост всему интернету.
Джун идёт на Stack Overflow. Ответ: «Недостаточно данных». Следом: «Где лог?» — «Покажи ошибку» - «А что в error.log?» - «А ты вообще воспроизводил проблему?» Вопросов больше, чем ответов. Самооценка падает быстрее, чем сервер под нагрузкой.
Постепенно приходит понимание: копипаста - не решение, GPT - не тимлид, root - не костыль, а безопасность - не опция. И начинается настоящее обучение: log, log, log, чтение ошибок, минимальные права, воспроизведение проблемы, понимание, а не магия.
Больше чем ядро: как пет-проект вырос в мультитенантную платформу для создания AI-агентов