Когда увольнялся начальник я на весь отдел орал - "Меня не пугают те косяки, о которых я знаю, меня страшат те, о которых я НЕ знаю!!!" - и таки сбылось по слову Его
.
!Внизапна! встали мониторы с фасовки. Обычный фасовочный робот на сколько-то там тонн в, данные о выработке идут из MES'а в SAP, на фасовке на больших экранах показывается текущее задание - все просто, ага.
Смотрим на телевизор - там nettop, windows, autologon, браузер Firefox (Официально запрещенный под страхом смерти через манямбу!), страница... которая не работает.
ОК, идем на сервер - что там у нас - iIS стандартом? Упс. Нету IIS'а. А, ну может apache затесался? И индейца нету. А что есть в службах? А ничего. Ну, т.е. совсем почти ничего. Гм.
Качаю sysinternal'овский autoruns посмотреть, что же там и как может запускаться и вижу примерно... ничего. Начинаю смотреть что вообще установлено... и вижу node, сссука, js!
Система, ять, опрашивает внутреннюю БД фасовочного робота и передаёт данные клиенту в виде уеб-страницы. НАФЕЙХУА это делать на node - моя не понимать. Менее индустриального решения мне аж придумать трудно, но не-ееет, неведомый хипстор соорудил на ноде web-сервер, опрос базюли и выплевывание ответа. Автозапуск к этой байде, правда, не соорудил - не хипсторское это дело, об эксплуатации думать - у него запустилось, сталбыть усеок!
Начинаю смотреть контакты хипстора - это наш подрядчик которому, та-дааам! и слава-тебе-оспыдя! мы НЕ заплатили за эту работу. Не то, чтобы совсем кинули, нет - сказали, что "Нам нужен альтернативный источник данных о фасовке продукта кроме данных по выработке в MES, так что мы будем брать данные с фасовочной линии и отправлять их в SAP для двойного контроля и бла-бла-бла", так что сделайте нам чтобы мы видели, что это возможно и тогда... Правда SAP'у об этих чЮдесТах не сказали, так что денег нет, ЗнИ в SAP нет и с учетом годового цикла релизов - и вообще, не нравится нам качество работы этого подрядчика так что шлибывы...
Правда завод почему-то думает, что Стратегическая Инициатива по Снижению Влияния Человеческого Фактора на фасовке будет реализована - но надеюсь, что не ТАКИМ образом. В качестве примера хипстоподелия, чтоб под создателем сего вечно стул дымился!
SELECT [LineName],( select sum([Act]) FROM [Haver_Dps_Db].[dbo].[HAVER_DPS] wher
e YEAR(TimePacked) >= 2017 and YEAR(TimePacked) <=2017 and MONTH(TimePacked) >=
6 and MONTH(TimePacked) <= 6 and DAY(TimePacked) >= 1 and DAY(TimePacked) <= 1
and DATEPART(HOUR, TimePacked) > 2 and round(Act,0) = 25 and Line = conf.Line g
roup by Line)/25 as sum25,( select FLOOR(sum([Act])/800) FROM [Haver_Dps_Db].[db
o].[HAVER_DPS] where YEAR(TimePacked) >= 2017 and YEAR(TimePacked) <=2017 and MO
NTH(TimePacked) >= 6 and MONTH(TimePacked) <= 6 and DAY(TimePacked) >= 1 and DA
Y(TimePacked) <= 1 and round(Act,0) = 40 and Line = conf.Line and DATEPART(HOUR
, TimePacked) > 2 group by Line) as sum40, ( select round(act,0) from Haver_Dps_
Db.dbo.HAVER_DPS where ID = ( select MAX(ID) from [Haver_Dps_Db].[dbo].[HAVER_DP
S] where Line = conf.Line )) as lastact from Haver_Dps_Db.dbo.HAVER_DPS_HW_CONFI
G_LINE as conf

!Внизапна! встали мониторы с фасовки. Обычный фасовочный робот на сколько-то там тонн в, данные о выработке идут из MES'а в SAP, на фасовке на больших экранах показывается текущее задание - все просто, ага.
Смотрим на телевизор - там nettop, windows, autologon, браузер Firefox (Официально запрещенный под страхом смерти через манямбу!), страница... которая не работает.
ОК, идем на сервер - что там у нас - iIS стандартом? Упс. Нету IIS'а. А, ну может apache затесался? И индейца нету. А что есть в службах? А ничего. Ну, т.е. совсем почти ничего. Гм.
Качаю sysinternal'овский autoruns посмотреть, что же там и как может запускаться и вижу примерно... ничего. Начинаю смотреть что вообще установлено... и вижу node, сссука, js!
Система, ять, опрашивает внутреннюю БД фасовочного робота и передаёт данные клиенту в виде уеб-страницы. НАФЕЙХУА это делать на node - моя не понимать. Менее индустриального решения мне аж придумать трудно, но не-ееет, неведомый хипстор соорудил на ноде web-сервер, опрос базюли и выплевывание ответа. Автозапуск к этой байде, правда, не соорудил - не хипсторское это дело, об эксплуатации думать - у него запустилось, сталбыть усеок!
Начинаю смотреть контакты хипстора - это наш подрядчик которому, та-дааам! и слава-тебе-оспыдя! мы НЕ заплатили за эту работу. Не то, чтобы совсем кинули, нет - сказали, что "Нам нужен альтернативный источник данных о фасовке продукта кроме данных по выработке в MES, так что мы будем брать данные с фасовочной линии и отправлять их в SAP для двойного контроля и бла-бла-бла", так что сделайте нам чтобы мы видели, что это возможно и тогда... Правда SAP'у об этих чЮдесТах не сказали, так что денег нет, ЗнИ в SAP нет и с учетом годового цикла релизов - и вообще, не нравится нам качество работы этого подрядчика так что шлибывы...
Правда завод почему-то думает, что Стратегическая Инициатива по Снижению Влияния Человеческого Фактора на фасовке будет реализована - но надеюсь, что не ТАКИМ образом. В качестве примера хипстоподелия, чтоб под создателем сего вечно стул дымился!
SELECT [LineName],( select sum([Act]) FROM [Haver_Dps_Db].[dbo].[HAVER_DPS] wher
e YEAR(TimePacked) >= 2017 and YEAR(TimePacked) <=2017 and MONTH(TimePacked) >=
6 and MONTH(TimePacked) <= 6 and DAY(TimePacked) >= 1 and DAY(TimePacked) <= 1
and DATEPART(HOUR, TimePacked) > 2 and round(Act,0) = 25 and Line = conf.Line g
roup by Line)/25 as sum25,( select FLOOR(sum([Act])/800) FROM [Haver_Dps_Db].[db
o].[HAVER_DPS] where YEAR(TimePacked) >= 2017 and YEAR(TimePacked) <=2017 and MO
NTH(TimePacked) >= 6 and MONTH(TimePacked) <= 6 and DAY(TimePacked) >= 1 and DA
Y(TimePacked) <= 1 and round(Act,0) = 40 and Line = conf.Line and DATEPART(HOUR
, TimePacked) > 2 group by Line) as sum40, ( select round(act,0) from Haver_Dps_
Db.dbo.HAVER_DPS where ID = ( select MAX(ID) from [Haver_Dps_Db].[dbo].[HAVER_DP
S] where Line = conf.Line )) as lastact from Haver_Dps_Db.dbo.HAVER_DPS_HW_CONFI
G_LINE as conf
ХАЛК УБИВАТЬ!!!!
Вот из-за таких жЫдов
нас-евреевjavasсript'еров и не любят.Такое ощущение, что писано не традиционно узбеком за доширак и даже не студентом за зачет, а бомжом за боярышник.
Ну и базовика у них тоже не хватает - тоже можно было по башке настучать за такую кривую генерацию запросов.
хмм... а мы MES на node пишем, нормально вроде работает.
// хотя по факту там вся логика - ХПшки в оракле.
это всё потому что у подрядчика своего нормального SRE нет, который бы ему по башке настучал за отсутствие перезапуска и мониторинга.
Ну и базовика у них тоже не хватает - тоже можно было по башке настучать за такую кривую генерацию запросов.
Это по тому, что технической экспертизы проектного решения не было. И самого проектного решения, кстати, тоже - только ФТТ для ЗнИ в рамках SAP, а дальше иуные хипсторы хуяк-хуяк и в продакшон!
При наличии минимальной технической экспертизы шли бы товаристчи со своим гумном далеко и надолго, бо в перечне рекомендуемых средств разработки по холдингу вот разве что жабаскрипта и нету
, а все остальное - по вижуал васик включительно - есть
. Вот в том числе из-за таких фокусов в самых разных областях предыдущий начальник в далека и улетел, да.
Ну реально - не требует задача вида "читаем из БД - выводим информацию на монитор" Ноды, не-тре-бу-ет. Тут ни производительности особой не нужно, ни асинхронного i\о, ни событийно-ориентированного программирования - ни-че-го. Так стоит ли ради этого еще один никем и никак не поддерживаемый хипстокостыль в продакшн тащить?
хмм... а мы MES на node пишем, нормально вроде работает.
Да осспыдя! Хоть на brainfuck'е! У нас процентов 30% отчетности к MES'у на Visual Basic'е в Excel'ных файлах торчит - и вроде как-бы даже и не колышет никого.
Просто менее гм-гм, дисциплинирующего, что ли, языка нежели javasсript я пожалуй и не назову. Ей-ей, на перле и то гавнокодить сложнее, а тут именно что - хуяк-хуяк и оно вроде как работает. Как-то. Иногда.
Такое ощущение, что "я-у-мамы-программисты", прочитавшие "PHP-для-чайников" ДОРОСЛИ и массово переквалифицировались в жабаскриптеров - раньше их в enterprise на полет стрелы не подпускали а теперь гляди-ж ты!
А, еще модное слово devops - нафиг эксплуатацию, нафиг инфраструктуру, нафиг администраторов, отныне каждый сам-себе режиссёр! Разворачиваем рабочую среду из шаблонов контейнеров, с помощью какой-нибудь "системы непрерывной интеграции" доводим поизделие до показывабельного (Не факт, что работоспособного - но показать можно) состояния, обещаем-показываем-подписываем-сваливаем-в-туман. Повбывав бы.
Это зовётся модным словом аджайл. Потому что заказчик сам в среднем нихрена не знает, что ему в итоге надо. Вот и приходится - сначала в продакшен, а потом хуяк-хуяк напильником. Тут остаётся только смириться и выдать бюджет тем сумашедшим, что согласны допиливать наркоманские хотелки.
От длинного планирования и проработки фич бывает другой косяк - у меня адски бомбит, что со стороны заказчика уже, сука, полтора года не могут сделать справочники станков - приходится их руками к нам вбивать, год не могут сделать обратную интеграцию с SAP, потому что это же "программировать надо!" и почти год не могут закупить железо для OPC, плюс навести у себя в тех. картах порядок. В итоге половина фич, что мы им написали вроде как и оплачена, и сделана, а не используется - обидно. Чую, когда они это у себя сделают, то придёт радостный продакт и скажет - "концепция изменилась, всё нахрен переделываем". Смысл был прорабатывать в первый раз и вообще делать и поддерживать?
в перечне рекомендуемых средств разработки по холдингу вот разве что жабаскрипта и нету
Как же у вас, болезных, для браузеров-то сложные UI пишут?
Ну реально - не требует задача вида "читаем из БД - выводим информацию на монитор" Ноды, не-тре-бу-ет.
ололо и ахаха. Мы как раз заменили нодой+ангуляр с асинхронщиной и long polling существовавший монитор на готовом монструозном фреймворке, потому что оно жрало траффик как не в себя и тормозило на цеховом Wi-Fi, так что it depends.
Так стоит ли ради этого еще один никем и никак не поддерживаемый хипстокостыль в продакшн тащить?
На чем подрядчик умел, на том и написал. А то, что вместо ТЗ было ХЗ - это уже относится к вменяемости заказчика.
Просто менее гм-гм, дисциплинирующего, что ли, языка нежели javasсript я пожалуй и не назову.
что перл, что PHP, что js - одного поля ягоды. перл только чуть лучще за счёт древности и проработанности библиотек. js лучше за счёт того, что это местами почти лисп и хорошо умеет в JIT и асинхронное IO.
прочитавшие "PHP-для-чайников" ДОРОСЛИ и массово переквалифицировались в жабаскриптеров
Не, на ноду массово сбежали бывшие верстальщики (ололо, мы можем в сервер!) и хипстеры-рубисты, отчаявшиеся из-за рельсоложества.
Ну и энное количество нормальных разработчиков, которым стало надо вебсокеты итд.
раньше их в enterprise на полет стрелы не подпускали а теперь гляди-ж ты!
Зато индусов на жабе пускали и выходило также плохо.
А, еще модное слово devops - нафиг эксплуатацию, нафиг инфраструктуру, нафиг администраторов, отныне каждый сам-себе режиссёр!
На самом деле это отлично работает, когда мониторинг разработчиков начинает пиздить за упавший продакшн - быстро думать начинают, где соломки подстелить. С разовыми поделками - увы, не работает. Кстати похожая сложная ситуация сплошь и рядом наблюдалась во всяком мелком сайтостроении - заказчик не получает нихрена, кроме доступа к хостингу с кое-как задеплоенным кривыми руками сайтом, разрабатываемым на горячую. Контейнеры, CI/CD, нормальные версии - это великий шаг вперёд для вчерашних быдлокодеров по сравнению с тем, что было. Осталось только несколько раз позвонить в выходные / ночью, когда всё ёбнется и о чудо, появится и мониторинг, и вотчдоги!
Это зовётся модным словом аджайл.
Я предпочитаю старомодное "бардак"
Потому что заказчик сам в среднем нихрена не знает, что ему в итоге надо. Вот и приходится - сначала в продакшен, а потом хуяк-хуяк напильником. Тут остаётся только смириться и выдать бюджет тем сумашедшим, что согласны допиливать наркоманские хотелки.
На этот предмет у нас есть "институт ключевых пользователей", которые способны изложить хотелки со стороны предметной области, "ИТ-бизнес партнер", способный эти хотелки перетолмачить и свести с теми, кто может сделать и "локальный архитектор бизнес-процессов", который смотрит, как предложенное решение "ложится" на имеющийся ландшафт. Теоретически. Институт КЛП по большинству систем "в процессе формирования", учитывая отсутствие финансирования - вечно, "ИТ-бизнес партнер" по причине бедности был объединен с архитектором, которого - сюрприз! сократили, убрав всё направление "архитектура БП" с площадок, ИТ'шников с завода вывели на аутсорс - ну-вы-поняли. Остались именно что "немодерируемые наркоманские хотелки".
А, да - и проектное управление, как же я про него забыл? Если ваша хотелка стоит пару сотен миллионов - вам туда, за меньшие деньги отдельный проект инициировать никто не будет )).
От длинного планирования и проработки фич бывает другой косяк
Меня тоже подорвало, когда узнал, что "Управление изменениями" у нас будут делать с SAP'овского процесса с годичным циклом релизов, что в совокупности с "длинным" же бюджетированием с гарантией дает адов трэшак.
год не могут сделать обратную интеграцию с SAP, потому что это же "программировать надо!" и почти год не могут закупить железо для OPC, плюс навести у себя в тех. картах порядок
\Утирает скупую слезу\ Ну прям родной завод! Узнаю брата Вольку!
Чую, когда они это у себя сделают, то придёт радостный продакт и скажет - "концепция изменилась, всё нахрен переделываем". Смысл был прорабатывать в первый раз и вообще делать и поддерживать?
Такое ощущение, что в корпоративной структуре уровня поболе регионального ВООБЩЕ нет смысла суетиться и делать с первого раза. Вот ей-ей, постоянно такая фигня.
Как же у вас, болезных, для браузеров-то сложные UI пишут?
А у нас нет зубов в труднодоступных местах!
Есть OSIsoft'овский framework, есть PI active view в Internet Explorer'е (А на все другие браузеры наложено Страшное Проклятие Службы Безопасности) и усё.
Если нужны отчетики, то вот на уеб-страничку заэмбедден Excel'ный файл в котором на вижуал васике захреначено подключение (Да-да, адреса-пароли-явки вотпрямтам, в plain text'е) и пара-тройка запросов. Сейчас вот хероически отчеты на SSRS переводим, постепенно и впрямь жабаскрипт всплывает - но нашими темпами лет десять об этом можно не беспокоиться.
ололо и ахаха. Мы как раз заменили нодой+ангуляр с асинхронщиной и long polling существовавший монитор на готовом монструозном фреймворке, потому что оно жрало траффик как не в себя и тормозило на цеховом Wi-Fi, так что it depends.
Я страшное скажу - вайфуя у нас тоже нет! Нибизапастно и ниябёт.
На чем подрядчик умел, на том и написал.
Ну, да - вот такой хреновый подрядчик попался. Местный, но законтрактован по субподряду из МСК - мутная, в общем, схема. Сейчас говорят, что подрядчик гумно и отношения продолжать не будем, любитесь с этой фигнёй дальше сами - планы по её развитию уже распиарены и даже согласованы ))).
что перл, что PHP, что js - одного поля ягоды. перл только чуть лучще за счёт древности и проработанности библиотек. js лучше за счёт того, что это местами почти лисп и хорошо умеет в JIT и асинхронное IO.
Спорить о ЯП - дурное дело ). Мне все три языка эстетически не нравятся, но от perl'а в повседневной жизни хоть польза есть
Не, на ноду массово сбежали бывшие верстальщики (ололо, мы можем в сервер!) и хипстеры-рубисты, отчаявшиеся из-за рельсоложества.
Ну вот как-то так я об этом и думаю, да.
Зато индусов на жабе пускали и выходило также плохо.
Да фиг его знает. Т.е. гавнокодить можно на чем угодно, но на Java'е это делать несколько затруднительней, плюс классические методологии разработки на неё ложаться, имхо, несколько лучше.
На самом деле это отлично работает, когда мониторинг разработчиков начинает пиздить за упавший продакшн - быстро думать начинают, где соломки подстелить
В случае с MES'ом на реальном производстве !внезапно может оказаться чуть-чуть, самую капельку, поздно