"вылизывание грязи" -- начало и оглавление Надо же, такой простой и фундаментальный пример ускользнул от внимания.
Перевод с иностранного языка. Тут чётко выделяются два этапа.
1) Читаешь иноязычный исходник и генерируешь перевод. На этом этапе генерация перевода происходит нейроцепями, среди которых мощно присутствуют и те, которые соответствуют иноязычным грамматическим и семантическим структурам. Их влияние порождает "грязь".
2) Читаешь перевод (обращаясь к исходнику только для разруливания двусмысленностей) и устраняешь корявости выражения.
Если переводчик (i) грамотный и (ii) имеет целью качество перевода (а не зашибание бабла), то он не будет особо пытаться достичь гладкого перевода сразу на первом этапе, делая, скорее, точный подстрочник. Когда исходник будет закрыт, то все корявости будут бросаться в глаза. Причём нужно сделать достаточную паузу перед вторым этапом, чтобы детали исходника забылись.
Это вовсе не открытие -- Наблюдатель когда-то отдал должное брошюрке от авторитетной тётеньки с филфака МГУ, которая на тяжеловесном, хотя и правильном английском языке объясняла именно этот приём с промежуточным псевдо-языком.
Лидер продаж, при создании которого качество перевода ставилось во главу угла, был сделан по описанной двух-этапной методе с приличным перерывом между этапами (типа, пара месяцев). Для подёнщиков от технического перевода такой перерыв в работе -- нонсенс.
В сфере IT дело усугубляется тем, что переводами башляют кто попало.
***
Пример с переводом на самом деле не только наглядный, но и фундаментальный.
Действительно, любая по-настоящему новая конструкция (научная теория, нетривиальный алгоритм и т.п.) громоздится на фоне ещё не преодолённых предрассудков, которые и мешали её появлению. Соответственно, нужна переделка конструкции с целью её "выпрямления".
Эту структурную грязь нужно отличать от грязи чисто "отладочного" характера -- в случае перевода это опечатки.
***
Должно быть понятней правило третьей версии в софтостроении:
первая версия даёт возможность увидеть все детали реализации новой идеи,
вторая устраняет структурную "грязь",
в третьей делается finish -- окончательная полировка.
***
Начинающие удивляются, открывая для себя тот факт, что конструктивная деятельность любой природы (производство научных теорий, эффективных программ, текстов, стихов, фильмов, картин, симфоний ...) происходит по одним и тем же общим схемам, доступным пониманию и практической тренировке (не гарантирующей, впрочем, достижение уровня Ньютона и Баха или хотя бы
Хаусдорфа). Причём речь здесь идёт о незамысловатых вещах (в отличие, скажем, от ТРИЗа).
Из незамысловатых вещей есть, конечно, ещё и правило десяти тысяч часов, но оно о другом.