Недавно я посетил лекцию, которую прочитал Грег Уилсон (главный научный сотрудник Software Carpentry). Из аннотации:
Идея о том, что утверждения о методах разработки программного обеспечения должны основываться на фактических данных, все еще чужды разработчикам программного обеспечения, но в конечном итоге она начинает меняться: любой ученый, который утверждает, что конкретный инструмент или практика делает разработку программного обеспечения более быстрой, дешевой или более надежной, теперь Ожидается, что это утверждение будет подтверждено эмпирическим исследованием.
В целом, лекция была очень информативной и заставила меня глубоко задуматься о моем подходе к развитию. В частности, сейчас я нахожу себя в поиске цитат, подтверждающих множество утверждений. Раньше у меня появилась привычка просто повторять предложенные истины, возможно, с мысленной запиской, чтобы проверить это позже.
Говоря прямо, я был доверчив .
Вот пример, взятый из лекции:
«Если более 25% кода нуждается в рефакторинге, его быстрее переписать».
Звучит правдоподобно, но правда ли это? Где исследование подтверждает это? Это правда для всех языков? И так далее.
Хорошо, вполне возможно довести это до крайности и никому не верить, если вы сами не поняли это из первых принципов. В этом и заключается безумие (или, может быть, математика ;-)). Но если кто-то придет к вам с заявлением в духе «Привет, сделав это на [момент выбора языка], мы сможем повысить производительность на [выбор кратных 10]%», если вы склонны просто принять это, или вы собираетесь запросить доказанные доказательства?
Если это последнее (и я надеюсь, что это так), то
- Куда бы вы пошли, чтобы найти это доказательство?
- насколько строгой вы были бы?
Короче говоря, если кто-то предложит вам непроверенное утверждение, вы ответите «нужна цитата»?