Сколько бы литературы ты не прочитал, сколько бы лет реального опыта в IT ты не имел, большинство сторонних программистов, взглянув на твой код, скажут, что это чушь и неправильно, что оформление страдает на обе ноги, да и вообще тебе стоит попробовать себя в другой области.
Да, сегодня мы поднимем злободневную тему тёмной стороны программистов, поговорим об их вредных привычках, завышенном эго и простой вредности. Вот случаи из моего личного опыта.
Дело пары секунд
Я ненавижу это. Это одинаково раздражает, когда кто-то указывает тебе на возможность решить данную задачу невероятно быстро, или ты сам, в ожесточенном споре с начальником, выдаешь эту самодовольную фразу. Нет, иногда код и впрямь можно доработать нужным образом написанием пары строк. Но часто, особенно в крупных проектах, ты можешь тратить часы, исправляя и проверяя все связи, дабы твое «двухсекундное дело» работало как надо.
Решение: заткнись. Бравада это или желание принизить коллегу — держи рот на замке, говори по сути, не давая начальству прицепиться к словам о невероятно скором решении проблемы. Даже если это и впрямь дело пары секунд — лучше принести неожиданно быстро хорошие новости, чем в панике городить заплатки.
К черту разговоры
Все собрались на совещание по поводу запуска нового проекта, руководитель пытается в мелочах прояснить все требования заказчика, набросать план и структуру работ. Но тут ты или какой-то другой умник, устав от долгих разговоров, заявляет, что все всё поняли, и прежде, чем детально все расписывать, надо что-то создать для начала. Идею поддерживает большинство, а у начальника не хватает мужества заткнуть рты бунтарям.
В итоге это приводит к созданию очень общего кода, часто с дублированием задач, часто полностью непригодного или далекого от требований заказчика. Лишние 30-40 минут на общем совещании замещаются часами разговоров один-на-один, переработками и бесконечными спорами.
Решение: хватит спать на совещаниях. Твоя профессия называется программист, а не протоколист. Есть предложения или вопросы — высказывай, нет — внимательно слушай и обдумывай свои дальнейшие шаги в данном проекте.
Кому важно твое мнение?
Подхожу на днях к коллеге, прошу существенно укоротить код, так как его функциональность сильно превышает требования ТЗ, да и ресурсов потребляет неприлично много. В ответ — сотня комментариев от коллеги о том, почему код хорош в абсолюте, что он предусматривает все последующие пожелания заказчика, да и вообще всем вокруг лучше уткнуться и поучиться у него работать. Потом 2 часа по-девчачьи надутых щек, кофе, перекуров. Лишь под конец дня коллега нашёл 5 минут чтобы сделать то, что от него изначально требовалось.
Решение: просто помни, что тебе уже не 15 лет, и бунтарский характер, да еще и в стенах офиса, никому не интересен. Включай голову, пойми, что вокруг коллеги, а не препятствия на пути к величию. И делай без долгих прелюдий то, что должен, а уже потом высказывай претензии и учи жизни.
С таким кодом ничего не будет работать
Это вообще характеристика большинства программистов, связанная с тем объемом разношерстных знаний, что им приходится хранить в голове. На какой бы чужой код в неправильно работающем проекте они не взглянули — везде чушь, бред и профанация. Нет, иногда и впрямь чужой код может быть очень кривым и это бросается в глаза. Но будем откровенны — претензии не по делу приходится слышать куда чаще.
Решение: всё приходит с опытом. Если почаще обращаться к не литературным примерам кода, помогать новичкам на форумах и в офисе, то, возможно, гнев будет перенаправлен лишь в нужное русло.
А зачем мне это?
Это может быть чрезмерное эго или простая невнимательность со стороны работодателя, но в условиях напряженной работы, то есть почти всегда, некоторые программисты скатываются в рассуждения о мотивации. Зачем что-то делать лучше, если все и так работает? Зачем мне спешить, перерабатывать, если в конце концов сроки всё равно будут сорваны?
Это уместная логика, если таким образом вы выбиваете премию или повышение оклада. И абсолютно лишняя, если подобное ведение дел — обычное дело.
Решение: если ты — любитель поныть и пожаловаться на горькую судьбу программиста, то на лавочке у твоего подъезда бабушки наверняка готовы всё выслушать. Но если ты хочешь чего-то добиться в своей карьере, мотивацией должны быть не деньги, не уважение начальника и коллег, а желание делать свою работу хорошо.
Глупый-глупый программист
Самый классический случай: «Ничего не знаю, ничего слышать не хочу, но буду спорить до потери пульса». И ладно, если это просто характер такой, но когда это просто желание избежать ответственности или скрыть свою некомпетентность — это всех раздражает.
Решение: стань гуру программирования, и спорить с тобой станет категорически неинтересно.
Справлялись и без этого
Вы встречали когда-нибудь консерваторов-программистов? Эти люди, которые изучили один язык, один фреймворк, одну библиотеку, а потом плевать хотели на разговоры о том, что можно кодить проще и лучше? Они живут в полной уверенности, что после Borland Delphi 5 в мире не появилось ничего, заслуживающего их внимания, что всё новое — это просто никому не нужная цветная обложка. И если это твой коллега или исполнитель твоего заказа, то придётся потратить немало нервных клеток на общение.
Решение: это тупик. Какое может быть решение у современного айтишника, считающего, что вся зеленая трава осталась далеко в прошлом, а сейчас эпоха конфетти? Без вариантов.
У меня тут завалялся кусочек кода
Еще один вид архаизма. Нет, готовый и работающий код всегда лучше ещё не написанного, но иногда, особенно часто в случае с новичками, приходится читать код, состоящий из кусков, понатасканных из интернета, университетских дипломных работ, своих и чужих прежних проектов. Работоспособность таких решений, собранных без доработки, естественно, оставляет желать лучшего.
Решение: хорошо использовать готовые шаблонные решения, когда после них не требуется долгая кропотливая работа по вшиванию в текущий проект. Во всех остальных случаях — работаем самостоятельно и не ленимся.
Документацией пусть вон та девушка занимается
Некоторые программисты, даже те, что едва устроились на работу, считают себя кем-то вроде касты избранных. Мол, оставьте мне творческую и интересную часть, а всю сопутствующую шелуху пусть выполняют не такие одаренные люди, с гуманитарным складом ума, не способные на сложные творческие деяния. Кто страдает от такого высокомерия? В конечном итоге — все.
Решение: поменьше пафоса и побольше дела. Документация для программиста и от программиста — продукт, который часто не менее важен, чем сам код. А кто хочет, чтобы его работа была погребена под неудачным описанием?
Посмотрите похожие материалы:
7 классических проблем программиста
5 тем, в которых должен разбираться каждый программист
7 языков, которые отказываются умирать
10 главных страхов программистов
Если вам понравилась статья, ставьте лайк и подписывайтесь на канал. Будет много интересного!
Если вы хотите почитать статьи и материалы в нашем блоге, переходите на наш сайт.