Pull to refresh

Comments 570

У суперджетов с двигателями, которые ходят 1-2 тысячи часов вместо 8 — история такого же плана?
Это нужно спросить у французов, в суперджете их двигатели
Также и Боинг может сказать: «Спросите у индусов, это же их софт»… ;-)
Как сказано ниже «это проблема приемки»
Там не только их движки. Их инженеры еще и участвовали в проектировании.
Честно говоря, если у них движки такие же, как авто… Я лучше на ТУ полетаю.

Не знаю, правда ли, но, говорят, французские танки имеют сходную надежность, и до поломки накатывают километров 60-100 — так, что их даже на учения возят только трейлерами, от греха.
Ты не поверишь. Танки всех стран мира транспортируют на тралах
не поверю, с НВВКУ на полигон своим ходом ездят.
Невыгодно. Двигатель танка очень сильно больше, чем нужно для передвижения по обычным дорогам, ресурс его ограничен и стоит он на порядок или два дешевле трала.
Я им говорю ходят, и это факт. А они говорят не выгодно. Они параллельно трассе ходят пару раз её пересекая. километров 10 в каждую стороны.

Думаю выгода там и в преодолении пересеченной месности: лес, склоны, брод, поле, трасса
А тут все правы.

Невыгодно. Гусеничный движитель — вовсе не образец эффективности. У вполне гражданского, и довольно легкого ГТС-М (двигатель от ГАЗ-66) пробег до капремонта составляет, емнип, 5000 км. Танк и тяжелее, и дороже, и требования к двигателю у него повыше.

Но основное назначение танка, как бы странно это не звучало, вовсе не те пятнадцать минут гипотетического боя. Основное назначение танка — боевая учеба, именно ей на танке занимаются долгие годы. А это занятие, как ни крути, связано с расходом моторесурса: чтобы учиться, надо ездить и ездить.
Поэтому на полигон своим ходом — тоже оправдано.
А ещё невыходно потому, что потом асфальт после танков перекладывать. Ну и скорость на асфальте у них такова, что движение просто встанет.

Да и половину Конкорда французы делали :)

Танки, конечно, разбивают дорогу быстрее, чем колесная техника, а тяжелая колесная техника делает это быстрее, чем легковушки, но если асфальт положен правильно, то периодические проезды современного танка сильно ему не повредят.
Да и скорость движения современного танка на дороге с твердым покрытием составляет по меньшей мере 50 км/ч, а у некоторых и заметно больше. Мадленнее легковушки, но движение не станет.
Единственная причина, по которой танки катают на трейлерах (кстати, если и быстрее собственного хода танка, то ненамного) — высокая стоимость покатушек танка своим ходом, что проистекает из трех составляющих: малый ресурс ходовой части (как у любой тяжелой гусеничной техники), большой расход горючки (как не в себя) и (в мирное время) необходимость дополнительных мероприятий по обеспечению безлпасности движения (танки "забыли" оснастить хорошим обзором для мехвода и сигналами поворота и остановки).

Да и скорость движения современного танка на дороге с твердым покрытием составляет по меньшей мере 50 км/ч, а у некоторых и заметно больше. Мадленнее легковушки, но движение не станет.
а если разрешённая скорость — 120?
В остальном — так и есть.

Во-первых, с такой сеоростью танк и на трейлере не поедет.
Во-вторых, движение замедлится, но не станет.

В-третьих, разрешенная скорость 120 — это на дорогах первой категории, а там как минимум две полосы в одном направлении
про категории местные не знаю, но на участке 120 3 полосы минимум, местами 4-5.
Да, но у тягача с танком все равно по правилам будет ограничение 70 км/ч.

А разве так можно с грузом больше 40 тонн? Правила не запрещают?

Слышал как-то рассказ, как колонну грузовиков, едущую по трассе со скоростью около 80, по полю обогнала колонна танков.
Да то байка чья-то. Не бывает танков, которые ездят по пересеченной местности с такой скоростью, да и вообще скорее всего, такой шустрой гусеничной техники не существует. На такое только колёсные машины способны, например, БТР-90.
Да наверняка. У танков типа Т-80, Т-90 скорость хода по бездорожью заявлена 50-60кмч. Пусть даже он мог такой достигнуть на ровном поле. Если скорость колонны грузовиков убавить раза в 2 то достоверно получается.

Маловероятно. Самые шустрые танки из распространенных по достаточно твердой и ровной поверхности делают до 80.
Так что либо скорость преувеличили, либо спидометр врал (кстати говорят, что спидометры завышают показания скорости, чтобы не превышали).
Или случилось чудо и они встретили Т-15, который может больше 80, но это маловероятно.

Причём тут танки? У французов Миражи есть, у которых за всю историю у всех моделей 3 или 4 случая отказа двигателей

Ничего против французской техники не имею. Но заявленная вами надежность ИМХО не очень реальна. Откуда такие данные? Катастрофа из-за отказа двигателя и отказ двигателя — разные вещи. Открытую статистику отказов военного самолета сложно представить.

Точно Mirage? Статистика происшествий с двигателем на Mirage III по ВВС Австралии (второй по численности парк Mirage III в мире):

A3-79 — отказ двигателя в полете, самолет потерян, пилот погиб

A3-4, A3-18, A3-28, A3-46, A3-52, A3-67, A3-70, A3-82, A3-94, A3-95 — отказ двигателя в полете, самолет потерян, пилот успешно катапультировался

A3-97 — отказ двигателя в полете, самолет поврежден, пилот не постардал

A3-2, A3-41 — отказ двигателя в полете, пилот успешно посадил самолет

A3-63 — разрушение двигателя при опрбовании на земле, пилот не пострадал

A3-74, A3-75 — попадание птиц или осколков в двигатель, самолет потерян, пилот успешно катапультировался

Итого 15 серьезных происшествий по вине двигателя. И это только один тип и одна страна c 116 закупленными самолетами. А были еще Mirage IV, 5, F-1, 2000 — всего порядка 3500 выпущенных.

A3-74, A3-75 — попадание птиц или осколков в двигатель, самолет потерян, пилот успешно катапультировался

Ну тут как бы немного не вина двигателя. Не удивлюсь, если и среди остальных проишествий имеются спорные моменты, связанные с возможной неправильной эксплуатацией.
Случаи попадания посторонних предметов в двигатель в «Итого» не посчитаны, как не относящиеся к делу. В целом двигатели устанавливавшиеся на Mirage какой-то выдающейся надежностью не отличались. Особенно SNECMA Atar 09.
Я всеже думаю что имеется в виду Rafale с M88 у которых ЕМНИП небыло серьезных происшествий по вине двигателей. Но Rafale двухдвигательный и суммарный налет парка не очень большой.
Если завод не напротив полигона — иначе никак, гусеницы разрушают дороги уже за 1 проезд. Достаточно посмотреть на следы после бульдозера, когда он по асфальту проехал. Или надо ставить резиновые накладки, что для парада можно сделать раз в год, но гонять на полигон и назад постоянно — это долго. И не факт что они вообще так умеют.
У нас от НВВКУ до полигона ходят параллельно трассе через поля. Пару раз трассу пересекая. Километров 10 так проходят )
У нас близко к полигонам спец. ветки ЖД были, от неё уже бетонка проложена. Из гражданских дорог раздалбыванию были подвергнуты только пара кусков по паре сот метров в военнородке (ничего сильно плохого им, если мне память не изменяет, от этого не стало, возможно, это всё та же бетонка, закатанная асфальтом сверху). В месте разгрузки — здоровенный пандус-перрон тоже бетонными плитами покрытый, на длину нескольких вагонов, чтоб техника прямо с платформ могла съезжать на дорогу. Потом в некоторых местах ЖД и платформы разобрали, и никто там больше танков не видал, лет 10 уж как. А такое пацанве счастье было! Но кое-где инфраструктура осталась, что как бы намекает.
Если завод не напротив полигона — иначе никак, гусеницы разрушают дороги уже за 1 проезд.

Как житель Донецка, могу сказать однозначно: это миф. Танки и САУ, конечно, оставляют царапины на асфальте, но никакого сколь-нибудь заметного вреда ему не наносят. Наверное, если взять полуразвалившуюся дорогу без основы, её и размолотят. Но по обычной нормальной городской дороге хоть сто танков проедет, ничего особого ей не делается, кроме вот таких царапин:
pbs.twimg.com/media/BsqqrOsCEAAoc3-.jpg
Именно про это я и говорю. Тут явно не сотня проехала, а уже такие повреждения (а они довольно серьёзны — через год будут больше). Теперь представим что сотня танков утром проехала на полигон, вечером назад. И так месяц. И от каждого такие «царапины», выбивающие всё больше из полотна.
Плиты прочнее асфальта, и не подвержены разрушению от воды.
Это проспект Ильича в Донецке. По нему за пять лет их сотни, если не тысячи туда-сюда проехали, без какого-либо ремонта дороги. И это никакие не повреждения, просто поверхностные царапины. Они за день-два просто исчезают, т.к. затираются обычными легковыми машинами.
UFO just landed and posted this here
Репетиция парада к дню независимости в Минске (ДН 3-его июля). Царапины эти потом внешне затираются, т.е. перестают выделяться цветом, но поверхность остаётся гребёнкой
image
UFO just landed and posted this here

Затем, что до поля боя еще нужно доехать и это будет совсем не катание до полигона.

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

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

Ну и как бы противотанковые средства на месте не стояли. От пушек колотушек с целым взводом обслуги до индивидуального РПГ.
Зачем ему ради 15 минут супернадежный двигатель?

Потому что не каждый бой это Курская дуга, до первого серьезного боя может быть несколько недель маневров, ну и среднее время жизни это как и среднее время пехотинца в бою (которое тоже что-то минут 10), кто-то погибает в первой минуте первого боя, кто-то проходит всю войну от начала до конца.
В наших Палестинах танки тоже на трейлерах возят, время от времени вижу их на дорогах.
Это нужно спросить у французов, в суперджете их двигатели

Двигатели SaM146%


Доля НПО «Сатурн» в совместном предприятии составляет 49,84%.
Доля НПО «Сатурн» в общем объёме работ над двигателем SaM146 составляет около 38%.

Пока что списывают на то, что французы не умеют делать камеру сгорания, но, по странному стечению обстоятельств, это — именно та версия, которая устраивает всех. По ещё более странному стечению обстоятельств, о проблемах с двигателем известно только из Ведомостей и их источников: никто из незаинтересованных лиц проверить слив не смог.


Так или иначе,


Нытьё Бочарова Олега Евгеньевича из минпромторга на этот счёт

Мы испытываем мощнейшие сложности, связанные с нашим партнерством с французскими партнерами по двигателю SaM146. У коллег жесткая бизнес-модель и идти на симметричные снижения стоимости владения двигателем они не готовы. Разбирая все проблемы эксплуатации двигателя с региональными компаниями, мы видим, что и они пользуются сложившейся ситуацией, стремятся занять более выгодное для себя положение, в наших спорах с французами. (Фотография очень грустного кота) Мы понимаем, что нам надо создать банк подменных двигателей. Такая программа у ОДК есть. Документацию на полную разборку/сборку двигателей на территории рыбинского завода мы получили. Первый двигатель там уже полностью отремонтирован, то есть, разобран-собран. Вопрос коммерческий – идет торговля, за сколько мы с французами сговоримся. Мы понимаем, что условия, которые они выставляют по покупке/аренде подменных двигателей у компании PowerJet, неприемлемы для российских региональных авиакомпаний. Просто не приемлемы и все. А качество самого двигателя вне гарантийного срока и внутри гарантийного срока, вызывает вопросы по горячей части (горячая часть — французская производственная зона ответственности). С этим двигателем нам все равно жить и дальше. Это решение предшествующих периодов и никто не мог знать, что оно так пойдет. Безусловно, будем мучиться с этим двигателем, пока не произведем свой.


TL;DR: Каким бы плохим двигатель ни был — будете мучаться. О чём вы собираетесь спрашивать французов я не совсем понимаю.

Эти же французы (Safran) поставляют движки для A320 и 737MAX и даже второй знаменит не отказом движка. Так что наверное проблема где-то ещё.

«Однако, здравствуйте», прямо. Спасибо за статью.

Ещё есть на просторах интернета интересное заявление главы Роснефти о "немного нечестной конкуренции" когда европейские производители занижают ресурс своим двигателям в случае использования для заправки топлива произведённого российскими компаниями.

Это те компании, которые нефть с хлорорганикой гнали?
Тогда я понимаю занижение ресурса двигателей, да.
У меня есть подозрение, что малый ресурс движков на Суперджете связан с эффектом пылесоса — движки слишком близко к ВПП.
Общее в истории с Боингом — рост диаметров современных двигателей. Больший диаметр движков требует иных компоновочных решений, на которые авиапроизводители идти не хотят, прибегая к паллиативам (костылям).
Ваши подозрения в корне неверны.
Как-то некорректно сравнивать оплачиваемость специалистов и недотестированность софта.
Индусы может и написали код точно в рамках ТЗ, но как это отменяет тестирование?
По сути софт могут писать и спецы с оплатой 1 копейка в сутки, лишь бы корретно работало, но если софт кривой и написан спецами с зарплатой в 1 миллион долларов в секунду, то как это отменяет кривость софта?
Имхо, это проблема приемки, а не зарплат.
но ведь тесты тоже какие-то спецы пишут
По сути софт могут писать и спецы с оплатой 1 копейка в сутки, лишь бы корретно работало
Кривой софт могут написать и за 1 копейку и за миллион, а вот прямой за копейку не напишут.
как это отменяет тестирование? Имхо, это проблема приемки, а не зарплат.
Тестирование может пройти и кривой код, в сложной системе абсолютно все варианты развития событий протестировать невозможно.
Это комплексная проблема, корни которой все же лежат в первую очередь в экономии.
Кривой софт могут написать и за 1 копейку и за миллион, а вот прямой за копейку не напишут.

так 9 баксов в час — это не копейка. Если вы не умеете в преувеличение — используйте исходные данные.
Тестирование может пройти и кривой код, в сложной системе абсолютно все варианты развития событий протестировать невозможно.

вы, видимо, плохо представляете себе правильное тестирование. Это не только юнит-тесты. Это целая методика. Наши тестеры для каждой (намного более простой и менее ответственной, чем самолет) фичи пишут сценарии тестирования, определяют корнер кейсы и т.д. И у нас оно еще (осознанно) далеко от идеала. Потому, что от нашего софта жизни не зависят.
вы, видимо, плохо представляете себе правильное тестирование. Это не только юнит-тесты. Это целая методика. Наши тестеры для каждой (намного более простой и менее ответственной, чем самолет) фичи пишут сценарии тестирования, определяют корнер кейсы и т.д. И у нас оно еще (осознанно) далеко от идеала. Потому, что от нашего софта жизни не зависят.

Задача юнит-тестов — зафиксировать поведение кода, чтобы он не ломался при рефакторинге. А вот проверить правильность работы сложного кода с помощью юнит-тестов попросту нельзя. Но многие до сих пор считают, что 100% покрытие тестами гарантирует правильность работы кода.


А вот более сложное высокоуровневое тестирование с написанием сценариев, обнаружением крайних случаев — всё это уже требует высокой квалификации тестировщика и его компетенции в смежных областях. Программист, который пилит маленький модуль в большой системе, о которой ничего не знает, не сможет написать интеграционные тесты.

более высокоуровневые тесты должны писать не те, кто имеет компетенцию в смежных областях, а те, кто имеет компетенцию в более высокоуровневых областях. Кто видит картину шире. Кто принимает код.
У них так и есть. Инженеры пишут спецификации, а кодеры просто тупо переводят их на язык Си. Юнит-тестировщики проверяют, что поведение кода соответствует спецификациям. Никто не требует от кодеров понимать, как работает автопилот или датчик высоты.

Инженеры — отдельная тема. Как правило, редко человек бывает одновременно и хорошим инженером, и хорошим кодером. Человек достигает высокой квалификации, если занимается чем-то одним.


В итоге проблема заключается не в переводе спецификации в код, а в переводе спецификации на язык, понятный кодеру, потому что если кодер не понимает (да и не должен понимать) спецификацию, то это будет только зря потраченное время.

а в переводе спецификации на язык, понятный кодеру

В боинге с этим все было ок, по крайней мере, в те полгода, когда я участвовал в написании юнит-тестов для 787. Спецификации были очень подробными и понятными, и не требовали знаний по разработке авиации.
UFO just landed and posted this here
Это было в 2007 году. Я точно не помню почасовую ставку. Я учился в универе и работал неполный день (как и большинство коллег). Наверное долларов 3-5 в час. Там же была куча посредников, желающих поиметь свой гешефт. Для меня это были очень хорошие деньги, особенно если учесть что альтернативой была работа эникейщиком в больнице за 3500р в месяц. Потом начался кризис и весь наш филиал сократили.
вы напрасно зацикливаетесь именно на юнит тестах. Этого сильно не достаточно. Нужны более разнообразные тесты на всех уровнях, и этим должны заниматься специально обученные люди
Я ни на чем не зацикливаюсь и сам считаю что юнит-тестов недостаточно. Я всего лишь рассказываю о той области, в которой довелось работать. Как там все проверяется уровнем выше, я не имею представления, но уверен, что как-то проверяется.
P.S. У нас в иехархии были люди, которые тщательно проверяли, что юнит-тесты написаны правильно :)
346 трупов ставят под сомнение ваше утверждение.
ваше утверждение

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

В идеале компетенция в низкоуровневых вещах тоже должна быть.


Кто видит картину шире

Так я это и написал.

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

Непонятно где производственный выигрыш такой модели — экономите на разработчиках, увеличиваете расходы на тестирование, да еще и сроки проекта увеличиваете, т.к. проходите больше итераций.

большая управляемость. Найти одного чудо-разработчика, который не лагает очень-очень сложно. Если его переманят — бизнес встанет.
А вот такой зерг раш прекрасно масштабируется и работает.

Видел я такой "Зерг раш". За пару дней до конца спринта завершается тестирование с результатами, что ни один юз-кейс полностью пройти нельзя. При этом команда раздута до десятков человек, суб-команды перекидывают ответственность друг на друга, из-за размеров команды частенько кто-то нужный сваливает в запланированный отпуск, центральный менеджемент мечет молнии но ничего не понимает, т.к. не в состоянии погрузиться глубоко. Неизбежно начинается игра с Заказчиком в "Это было в требованиях, а этого не было".

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

Бортовые системы самолёта по тем же принципам работают?

по тем же принципам, что и управление персоналом?
Мне кажется, вы как-то не правильно вопрос задали.

Вопрос: нужны ли все эти микросервисы-фронтэнд-бэкэнд в бортовой системе самолёта?

Там не то что микросервисов нет, там по-моему даже ООП и динамическое выделение памяти стараются не использовать, из соображений что код должен быть максимально отказоустойчивым, чтобы летательный аппарат не упал.

Вот поэтому мне и хочется понять, насколько популярные сейчас методы и инструменты разработки подходят под rocket science.

Не отказоустойчивым, а выполняемым в реальном времени. То есть программа должна гарантированно выполниться за xx миллисекунд при любых входных условиях. Большее время выполнения равнозначно отказу ПО.

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

про менеджеров ничего не знаю.
Вот только одна проблема: крепкие мидлы остаются мидлами очень ограниченный срок.

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

если вы создаете условия для дальнейшего роста и платите в соответствии с квалификацией — с чего бы им улетать?
Другое дело, работодатели любят дуть в уши про то, сколько они в тебя вложили, поэтому ты должен работать за сильно меньшую зп, чем мог бы получать.
если вы создаете условия для дальнейшего роста

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

Правильный подход к управлению командой легко решает такие проблемы

Такого "правильного" управленца найти еще сложнее чем крутого разаботчика, писал выше.

А вот такой зерг раш прекрасно масштабируется и работает.

Данная статья показывает, что для высокотехнологичных задач зерг раш не работает, а может стоить даже дороже.

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

Абсолютно верно, проблема по существу, в ускорении конкуренции
Не удивлюсь, что тестирование выполняли те же индусы
Как было сказано в статье, «белые» инженеры задолбались исправлять ошибки «черных». Здесь белые и черные — это условные названия высокооплачивемых спецов и низкооплачивамых аутсорсеров. Если ошибки встречаются 100 раз в день, то гораздо легче пропустить ошибку, чем в случае, когда ошибки встречаются 1 раз в неделю. Так что тут общая отвественность. Хотя конечно, высшему руководству стоило подумать, прежде чем аутсорсить такую важную часть работы.
Хм. Если код пишет аутсорсер, то на выходе должен быть товар, проходящий автотесты, то есть как минимум обеспечивающий затребованный функционал. Кроме того, при хорошей архитектуре не так уж и важно, что там внутри модуля, если на допустимый диапазон входных данных от выдаёт ожидаемые значения. Хоть таблица соответствия на гигабайт. Так что дело не аутсорсерах, «белых» и «чёрных» девелоперах, а в организации процесса.

Если код проходит автотесты, это лишь означает, что при определённых входных данных он выдаёт соответствующие выходные значения. А вот о правильности код речи идти не может.

Да и само тестирование не исключает наличие ошибки, а лишь снижает вероятность наличия…
При этом соответствующие значения совершенно необязательно вообще верны.
Приведу пример из моей практики.

Работал как-то над софтиной, написанной индусами. Прилично удивил кусок кода вида (примерно, на псевдокоде):
function CalculateSomething(int id, ...params...) {
  ...
  distance = GetOdometer(id)
  ...
  if (id = 123456) {
    return
  }
  ...
  PerformSomeComputations(distance, ...params...)
  ...
}


В отличие от прочих «программистов» компании, я стал в этом коде ковыряться и докапываться до истины — благо базы были доступны. Оказалось, что у одного из клиентов какой-то *удак в графу «показания одометра» у автомобиля с id=123456 забил число вроде 3786731 (если кто не знает — редкий автомобиль может проехать 200'000 миль, не развалившись на запчасти, а тут имелось в виду 37867,31 — но забивальщик отвлёкся и пропустил запятую), соответственно при обработке конкретно этой записи у конкретно этой компании PerformSomeComputations() падала из-за переполнения и рушила всю систему. В нашу компанию пришёл баг вида «у клиента X при обработке автомобиля id=123456» падает система". «А, понятно!» — сказал индийский программист и исправил (как мог). Результат Вы видите.

Автотесты код, естественно, проходил…
«А, понятно!» — сказал индийский программист и исправил (как мог). Результат Вы видите.
Автотесты код, естественно, проходил…
А ревью кода у них отсутствовал как класс? СММ какого уровня у конторы?

Так данные-то корректные (формально). Просто они оказались неожиданными конкретно для функции PerformSomeComputations().


Мы вот как-то в базе прода "нашли" 78-осный грузовик, и он так же "не пролез" через одну из функций. Означает ли это, что грузовик некорректный?

Почти 4 миллиона миль это корректные данные? При том, что для этого автопарка и 200 000 это уже много. Кроме того уверен, что в той базе данных предыдущие показания одометра по данному ТС есть. Там считается, что проехать пару миллионов миль, между событиями учёта, это корректные данные? Кто вообще писал ТЗ и проектировал этот бардак?

>>Означает ли это, что грузовик некорректный

Зачем Вы подменяете понятия? Вопрос не в грузовике, а отсутствии контроля входных данных при импорте/входной форме, это же грёбаные азы.

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


Почему вы даже не рассматриваете вариант, при котором функция PerformSomeComputations должна работать с любыми числами?


Или тот вариант, при котором она должна на них падать, но не рушить при этом всю систему?

Кто вообще писал ТЗ и проектировал этот бардак?

Компания называлась ADP — гигантский когломерат, производящий автоматизацию всего и вся. Я в то время работал в подразделении, которое автоматизировало (вернее, привносило зачатки big data в) работу автосалонов. Подразделение почти целиком состояло из индусов. :) Дело было лет 12 назад, тогда код-ревью и проч. ещё не были buzzwords.


Кроме того уверен, что в той базе данных предыдущие показания одометра по данному ТС есть.

Одной из характеристик выставленных на продажу б/у автомобилей как раз и является пробег — он фиксируется, когда продавец привозит машину на продажу, и, естественно, не меняется, когда машина стоит на продажной площадке. Поэтому предыдущих значений нету.

У меня был пассат с пробегом около 300к км по одометру, на момент моей покупки он уже был сломан и больше не считал, а я ещё хз сколько накатал. То есть моя машина не может быть внесена в вашу базу без скручивания?
UFO just landed and posted this here
3 миллиона миль, 4,8 в километрах.
если 100 ошибок в день — значит тестить надо еще тщательнее. Значит, двое должны ревьювить. Или трое. Все-таки самолет делают.
А в чем тогда смысл аутсорсинга, если код одного индуса будут проверять два высококвалифицированных инженера? Может тогда пусть они и пишут?

Пример работы эффективных менеджеров в действии.

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

а что, код белого человека проверять не надо? Он ошибок не совершает? А это, повторюсь, самолет.
И пишет он неделю, а проверяют час

В том-то и дело, что не час. Это же самолёт.


По хорошему, значительную часть работы в виде покрытия тестами аутсорсы сделают сами.

Юнит-тесты не проверяют правильность кода. А более высокоуровневые тесты индусы писать не смогут.

так все равно эти тесты нужны. Даже если самых-присамых лучшие кодеры будут это писать.

Они нужны, но решают другую задачу.

Где-то я читал, что в коде SQLite 95%, что ли, занимают тесты и только 5% — код самой базы. Так что в самолетостроении очень может быть, что сам код занимает значительно меньше, чем тесты, а затраты на тестирование больше затрат на разработку — отчего бы и нет
В случае системы с большим количеством возможных состояний и большими рисками при ошибке тестирование легко может занимать гораздо больше времени чем разработка. Причем временами — на порядок больше. И это даже не касаясь юнит тестов.

Чем больше и разнообразнее опыт инженера и чем лучше он знает для чего он пишет софт и как это работает не только программно, тем меньше вероятность получить комплексную проблему на выходе (а к пуговицам то претензий нет), но такой инженер стоит, обычно, немного дороже, работает, часто, медленней, в общем пока гром не грянет — сплошные убытки :)
p.s. наблюдаю такую картину постоянно, кусочки работают по регламенту и по т.з. а в сумме то тут то там что-то идёт не так...

Чем больше и разнообразнее опыт инженера

В данном случае дело даже не в опыте. Специфическая для индийских хм… «инженеров» (а равно и программистов в инженерных доменах) проблема закладывается еще во время учебы, и отлично описана Фейнманом в его известной книге. Конечно, там место действия — Бразилия, НО. Удивительным образом все совпадает до деталей. Поэтому не буду плодить сущности и просто процитирую (извиняюсь за размер)

Но потом я спросил, можно ли, имея всего один кусок поляроида, определить, в каком направлении он поляризует свет. Они совершенно не представляли себе. Я знал, что это требует известной доли находчивости, поэтому я подсказал: «Посмотрите на залив. Как от него отражается свет?» Все молчат. Тогда я сказал: – Вы когда-нибудь слышали об угле Брюстера? – Да, сэр. Угол Брюстера – это угол, отражаясь под которым от преломляющей среды, свет полностью поляризуется. – В каком направлении свет поляризуется при отражении? – Свет поляризуется перпендикулярно плоскости падения, сэр. Даже теперь я не могу этого понять. Они знали все наизусть. Они знали даже, что тангенс угла Брюстера равен показателю преломления! Я сказал: «Ну?» По-прежнему, ничего. Они только что сказали мне, что свет, отражаясь от преломляющей среды, как, например, воды в заливе, поляризуется. Они даже сказали, в каком направлении он поляризуется. Я сказал: «Посмотрите на залив через поляроид. Теперь поворачивайте поляроид». – О-о-о, он поляризован! – воскликнули они. После длительного расследования я, наконец, понял, что студенты все запоминали, но ничего не понимали. Когда они слышали «свет, отраженный от преломляющей среды», они не понимали, что под средой имеется в виду, например, вода. Они не понимали, что «направление распространения света» – это направление, в котором видишь что-то, когда смотришь на него, и т.д. Все только запоминалось, и ничего не переводилось в осмысленные понятия. Так что, если я спрашивал: «Что такое угол Брюстера?», я обращался к компьютеру с правильными ключевыми словами. Но если я говорил: «Посмотрите на воду», – ничего не срабатывало. У них ничего не было закодировано под этими словами.

Вот это нынешняя система технического (= не гуманитарного) образования в Индии как она есть.

У нас этого тоже очень много, причём именно в техническом образовании. Ну очень много. И только конкретный преподаватель может попытаться потратить своё время, приложить усилия, и объяснить что-то студентам. Если захочет. Но сама система образования этого никак не добивается.
Пример кода специалиста с оплатой в 1 копейка в сутки:

bool value;
if(value.ToString.Length() == 4)
return true;
else if(value.ToString.Length() == 5)
return false;

else
return !true && !false;

Приемка тестирует функцию — она работает? работает.
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here

Потому что, согласно спецификации, работа toString гарантируется только на корректных входных данных, а здесь на вход пришли неинициализированные. На корректных тестах всё работало. Undefined behavior, однако.


Это, конечно, была ирония. Протестировать тестами полностью всё невозможно — два int' а во входных данных уже дадут де-факто бесконечное время для перебора.

UFO just landed and posted this here

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

Неинициализированный bool нормально сравнится, оба if будут ложными либо сравнение на true будет заменено компилятором на "не ноль". Дальше если оптимизатор вырезал "недостижимый" код, то все плохо, иначе сработает последний return и всё хорошо.


toString для bool можно сделать как return constantStrings[boolValue], которая полагается на то, что bool превращается в 0 или 1. Неинициализированный, соответственно, даст выход за границы массива и там можно схватить вообще что угодно, NPE в том числе. Но тут надо будет старательно завернуть всё в unsafe и выкрутить оптимизатор.

В C# не бывает "неинициализированного" bool.

Даже если передать указатель на структуру с bool в очень плохой unmanaged код?

Да, даже в этом случае. В результате в bool может оказаться мусор — но это все равно будет инициализированный мусор.

Но я C#, считайте, не знаю, мне правда интересно.
Хвала Аллаху, что подобные системы ещё не докатились до шарпа.
А, зачем вообще String и динамическое выделение памяти в ответственных местах?
Такой код, скорее всего не пройдет по стандартам.
UFO just landed and posted this here

small string optimization тут ни при чем, если это и правда C# имелся в виду — то там все строковые литералы интернированные (так же как и в Java, Javascript и Python). А результат bool.ToString() должен быть именно литералом (нет никаких причин делать иначе).

ИСТИНА/ЛОЖЬ — и мы поворачиваем не в ту сторону.

Почти, но мимо. В C# не предусмотрена локализация для типа bool.
Только "True", "False".

Вы вообще о чём?
bool.ToString() возвращает всегда либо "True", либо "False".

ToString != ToString().


На случай, если не видели исходного комментария:


bool value;
if(value.ToString.Length() == 4)
return true;
else if(value.ToString.Length() == 5)
return false;

else
return !true && !false;

Слишком похоже на опечатку. Вводить код в textarea не очень удобно, и компилируемость кода при этом автоматически не проверяется...

В вышеприведённом коде вас только это смутило?

Причём тут "смутило"? Я писал про то, что из отсутствия скобочек после ToString ещё не следует, что язык этого кода — не C#. Про качество кода я ничего не писал.

Последний return — впечатляет :-D

Более того, если это переписать на С++, компилятор все равно оптимизирует что индусятину, что прекрасный код. !true && !false точно уйдет.

>!true && !false точно уйдет

А в шарпе что будет?

Своя, шарповская магия ;) Я о том, что процессор выполняет совершенно не тот код, который написан в текстовом редакторе.

Я думаю, что в этой области применяют, всё-таки, фортран
Рецепт быдлокодеры+тестирование=хороший софт является в корне ошибочным.
Осталось донести эту мысль в головы владельцев заводов, газет и пароходов. Ну или Итшных галер для начала.
А, в чем проблема то для них? Владельцы заводов, пароходов, «галер»..., и так получают прибыль.
В том-то и дело что для них это не проблема, пока деньга капает, а пипл хавает. Плюс к этому эффект короткого горизонта планирования в стиле отчитаться перед годовым собранием акционеров, на крайняк перед SEC и FBI, а потом хоть потоп.
боинг больше не получает.
Самолеты не летают. Предзаказы отменены. Новых контрактов на авиасалоне не заключено.
В России так же дороги делают. Отдают на аутсорс подрядчикам. Те в свою очередь еще одним, а те находят команду, готовую работать за еду. К сожалению, это во всех сферах так.
Согласен. Главное, проблема была в единственном сенсоре который отвечал за стабилизацию, без резервирования. Качество разработчиков, ИМХО, тут не причем.
Там было резервирование сенсора. Но реализовано криво.
В том-то и беда, что их (датчиков угла атаки) два, и при расхождении данных с них MCAS выбирает большее значение.
halted вам нужно своими глазами посмотреть хотя бы на 1 проект, сделанные индусами. Вопросы отпадут сами собой.
Т.е. то что вы говорите — верно, но только если пишут не индусы.
поправлю вас — «сделанные дешевыми индусами». Я работаю сейчас с «дорогим» индусом, который эмигрировал из Дели в Финляндию, он пишет код намного чище и лучше большинства наших разработчиков.
поправлю вас — «сделанные дешевыми индусами».

Может, следует поправить сразу до "сделанных дешевыми программистами"? И даже не "дешевыми", а просто "плохими"?

Всё-таки есть разница между теми, кто сидит в бангалоре и теми кто вырос из бангалора и сумел трудоустроиться в Европе или Штатах.
У нас тут тоже завелись индусы, и их всё больше. Жду когда нас призовут переходить с С++ на Яву

Как проверить, что функция, перемножающая два числа и делящая результат на третье, работает всегда корректно? Кроме "открыть, почитать, подумать", я другого способа не вижу. Можно скормить ей произвольные данные, но это будет вероятностный тест. Вдруг внутри этой функции какое-то значение промежуточного результата используется как код ошибки? Это отсылка к функции MulDiv из winbase.h.

UFO just landed and posted this here

Осталось только узнать, умеют ли среднестатичтические индусы а ATS.

Цена за час — это просто объяснение, почему отдали в индию. Речь не об этом.
Речь о том, что люди, которые выползли из трущоб не могут мыслить широко и глубоко, иначе они бы не жили там десятилетиями. А те, кто могут, уверяю вас, уже давно там не живут и работают далеко не за 10, а может даже и не за 40 в час.

Качественно протестировать код тоже стоит денег и хороших инженеров. Кстати если брать метрики за строчки кода (да, такие встречаются), то протестировать строчку кода стоит примерно в 2 раза дороже (в часах), чем её написать.
Например у меня была история с одним самолетом. Было, казалось бы, пустяковое изменение — изменение частоты процесса в 2 раза. Это не подразумевало никаких других изменений в коде и тестах, а тесты стали падать (т.к. их требовалось просто перепрогнать). Весь модуль был давно написан и протестирован (угадайте с одной попытки — кем ;)). Но даже когда он попал к нам, специалисты уровня Middle не смогли даже подступиться к причине на первом этапе.

Чтобы не раздувать пост, скажу только что были требования, был код, написанный четко по этим требованиям, и тесты, которые, о боже, тоже написаны по требованиями. Проблема была в том, что требования были неоднозначны.
За полтора года за не сколько итераций удалось привести требования в нормальный вид, и тесты заодно. Почему так долго? Потому что вместо того чтобы плавно и аккуратно исправлять косяки на следующей итерации они выкатывают один CR за 2 дня до дедлайна, в котором «запилены» все непонятные_им_проблемы_в_виде_костылей. Инженер, который не принимал участие в тестировании этого модуля сразу упадет в обморок. Человек с опытом будет громко кричать что это всё г****но и надо переделать, но большинство его замечаний будет проигнорировано. Там по большому счету надо было пару месяцев плотной переписки, чтобы всё привести в порядок. А когда это 2 дня раз в 5 месяцев… ну сами понимаете.
А вот код не успели, потому что сертификация закончилась и времени и бюджета на исправление косяка в одну строчку уже не было, хотя первый раз я им ткнул на эту строчку за подлгода до дедлайна.

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

Вот так оно и есть. Вся эта возня с делегированием задач оправдывает себя, если работник обладает собственными разумом. Индусу сказали копать — он и копает, не загружая мозг посторонними задачами.


Вы составили ТЗ, индус что-то написал в точном соответствии с ТЗ. Но тут внезапно оказывается, что то, что для вас очевидно, для индуса не является таковым. В итоге ТЗ выполнено, но на выходе совсем не то, что вы ожидали. Поэтому приходится уточнять ТЗ и отправлять на доработку и т.д. Но у вас нет времени на переделку, поэтому в какой-то момент просто принимаете работу в том виде, в котором она есть.


Чтобы индус написал нужный код, придётся скрупулёзно составлять ТЗ, расписывая всё до самых мелочей. И в какой-то момент окажется, что накладные расходы на делегирование задачи окажутся выше, чем решение задачи собственными силами. И если в случае штатных сотрудников такое оправдано (сотрудник наберётся опыта и станет более автономным), то в случае аутсорса каждый раз нужно начинать всё с нуля.

UFO just landed and posted this here
Дима, привет! с тех пор, как ты от нас ушел, в индустрии все изменилось еще дальше в худшую сторону :)

Что касается исходной статьи, ты прав, в целом она — «плач Ярославны» про то, что хороших американских инженеров заменяют в пропорции 1 к 5 на неопытных инженеров из Индии (собственно, большая часть статьи — слова бывших/уволенных инженеров), что со временем должно привести к плачевным результатам (тут я согласен, и, некоторым образом, жду отложенного эффекта). Даже такая пропорция не позволяет компенсировать опыт, необходимый в авиационной индустрии для разработки новых устройств, хоть и позволяет значительно сэкономить.

При этом, если почитать другие статьи по теме MCAS на том же Блумберге, можно увидеть, что основная проблема как раз не в софте — он мог вполне отработать согласно разработанным системным/функциональным требованиям.

Ошибки, скорее, оказались заложены еще на уровне разработки системы (стандарт ARP-4754A), и, что еще точнее, на уровне проведения анализов отказобезопасности (ARP-4761).
В тех самых других статьях писали, что изначально система MCAS должна была компенсировать кабрирование самолета (задирание носа) на малых скоростях из-за изменения расположения новых двигателей под крылом и изменение направления их вектора тяги, при этом за раз она могла уменьшить это самое задирание носа на 0.5 градуса.

Функционал устройства был согласован с экспертами отказобезопасности FAA и ему был назначен уровень критичности B по стандарту DO-178C (собственно, устройство не приводящее к катастрофе в случае отказа, но при этом уже возникают вопросы — как даже для уровня б разрешили снимать данные с одного датчика угла атаки...).

Ну и далее пошли совсем странные вещи (ручаться не буду, рядом совсем не стоял, но пишут): эксперты FAA были изрядно завалены работой, поэтому анализ отказобезопасности они делегировали инженерам Боинга, «тут-то им фишка и поперла» — устройство неожиданно стало «исправлять» задирание носа не на 0.5 градуса, а на 2.5, при этом делать это не один раз, а много раз, последовательно, что сделало возможным катастрофические последствия, которые и реализовались (если не ошибаюсь, в первом случае отказал датчик угла атаки, во втором — там что-то провода отсоединились от датчика из-за тряски на взлете).

Т.е. по факту — разработчикам спустили какие-то требования, может быть ни их реализовали правильно, проверить их тоже могли вполне полностью и хорошо, но кто из разработчиков кода или тестов задумывается, почему один из выходов изменил диапазон рабочий с 0.5 до 2.5? Нет таких в принципе, эти должны заниматься писатели системных требований и safety engineer, который и делает анализ отказобезопасности.

В целом же, по ситуации можно сказать следующе — боинг давит всех своих поставщиков последние несколько лет очень активно на предмет снижения стоимости поставки устройств и сервисов, те вынуждены снижать издержки за счет дешевого аутсорсинга (это все-таки из разрешенных методов), вынуждены объединяться для противостояния давлению боинга (RCI + UTC + (возможно) Raytheon) и т.п.
Боинг, в свою очередь, возвращает разработку некоторых устройств, в частности Flight Control, FBW и т.п. внутрь себя, тоже сокращает собственные издержки за счет увольнения опытных и найма пачек неопытных и так далее. В целом, в индустрии идут довольно сильные изменения, которые снаружи могут быть не так заметны.
Как ужасно! Полное разложение нормальной инженерии!
Совершенно согласен с вами, к тому же в этом сквозит скрытое презрение к другому миру. В последнее время часто замечаю эту родовую проблему капитализма — отсутствие госнадзора за действиями капиталистов, к тому же «менеджеры» губят любое технически сложное дело на корню своими «оптимизациями», базирующимися на невежестве. По сути, Боинг следовало бы отдать хотя бы на время под госнадзор, жесточайший, и заставить пересмотреть параметры испытаний любых систем.
Боинг и так находится под надзором FAA. Так что как мы видим госнадзор тоже не панацея.
Боинг не находится под надзором FAA.

Там жесть жестяная. Фактически, 737 «сертифицировался» не FAA, а самой корпорацией Boeing.

FAA «делегировала полномочия по сертификации» разработанного тем, кто это разрабатывал.

www.nytimes.com/2019/03/26/us/politics/boeing-faa.html

medium.com/@alexlee611/faa-delegates-aircraft-certification-to-boeing-and-yet-they-recorded-the-best-safety-record-ever-e72fc38af274
Официально Боинг находится под контролем FAA. И то что FAA делегировала контроль кому-то другому, а точнее самому Боингу, сути дела не меняет.
Потому что точно так же любая другая госконтора может «делегировать» надзор за Боингом кому-то другому, в том числе и менеджерам самого Боинга :)
… джентельмен джентельмену верит наслово, и тут мне такая масть пошла!
Я работал (правда, недолго) тестовщиком кода для Боинга 787, когда был студентом.
Код реально писали индусы (у нас был доступ к VCS с историей коммитов), и да, код был плохим. При том, что на каждый маленький модуль было четкое описание, что он должен получать и отдавать, они умудрялись написать код, не соответствующий этим требованиям.
А как с тестированием там было?
Тестированием чего?
Мы не разрабатывали код, мы только писали юнит-тесты на готовый код, сами же их прогоняли и в случае каких-то несоответствий с документацией писали репорты по установленным образцам. Все это перепроверялось старшими, а потом отсылалось на уровень выше. Что там дальше с этими репортами происходило, я не знаю, но обычно потом ошибки фиксились в новых ревизиях. Я был всего лишь джуном на аутсорсе, и у меня естественно не было полной картины происходящего.
IMHO это проблема менеджмента компании, а точнее тех, кто делает следующие заявления:

“Генеральное руководство компании”, — говорится в заявлении, — “не участвовало в данной проверке”.


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


А вы работали с индусами на аутсорсе?

Мне вот довелось — врагу не пожелаю. Описывать элементарную задачу пришлось несколько раз и в конечном варианте я написал спеку… которою можно было копипастить в код… что они и сделали наделав еще и ошибок.

Нет, я допускаю что мне не повезло с конкретными индусами, но только они работали на подряде у автомобильного гиганта с мировым именем.
UFO just landed and posted this here
вроде же софт писался когда доллар был по 30р
UFO just landed and posted this here
Т.е. размер зарплаты освобождает от ответственности за жизни людей? Посыл получается именно такой.
Нет, не освобождает. А посыл звучит типа «ваша жизнь зависит от джунов, потому что на сеньорах и даже миддлах мы решили сэкономить».

Размер нет, а сложная схема передачи ответственности вполне может спасти головы в руководстве, но всё зависит от уровня возникших проблем. Моё личное ИМХО если бы вторым самолётом оказался самолёт American airlines, уже бы не один человек считал годы до окончания срока...

а много гениев и даже просто скрупулезных спецов пойдут на такую зп?
Думаю зп 45тыр в 2010 для спецов 2-3 года после вуза это минимум для города 1млн человек. сейчас около 90 наверное.
UFO just landed and posted this here

в 2013 я устроился на 15 тысяч полставки (от 30), студентом-третьекурсником с 0 опыта. 45 тысяч через 2 года после вуза более чем реально. ХОтя конечно, может 2010 и 2013 сильно отличаются, не знаю.

2019 год на дворе. Город 2+ млн человек. Скоро 20 лет после вуза. Недавно прилетело предложение «инженер Линукс, от 50тыр». И это было бы хорошее предложение (если бы компания вызывала хоть малейшее доверие, что такую зарплату действительно заплатят).
Насколько помню, я в 2010м в Перми примерно столько и получал.
Если сравнивать с однокурсниками, это было чуть ниже среднего. Но зато было интересно )).
Ну и минус ~40% налогов, надо полагать. Всё-таки в РФ обычно считается з/п после вычета всех налогов, так что ~27к рублей.

Ну и опять же, мы не знаем, сколько из этих $9 в час забирал аутсорсер. Программисты же компании-заказчику обходились в $9 в час. Если аутсорсер ещё минимум 30% забирал, то всё вообще плохо. Хотя в оригинале статьи и написано, что это был именно доход разработчиков, но кто знает.
Проблема не в сумме зарплаты сотрудника, а в том, что не только разработка, но весь цикл проектирование-разработка-тестирование-приёмка проводился в компании, которая никогда не делала отказоустойчивые системы.
Если взять разработку в самой Boeing, где есть инженер, заложивший дублирование, тест-писатель, описавший известные ему и компании случаи отказов в тестах, и менеджер, который не примет код до того, как он пройдёт тесты — то да, можно заменить разработчика на дешёвого. Будет ли дешевле час работы сотрудника за $50 или неделя возни и возвратов индусу с $9 — другой вопрос.
А если вся задача делегирована людям, которые, условно, раньше делали софт уровня 1С — то ТЗ будет выглядеть как «типа надо компенсировать недостаток манёвренности», тесты буду выглядеть как «взлетаем, не хватает управления, триммирование включается, всё хорошо начальникама» — разработчик ПО (который, в отличие от менеджера и инженера, не обязан хоть что-то знать про самолёты) мог написать с первого раза идеальный код, который на 100% делает ровно то, что описано в ТЗ.
Но ТЗ неадекватно требованиям к подсистемам в авиации. В этом и проблема, насколько я понял — в делегировании проектирования целых подсистем в компании-подрядчики
UFO just landed and posted this here
Я на всякий случай хочу уточнить, что статью переводил совершенно не ради заголовка, он такой же, как в оригинале.

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

Да, у Boeing запас прочности большой, но вот этот «эффективный менеджмент» и погоня за краткосрочными прибылями точно до добра не доведёт.
Так вот и умирают или загнивают монополии. Большие зарплаты и возможность «карьерного роста» привлекают халявщиков карьеристов. Те быстро смекают, что качество работы отходит на второй план, уступая человеческим отношениям. Специалисты, работающие на совесть, в итоге разбегаются и работать становится просто некому. Остаются вруны и дармоеды, которые рисуют красивые цифры на графиках, не имеющие ничего общего с реальностью. Реальные продажи падают, конкуренция проиграна, компания стагнирует или волочит существование на вторых ролях
Поставил бы плюс, если бы мог. Похожая ситуация сейчас у Интел. Десятилетиями компания купалась в деньгах, однако, вместо того, чтобы продолжать интенсивно крутить педалями, просто зажралась. И теперь приходится глотать пыль азиатских тигров, которые уже давно освоили 7нм техпроцесс.
Полностью соглашусь на счет Intel. У компании исторически очень сильные позиции на рынке ПК, но вот в мобильном рынке они отстают колоссально. Интел выпускает процессор с компоновкой big.LITTLE в начале 2019. Китайский MediaTek сделал это в 2013. Есть слух, что и процессорах для ПК у Intel не все так безоблачно. AMD со своим Ryzen потеснил Intel с первых строчек бенчмарков. Но это еще не самое плохое. Плохо настанет тогда, когда Apple откажется от процессоров Intel на Macbook. А слухи такие уже ходят, что яблочники разрабатывают собственный процессор, как это было в случае с PowerPC (кто еще помнит)
Ну это далеко не первый рывок AMD, когда они оказывались быстрее (и дешевле) чем Intel. Вспоминается как минимум K6-III vs Pentium 3 и особенно Athlon XP vs Pentium 4. Ну и x86-64 сделал тоже AMD.
Недаром архитектура «64» в дебиане называется «amd-64».

Чтобы не путать с IA-64, которую Intel выкатила двумя годами ранее.

Ну AMD-то действительно разработала 64-битную архитектуру современных процессоров, и Intel перешла на неё тоже, по кросс-лицензионному соглашению. А вот IA-64, это совершенно другая архитектура, которая использовалась в серверных процессорах Itanium, и хоть была и интересной, но сейчас уже можно считать её мёртвой.
А зря, хорошая она была.
У VLIW-а главный недостаток это отсутствие тонн legacy софта, который для x86 копился с 80х годов. Ну и не надо забывать про то, что слегка туповатый компилятор на x86 это неприятность, а на VLIW это уже полная и большая ЖО.
Скорее это было преимущество. Иной раз, чтобы получить успех, нужно начинать с нуля. Или сразу проектировать хорошую расширяемую универсальную архитектуру — как например, Sun Spark, IBM Power или 360 / Z. Ну и программам на C никакой принципиальной разницы.
Вспоминается как минимум K6-III vs Pentium 3

K6-III нет, т.к. это был рывок только по сравнению с К6-2, и лебединая песня всей тогда уже бесповоротно устаревшей архитектуры. Athlon XP конкурировал на равных, хоть и не был лидером, зато его младший брат Duron рвал в нижнем сегменте Celeronы как Тузик грелку. Звездный час у них наступил с появлением Athlon 64. Вот тогда они уложили Pentium 4 на обе лопатки. Сначала с появлением 64-битного ядра, потом они же первыми вывели на рынок многоядерные процессоры.
Вообще, как по мне, сейчас АМД находится в стратегически более выигрышной позиции, и по сути, это плоды уже находящегося в далёком прошлом решения — продать свои фабрики. Риски и огромную стоимость освоения новых техпроцессов они делегировали контрактным производителям, и те с ними вполне справляются. А Intel пытается их тянуть на себе, и пока неуспешно. А когда освоят свои 10nm, TSMC уже даст для АМД 5 nm и так далее.
Я напомню еще про слотовый Athlon, самый первый. Который тоже был божественно хорош для своего времени, и разделывал Willamette'ы под орех.
Собственно в битве за консольное железо они полностью проиграли. Последнее поколение xBox и PS на AMD железе.
Еще и сервера масово перейдут на какой-то POWER9 или на набирающие популярность ARM и Xeon`ам не останется места на рынке.
Если уходить не на х86_64 и не на арм, то имеет смысл выкопать powerpc — куча кода наработана, есть те кто под него писал, есть какие-то технологические наработки. Только вопрос — зачем? Перейти на AMD можно малой кровью, если что-то смущает, у армов пока недостаточно мощи для пк + куча работы по подготовке кода под новую архитектуру.
Делать что-то с нуля они скорее всего не вытянут, а из современного успешного выбора и нет.
Ну, лучше на на PowerPC, он вообще в прошлом веке, а на IBM Power 8 / 9.

Хорошо сказано. Беда в том, что у монополиста обычно запас капитала большой. Плюс инертность покупателей и долгосрочные поставки. В итоге, когда жареный петух клюет, компания нехотя начинает вновь следить за качеством.
Из недавнего: Intel. Боинг тоже не помрёт.

В середине 90х из-за «эффективного менеджмента» чуть не откинулась Apple. Так что при неудачном стечении обстоятельств могут помереть и такие гиганты
UFO just landed and posted this here
Точно также умирают государства-корпорации.
Это полная сумма с налогами (фонд оплаты труда), вычтите из неё есн 22+5.9+2.1=30% и от оставшегося ещё 13% ндфл будет: 98280*0.7=68796 и ещё умножить на 0.87 59852, согласитесь совсем другое дело, много ли программистов за 60 т.р. Работают, особенно в Москве?
UFO just landed and posted this here
Тут недавно статистику зарплат it выкладывали, в том числе регионы, все зарплаты были выше.
А если в ценах и долларах 2010, это вообще 30 получалось, в то время вполне себе средняя зарплата даже для инженеров, не говоря уж о программистах
UFO just landed and posted this here

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

Точно так же открытые вакансии не говорят, что на них идут люди. Видел вакансии открытые по полгода и больше.

Еще надо учесть трюк: пользователь Моего Круга может указать зарплату выше реальной, чтобы потом получить больше.
Многие компании, работающие на УСН фактически, не платят то, что вы называете ЕСН, т.к. его полностью покрывает дальнейшая налоговая льгота: на сумму уплаченных взносов в ПФР и ФОМС уменьшается сумма налога предприятия.

Причем тут компании, когда речь идет о зарплате сотрудников?

Потому, что ФОТ формируется из денег компании, разве нет? :)
Инженеры в Индии зарабатывали около $5 в час, сейчас это $9 или $10, в сравнении с $35-40 для тех, кто находится в США по визе H1B, добавляет Хильдерман. Но он объясняет своим клиентам, что в реальности, дешевая цена за час равняется примерно $80, из-за необходимости контроля,

Вот самая важная часть статьи. Это критика «эффективных менеджеров», которые сокращая расходы втрое увеличили их вдвое. И очередное напоминание что чудес не бывает
«Вы не понимаете!» (с)
Существует ФОТ для департамента, в котором обитают программисты. Финансисты, в процессах разработки ПО не понимающие ничего, и потому ставящие расходы на разработку ПО в один ряд с расходами на закупки, спустили сверху указание «Снизить ФОТ на 20%». Возможно, даже реальной необходимости в этом и не было, а просто новый начальник решил выслужиться перед высшим руководством с самого начала. Или KPI ему самому такой прописали. Но указание сверху получено, пришлось взять под козырек Менеджеры нижнего звена поменяли часть дорогих офисных программистов на дешевых оутсорсеров и обновили свои резюме, чтобы свалить, когда придет время платить по счетам. И, в общем, не так уж они и виноваты — правила игры задаются сверху, и объяснять тут что-то бесполезно.
Это совершенно нормальная практика сейчас для не-программистких крупных предприятий, скорее, странно, когда бывает наоборот. Краткосрочные цели годовой прибыли имеют преимущество перед долгосрочными целями развития компании. Есть курс и прибыльность акций — это главное. Поэтому любой ценой надо добиться прибыльности в этом году, а в следующем — зальем деньгами от повышения курса этот проблемный участок. Но иногда, редко, получается и вот так, как с Боингом.
UFO just landed and posted this here
С чего вы взяли, что 9$ отдают индусу? 9$ получает компания за час работы технического специалиста сданного в аренду боингу (аутсорсинг это или аутстаффинг не важно), при этом сам индус вполне может получать и 1$ в час.

Те же индусы едут в США, пытаясь зарабатывать среднюю ЗП по рынку, причем они идут на всякие хитрости, чтобы скрыть свой низкий уровень образования/обучения. Иногда едут в США как body shopper ы, зарабатывая 1/2 средней ЗП, потом меняя работу на нормальную. Они везде, в общем. Лезут во все щели, ибо для них такая сытая жизнь великое благо, а благодаря уже осевшим индусам в корпорациях их и берут чаще, более лояльны к визовому спонсорству. Кто ее видел Кремниевую долину тот, в частности, не ощутил лёгкую панику от вездесущих индусских программистов.)

Именно.
Знаю компанию, которая работала с Боингом, продавала час за $40, а сотрудникам платила фикс 20-30 тыщ(по ценам середины 2000х, не знаю, как сейчас, но вряд ли в корне изменилось).
И кстати, ходит там легенда, что один проект отдали индусам со словами «у них дешевле, передайте проект с доками» и год вернулись со словами «сколько будет стоить вернуть проект в читаемое и рабочее состояние?» — то, что наворотили индусы, ещё 5 месяцев разгребали и приводили во вменяемое состояние.
До боли знакомая картина :)
К счастью у нас для тестов была так круто разработана методика тестирования, что испортить её даже индусы не могли (хотя пытались, честно)))
Её мы применяли для всех новых и переделанных индусовских тестов.
Кстати в какой-то момент заказчик отдал кучу работы китайцам. Сначала было нормально, пока, видимо, самые умные китайцы стажировались в США. А вот когда они вернулись домой и стали учить своих коллег. Результат стал очень сильно похож на индусовский код. Сложно сказать — какой лучше, а какой хуже… он просто чуть другой :)
А многим ли российским программистам, особенно вне мск-региона можно доверить разработку ПО современного самолета?
Вот тут есть пара отзывов работников о московском отделении Боинга. Меня вот эти фрагменты слегка шокировали:
It was my first serious job, I got such a great experience, I went through so many trainings and learned english at work. / Это была моя первая серьёзная работа, я получил отличный опыт, ходил на всякие тренинги и учил английский прямо на работе
Nice place to start your aviation career and extend the engineering knowledge in aviation / Отличное место, чтобы начать свою карьеру в авиастроении и улучшить инженерные знания по авиации

Один мой знакомый туда рвался, потом сходил на собес или два, поговорил с кем-то из сотрудников, посмотрел на офис и свернул удочки с формулировкой типа: «Да это ж конвейерная соковыжималка для студентов: берут за копейки совершенно зелёных ребят, заставляют работать в режиме аврала 12 часов в сутки плюс обучение прямо по ходу, как только ребята начинают немного разбираться в теме и сбегают из рабства, набираем новых». При этом он не как прогер туда ходил, а как инженер-конструктор, так что там, похоже, подход один ко всем этапам разработки и своё мнение насчёт того, кому из российских специалистов стоит доверять разработку современного самолёта.
staticmain
FYI у нас в регионе (на восточном побережье) минималка $9, это уровень уборщиц.
На западном побережье, где боинг, уже и уборщицы не получают $9 в час.
там смотреть надо — это они зарабатывали или Боинг платил за час столько

у меня была работа джуном — я получал 25 тысяч рублей в месяц
с клиента брали 1200 рублей за 1 час моей работы

но это рекорд был, обычно брали 600-800, что все равно интересно,
т.к. мне за 1 час давали 125 рублей примерно

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

Я к тому, что надо уточнить — расценка за 1 час для клиента или действительна зарплата. Если смотреть по расценкам для клиента, то расценки я бы сказал нормальные даже в РФ. Может быть, даже низкие местами. Там где я работал, фирма бы и разговаривать не стала за такой прайс )

А я так понял что $9 получает компания-аутсорсер. А зная что маржа таких компаний обычно не менее 50%, то индус получает $4.5 до налогов.

и миллионов строк кода,


Вот этот момент интересен. Это считали вместе с кодом операционок, видеоплейеров и прочего в довесок? Код программы автоматики управления вряд ли может иметь миллионы строк. Или там действительно нужны эти самые миллионы строк?
Возьмите несложный алгоритм (хотя бы PID-регулирование) и соберите его под любой микроконтроллер (скажем, ARM). На верхнем уровне у Вас будет несколько строк и читабельная программа. Если копнуть глубже — реализация PID занимает несколько экранов и всё ещё читабельна, а так же в идеале должна быть покрыта тестами.
Однако то, что заливается в контроллер, разворачивает связанные библиотеки (как минимум, cmsis для взаимодействия с железом и math) и занимает уже десятки тысяч строк кода (С) или сотни (инструкции процессора).
Если добавить сюда работу нескольких дублированных устройств, сетевой протокол, механизм голосования/выбора неисправных, и всё это так же будет содержать библиотеки — вот вам и миллионы строк кода (инструкций).
ARM не совсем микроконтроллер :)
У настоящих микроконтроллеров (AVR, PIC, STM и далее) и обвязки к ним довольно мало место в ПЗУ, поэтому никакие миллионы строк там физически не уместятся. А каждые 2 КБ сверху стоят около ста евро в прайсе Siemens.
Areso не совсем хабраюзер :) У настоящих хабраюзеров (тут следует список) член 27 сантиметров и зарплата 300 килорублей/секунду.

Заодно поржал от наличия в скобочках STM наравне с PIC и AVR.

— С уважением,
Генрих Мюллер, группенфюрер
У STM есть серии 8 битных микроконтроллеров.
Ну и да, я в своих личностных характеристиках несколько скромнее, и думаю, что если где-то и сморозил глупость, то вполне приемлемую — я с МК не работаю, пересекался раз или два по работе и когда делал маленького робота.
Так зачем высказываться на темы, в которых понимаешь примерно как свинья в апельсинах?

— С уважением,
Генрих Мюллер, группенфюрер
В любом случае, ARM — нормальная архитектура для МК. Есть чипы за $0.5 с 32 Кб флэш-памяти и 8 Кб ОЗУ, работающие год от батарейки CR2032, есть чипы с несколькими ядрами, отлично справляющиеся с задачей управления парой двигателей.
Естественно, речь не о ядрах ARM Cortex A*, а о линейках M и R.

ARM занимает 37% общего рынка МК и более 50% рынка IoT. Квадрокоптеры все на АРМах, автомобили на них переходят. Сейчас не проблема найти МК с ПЗУ 512кб или даже 1024кб.

Да, я уже понял, что серьёзно ошибся.
Ранее я работал с 8 битными МКшками, и на момент написания своего комментария полностью забыл о существовании ARM Cortex-M.
Посыпаю голову пеплом.
Мне, наверное, не стоило комментировать на тему, в которой я недостаточно разбираюсь.
А еще есть и PIC32 c 2Мб встроеного флеша и поддержкой внешней памяти до 16Мбайт адресации.
У STM тоже есть что-то похожее.
UFO just landed and posted this here
Во-первых, на мой взгляд, «миллионы строк» — это жертва изнасилования журналистами.
Во-вторых, думаю, в 737 Max стоят сотни устройств с МК внутри (я не учитываю развлекательные панели в креслах, только авионику и автоматику), и если в каждом хотя бы по тысяче строк кода на асме — это уже миллионы строк. Здесь нет речи о ревизиях, разных моделях и комплектациях.
Платят, думаю, почасовую ставку, и в этом может быть одна из проблем — на мой взгляд, инженеру лучше платить за выполнение хорошо поставленной задачи, покрытой тестами и имеющей чёткие критерии выполнения и работоспособности, но увы.
Код, отвечаюший за отрисовку картинок на дисплеях (PFD), для не очень большого самолета весил десятки мегабайт текстовых файлов. Но он по большей части был автоматически сгенерен из другой приблуды, где содержимое этих экранов дефайнилось (если очень приближенно) как формы в Delphi.
Вот только к разработанной программе весь этот объём уже не относится — это код ОС и сопутствующих библиотек. Из статьи же читается, словно эти индусы нафигачили миллионы строк кода для управления самолётом.

Если добавить сюда работу нескольких дублированных устройств, сетевой протокол, механизм голосования/выбора неисправных, и всё это так же будет содержать библиотеки


Практически не будет. Мы всё это делали почти без всяких библиотек на Миландровском контроллере и на таком чуде, как аналог TMS3020C3 (да, для ВПК). Кстати, если кто случайно знает для TMS320C3 компилятор хотя бы с Си99, буду очень благодарен за информацию, где его можно взять (а то Си89 на нём уже достал). :)
Кстати в авиации библиотеки редко используют. Они должны быть сертифицированы и поэтому стоят денег. Часто дешевле написать свои функции и сертифицировать как часть своего кода, чем покупать библиотеку целиком.
Может им платили за количество строк?
В таком случае вполне возможны перлы в коде вида:
var a = ...
...
if(a == a)
{
   DoSomething();
}
else
{
   DontDoSomething();
}
В кавераге дыры будут — не прокатит :)
В современных системах управления автомобилей около 10миллионов строк кода на блок… В самолетах всяко должно быть поменьше но в пределах этого порядка. Собственно цифра скорее говорит об эффективности представления ПО в виде тех самых строк… (в нормальной индустрии никто конечно руками давным давно эти строки не писал и ни одного индуса не страдало)…
На блок?! Я думал, это на самолёт, если честно.

Блок в смысле ECU с мелким реалтаймовым МК, или всё-таки речь про голову с цветным экраном?

У меня машина начала нулевых, и там вся прошивка весит сотню килобайт для ECU и десятки кб для всяких блоков комфорта.
Код FMS может быть легко в миллион строк и выше, достаточно сложное устройство со своими внутренними БД, input/output для пилотов, контролем сотен систем и датчиков самолета. Даже в симуляторах эта система реализуется непросто.
«Проектирование стало превращаться в дешевый товар» — не стало превращаться, а превратили продажные представители заказчиков, совместно с гнильем в руководстве проектных организаций.

Эксперты вынуждены уходить в другие отрасли с направлений, где они были сильны, потому что их работа обесценена «молодыми» специалистами, умеющими считать лишь на калькуляторах (условное название всех «помогайзеров»). Доходит до того, что электротехники не знают закон Ома.

В итоге проблемой для заказчика (желающего нормальной работы) стало НАЙТИ тех, кто МОЖЕТ нормально спроектировать в куче-мале псевдоспециалистов.
Если в промышленных гигантах, ответственных за человеческие жизни, такая неразбериха с процессами, то о чем говорить в более мелких конторах

Как раз наоборот: вероятнее, что именно в маленькой конторе подойдут к процессу проектирования с большим вниманием и ответственностью. А в «промышленных гигантах» обязательно найдутся тучи «эффективных менеджеров», озабоченных лишь снижением издержек и повышением прибыли.
Я скорее имею в виду фирмы размером 250-500 человек, у которых вроде бы все друг друга знают, уже есть проекты серьезного уровня, но контроль над происходящим уже начинает теряться.

Работаю в такой компании. Да, контроль если уже не потерялся, то теряется.

Наша главная цель — всегда быть уверенными в том, что наши продукты безопасны, высочайшего качества и выполнены по всем правилам


Наглая, паршивая ложь. Ненавижу менеджеров за это.

Почему ложь? Может они вполне себе были уверены в этом.

Уже ж выяснилось что Боинг намеренно не сказал пилотам про эту систему mcas. Они руководствовались лишь одним — не просрать сроки и не допустить доминирование airbus

UFO just landed and posted this here
Почитайте разбор действий пилотов во второй катастрофе, где они пытались ее выполнить.
Кому лень гуглить/вникать — краткое содержание:

На предыдущий моделях 737 у летчиков и mcas (а также остальных систем управления стабилизатором было 2 отдельных электромотора, runaway stabilizer отключал электромотор автоматики, в то время как пилоты по прежнему могли пользоваться своим электромотором для управления стабилизатором). На Max решили сэкономить и завели все на один общий электромотор. Соотвественно, единственным способом управлять стабилизатором после runaway stabilizer (который на Max обесточивает этот единственный мотор) можно только вручную через тросики, что экипаж эфиопской компании и пытался делать. Только, как выяснилось, что на скорости >300 км/ч это уже выше пределов человеческих возможностей, в чем пилоты довольно быстро и убедились (на взлете у них скорость была сильно выше). После чего пилоты решили включить мотор обратно, видимо чтобы управлять стабилизатором со штурвала, но тут им просто не повезло т.к MCAS на включении моментально загнала их в штопор.

Резюме — офигительно боинг помог со своей инструкцией после первой катастрофы (где они как раз акцентировали внимание на runaway stabilizer)
но тут им просто не повезло т.к MCAS на включении моментально загнала их в штопор

Ничего не мешало при включении электромотора сразу же выставить положение стабилизатора ближе к правильному, а потом выключить его обратно.

Они сразу же в штопор и впилились.

Даьи вообще эти фразы НАША цель безопасность… блабла, наша цель сделать мир лучше, наша цель сплотить общество… это все такая лапша противно даже. Ниразу таких целей не слышал на собраниях инвесторов или топ руководителей

Нет разу не слышал на собраниях, чтобы глава фирмы открыто озвучил свои цели. Обычно давят на совесть: нам верят клиенты, мы должны сделать все, что можем. При этом всем ясно, что в заявленный срок никогда не получится сделать качественно. Идёт подгонка под требования приемки, а не под опыт реальной работы у заказчика.

Работа пиарщика врать. Вам и мне противно. Ему часто тоже.

один из сотрудников пожаловался, что 18 раз отправил чертежи команде в Россию, прежде чем они поняли, что детекторы дыма должны быть подключены к электрической системе

То есть боинговские сеньоры смогли предоставить техдокументацию надлежащего качества только с 18 попытки. Может тогда и правильно их аутсорсерами заменили?

Скорее русские, привыкшие к ГОСТам и непонимающие английского языка и терминологии.

Интересно-интересно.
Как эксперт, расскажите, что изменилось за 18 попыток: эти ужасные русские выучили-таки английский или страдающие от аутсорса боинговские инженеры техдокументацию на русский перевели?

Расскажу случай из личного опыта.
Однажды знакомые ребята меня попросили узнать, сколько будет стоить на российском заводе выточить одну деталь из цельного куска алюминиевой плиты. Кое-как на пальцах объяснили, что они хотят, я кое-как сделал 3D модельку, сделал несколько скриншотов разных сечений, указал размеры в мм и отправил на известные мне заводы мехобработки. Дело было осенью 2015 года, когда с экономикой было ну совсем все плохо. Из всех заводов мне ответил только один, что, дескать, пока документация не по ЕСКД они ничего считать не будут. На мой уточняющий вопрос, могут ли они привести имеющиеся данные к ЕСКД за деньги, мне с завода уже никто не ответил.
С тех пор, знакомые ребята сотрудничают с китайцами — они, конечно, не очень, зато сообразительности им не занимать, когда дело деньгами хотя бы пахнет.
UFO just landed and posted this here
Здесь все верно и это работает, когда вы взаимодействуете с профессиональным инженером. Он и допуски напишет, и материал, и тех карту и т.д.
НО все меняется, когда вы начинаете работать с людьми, простыми, но хотящими что-то сделать. Такие есть, они даже что-то знают и умеют делать, но их уровень не позволяет им готовить все необходимое в соответствии с представленными требованиями. В таком случае, по-человечески, можно сделать какой-то сервис, который будет говорить с клиентом, принимать модель и проставлять опущенные детали, опираясь на область применения детали. Если это обычная хоббийная штучка, то там 0.1мм будет вполне себе нормальным допуском.
Теже китайцы просто не парятся на эту тему, есть какой-то обычный допуск для станка, например 0.05 мм и они с ним делают детали не задавая лишних вопросов.
В России на сайтах всяких компаний черт ногу сломит, прежде чем найти хоть какую-то информацию о том, как сделать заказ и т.д.

Допуски всё же не просто так, возможно ваша модель была оценена технологом "на глазок" в сумму, подразумевающую что вы не захотите её платить если даже чертежи толком сделать не можете, штучное производство всё же иметь особенности.
И про допуска, допуск не просто в n-xxxxxметров, он ещё в плюс и в минус и это не просто так...

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

Про "раздобыли плиту", как то на одном заводе работяги решили сдать на металлолом аллюминиевые чушки диаметром 200мм. Ну лежат на складе…
Так что происхождение таких вещей может быть весьма оригинальным...

Мне кажется корректным решением данного вопроса было бы ответное письмо с примерной стоимостью и вопросом нужно ли считать более точно за деньги. Я уверен что завод не получает таких предложений тысячами в день и значит ответить всем совершенно реально. То есть завод (и конкретный менеджер, технолог) не теряет практически ничего, но может потенциально получить нового заказчика. Терять заказчика просто потому что тебе показалось что он столько не захочет платить? Я конечно не супер бизнесмен, но мне кажется так дела не делаются.
Попробуйте на бао заказать штучно товар. Большинство пошлет лесом — типа торгуем от сотен и тысяч.
Завод можно понять, на кой ему единичная возня с некрупным заказом?
Понимаете, со штучных заказов начинается любое производство. Просто в одном случае, оно становится успешным и тогда заказываются мелкие серии, а потом и крупные. А в другом не очень или не планируется вообще. Так что в первом к вам приходит будущий клиент, с которым можно будет работать на протяжении нескольких лет.
Но только вы никогда не узнаете, какой у вас случай до того момента, пока вы не доведете первый заказ до ума.
Вот например я делаю маленькие устройства для себя. Если у меня получится устройство, которым заинтересуются другие, я могу заказать больше и начать их продавать в малом объеме. Начальный доход от продаж позволит мне создать стартовый капитал. Я смогу оценить рынок, изучить аудиторию, исправить ошибки и довести устройство до качественно нового уровня. Сделать вторую версию гораздо лучше первой и продать еще больше устройств.
Но только если никто не согласится делать мне то самое первое устройство в буквально единичном экземпляре, я никогда не смогу выйти на рынок.
Как итог мы имеет плохие устройства на рынке, потому что люди, способные сделать лучше, не могут их реализовать по причине отсутствия средств, а компании не заинтересованы в новинках, пока нет конкуренции.
Получается замкнутый круг, разорвать который могут только заводы, у которых есть реальная возможность что-то производить. Но им лень, ибо проще отшивать людей формальностями и жить за счет госзаказов или 2-3 больших клиентов.
ТаоБао вообще задуман как оптовая площадка. Там никто не будет вам что-то поштучно делать. А вот на AliExpress вполне можно найти конторки, которые могут делать что-то практически поштучно, просто дорого.
ТаоБао вообще задуман как оптовая площадка. Там никто не будет вам что-то поштучно делать.
Об этом я и писал. Завод вообще задуман как оптовый производитель. Потому там обычно не связываются со штучными заказами.
А вот на AliExpress вполне можно найти конторки, которые могут делать что-то практически поштучно, просто дорого.
А это уже не завод а скажем мастерские.
Есть на LJ юзер bougaev.livejournal.com
Вот как раз он за деньги клиента готов хоть фоторамку из чугуния выфрезеровать.
И довольно интересно о процессе пишет.
Понимаете, если завод ответил что им нужна документация по ЕСКД, то наверное они и были готовы к мелкому заказу, иначе бы так и сказали? Не выбирали же они более красивую форму посыла?
Регулярно покупаю на таобао и тмолле чай, инструменты, посуду в розничных количествах, ЧЯДНТ?

Вы может с Алибабой спутали?

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

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

По человечески тоже все просто. Почту читает человек, который допуски считать не умеет. Напрямую обратиться к человеку, умеющему считать, он не может/не хочет. Нужно задействовать насяльнике, а он в отпуске..