Chamfort:
... это одна из переплачиваемых профессий и причина в отсутствии объективных критериев оценки качества услуги
Погодите, если нет критериев, то с чего бы именно переплачиваемая. С таким же успехом можно утвреждать что она недоплачиваемая.
Вообще, программистов упрекают в "переоплаченности" по одной простой причине - весь смысл работы программистов сводится к тому, чтобы создать у конечных пользователей системы иллюзию простоты пользования системой. (почти цитата Гради Буча, http://en.wikipedia.org/wiki/Grady_Booch).
То есть, программисты берут на себя всю сложность, скрывают ее за красивым интерфейсом со смайликами и кнопочками и поэтому у неискушенных появляется желание высказываться в наш адрес пренебрежительно.
Еще раз - программы призваны упрощать Вам жизнь, и если ими просто пользоваться - это хорошо, но вовсе не значит, что создавать их легко.
Работа программиста - как анекдот: удар молотком стоит 5 центов, но знание, куда бить - 25 долларов. Мы с Вами в детстве нверняка рисовали красивые машинки цветными карандашами, однако миллионы долларов на этом во взрослой жизни зарабатывают только парни из Pininfarina, хотя, казалось бы, чего уж проще - нарисовать машину которая будет нравится людям.
На самом деле объективные критерии есть. Так как это услуга, критерий ее качества - удовлетворение заказчика. Суть услуги - сделать клиента довольным. Если более формально - услуга должно соответствовать оговоренным требованиям(время, объем работ, стоимость и тд). Услуги как правило связаны с уникальностью условий их предоставления: разнится назначение создаваемых систем, есть разные условия работы прграммных систем, разные требования к их надеждности, безопастности.
Программирование - это услуга, и поэтому в большинстве программных проектов оговариваются условия их допуска в эксплуатацию. Так как масштабы оказания услуг существенно отлчаются, то существенно отличаются методики описания требований. Для больших проектов это многосотстраничные описания, графики, рисунки, диаграммы, модели построенные с использованием специальных языков. И вы не правы, если утверждаете, что нет критериев качества. Например, только несколько критериев для интернет сайтов: время загрузки страницы, число одновременно работающих пользователей поддерживаемых сайтом установленном на аппартном обеспечении оговоренных харрактеристик (например на 2Ghz, 2Gb DDR RAM с OS Linux Centos 2.6.) и тд.
Да, эти критерии качества не всегда обсуждаются,но это уже вопрос к масштабу и бюджету проекта и уровню оказываемого сервиса. Кстати, если у Вас есть необходимость в оценке какого-то программного проекта, всегда буду рад помочь, если буду компетентен в соответствующей области. Если нет - помочь в подборе команды специалистов для оценки проекта. Правда это тоже услуга и стоит денег.
Что касается хирургов. Да, студенты медики учатся 6 лет. Но опыт проведения операций (например абдомиальной области) они получают на практике в течении первого года(или 2ух) после получения диплома. Я больше чем уверен что мы с Вами могли бы обучится вырезать аппендицит где-то за пару месяцев ежедневной практики.
Что касается большей ответственности хирургов. Самолеты управляются в полете программами, аппарат искуствнного дыхания тоже управляется программой, атомные станции автоматизированы, платежи между банками автоматизированы, прием оплаты услуг (безопастные, защищенные транзакции) - тоже программа. Dell.com продает товаров на миллионы долларов в день, а google.com ищет практически все и везде.
Еще один момент с прграммистами - очень быстрое устаревание технологий и как следствие - непрерывное обучение. Я думаю, человеческая печень очень мало изменилась за последние 200 лет. И техника вырезания аппендицита лет 30 не менялась, я думаю, по крайней мере на нашей Родине (могу ошибаться). А программы и технологии меняются практически пять лять ну едва ли не на 100%. То есть, к моменту, когда программист доучивается у университете, он конечно знает струтуры данных и алгоритмы, все это прекрастно, но работающей системы с таким багажом знаний не сделать. К тому же, программисты автоматизирую прикладные области (транспорт, финансы, здравоохранение и тд) и потому им требуются хорошие знания в прикладной области, и, как следствие - опять обучение, ведь автоматизировать можно лишь то, что понимаешь, как работает.
В общем, программисты свои крохи честным трудом от зари до зари Как и хирурги, как, уверен, и люди вашей профессии.