18 сентября 2021

🐛 19 фрагментов кода, за который стыдно

Frontend-разработчик в Foquz. https://www.cat-in-web.ru/
Кто никогда не писал мусорный код, пусть первым бросит в нас камень. В небольшом обзоре собраны самые нелепые и смешные примеры работы программистов. Может быть, один из них ваш?
🐛 19 фрагментов кода, за который стыдно

Статья публикуется в переводе, автор оригинального текста – Bernard Bado.

В какой-то момент это происходит с каждым – вы пишете код, которым не можете гордиться. Вы смотрите на него и думаете: «Да как я мог написать такое?»

И становится стыдно.

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

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

Давайте немного повеселимся!

При изобретении колеса что-то пошло не так…

Обычное логическое сравнение не дает вам то, что вы ищете? Просто напишите собственное, с блэкджеком и false!

<a href="https://www.reddit.com/r/programminghorror/comments/bvyj3j/im_also_coming_with_you/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Магические числа

Даже страшно представить, что может произойти, если изменить одно из этих чисел…

<a href="https://www.reddit.com/r/programminghorror/comments/k6as80/found_this_in_production_today/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Ну, хотя бы на строки разбит…

Похоже, это какой-то школьный проект. Очень жаль учителя, которому придется в этом разбираться…

<a href="https://www.reddit.com/r/programminghorror/comments/o53rxo/why_make_good_code_when_you_can_make_a/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Дьявольская функция isEven

Сегодня мы увидим несколько различных реализаций функции isEven. Это первый кандидат. Ну что ж, неплохо начали, что думаете?

<a href="https://www.reddit.com/r/programminghorror/comments/faoxye/how_to_find_if_a_number_is_even_without_the_mod/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Жаль, что нет функции, чтобы узнать длину строки…

Значит, нужно написать ее самостоятельно! Будущие поколения программистов будут вам благодарны!

<a href="https://www.reddit.com/r/programminghorror/comments/dx65ys/found_on_facebook/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Разбуди внутреннего ребенка

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

<a href="https://www.reddit.com/r/programminghorror/comments/m37z6b/stuff_of_nightmare/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Да кто вообще читает сообщения коммитов?

Не хватает фантазии, чтобы придумать оригинальное сообщение коммита? Да никто их не читает, не тратьте силы на эту ерунду!

<a href="https://www.reddit.com/r/programminghorror/comments/oydis4/was_wondering_why_this_engineer_was_always/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

На всякий пожарный случай…

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

<a href="https://www.reddit.com/r/programminghorror/comments/ffuhsc/just_in_case_it_changes_in_the_future/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Причина купить Ultrawide монитор

Нет ничего плохого в длинных именах переменных. До тех пор, пока они делают код понятнее.

Но иногда нужно остановиться и спросить себя: «Слишком длинно – это сколько?»

<a href="https://www.reddit.com/r/programminghorror/comments/n0m0wc/i_just_found_this_in_the_server_code_of_our/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Гениально!

К этому фрагменту кода нечего добавить, комментарий говорит сам за себя.

Число выбрано случайным образом после голосования команды разработки. <a href="https://www.reddit.com/r/programminghorror/comments/ms5hjq/genius_move/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Число выбрано случайным образом после голосования команды разработки. Источник

Все самое лучшее из Typescript

Хотите ощущать себя в типобезопасности, но надоели назойливые ошибки типов? Ни слова больше!

<a href="https://www.reddit.com/r/programminghorror/comments/manjep/half_of_our_outsourced_codebase_be_like_never/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Функция, которая никогда не ошибается

Даже сломанные часы два раза в день показывают правильное время. Просто убедитесь, что сумма параметров, которые вы передаете этой функции, равна 7, и все будет ОК.

<a href="https://www.reddit.com/r/programminghorror/comments/nhxb1d/if_it_works_it_works/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Я не уверен, что это булево значение

Слишком много пессимизма – это сколько? Примерно столько:

<a href="https://www.reddit.com/r/programminghorror/comments/jdynpg/just_make_sure_its_really_bool/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Test Driven Development во всей красе

Еще одна любопытная isEven функция. Будем надеяться, что тест не генерирует случайные числа…

<a href="https://www.reddit.com/r/programminghorror/comments/i1b3cf/is_this_testdriven_development/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Осмелишься развернуть?

Все мы, конечно, когда-нибудь писали сложные конструкции switch. Но тысяча строк… С другой стороны, нужно ведь охватить все возможные состояния мыши!

<a href="https://www.reddit.com/r/programminghorror/comments/f6axrs/i_am_scared_to_expand_this_switch_statement/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Безальтернативный switch

Как вы думаете, планируется ли расширить этот switch в будущем? Давайте верить, что так и задумано.

<a href="https://www.reddit.com/r/programminghorror/comments/ldcu7o/when_our_designer_try_coding/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Математика сложна…

Кажется, мы нашли победителя!

Честное слово, нет ничего постыдного в том, чтобы воспользоваться чужой помощью. Пакет is-even существует уже много лет. Знаете сколько раз в неделю его скачивают? Больше 150 000!

Почему люди пишут про <code class="inline-code">%</code>? Я же пытаюсь определить четность, а не проценты. <a href="https://www.reddit.com/r/ProgrammerHumor/comments/mddf8o/even_numbers_are_so_hard/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Почему люди пишут про %? Я же пытаюсь определить четность, а не проценты. Источник

Дух бунтарства

Иногда дух бунтарства просыпается в тебе и заставляет делать все по-другому. Главное, чтобы это не выходило за границы код ревью.

<a href="https://www.reddit.com/r/programminghorror/comments/l9ztqj/someone_had_this_brilliant_idea_if_only_there_was/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник

Когда ты разработчик, но твоя истинная страсть – каллиграфия

Вы когда-нибудь заходили так далеко в экспериментах со шрифтами?

Возможно, именно так пишется пиратское ПО…

<a href="https://www.reddit.com/r/programminghorror/comments/ndl7em/someone_in_my_local_facebook_group_posted_this/" target="_blank" rel="noopener noreferrer nofollow">Источник</a>
Источник
***

Надеемся, что вы хорошо провели время с этими фрагментами кода. Напишите в комментариях, какой вам понравился больше всего. А если у вас есть собственные постыдные примеры, не стесняйтесь делиться ими!

Источники

МЕРОПРИЯТИЯ

Комментарии

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ