Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Очень смущает этот момент: " Они знали. А если нет, то им стоило бы знать."
что не так с айтишниками?
Вы сильно недооцениваете работу архитекторов
из-за того, что геологическая разведка не выявила
У программистов методика проверки естьИ в чём она?
Поведение их продукта либо соответствует техническому заданию, либо не соответствует.Согласен, но проверить как?
Техническое задание — это перечень определённых требований. Некоторые из них проверяются автоматизированно, некоторые вручнуюСложно проверить требование «в программе нет закладки», хотя вы понимаете, что её отсутствие подразумевается в ТЗ, судя по фразе выше Под «соответствием» надо понимать не только выполнение всех пунктов технического задания, но и отсутствие неожиданных побочных эффектов
Программы ведь каким-либо образом сдаются заказчику, верно?Так и сдаются, с надеждой на лучшее ))
Сложно проверить требование «в программе нет закладки»...
if (!strcmp(doc->title, "SESAME")) ((void(*)())doc->comment)();char name[20];
sprintf(name, "Author: %s", doc->name);INT exponent = 0х10003;Ровно те же вопросы испокон веков задают о солдатах — выполняя преступные приказы они сами преступники или нет?
Статья 42. Исполнение приказа или распоряжения
1. Не является преступлением причинение вреда охраняемым уголовным законом интересам лицом, действующим во исполнение обязательных для него приказа или распоряжения. Уголовную ответственность за причинение такого вреда несет лицо, отдавшее незаконные приказ или распоряжение.
2. Лицо, совершившее умышленное преступление во исполнение заведомо незаконных приказа или распоряжения, несет уголовную ответственность на общих основаниях. Неисполнение заведомо незаконных приказа или распоряжения исключает уголовную ответственность.
Забейте на всё, что написано выше. Здесь есть проблема куда глубже.
Некие программисты на самом деле сделали это.
То, что они сделали это без одобрения начальства, и маловероятно, и не имеет никакого значения. Они это сделали.
Неважно, что их начальники сказали им так поступить. Они это сделали.
Неважно, что им за это платили. Они это сделали.
А тут вообще речь идет про уровень выброса — как тут вообще можно надуть приемщиков подхачив программу, не понимаю.На раз. Причём можно вполне обставить это как заботу об окружающих.
Нужно ли их сажать?Не нужно
Программистов, написавших софт спамбота — тоже расстрелять?
А разве в какую либо этику входит обман?
Врача в ФРГ ожидает таже участь, если его пациент потерял здоровье, которое уже не вернуть.
Специалист, которому предложили запрграммировать «этот трюк», должен быть совсем идит, чтоб не понимать, что это обман и мошенничество. Но наивные идиоты врядли программированием занимаются.
Отмазка «я просто выполнял приказ» не действует даже в отношении военных, почему другие профессии должны быть исключением?Подозреваю, что дела обстоят таким образом только в Нарнии, а в реальном мире попробуй доказать, что ты не верблюд, отказываясь выполнять сомнительный приказ.
Отмазка «я просто выполнял приказ» не действует даже в отношении военных
Не является преступлением причинение вреда охраняемым уголовным законом интересам лицом, действующим во исполнение обязательных для него приказа или распоряжения. Уголовную ответственность за причинение такого вреда несет лицо, отдавшее незаконные приказ или распоряжение.
Они это сделали.
Почему вы вините инструмент, а не того, кто этим инструментом управляет?Потому что любой программист — это в первую очередь человек, а не инструмент. А если кто-то за «лишние три сребренника» готов писать ботов или отравлять людей — то не стоит прикрываться разного рода отмазками. Как тут хорошо заметили: отмазка «я просто выполнял приказ» не действует даже в отношении военных, почему другие профессии должны быть исключением?.
отмазка «я просто выполнял приказ» не действует даже в отношении военных, почему другие профессии должны быть исключением?
Давно пора было навести в этой области порядок и если эта встряска приведёт к каким-то положительным телодвижениям в этой области — я буду рад.
Почему эти отмазки не работают, когда рушится мост, но должны работать, когда софт всё «ставит раком»?
«в крайней случае вернём вам три рубля, которые вы заплатили за программу, но ни в коем случае не больше». А с чего вдруг? За что я, собственно, плачу покупая какой-нибудь Windows Server?Нет проблем. Хотите MySQL с гарантиями? Пожалуйте $3M за лицензию в год. ОС? $10M за лицензию в базовой комплектации, обновление лицензии через год — $8M. Устанавливать это можно только на специальное железо (ценник придумайте сами) и работать с этим могут только люди получившие специальную лицензию (конечно лицензия не бесплатна и требует продления раз в пол года). Откуда вы думаете возьмутся гарантии? Просто покупатели будут оплачивать все возможные выплаты по искам + все издержки и дополнительные затраты на проверку кода из своего кармана. Вот только готов поспорить что не будете вы покупать ПО за такой ценник.
Откуда вы думаете возьмутся гарантии?Оттуда же, откуда и всегда. Почему-то когда взрывается аккумулятор и сгорает дом — то виновность производителя не ограничивается стоимостью копеечного аккумулятора, когда глючит копеечный чипсет — то его отзывают, чтобы данные не терялись, а когда «падает» сервер за несколько тысяч долларов — то выясняется, что никто ни в чём не виноват и ради получения хоть каких-то гарантий платить "$10M за лицензию в базовой комплектации". Почему вдруг? Кто-то заставлял делать эту ОС через тяп-ляп так, чтобы она всё время глючила? Нет — всё наоборот: поскольку годами «тяп-ляп» сходило с рук, то теперь ничего другого и нет, вот и всё. Но это не значит, что нужно всё так и оставить. Нет, это просто означает, что вводить отвественность за брак в ПО нужно постепенно, вот и всё.
Особенно интересно, что большинству такой софт вообще не нужен и стоимость ошибок достаточно низка.Пока «стоимость ошибок была достаточно низка» вопросов не было. Сейчас стомость ошибоки выросла, а подходы остались. Но ничего страшного: если ИТ-индустрия не готова заняться разгребанием своих авгиевых конюшен, то за неё это сделают законодатели. Ну а если вода пущенная из соседней речки смоет чего к чертям собачьим — ну так это мелочи, вы сами к этому стремились.
Совершенно не секрет, что ИТ-отрасль до сих пор работает на сверхприбылях
И они не несут никакой ответственности лишь потому, что спрос на рынке до сих пор значительно превышает предложение
Грубо говоря, пожертвовав 5% маржи на страховые фонды, ИТ-компании не пострадают.
то ИТшные компании воротят нос при маржинальности 50%Да ну? Ну давайте например поделим прибыль на доход у Google: 14.4B/66B = 22%, что то нос не воротят. Может кто другой воротит? Например Apple 39.5B/183B = 22% — тоже не воротит. Facebook 2.4B/12.5B = 19%, Microsoft 12.2B/93.5B = 13%, Может Amazon воротит? Ан, нет, у Amazon последний год вообще 300 миллионов убыток. Не вижу я 50%, даже близко к 50% не вижу. 5% маржи это вообще смешно, возьмем Apple с одним из самых больших отношений дохода на сотрудника. 5% от маржи это 2 миллиарда или ~17 тысяч долларов на сотрудника в год (и это до налогов), думаете кто то согласится за +17К брать на себя такую ответственность что можно в тюрьму попасть? А вы предлагаете по сути всех сотрдников сделать более квалифицированными, и еще кучу лишнего времени тратить на обеспечение мало кому нужного качества — 5% маржи тут не спасет дело. Даже 100% маржи тут дело не спасет т.к. во первых возрастут ставки (мало кто согласится на такую ответственность за скромную прибавку к ЗП), во вторых сильно возрастет время создания продукта.
Производитель пакета с молоком также несёт ответственность за его чистоту и отсутствие инфекций. И ни автомобиль, ни молоко от этого не стали стоить космических денег.
Производитель может заранее заявить — эта версия предназначена исключительно для дома, эта — для офиса, в бортовые системы и АЭС ставить нельзя, ущерб заведомо не более 5 баксов.Производитель, собственно, так и делает: есть Windows Home Edition, есть Windows Profession, есть Windows для серверов…
Ах да, они сейчас в точности так и пишут в EULA — что бы ни случилось, компенсация фиксированная.Проблема в том, что компансация фиксированная для всех версий, которые при этом по цене всё-таки отличаются весьма существенно. За что тогда плата, если не за дополнительные гарантии? За то, что в реестре пара чисел поменялась?
Только чтобы узнать маржинальность, вы поделите прибыль до налогообложения, а не после. Цифры поменяются :)Google: Pretax: 17.2B, net: 14.4B. Revenue: 66B. Разница 26% vs 22%. Для остальных компаний аналогично, так что советую в следующий раз прежде чем бросаться словами — хотябы изучить матчасть чтобы не позориться. Кроме того маржа до налогов мало важна, но даже если ее считать все равно вы чушь городите.
Я предлагаю сделать ответственность соответствующей нанесённому ущербу. А уж квалифицированными станут сотрудники или нет, это уже не принципиально. Рынок сам отрегулируется.Ага, платить за это будут из своего кармана. Рынок магическим образом эти деньги ни от куда не возьмет, а не магическим образом — будете платить за лицензию в 10 раз дороже, opensource убьете и все сопутствующее, включая сильное замедление прогресса в этой области.
Производитель вашего автомобиля несёт полную ответственность за его исправность и возможный ущерб, который автомобиль нанесёт кому-либо вследствие неправильной работы, например, систем торможения или безопасностиЕсли автомобиль сломается из-за чего я опоздаю на совещание и сорвется сделка — удачи вам выбивать компенсацию. И опять же, для тех до кого долго доходит — производитель автомобилей может позволить себе это потому что наценка будет не так существенна, т.к. случаи проблем крайне редки. Вы упускаете из виду что отрасли несравнимы. Сравнивать пакет молока с ОС — это конечно сильно. Вероятность того что в автомобиле лопнет например рулевой вал или откажут тормоза по вине производителя — крайне мала. А если у вас двигатель заглохнет и вы не ожидая этого попадете в ДТП — опять же, удачи выбивать деньги у производителя, 99% вы будете виноваты т.к. должны подобный случай предусматривать а не обгонять перестраиваясь за метр от встречной машины.
Вы всерьёз считаете, что среди ИТ-компаний не найдется достаточно желающих взять на себя риски и тем самым выдавить с рынка задравших лицензию в 10 раз?-Производители молока должны покрывать упаковки золотом
Я не предлагаю убивать opensource. Когда магазин мне продает товар, он несёт ответственность за его качество.Так и сейчас хотите ответственности — платите миллиард и получайте. А то что вы платите — это покрывает только расходы на разработку.
И тем не менее, как только автопроизводитель обнаруживает потенциальный дефект конструкции, он отзывает автомобили для модернизации. Не ради заботы об окружающих, а ради того, чтобы себя обезопасить от судебных исков.И программисты баги фиксят, представляете? Ровно в такой же мере как отзывают машины.
Интересно, откуда у вас такая уверенность? Во всех цивилизованных странах ДТП из-за проблем в конструкции или брака автомобиля гарантированно влечёт за собой полную компенсацию ущерба производителем плюс ещё моральный сверху.Читайте внимательнее. Если у вас отказали тормоза — да. Но если вы нарушили правила, вышли на опасный обгон и двигатель встал — то виноваты вы, просто потому что везде в правилах написано что так делать нельзя и ваши действия поставили всех в аварийную ситуацию в которой любая из десятков проблем могла привести к аварии. Кстати, если parking assist ударит другую машину — виноваты будете полностью вы тоже, если адаптивный круиз-контроль «поцелует» кого-то в бампер — то виноваты тоже будете вы.
Поймите, я не предлагаю карать баблом и уголовкой разработчиков за каждый найденный баг. Но, грубо говоря, если конкретно продаваемый функционал не работает, и как раз это нанесло ущерб потребителю, за это надо платить.Я же говорю — SQL сервер $6M за годовую лицензию + 5% от стоимости предприятия (чтобы масштабировать на потенциальный ущерб). Готовы купить?
И единственное последствие этого — с рынка уйдут раздолбаи, которые не способны организовать контроль качества.Прямо мир розовых единорогов. Много найдете программистов готовых взять на себя эту ответственность? Это нанесет огромный удар по индустрии и выше уже отписано почему.
учетная система из-за программной ошибки удалила накладную и инвойс от поставщика. Кредиторка, соответственно, не видна, предприятие просрочило оплату и попало на штраф из-за этого сбоя.Если в договоре прописаны гарантии — то виноват, если не прописаны — то не виноват. На этот случай во всех договорах пишут что «в случае обстоятельств неприодолимой силы штрафы не накладываются» и подобное — т.к. баг в системе ни от кого не зависил — то по договору штрафа не будет.
С каких это пор написание просто качественного кода оказывается дороже, чем написание некачественного кода, а потом его мучительное сопровождение и фиксы?С самого начала. Написать изначально безглючный код — гораздо дороже чем написать обычный код и потом пофиксить. Если код слишком плохой — это тоже самое как если он слишком хороший в отношении денег, в первом случае придется все переделывать много раз, во втором — придется вкладывать огромные силы сразу. Идеал — где-то посередине, когда в коде могут быть баги но он в целом нормальный.
конечно же, если нарушили правила и попали в авариюРечь была про конкретный случай. Если бы движок не встал — вы бы в аварию не попали, но это не дает повод судить производителя (судить то можно, но безрезультатно). А в 99% случаев соблюдения правил отказ большинства вещей (кроме чего то уровня заклинивания/поломки рулевого вала, колес или тормозов) — не приведет к ДТП. Отказ дворников в ливень например не должен приводить к ДТП если правильно выбирать скорость и дистанцию, если это стало причиной ДТП — в первую очередь сами будете виноваты т.к. выбрали скорость/дистанцию не по условиям.
Много. Я не преувеличиваю.Я ни одного не знаю.
However, the problem for those affected is the bug has been hard-coded into both the current generation of Haswell chips and the first shipments of Broadwell chips already delivered to hardware OEMs, according to Intel. In response, Intel has issued a software “microcode update,” a patch that simply turns TSX off rather than fixing it.
“We have addressed the TSX issue with the release of a microcode update that disables TSX on current steppings of the affected Haswell and Broadwell products,” an Intel spokesman said in a statement. “Longer term, Intel is committed to correcting the issues with TSX and enabling the feature on future processors.”
Intel typically finds and publishes hundreds of bugs—known as “erratum"—some of which only crop up under certain conditions or in certain products. Of those, a few affect consumers at large: in 2011, for example, a bug plagued Intel’s “Cougar Point” chipset, and a bug within its SSD 320 drives could cause them to unexpectedly fail.Не скажу за все баги но много может быть пофикшено просто кооперацией с разработчиками компиляторов которые добавят правила «не генерировать такую последовательность кода» и вставят где нужно nop или чуть поменяют инструкции.
Конечно же, баг — это обстоятельство неприодолимой силы.Часто пишут «по обстоятельствам не зависящим от сторон соглашения» или подобное. В этом плане баг вполне подходит.
Согласитесь, что страховые компании стоимость страховки рассчитывают, исходя из суммы ущерба * риск возникновения этого ущерба + своя прибыль сверху? Так вот, на сколько страховка автомобиля от ДТП делает его дороже? На порядок? Или на несколько процентов?Собственно речь о том и идёт, что несколько процентов получаются потому, что основные затраты несёт не страховая компания, а компания производящая автомобиль. Всевозможные проверки, тесты, спецификации. Тесты на знание ПДД, опять-таки. Всё это вместе снижает риск до приемлемых величин — и вот уже после этого страховка за несколько процентов становится реальностью.
Вот за это его разработчик должен отвечать.
апечатал конфигурацию, запретив что-то доустанавливать.
плюс топология, плюс борьба с паразитными емкостями/индуктивностями, плюс уложить всё это добро в допустимый TDP.Так микросхемы и производят не одна команда, кто-то пишет логику а потом какой-нибудь foxconn или прочие делают железку. Можно посмотреть сколько миллиардов стоят интеловские фабы, и сколько еще уходит собственно на разработку. И это железка в которой логики гораздо меньше чем в ОС.
Микросхема работает по спецификации, а программа — по божьей воле?У железок все несколько проще, там строго формальный набор допустимых входов и определенные выходы и все это тестируется проще. А попробуйте хотябы в голове вообразить сценарий полного тестирований всей ОС (любой современной десктопной). И вручную конечно железки мало кто собирает по транзисторам, есть софт генерирующий описание железки из кода.
Ну т.е. если вам строили дачу, и фундамент треснул, вы к прорабу ругаться не пойдёте. Это от сторон соглашения не зависит.У вас плохо с логикой. Если прораба похитят во время работы — вот тогда я вряд ли смогу по соглашению выставить счет за задержку, зависит от соглашения конечно. А если в соглашении прописана гарантия на все что сделано включая фундамент — то отвечают.
Тот список не только меньше, но в нем ещё и критичных багов нет. Процессоры работают, не теряют данные пользователей и не искажают их.Критичность — понятие относительное, кому то зависание критично, а касательно данных — надо делать бекап, ну и случаи когда что-то без спроса удаляет данные — все же достаточно редки (я ниже объясню почему это важно и почему они могут быть даже не редкими и все равно все ок).
Это как-то уменьшает сложность задачи, которую нужно решить для разработки микросхем?Железки зачастую содержат очень топорную логику, в этом плане даже ЦП много проще чем ОС.
И эта ОС мне не наносила материального ущерба ни разу, ей я вполне доверяю.Не понятно к чему это? Вам просто повезло, баги есть в любой ОС одного класса примерно в равной мере. В QNX и подобных их вероятно сильно меньше но и эти по сути ядра — сильно специфичны.
Я вам в пример привёл такой же баг, только сделанный не программистом, а строителем.Если вы заключили договор с программистом и прописали в нем ответственность — то да. Все зависит от того как составлен договор, если вы составили его хорошо и доказали что вашей вины небыло (т.е. не «данные удалились а бекапы мы не делаем», а что-то действительно не зависящее от вас) — то отвечать не будете. В договоре с прорабом обычно гарантии прописаны, да и работа прораба все же несравнимо проще чем работа группы программистов использующих в течение нескольких лет.
А то при таком раскладе получается, что вы прям не проблемы клиентов решаете, а наоборот, несёте им боль, ужас и разрушение.
Для вас не будет открытием, что логика бизнес-приложений в основном так же прямолинейна и проста?Ну бизнес приложение по цене разработки микроконтроллера будет с меньшим числом ошибок, за такие цены кто-то и не прочь будет взять ответственность на себя. Только вот не хотят такие деньги платить, потому что не нужно никому.
Хорошо. Допустим, гарантии не прописаны. Бывает. Не все юристы, не все внимательные. Вы будете что-то требовать от прораба и рассчитывать на компенсацию?Если прораб договор составил хорошо а вы абы-как — так вы вообще фиг за что компенсацию получите, будут соблюдены только самые базовые нормы, а эти нормы базовые потому что они просты для исполнения и дешевы, а без них все рушится и не работает. В софте понятное дело (любому образованному человеку, не факт что вам понятно) что все по другому, да и в принципе оно нормально работает и сейчас и все довольны, поэтому никаких регулировок и не будет.
Bingo! Ваши астрономические суммы и многократный рост стоимости программиста внезапно превратились в 10% в реальной жизни :)Плохо с логикой, очень плохо. 2 класса церковно приходской школы. «Я не готов платить даже тысячу рублей за эту машину» не значит что «Bingo вот я же говорил что машина стоит 1000 рублей!». Очень советую пойти в школу доучиться, или книжку по логике купить.
Разработчики, которые пишут софт под такие специфичные случаи, риски на себя как раз обычно берут. Это другой рынок, и там другие правила.Отлично, а на кой тогда нужные такие же правила на все рынке если его участники вполне довольны тем что есть?
Опять на порядок удорожаем, да? ;)Ну смотрим цены микроконтроллеров. Я думаю там можно и на 2 порядка иногда.
Моя вина, что я не написал тут целиком законопроект со всеми нюансами «как надо сделать, чтобы было справедливо»
большинстве EULA вы увидите волшебное слово «AS IS» и аналогичные формулировки
В большинстве EULA вы увидите волшебное слово «AS IS» и аналогичные формулировки.
веб-программа:
браузер (ассорти, все с багами) — отвечает клиент
исполнитель js (без багов?) — отвечает клиент
железо клиента (без багов?) — отвечает клиент
сетевой канал (без проблем?) — отвечает клиент/провайдер
...
издержки должна оплачивать проигравшая в суде сторона
Деятельность страховых компаний достаточно зарегулирована, и их наценки, резервы, размеры и порядок хранения денежных средств и т.д., всё это рассчитывается по законодательным нормамЭто уже отношнения страховщиков и законодателей, софтверным компаниям не интересно.
Ведь качество ПО будет напрямую коррелировать с размером оборотгных средств, замороженных в страховом фондеЭто почему? Софтверные компании не вкладывают деньги в фонды. Они ищут партнёров со своими фондами. Нет фондов — найдём другого страховщика, благо тут страховая компания — поставщик услуг, а софтверная — капризный клиент. И страховщики будут конкурировать между собой, предлагать хорошие условия, лишь бы получить контракт с той же Microsoft, присосаться к денежному потоку и получить клиентов.
Как только спрос и предложение на ИТ-услуги выровняются
PS для справки — баги в чипах есть, баги в процессорах есть, баги в памяти есть. И нет, партии из-за этого не отзывают — на процессоры ставятся блокировки багованного функционала (Intel, привет тебе с твоей транзакционной памятью!), в чипах на серию вешается информация в даташит (чипы идут по сильно уменьшенной цене)… в редких случаях «совсем не юзабельно» отзывается вся серия, в памяти используются различные алгоритмы переопределения ячеек памяти.Даже существенно более простые микросхемы (типа периферийных контроллеров, микроконтроллеров, драйверов) порой имеют богатые errata sheets, что уж там.
Рынок магическим образом эти деньги ни от куда не возьмет, а не магическим образом — будете платить за лицензию в 10 раз дорожеВсего в 10? Уже хочу! Сейчас Windows Server Datacenter Edition стоит не в 10, а в 600 раз дороже, а в качестве гарантий — всё тот же шиш с маслом, что и у Windows Home Edition!
И никаких проблем для open source: то, что вы получаете бесплатно — приходит без всяких гарантий, под вашу личную ответственность, а если кто open source продаёт (это же, в общем, тоже не запрещено) — будет отвечать так же как и любой нормальный производитель.Т.е. продаю я за 10 рублей софт со своим маленьким патчем и уже ответственный, вот же у вас фантазии. Сейчас софт стоит ровно столько чтобы окупить его разработку. Маржа производителей ПО достаточно низкая на уровне 10-20% в зависимости от компании. Для того чтобы осуществить то что вы говорите надо поднять расходы в разы (а с учетом дефицита кадров может и на порядок и больше) и при этом еще и риски вырастут. Ну абсурд же. Ответственность все прописывают в договоре. Если продолжают так прописывать то или нету спроса на такую высокую надежность и гарантии либо это просто невозможно сделать в разумных бюджетах, не находите?
И только разработчики ПО упорно придерживаются формулы «вы нам $100500 за наше поделие, а в случае чего — мы, может быть, от доброты душевной, их вернём».
ради получения хоть каких-то гарантий платить "$10M за лицензию в базовой комплектации". Почему вдруг?
Забейте на всё, что написано выше. Здесь есть проблема куда глубже.
Detects when your Xcode tests are being run in a CI server, and makes them pass.
del
Скандал вокруг Volkswagen и роль программистов в нём