Здравствуйте, вопрос может показаться не совсем корректным, но все же помогите понять за, что программист получает деньги? Т.е. я понимаю, что за разработку какого-то конечного продукта.
Но вот что я не могу понять, если человек берет по часовую оплату, но из половины и даже больше этих часов он разбирается сам, как это можно сделать, получается, что он не совсем хороший программист? Или это в принципе нормальное явление? И как тогда поступать считать меньшее количество часов ?
Также еще интересует, что значит поддержка кода, за которую разработчики берут неплохую сумму, если код написан хорошо зачем его поддерживать ? Я понимаю когда заказчик вдруг придумал: "А вот хочу чтобы еще и вот это умело!", - тогда понятно, но если ничего не делаешь с кодом за, что брать деньги разве это честно?
Или поддержка сайта например как брать деньги если сайт работает и человек ничего с ним не делает, но при это получает определенную сумму за то, что он работает и периодически решает какие-то задачи?
За работу. Если грузчику платят за то, что он загружает фуры, почасовая оплата, то зачем ему платить когда он таскает мешки и возвращается за мешком на легке, ведь он не работает?
Код нельзя написать хорошо никогда. Можно стремится только к этому. Пока он разбирается это процесс разработки продукта. Почитайте книгу о циклах разработки ПО и все поймете