У меня нет большого опыта работы в индустрии программного обеспечения, самоучки и участия в открытом исходном коде, прежде чем я решил устроиться на работу. Теперь, когда я работаю за деньги, мне также приходится иметь дело с некоторыми неприятными вещами, что, конечно, нормально.
Недавно мне было поручено добавить ведение журнала в большой проект SharePoint, который написан каким-то программистом, который, очевидно, учился программировать на работе. После 2 лет совместной работы клиент перешел в нашу компанию, но ущерб был нанесен, и теперь мне как-то нужно поддерживать этот код.
Не то чтобы код был слишком сложным для чтения. Несмотря на проблемы - у каждого проекта есть один класс с несколькими скопированными методами, огромными if
вложениями, венгерскими системами, неразмещенными соединениями - он все еще читабелен.
Однако я оказался совершенно непродуктивным, несмотря на то, что работал над чем-то таким простым, как добавление журналов. По сути, мне просто нужно пройтись по коду шаг за шагом и добавить несколько вызовов трассировки. Однако идиотизм кода настолько раздражает, что я устаю через 10 минут после запуска . Вначале я использовал для добавления using
конструкций, уменьшения вложенности путем обращения if
к ним, переименования переменных в удобочитаемые имена, но проект большой, и в итоге я сдался. Я знаю, что это не та задача, которую я должен выполнять, но, по крайней мере, уменьшение беспорядка дало мне какое-то психологическое вознаграждение, чтобы я мог продолжать. Теперь трюк перестал работать, и у меня осталось 60% работы.
У меня начались головные боли после работы, и я больше не чувствовал удовлетворения, которое привык получать, что обычно позволяло мне писать код в течение 10 часов подряд и при этом чувствовать себя свежим.
Это не просто одна большая напыщенная речь, потому что у меня действительно есть актуальный вопрос:
Есть ли способ оставаться продуктивным и не бороться с ветряными мельницами?
Есть ли какое - то психологический трюк , чтобы оставаться сосредоточенными на задаче, вместо того чтобы думать : «Как глупо это что ?» Каждый раз , когда я вижу еще один хитрый трюк предыдущего программиста? Проблема с добавлением журналов заключается в том, что я действительно должен понимать, что делает код, и это причиняет мне неприятный мозг.
obj
устрашает, потому что в принципе это нечитаемо.