Раніше було як: почав пет-проєкт, не доробив, викинув. Згодом стало так: почав пет-проєкт, доробив, більше не чіпаєш. Тепер я вже на тій сходинці, коли навіть пет-проекти інколи є бажання і потреба підтримувати, іншими словами — треба до них повертатись та згадувати, що там і як.
Чого я точно не хочу робити, так це писати якісь інструкції в документацію, яка стане невалідною вже за день. Особливо волаю з намагань підтримувати актуальність білд-інструкцій на якомусь повністю відірваному від коду Confluence, як в одному з наших минулих проєктів на кількасот програмістів (там таких інструкцій було щонайменше чотири різних — одну написав я 😁). Тож загалом шляхи два: або генерувати документацію з коду, або робити код документацією.
Перше я вже пробував, воно працює, можна використовувати. Але ж я сам в доки дивлюсь тільки якщо вже капець.
А для другого я кілька тижнів тому натрапив на нового постійного мешканця моєї рубрики корисні #тулзи: just. Це такий типу
make, але спрощений. Головне, що це не білд-система, а тупий запускач команд. Я наразі описав там setup-env, яка ставить потрібне через brew та фігачить автоматично налаштування, а також базові build, run, test, package, show-docs тощо. Було:
qbs build -d build config:debug -p app -- --lastСтало:
just run-lastБуло:
qbs build -d build config:release -p autotest-runnerСтало:
just testПланую тепер в усі свої проєкти класти аналогічний
justfile, аби можна було дати раду, що взагалі можна з ним робити.Покращення!™