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