Атомарность коммитов что предполагает? Оно говорит о том, что программист должен

не просто цель свою знать, но и разбить настолько свою работу, что получится набор небольших изменений. Но вот в этом то вся и загвоздка. Это не просто, это вынуждает очень тщательно продумать, как разбить на эти маленькие части.

Мне это не подходит. Мне куда проще: вижу цель, перед тем как продолжить программирование спрашиваю себя "А эта цель по прежнему важна?" или вдруг появились другие изменения ,которые делают цель не актуальной и ее желательно обдумать и актуализировать.

А уж далее не заморачиваясь о том, как эта цель будет достигнута просто пишу код. Пишу сразу, с первого раза и не парясь ни о чем хорошо, плохо, может через жопу. Я пишу первый код и отлично понимаю , что этот первый раз будет "в стол", другими словами, скорее всего то что я написал сейчас я сотру.

Таким образом я достигаю следующего:
* Не прокрастинирую!!! Когда слишком много ограничений, А "атомарность коммитов" это одно из ограничений. Мозг просто пишет! Пишет код
* Когда пишу код не заморачиваясь спотыкаюсь о проблемы, которые не были видны сразу - выписываю их
* Попутно вижу какие куски кода желательно обложить тестами - выписываю их

И только, когда задача решена. То смотрю, а насколько хорошо код написан? Если его можно зарефакторить и достаточно дешево, то делаю это. Тогда мне повезло и комичу код. Если же получился говнокод, то не парюсь и пишу второй раз и у меня уже получается хорошо, т.к. я знаю какие могут быть проблемы, где нужно пишу модульные тесты.

8 ответов

37 просмотров

"Анархия – мать порядка! " :)

Dmitry- Автор вопроса
Анатолий Змиевский
"Анархия – мать порядка! " :)

Да ;) Все так. Надо дать мозгу "творить", а творит он тогда, когда его не ограничивают, когда он фантазирует. Зачем его сдерживать? Пусть творит! ;) Программистам платят денег не за скорость разработки, а за : 0. За решение, которое просил бизнес, а не "а мне подумалось, что так будет лучше" 1. Решение готовое 2. Качественное решение 3. Решение в отведенные сроки

Dmitry
Да ;) Все так. Надо дать мозгу "творить", а творит...

2 пункт не оплачивается, 3 – подразумевает организацию процесса. Так что, прежде чем резать, сначала отмерь. Выйдет и быстрее, и дешевле.

Dmitry- Автор вопроса
Анатолий Змиевский
2 пункт не оплачивается, 3 – подразумевает организ...

Оплачивается! ;) Если ты написал с багой, то скорее всего именно к тебе еще раз придут. Только тебе уже надо будет вспомнить что ты там делал, а это время

Анатолий Змиевский
2 пункт не оплачивается, 3 – подразумевает организ...

> 2 пункт не оплачивается Это не оплачивается деньгами в моменте, зато развивает навык, что позволяет в будущем находить более оплачиваемую работу. Считайте это инвестицией в себя и свое будущее.

Я именно поэтому и делаю кучу мелких коммитов, и группииую их по теме/модулям/етц, а потом уже логически разделяю если нужно

Dmitry
Оплачивается! ;) Если ты написал с багой, то скоре...

Если делать супер-атомарные коммиты, то в случае багов можно бисектом очень точно находить место регрессии. Некоторые участники чата делают компиляторы или что-то такое, и там дополнительные усилия на коммиты в прошлом с лихвой окупаются легкостью поиска регрессий. А вот в веб-разработке часто баги искать и править проще прям в кодовой базе, поэтому можно и не заморачиваться над коммитами.

Dmitry- Автор вопроса
Serge L.
Если делать супер-атомарные коммиты, то в случае б...

Когда писал слова, что нужно время на поиск баги, то имел ввиду не само место, где сидит этот жук, а другое время. Время на загрузку контекста в голову. Исправляя код, мы ведь не беремся мгновенно фигачить. Мы вспоминаем как работает код, думаем как он работает. Думаем как он должен работать. Сопоставлем с задачей. Ищем расхождения. Все это занимает время. Поиск места в истории кода, когда возникла бага это не всегда самое сложное. Куда сложнее именно загрузить сам контекст работы кода в месте где обнаружена ошибка. Но, соглашусь, что есть польза в более мелких комитах

Похожие вопросы

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Карта сайта