Наводжу порядок у коді, який працює, але його страшно чіпати.
Що роблю:
виношу повторюваний код у спільні функції та модулі;
розбиваю величезні функції й файли на зрозумілі частини;
прибираю мертвий код і невикористовувані залежності;
приводжу назви та структуру до єдиного стилю;
відділяю бізнес-логіку від роботи з базою й інтерфейсом;
додаю тести на місця, які змінюю, щоб нічого не зламалося;
описую структуру проєкту, щоб новий розробник швидко розібрався.
Роблю поетапно й невеликими порціями, щоб кожен крок можна було перевірити й за потреби відкотити.
Поведінка програми при цьому не змінюється — змінюється лише те, наскільки з нею зручно працювати далі.