Ко вчерашнему сбою кассовых аппаратов от "Штриха": ошибку искусственно заложил уволенный программист

Страницы: 1 ...  10 11 12  ... 14  ОТВЕТИТЬ НОВАЯ ТЕМА
artivenom 21 дек 2017 в 15:30
Ярила  •  На сайте 12 лет
3
Цитата (blow05 @ 21.12.2017 - 14:19)
Цитата (artivenom @ 21.12.2017 - 12:02)
Форест, беги. Но я чувака поддерживаю. На такое пойти можно было только после громадного пиздеца.

А его не могло не быть, раз:
1. Не протестировали руками перед релизом. Называется регрессионное тестирование
2. Не выявили ошибку автоматические юнит-тесты (в российских конторах писать их вообще не принято. Если они есть, то только для отвода глаз с покрытием 1%)
3. не выявили ошибку интеграционные тесты и end-to-end тесты.
4. Не сделан Code Review.
Про  автоматизированные CI и Release Management я полагаю и говорить не стоит.

А это проёб 4х и 6 этапов разработки. Остались только планирование и кодирование. Не уверен, что там не было проёбов.

тут только Code Review помог бы.
ни один тест не будет подсовывать разные системные даты коду. хотя теперь наверно с этим будут что-то делать.

Ну во-первых это было описано про общий пиздец в процессах, а не способ найти закладку
Во-вторых конечно, кодревью бы это выявил 100%
В-третьих, если не писать код хуёво, а многие техлиды и синьоры только такими называются и код пишут крайне хуёво сами и требуют писать его также хуёво, зато быстро от других, так вот если не писать код хуёво, то будет везде использован не DateTime.Now а нестатическая обёртка, которая будет возвращать дату. И чаще всего совпадающую с текущей, но для тестов - не только с текущей.

Далее, т.к. данное ПО имеет прямую зависимость от дат, причем суровую такую, а не просто логгирование операции, то тестировать нужно и крайне случаи для дат. А что если в винде будет стоять 1999 год? или если его подменит и передаст сервер времени. А что если я закрою кассу первым января 2099 года?
Это всё автоматизируется и тестируется.

А самое главное покрытие кода тестами должна быть 100%. Вот в этом случае её бы точно выявили. потому что
if(Date >= "20-12-2017")
{
return false; // вот сюда бы попало только со 100% покрытием юнит-тестами. А цифра отличная от 100% показала бы наличие изъянов
}
ну и в таком случае уже не соскочить на "ой,я описалас. Дам была логика до return false но мы потом её поменяли, потом удалили, а я забыл и проверку удалить". Наличие теста будет доказательством умысла.

Я просто вижу какой забивон на это даже в моей пендосской компании, не то что в российских. Там вообще всем на всё похуй было, кроме отчётов красивых.

Это сообщение отредактировал artivenom - 21 дек 2017 в 15:35
KOHb 21 дек 2017 в 15:32
Балагур  •  На сайте 16 лет
0
Цитата (1barsuk1 @ 21.12.2017 - 15:12)
Цитата (KOHb @ 21.12.2017 - 15:05)
Он хочет такого же, только не платить ему 4е года, а чтоб он сам в стороне всё это время готовился потом нашел его и сказал "возьмите меня!" lol.gif

Это был бы идеальный вариант. Но этот пацан пришёл после универа. Да, с мозгами дружит. Да, обучаем. Многого не просит. Работает. Учится и набирается опыта в процессе.
Но отправлять новичка на стажировку за мега денег без гарантий того что окупится вложенные средства никто здравомыслящий не будет.
А сейчас и вебинары и семинары за счёт заведения ему оплачивают.

Это я с вами общался? gigi.gif
http://www.yaplakal.com/findpost/66482183/...pic1711771.html

*поправил...

Это сообщение отредактировал KOHb - 21 дек 2017 в 15:40
Касатик67 21 дек 2017 в 15:35
Шутник  •  На сайте 8 лет
0
Цитата (romankuks @ 21.12.2017 - 14:39)
может глупый вопрос, но :
данный ККМ сертифицирован ростестом или иной надзорной организацией, наверняка для его сертификации предоставляли все тех данные, включая исходники. Кто протестировал и дал положительное заключение?

Как объяснял нам представитель компании Штрих на конференции в конце 2016 года в Смоленске, кассы сертификацию не проходили, получили сертификаты автоматом, потому, что подали заявку раньше какой-то даты. И все. Подал раньше даты и автоматом попал в реестр сертифицированного оборудования (никто аппараты и проверять не будет). Расказывал и смеялся.

Это сообщение отредактировал Касатик67 - 21 дек 2017 в 15:38
Cromwell 21 дек 2017 в 15:35
Медведь  •  На сайте 17 лет
0
Цитата (GLKaban @ 21.12.2017 - 14:48)
а какой вообще спрос с инженера? продукт выпускала фирма, договор с фирмой. никого не ебут какие-то там программисты, тестеры, менеджеры и прочая внутренняя кухня. фирма поставляет продукт и за него отвечает - так что ебать надо директора, я искренне считаю.

Какой может быть спрос с человека, который умышленно навредил? Еще какой.

Нет, у розничных магазинов вопросы будут к компании, а вот компания уже может подать в суд на работника.
mpv86 21 дек 2017 в 15:36
Балагур  •  На сайте 12 лет
0
Цитата (AlKoyot @ 21.12.2017 - 14:34)
ЗП ведь тоже бесконечно повышать нельзя.

Люди не только деньгами мотивируются, подними хоть в 2 раза зарплату, человек сначала порадуется, а через полгода уже будет как само собой разумеющееся воспринимать. Нужно совокупно, и зп, и коллектив, и руководство вменяемое, и график, и офис с диванами и плюшками, и обучение. Только не все компании с бюджетами Гугла.

Охх, вот он краеугольный камень.
Я все чаще смотрю на пирамиду Маслоу.

Сейчас мне потребовалось 2 места работы и 1,5 года дипрессии, чтобы понять хотя бы свои устремления. dead.gif
tuapse 21 дек 2017 в 15:37
Балагур  •  На сайте 11 лет
0
Вот что то такое я и предполагал, что это месть программиста.

Вчера у нас в магнитах не работали регистраторы, в связи с этим брали только наличку. Рядом банкомат, киломметровая очередь за ставшей такой необходимой наличкой.

Заправка РОСНЕФТЬ без выдачи чека обслуживала.

У меня на работе вчера чеки не били (в надежде переждать дату 20.12.2017). Сегодня пробивали на двух - полет нормальный. Правда есть еще с закрытыми сменами с 19 числа 4 регистратора и шесть регистраторов с прошлого месяца (сезонная работа) - там пробивать тупо нечего... может тоже глюканут после первого пробитого чека.

nnemo 21 дек 2017 в 15:37
Ярила  •  На сайте 8 лет
1
Цитата (KOHb @ 21.12.2017 - 15:32)
Цитата (KOHb @ 21.12.2017 - 15:05)
Он хочет такого же, только не платить ему 4е года, а чтоб он сам в стороне всё это время готовился потом нашел его и сказал "возьмите меня!" lol.gif

Это был бы идеальный вариант. Но этот пацан пришёл после универа. Да, с мозгами дружит. Да, обучаем. Многого не просит. Работает. Учится и набирается опыта в процессе.
Но отправлять новичка на стажировку за мега денег без гарантий того что окупится вложенные средства никто здравомыслящий не будет.
А сейчас и вебинары и семинары за счёт заведения ему оплачивают.


Это я с вами общался? gigi.gif
http://www.yaplakal.com/findpost/66482183/...pic1711771.html

по нику не понятно?
или у вас там эскадрон коней и вы запутались?
artivenom 21 дек 2017 в 15:38
Ярила  •  На сайте 12 лет
0
Цитата (BongoBingo @ 21.12.2017 - 14:21)
Цитата (Valuj @ 21.12.2017 - 13:10)
Цитата (BongoBingo @ 21.12.2017 - 13:07)
набежали вечно ноющие диванные специалисты, у которых все вокруг устроено не так. как вы собираетесь заблаговременно искать закладку в проекте на миллион строк кода, в котором обновления происходят тысячами строк ежедневно? скажите, вы ебанутые? неужели вы думаете, код тестируется внимательным перечитыванием каждой строчки? если есть кто-то такой дохуя умный - добро пожаловать на работу, у нас для тебя много материала для чтения.

А эти миллион строк кода один человек сел и за вечер написал? Или все-таки в обновлении не миллион строк и можно посмотреть что конкретно внес каждый программер?

еще раз говорю - обновления происходят тысячами строк кода. во время большого апдейта тебе в свн придут изменения от 5 человек, суммарно на 5 тысяч строк - будешь каждую проверять? а через две недели еще 5 тыс строк, а потом еще, нормально будет читать их все? любая закладка будет почти как тухлое яйцо в стене, которое закладывают рабочие на случай если их кинут.

Ясен хер, что 5000к строк фиг проверишь. А вот 100-200 можно.
Мой друг, размер изменений больше чем 3-5 классов по 1 странице кода - гнать в зашей вашего техлида и всех, кто такой процесс поставил.
Это дремучее непонимание как разбивать задачи на подзадачи правильно, как писать модули, как делать кодревью и т.д. Хотя это встречается в 80% контор...может даже в 95. Совковая школа - она такая.

Это сообщение отредактировал artivenom - 21 дек 2017 в 15:38
asteelrat 21 дек 2017 в 15:38
Ярила  •  На сайте 14 лет
1
Цитата (nnemo @ 21.12.2017 - 14:27)
Цитата (asteelrat @ 21.12.2017 - 14:23)
Цитата (KOHb @ 21.12.2017 - 14:18)
А вы обучать не пробовали? ))))
Ходят слухи, помогает  dont.gif

Дык это вкладываться нужно, а все хотят, чтоб сразу в забой - фигачить. И есть риск, что учишь-учишь его, он оперяется чутка и у него стреляет ЧСВ и он гордо удаляется в закат. А ты берешь и учишь следующего ибо деваться некуда.

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

Действительно, нет проблем... И тут самое время вернуться к вопросу про запросы совсем молодых специалистов, которые приводились выше...

Кстати, я совсем не осуждаю ребят, которые уходят - человек всегда ищет где лучше. И если уходят - значит нашли.
1barsuk1 21 дек 2017 в 15:39
Юморист  •  На сайте 15 лет
1
Цитата (НечтоИзСети @ 21.12.2017 - 15:25)
Цитата (1barsuk1 @ 21.12.2017 - 14:04)
У нас ТЗ должен предоставить клиент. Но обычно они сами незнают что они хотят. Начинают придумывать пиздец какие выкрутасы. Или наоборот - сделайте нам Тех Задание сами.
Приходится сидеть и обсуждать с ними что им надо, как это делают другие, где подводные камни и где невозможна реализация в принципе.

Клиенты ТЗ предоставляют.
faceoff.gif

Ваши клиенты в алгоритмах что-нибудь понимают? Ведь по=хорошему, ТЗ, кроме всего прочего, должно содержать чёткий и подробный алгоритм Задачи. Типа, "если <условие> то <действие1> иначе <действие2>".
Программист берёт этот алгоритм и переводит его на язык программирования.

А то, что предоставляет клиент под видом ТЗ, таковым вовсе не является.

Гы гы гы. алгоритм программы в ТЗ это если программа в три строчки.
Клиент же описывает исходный техпроцесс. Вводные, как материалы, ТТХ оборудования, размеры и замеры. Что ему нужно и что он ожидает. Далее обсуждаются какие готовые модули есть и что можно без затрат на разработку внедрить. Если что-то особое то разработка за доп плату.
Всё это вписывается на бумагу. Делают расчёт цены и только потом как клиент согласится то отправляют в разработку.
Иногда приходилось рвать стоп кран, когда проектировщик продал то что ещё нет или в тестовой фазе. Специально договариваться о ньюансах.
Если клиент после заключения ТЗ хочет что-то ещё добавить-убавить то опять таки дополнительно обсуждаются затраты и возможности реализации.
dednestary 21 дек 2017 в 15:40
Ярила  •  На сайте 11 лет
0
Цитата (tuapse @ 21.12.2017 - 15:37)
Вот что то такое я и предполагал, что это месть программиста.


для штриха конкретно, это заслуженная вполне ответка!
krendel13 21 дек 2017 в 15:41
Хохмач  •  На сайте 9 лет
2
Цитата (Resurrect @ 21.12.2017 - 15:12)
"Это примерно 30% розницы страны, за минусом обновивших прошивку".

Наоборот, проблема была в июльской прошивке, так что те кто не обновлялись продолжают работать нормально. Реально выбило где то 10% розничных продавцов.
Отсюда вывод: Работает - не трогай.

Вот хорошо бы чтоб не трогать... Да только в нашей стране мудаков и чиновников, в области торговли, налогов и финансов, требования, законы, бланки и прочая чешуя влияющая только на показатель активности чиновников и управленцев, и в 90% случаев только вредящая реальному делу, меняется иногда по несколько раз за неделю. Вот и не трогай... Например в тех же ККМ вид чека и пункты в нём отображающиеся, могут меняться чуть ли не каждую неделю...
KOHb 21 дек 2017 в 15:41
Балагур  •  На сайте 16 лет
1
nnemo
не то сообщение процетировал, а потом криво отредактировал. но уже исправился )))))
nnemo 21 дек 2017 в 15:43
Ярила  •  На сайте 8 лет
0
Цитата (KOHb @ 21.12.2017 - 15:41)
nnemo
не то сообщение процетировал, а потом криво отредактировал. но уже исправился )))))

понятно
1barsuk1 21 дек 2017 в 15:52
Юморист  •  На сайте 15 лет
1
Цитата (KOHb @ 21.12.2017 - 15:41)
nnemo
не то сообщение процетировал, а потом криво отредактировал. но уже исправился )))))

Всеравно ссылка на Койота. Койот<>барсук.
Спеца заполярной миграции пушистых зверьков по Альдебарану найти конечно же сложно. Но я ожидаю как минимум спеца, который смыслит или в заполярных делах или в пушных зверьках.
Но блять приходят на должность программиста окулисты исходя из того что 4 буквы в названии профессии совпадают.
blow05 21 дек 2017 в 15:56
Моргенмуффель  •  На сайте 15 лет
0
artivenom
Цитата
Во-вторых конечно, кодревью бы это выявил 100%


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

Цитата
так вот если не писать код хуёво, то будет везде использован не DateTime.Now а нестатическая обёртка, которая будет возвращать дату. И чаще всего совпадающую с текущей, но для тестов - не только с текущей.


угу, давай вообще все системные вызовы обертками обернем faceoff.gif

Цитата
Далее, т.к. данное ПО имеет прямую зависимость от дат, причем суровую такую, а не просто логгирование операции, то тестировать нужно и крайне случаи для дат. А что если в винде будет стоять 1999 год? или если его подменит и передаст сервер времени. А что если я закрою кассу первым января 2099 года?
Это всё автоматизируется и тестируется.

не путай системную дату с переданной.
и какая винда? это - отдельная железка. у нее внутри по хорошему должен RTC стоять.
и нет там никаких прямых зависимостей от дат. нет такого, что сегодня работаем по этому алгоритму, а через 11 дней - по другому. она каждый день должна работать одинаково.

и даже если все сделать, как ты написал - если стоит закладка на опеределенный день через пол года например - как ты тестами это выявишь? будешь все 130+ дней передавать? а если там не пол года, а полтора?

Цитата
А самое главное покрытие кода тестами должна быть 100%. Вот в этом случае её бы точно выявили. потому что
if(Date >= "20-12-2017")
{
return false; // вот сюда бы попало только со 100% покрытием юнит-тестами. А цифра отличная от 100% показала бы наличие изъянов
}

юнит тесты вот такие вот проверки как раз и не обнаружат никогда. т.к. разработчик сам может эти юнит-тесты запустить и проверить. если там вообще проверка дат идет.
и 100% покрытия - всё с тобой понятно. эта цифра - экономически нецелесообразна. нет ни одного проекта сложнее "Hello Wolrd!", имеющего такое покрытие.

mpv86 21 дек 2017 в 16:01
Балагур  •  На сайте 12 лет
0
Цитата (1barsuk1 @ 21.12.2017 - 15:52)
Спеца заполярной миграции пушистых зверьков по Альдебарану найти конечно же сложно. Но я ожидаю как минимум спеца, который смыслит или в заполярных делах или в пушных зверьках.
Но блять приходят на должность программиста окулисты исходя из того что 4 буквы в названии профессии совпадают.

Пардоньте за встревание в беседу, но я наблюдаю весьма интересную картину сейчас:
1. Высококвалифицированные спецы сейчас ходят "по рукам" по нескольким причинам. Одна из них это догнать свои доходы до 2014 года. Вторая - многие ищут еще и ништяков. И такие спецы ходят только по своим "рукам".
Дифицит-с. У нас много спецов за границу уехали за 1-2 года.
Это я по своим товарищам сужу.
2. Молодежь, которая или вчерашние выпускники, или манагеры с базовыми знаниями видят з/п, да на том же hh, идут с мыслью:
а вдруг прокатит?

Поэтому сейчас очень много "окулистов"
qseft 21 дек 2017 в 16:02
Ярила  •  На сайте 12 лет
0
Обидеть программиста может каждый
PLAstic242 21 дек 2017 в 16:07
Весельчак  •  На сайте 16 лет
1
Цитата (VampirBFW @ 21.12.2017 - 12:07)
Еще вчера доказали что это была закладка в программе. Все рассказы "Это сделал он" ебанутые. Программеру НИХУЯ не будет. ибо он уволен в январе 2017. И с тех пор в структуру вносилось оченьмана дохуя изменений. То что все остальные работающие над проектом не слыхали о словах "Помодульное исполнение" и "тестирование модулей" это блять к нынешним деффиктивным менеджерам, которые вместо отладки продукта требуют хуяк хуяк и в прадакшн. И к программерам, которые даже не пытаются заняться оптимизацией кожа. А уж то как блять получилось что кусок кода жил среди зарекоентированных строк, и почему никто не наебнул этот кусок коментариев, для оптимизации и ускорения  самого кода. Ну блять реалии ИТ жизни России.

Лишь бы ляпнуть...
Интересно, мы все одинаково оцениваем, что такое фискальный регистратор? Там НЕТ модулей, там НЕТ процедур и функций, максимум, команда перевести выполнение на такой-то адрес (JMP). Там НЕТ эджайла, скрама и прочего говна.
Возьми асм и хреначь на нём модули и прочее, а я посмотрю.
Я даже не уверен, что для этого существуют сколько-нибудь продвинутые IDE.

зыЖ Программист со стажем 23+ лет, начинал на асме.

Это сообщение отредактировал PLAstic242 - 21 дек 2017 в 16:07
Брррр 21 дек 2017 в 16:09
Ярила  •  На сайте 11 лет
0
Цитата (xxxAlphaxxx @ 21.12.2017 - 12:05)
Далпайоп. Если его имя всплывет -- ему лучше повеситься самому. Убытки все повесят на него - не расплатиться

Убытки повесят на его бывшую контору, а она в свою очередь может вчинить ему регрессный иск.
nnemo 21 дек 2017 в 16:15
Ярила  •  На сайте 8 лет
1
Цитата (1barsuk1 @ 21.12.2017 - 15:52)
Цитата (KOHb @ 21.12.2017 - 15:41)
nnemo
не то сообщение процетировал, а потом криво отредактировал. но уже исправился )))))

Всеравно ссылка на Койота. Койот<>барсук.
Спеца заполярной миграции пушистых зверьков по Альдебарану найти конечно же сложно. Но я ожидаю как минимум спеца, который смыслит или в заполярных делах или в пушных зверьках.
Но блять приходят на должность программиста окулисты исходя из того что 4 буквы в названии профессии совпадают.

в пушистых зверьках у нас разбираются все, выбирай любого

в машинном зрении разбираются не все... сейчас эта тема в тренде... лет через 5 этот бум пройдет

Это сообщение отредактировал nnemo - 21 дек 2017 в 16:23
вольно 21 дек 2017 в 16:19
Юморист  •  На сайте 10 лет
1
Цитата (totemi @ 21.12.2017 - 13:20)
Цитата (вольно @ 21.12.2017 - 13:14)
Система управления качеством, персоналом - не слышали.

Сейчас угадаю - начальники отделов, департаментов все свои родственники?

Будут сейчас выбирать сакральную жертву. Кто там плохо в КЛП стоит, не делает двойной КУ и вообще мистера ПеЖе не любит.

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

А у Вас система управления работает? По какому стандарту (стандартам)? Каким образом у Вас обращаются с не соответствующей продукцией? Ищут ли виноватых? Кто платит за брак?

Система управления работает везде. Хорошо или плохо - вот в чём вопрос.

Стандарт - как захочет собственник. Бизнесов у него много, требования везде сильно разные.

За брак и не соответствующую продукцию платит, как и везде, конечный покупатель.

Да, и идеи Деминга требуют от управленцев(слово менеджер загажено, использовать его противно) особого склада ума и национального менталитета.

В Европе и США его идеи не взлетели.
Werwolf33 21 дек 2017 в 16:21
Ярила  •  На сайте 9 лет
0
А что по мне, то программист молодец! Некоторых работодателей порой хочется публично на кол посадить.
Valuj 21 дек 2017 в 16:25
Ярила  •  На сайте 12 лет
0
Цитата (Брррр @ 21.12.2017 - 16:09)
Цитата (xxxAlphaxxx @ 21.12.2017 - 12:05)
Далпайоп. Если его имя всплывет -- ему лучше повеситься самому. Убытки все повесят на него - не расплатиться

Убытки повесят на его бывшую контору, а она в свою очередь может вчинить ему регрессный иск.

Пусть попробуют доказать, что он спецом это сделал.
nnemo 21 дек 2017 в 16:25
Ярила  •  На сайте 8 лет
1
Цитата (Werwolf33 @ 21.12.2017 - 16:21)
А что по мне, то программист молодец! Некоторых работодателей порой хочется публично на кол посадить.

обычно, такие вещи делают как защиту от кидания на деньги со стороны заказчика
Понравился пост? Ещё больше интересного в ЯП-Телеграм и ЯП-Max!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 77 625
0 Пользователей:
Страницы: 1 ...  10 11 12  ... 14  ОТВЕТИТЬ НОВАЯ ТЕМА

 
 

Активные темы



Наверх