1. Для того, чтобы вступить на этот путь, необходимо для начала определиться с желаемым результатом. Не обязательно составлять техническое задание по ГОСТу, достаточно описать все желаемые функциональные характеристики. Да, в деталях. Что программа должна делать, в каких случаях и какой результат выдавать.
Работа по часам хороша, если вы не платите за переработку, а договариваетесь через часы о стоимости всей работы. Иногда бывает сложно оценить, сколько сколько стоит задача, если такую же ты еще не делал. В таком случае прикидываешь примерно по часам и так считаешь оплату.
Это вопрос реалистичности самооценки исполнителя. Могу сказать, что несмотря что мы никогда не торгуемся по цене и редко спорим по срокам (и исполнитель может спокойно заложить себе люфт на непредвиденные сложности) - все равно часто бывают просрочки
Часы и сроки - примерно одно и тоже, если понимать.
Вопрос мотивации соблюдать сроки :)
или коммуникацию (болтовню в чате) с командой
Ну так зависит от типа коммуникации. Если проект немаленький, будет куча причин обсудить что-то с текущими разработчиками, знакомыми с определёнными частями проекта.
В общем-то и с
потраченные на изучение стека или технологии (фактически образование исполнителя)не всё так однозначно.
Потратить час на изучение фреймворка, который уже делает, что нужно, будет явно быстрее и дешевле, чем 10 часов писать свой велосипед. Более того, многий софт становится сложнее и сложнее и требует чтения документации.
Так что, боюсь, вы немного неправильно себе представляете эти вещи. Но в то же время человек, уже знакомый с задачей, действительно может сделать её быстрее и тратить меньше на чтение доков или даже коммуникацию. Вопрос вот будет ли он стоить столько же при этом.
Ну да, как говорится работа намного сложнее, если не знаешь что делаешь. И часов точно больше займет