Telegram groups catalog TgQuestions

Вопросы о зарплатах, инфляции и практиках разработки в Германии

Гаражний кооператив

Гаражний кооператив "Мюнхен" 🇺🇦

@munich_cars
Чат об автомобилях: кредит, лизинг, покупка. Холиварим, обсуждаем что лучше, что хуже, где какая шумоизоляция и какой расход :)
Вторник — день ненависти Теслы
Ненавидим DB!

https://bit.ly/2PDBhSU - как обменять права
https://bit.ly/2TdafE4
29.07.2021 19:56 Show in chat

до сих пор кто-то использует SVN как я понял, из соображений безопасности каких-то, но не понял почему

У нас есть ребята на Perforce :)
У меня на текущем проекте subversion есть, там хранятся конфиги для одного Очень Важного самописного легаси-продукта, с помощью которого деплоятся все жава приложения
Поправлю:
для одного Очень Важного самописного легаси-велосипеда
Ага, верно
29.07.2021 19:51 Show in chat

Ещё лет 5 назад в одной фирме с оборотом в миллиард "деплоили" копированием warов, ахах

работает — не трожь
я тебе так скажу: в одной мега супер гипер корпорации еще пол года назад работал чувак, поддерживающий код на коболе на мейнфрейме, это все было из конца 80х
тип вышел на пенсию
и такого полно
ну я в универе war копировал помню :)
29.07.2021 19:01 Show in chat

Сейчас планируем обновить ядро и после потихоньку переписывать какие то части на lua.

ого
это не язык. Наверное)
Логика для систем телефонии. АТС, грубо говоря. Логика прохождения звонка. Называется dialplan.
29.07.2021 18:44 Show in chat

Хорошо вам, тесты есть. На наш код сложно тестирование навесить. Начали что-то выдумывать, планируем, но это капец не просто… Приходится сначала, перед лайвом, на пилотную систему, на живых людях тестировать, прикиньте…

Начните хотя бы со smoke тестов. Самая крутая штука из мира тестирования
ну мы написали что-то, попробовали - работает. Это и есть смок же?)
Смоук это самые примитивные аля интеграционные тесты (хотя может не обязательно интеграционные). Которые запускают всю систему и проверяют что она хотя бы отдалённо похожа на рабочую. Условно если это сайт - проверка что страница открыта, что есть шапка, подвал, заголовок какой-нибудь.

Фишка в том, что в условиях когда времени на тесты нет вообще, такие тесты дают хоть какую-то уверенность что всё совсем не развалилось. А это очень ценно. И дёшего :)
Это мы делаем руками. Запустили и сделали пару тестовых запросов. Работает? Отлично.
Но с автоматизацией этого пока не очень.
Ох, нужно автоматизировать, но и нужно быть осторожнее. Тестовый прогон может занимать вечность, с одной стороны, ну и блокировать воркеры. Ну или можно воркеров кучу поставить.
у нас очень специфичесикй продукт. Классические способы тестирвания не работают. Сейчас кое что делается, первые шаги, что то выдумывем.
I bet каждая вторая компания такое говорит) "мы особенные"))))
у всех так обычно, тестирование — очень сложно
+
29.07.2021 18:36 Show in chat

Коллеги, а есть у кого-то из вас Xbox из последних? Х или С. Думаю о покупке с целью погонять на симуляторах и полетать в MFS. Вот только не могу на Коробку найти интересный сим для гонок. Интересно бы изучить наши ближайшие треки. Ред Булл ринг есть в Gran Turismo, но GT нет на X-коробку, это эксклюзив на PS5. На Коробку есть Форза моторспорт, в котором есть, хотя бы, нюрбург. Но 7ой моторспорт жутко древний… Есть кто-то, кто шарит? Кто подскажет?) Спасибо.

29.07.2021 17:45 Show in chat

Как-то сложно у вас всё. У нас Gitlab. MR-ы вливаются в master squash-ем по клике "merge". CI запускается уже после merge-а.

Т.е. вы можете влить нерабочий код легко и непринужденно и получить красный мастер?
Раз ci запускается "потом"
аааа понял в чем твой вопрос, у нас в предыдущем месте тесты гонялись после всех мержей. А в текущей конторе мы так не делаем - отдельно бранчи прогнались - и все. Мастер автоматом не подливается во все бранчи.
В предыдущем проекте действительно нужно было тупить и ждать CI на предыдущий пул, вспомнил
Да. А какие проблемы? С master автодеплой только на тестовые сервера. Т.е. это не будет критичным ни при каких обстоятельствах
Ок, никаких, понятно. Ну просто у нас девелоперы не хотят даже теоретическую возможность красного мастера :)
А чем вам мастер так дорог?
Ничем :) Но вот девелоперы и дев-команда хочет так) И со стороны инфра-команды я не вижу причин говорить "вы хотите не так"
ССЗБ :)
>92% of survey takers believed that enforcing an always
green mainline positively impacts their personal productivity while 8% saw no impact. Interestingly though, none of the
responders claimed that an always green master negatively
impacts their productivity. Similarly, 88% of responders believed that an always green master positively impacts deploying code to production, while only one responder thought it
imposes a negative impact

Из статьи про одну тулу :)
Это мне напомнило историю от коллеги, у которого на прошлой работе был разработчик из Индии, которого попросили починить кучу упавших тестов. Он починил. Закомментировал их нафиг :D
ну статья к слову типа серьезная, а не блогопост) https://dl.acm.org/doi/pdf/10.1145/3302424.3303970
Ну и блогопост, конечно, тоже есть https://eng.uber.com/research/keeping-master-green-at-scale/
29.07.2021 17:02 Show in chat

51 репоз запулен, не все конечно рабочие, что-то чисто подглядывать что там у кого, но все же

Фига "маленькие"
29.07.2021 17:02 Show in chat

ls -1 | wc -l 51

29.07.2021 17:01 Show in chat

да не у всех такая проблема, есть боты на github какие-то, например, как выше сказали

ну вот мне кажется, что проблема у всех :) Просто или кто-то мержит вслепую без тестов, надеясь на то, что конфликтов не будет, или сидят и ждут
у нас маленькие репозы, например, говорю же
Я сказал :) Вот и вопрос был, использовал кто, какие рекомендации. Конкретно у нас походу ни один из ботов не подходит, ибо все они Github App, а у нас в нашей внутренней группе не разрешены аппы
29.07.2021 16:59 Show in chat

там где была репа на 100 человек был автоCI который сам все мержил по-очереди, что не мержилось - разраб должен вручную в конкретный бранч замержить

29.07.2021 16:56 Show in chat

Ибо проблема в том числе всплывает на буквально собственных велосипедных тулах :) Когда допустим у тебя есть твой ПР и 2 ПР от автоматики

29.07.2021 16:56 Show in chat

нет вроде? Ну т.е. релизы у нас конечно есть, но как бы к делу не особо относится?

ну у нас например сейчас - PR заревьювился - ты сразу и мержишь, не копишь их до условного релиза, поэтому такого нет
CI сколько занимает?
Когда у тебя 2 ПР висит, как быстр оони оба вмерживаются?
Так мы не копим, о чем и речь
так вот они не висят как раз
тогда один деплоится - потом другой, можешь вручную сборку первого ебануть - и все
Ну как не висят, если на проекте больше одного разраба, то рано или поздно будут как минимум 2 ПР в параллель
стоп-стоп-стоп, давайде помедленнее отсюда)
короче, у нас особо такого не бывает. Репы маленькие, а когда не маленькие код может редактироваться в разных местах - тогда опять же все замержится само. Проблема такая с конфликтами довольно редка.
Так и у нас нет проблемы конфликтов!
ну тогда хуярим по-очереди мержи и все
либо по-очереди будет 100 раз деплоится, либо в CI можно на крестик нажать, чтобы сборку кульнуть старья. НО опять же проблема не каждый день у нас
Аааа, так я об этом и спрашиваю. Как это, черт возьми, делается в мире? Потому что сейчас человек сидит как кощей над ПР, ждет пока один вольется, чтобы нажать "обновить" во втором
29.07.2021 16:55 Show in chat

я думаю проблема в том что вы хотите релизный цикл и staging?

э?
29.07.2021 16:55 Show in chat

В следующих 2х конторах дальше у меня были более меленькие репы и SOA и вообще не было релизного цикла

29.07.2021 16:55 Show in chat

У меня в одной конторе был один репоз куда срут человек 100. Но народ там пилил какие-то свои кастыли, свой вообще CI был, там просто в jira таск помечался в статус QA - OK это означало что он готов, дальше CI сам брал таски и мержил в отдельный релизный бранч-staging. Что не смержилось само - девелоперу падала месага в мессенджер и он мержил вручную, если не успевает - обламывается 🙂

29.07.2021 16:40 Show in chat

Ну если фичи не размазывать по спринту, то никак, как по мне, куча мала будет

Ну так-то в мире тулы-боты есть, bors, kodiak, bulldozer и куча штук помельче. Marge-bot для гитлаба
Не, я вас не понимаю. Даже если 2 ПР висят (а это блин даже в хелловорлд-проекте будет), и CI занимает единицы минут, если не 2 часа, то проблема в наличии
29.07.2021 16:32 Show in chat

А что, по каждому чиху идёт мердж в мастер? Пилите фича-бейзед разработку и тогда фичи раз в пару дней мерджится будут

Ну фичи мержатся раз в пару дней, да. Но в вечер перед релизом от 5 разработчиков 10 ПР висят и все надо замержить)
фич много, а еще есть фиксы от инфраструктурной команды, тесты от QA и проч
даже у нас с маленькой командой бывает, что надо 5-10 пулл реквестов висит уже одобренные ревьюверами и ожидающие мержа
+
29.07.2021 16:26 Show in chat

Товарищи айтишники, а подскажите, кто как проблему авто-мержей решает? Чтобы не оффтопить совсем уж, можно в ЛС. Типа, есть Pull Request, есть CI, есть код ревью и аппрувы. Когда ПР аппрувится, то его надо ребейзнуть, чтобы запустить CI на актуальном мастере+ПР и убедиться, что нет конфликтов со свежими коммитах в мастер. Итого человек жмет условный "ребейз", ждет полчаса CI, потом обнаруживает, что появились еще коммиты, жмет еще раз "ребейз", ждет и только потом нажимает заветную зеленую кнопку "merge". Auto-merge в гитхабе проблему не решает, все равно нужно ребейзить руками. (для сторонников мерж-коммитов - одна фигня, надо запустить CI на мерже в финальный мастер, который постоянно убегает вперед)

29.07.2021 13:46 Show in chat

Инфляция в Германии впервые с 2008 года превысила отметку 3% и достигла 3,8% год к году

29.07.2021 13:46 Show in chat

Беднеем быстрее, чем растут зарплаты :(