Найти в Дзене
Удачные дела

Записки программиста

Значит, смотрите. Решил я вчера, что хватит уже просто программы писать, пора учиться их доставлять людям. Деплоить, короче. Автоответчик свой навороченный в люди выпустить. Думаю, дай-ка займусь, как взрослый дядька — DevOps-ом. А что? Подумаешь, джуниор. Для айтишника это же как с уровнем в играх: назвался джуниором — готовься получать люлей сразу за мидла, а требования к тебе — как к сеньору. Ну, или у меня задача какая-то недоджуниорская попала? Кто ж их разберет. Понял я, что без искусственного интеллекта тут не обойтись. Позвал на подмогу Дипсика. Думал, будет мой верный джуниор-помощник. Ага. Сейчас. Начинаем колдовать. Всё валится. Дипсик после каждой ошибки сидит такой: — Ой, всё! Не может быть! Опять эта дурацкая ошибка? Давай по-ядерному! Всё удаляем и заново! Я говорю: — Ну, давай, логично. Он мне генерит новое решение. Я применяю — бац! Та же ошибка. — Ой, — говорит Дипсик, — опять не вышло? Давай ещё раз удалим и заново? Может, со второго раза магия сработает? И так по кр

Значит, смотрите. Решил я вчера, что хватит уже просто программы писать, пора учиться их доставлять людям. Деплоить, короче. Автоответчик свой навороченный в люди выпустить. Думаю, дай-ка займусь, как взрослый дядька — DevOps-ом. А что? Подумаешь, джуниор. Для айтишника это же как с уровнем в играх: назвался джуниором — готовься получать люлей сразу за мидла, а требования к тебе — как к сеньору. Ну, или у меня задача какая-то недоджуниорская попала? Кто ж их разберет.

Понял я, что без искусственного интеллекта тут не обойтись. Позвал на подмогу Дипсика. Думал, будет мой верный джуниор-помощник. Ага. Сейчас.

Начинаем колдовать. Всё валится. Дипсик после каждой ошибки сидит такой:

— Ой, всё! Не может быть! Опять эта дурацкая ошибка? Давай по-ядерному! Всё удаляем и заново!

Я говорю: — Ну, давай, логично.

Он мне генерит новое решение. Я применяю — бац! Та же ошибка.

— Ой, — говорит Дипсик, — опять не вышло? Давай ещё раз удалим и заново? Может, со второго раза магия сработает?

И так по кругу. Короче, пока мы с ним удаляли и создавали заново, я понял, что мы уже собрали матрёшку покруче, чем у Кощея смерть. Потому что до сути теперь не докопаться.

Сначала мы ставим Докер. Потом в этот Докер водружаем Дженкинс. А в Дженкинсе, естественно, свой Докер подняли, чтоб контейнеры билдить. А в этом контейнере, внутри Дженкинса, внутри моего компа, мы еще Джаву поставили, Пайтон и Maven. Я уже перестал понимать, где я, и на каком этаже этой матрешки нахожусь. Главное — едем дальше.

И о чудо! Репозиторий скопировался! Приложение собирается! Уже пахнет победой. И тут ба-бах!

Выдает ошибку. Я Дипсику: — Что там?

А он мне таким грустным голосом: — Так, у тебя там, получается, гранаты не той системы. Короче, Хром и драйвер к нему поссорились. Один 119-й версии, второй вообще 146-й. Ну как так можно жить?

Начали мы этот цирк с версиями приводить к общему знаменателю. Нашли какой-то древний Хром, к нему драйвер. Заработало, блин!

Ну всё, думаю, теперь автодеплой настроим — и можно будет на Бали улетать, пока всё само работает. Тут Дипсик снова в раж вошел, идеи кончились, и он выдал гениальное:

— А давай с SSH на HTTP перейдем! Надежнее будет!

Я, наивный: — Давай.

А у меня там токен только для SSH был сделан. Специально, чтоб безопаснее. Я перехожу на HTTP — токен, естественно, сразу ласты склеил. Доступа нет.

Короче, устал Дипсик. Сидит, молчит, наверное, виртуальные слезы льет. И я тоже устал. Часы показывают 4 утра, глаза слипаются, в голове каша из контейнеров, версий и запретов.

Плюнул я на всё. Говорю: — Ладно, брат Дипсик, давай спать. Завтра с новыми силами. Утро вечера мудренее.

Ложусь и чувствую: грызет меня мысль. Ощущение, что он всё это время пулил проект вообще не из той папки. И самое обидное, что в Линуксе там на каждом углу табличка висит "ACCESS DENIED". И фиг ты кому докажешь, что ты свой. Вот такое вот ощущение — ты пытаешься зайти в гости, а тебе дверью по лицу. Снова и снова.