Будет ли оплачиваться программисту починка багов, найденных в программе?
Могу сказать, что существующий бизнес производства ПО не слишком заинтересован в максимальной надежности продукта. И тому есть обоснование - задержишь релиз продукта - тебя обгонят конкуренты. Баги часто чинятся по ходу дела, в специальных пэтч-релизах. Выпуск версии с заранее известными багами - обычное дело.
В идеале надо провести маркетинговое исследование, составить общий дизайн программы, расписать схему классов и их взаимодействие, согласовать user interface, и т.д. и т.п. На деле этот процесс получается итерационным. Программа может быть почти готова, когда обнаружится недостаток дизайна, и придется половину переделывать. И самое обидное - на финальном этапе все может зарубить маркетинг, который скажет "не, это все нафик не надо никому". Или обнаружится несметное количество багов, зачастую из-за неправильного дизайна, потому что поспешили перейти к практической части.
В общем, запуская в очередной раз какой-нибудь любимый Ворд, почуствуйте себя в гаитянском доме перед землетрясением
Потребитель ведь платит программисту, предполагая, что программа не содержит багов, значит, потребитель больше ни чего не должен платить. Более того, программист обязан исправить выявленные багги.
Другое дело, если программа вышла сырая по вине руководства компании, где работает программист. Тогда это руководство должно оплатить работу программиста по исправлению ошибок.
С третьей стороны, если программист заверит руководство, что работа выполнена полностью и все исправлено, а окажется, что это не так, то программист должен будет исправить программу за свой счет.
Здесь более интересен другой вопрос. Что считать результатом работы программиста, саму программу или то, что потребитель пользуется ею.
Поясню. Вот ты написал нужную и востребованную программу, т.е выполнил работу. Я купил у тебя эту программ, т.е. оплатит тебе твою работу.
С другой стороны, я пользуюсь твоей программой, это РЕЗУЛЬТАТ твоей работы. Чем дольше я пользуюсь твоей программой, тем соответственно больше РЕЗУЛЬТАТ твоей работы. Соответственно возникает альтернативный (или дополнительный) способ оплаты – за РЕЗУЛЬТАТ, т.е. я плачу тебе по чуть-чуть за каждый месяц (год), работы с твоей программой.
Правда техническая реализация такого способа упирается в сознание граждан.
С другой стороны один достаточно умный товарищ предложил сделать все программы бесплатными (по крайней мере российские), а работу программистов должно оплачивать государство. Чем больше людей пользуется твоей программой, тем больше денег от государства ты получишь.
Вроде не плохо, если государство не окажется жлобом.