Шедевр кода

User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Шедевр кода

Post by Dmitry67 »

Прислали
Код реальный
Вытер название фирмы и решил запостить - ну могу удержаться
hell.jpg
You do not have the required permissions to view the files attached to this post.
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
User avatar
Prosche
Уже с Приветом
Posts: 8090
Joined: 08 Nov 2004 12:24
Location: GA

Re: Шедевр кода

Post by Prosche »

Нужно еще добавить GetCityCodeByCityNameLower. А вообще Оскара за самый тупой код года я бы не дал, встречал косяки покруче.
OtherSide
Уже с Приветом
Posts: 15772
Joined: 01 Mar 2008 15:14

Re: Шедевр кода

Post by OtherSide »

Может бюджетная контора, набрали разрабов за 50 тыр в месяц
User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Re: Шедевр кода

Post by Dmitry67 »

OtherSide wrote: 28 Dec 2017 14:11 Может бюджетная контора, набрали разрабов за 50 тыр в месяц
Не, за 50 тыс назвали бы функцию PoluchitKodGorodaPoImeni
Это вполне преуспевающая контора
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
nightmare2
Уже с Приветом
Posts: 7187
Joined: 31 Jan 2005 15:06
Location: GA

Re: Шедевр кода

Post by nightmare2 »

Dmitry67 wrote: 28 Dec 2017 10:40 Прислали
Код реальный
...
Фигня.
Я как-то дал задачу написать функцию, которая должна возвращать количество нерабочих дней в месяце (субботы и воскресения + праздники).
Чувак написал switch на 12 месяцев.
Ок, надо же как-то подтокнуть человека в нужном направлении и не обидеть.
Дык, говорю, надо не только на этот год но и на будущее, типа.
Через час емайл: а на скока лет вперед надо?
20 лет хватит?

И знаете шо, я все так и оставил. :D
Ибо работает быстро, и вряд ли эта програмулька проживет 20 лет.
А если и проживет, то сколько радости доставит будущим кодировщикам. :crazy:
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
OtherSide
Уже с Приветом
Posts: 15772
Joined: 01 Mar 2008 15:14

Re: Шедевр кода

Post by OtherSide »

у меня была задача написать функцию, которая генерирует шкалу для единиц разной разрядности, с оптимальным расстоянием по шкале. Например если экран 100 пикселов, а шкала от 34 до 89 и расстояние должно быть от примерно 20 пикслов между рисками шаг будет 10, а если растянуть окошко до 200 шаг будет 5.
Думал напишу за 20 минут, потратил все выходные, написал какого то рекурсивного кракозябра, который сам не понимал как работает и этот код был в системе лет 8! Интуитивно понимал что там 2 строчки кода, но только вчера что-то стукнуло и их написал.
User avatar
Ion Tichy
Уже с Приветом
Posts: 13339
Joined: 07 Dec 2004 04:00
Location: Москва->CO

Re: Шедевр кода

Post by Ion Tichy »

Dmitry67 wrote: 28 Dec 2017 10:40 Прислали
Код реальный
Вытер название фирмы и решил запостить - ну могу удержаться

hell.jpg
"Helix..." - это не www.helix-int.com?
Как же это вы без гравицаппы пепелац выкатываете из гаража? Это непорядок...
User avatar
Dmitry67
Уже с Приветом
Posts: 28294
Joined: 29 Aug 2000 09:01
Location: SPB --> Gloucester, MA, US --> SPB --> Paris

Re: Шедевр кода

Post by Dmitry67 »

Эээ... Это российский helix)
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
User avatar
sfbaguy1
Уже с Приветом
Posts: 1445
Joined: 14 Nov 2004 12:51

Re: Шедевр кода

Post by sfbaguy1 »

Концентрация идиотов в индустрии ассимптотически стремится к их концентрации в общем населении. В эпоху зеленых телевизоров
количество приличных людей среди пишущих код было значительно больше. Сейчас же столько пены. Вон ммодел - двух слов связать не
может, а все туда же - код писать.
жизнь она и проще и сложней
oshibka_residenta
Уже с Приветом
Posts: 4435
Joined: 13 Feb 2002 10:01
Location: Bay Area

Re: Шедевр кода

Post by oshibka_residenta »

Я видел хуже код который HP (Hewlett Packard) давали вендорам. Они не знали как преобразовать byte to string и сделали case на 256 вариантов. Хорошо что им не надо было работать с long
Ещё помню как мудрые русские программисты, когда им надо было сделать цикл от 0 до 65535 на 16 битной платформе, не нашли ничего лучшего чем сделать int counter, increment, и ждать пока он не обнулится. Однако при переходе на 32 битную платформу код стал работать не так как ожидалось авторами.
OtherSide
Уже с Приветом
Posts: 15772
Joined: 01 Mar 2008 15:14

Re: Шедевр кода

Post by OtherSide »

sfbaguy1 wrote: 28 Dec 2017 21:55 Концентрация идиотов в индустрии ассимптотически стремится к их концентрации в общем населении. В эпоху зеленых телевизоров
количество приличных людей среди пишущих код было значительно больше. Сейчас же столько пены. Вон ммодел - двух слов связать не
может, а все туда же - код писать.
о чем вы говорите, наоброт требования повышаются, в 80х это был фан и романтика, никакой культуры кодирования не было вообще.
Кстати в данном примере ошибка не только в том, что не использовался ToUpperCase(), там вместо кейсов можно было проинициализировать Dictionary readonly, он еще и быстрее работал бы.
User avatar
sfbaguy1
Уже с Приветом
Posts: 1445
Joined: 14 Nov 2004 12:51

Re: Шедевр кода

Post by sfbaguy1 »

OtherSide wrote: 29 Dec 2017 10:05
sfbaguy1 wrote: 28 Dec 2017 21:55 Концентрация идиотов в индустрии ассимптотически стремится к их концентрации в общем населении. В эпоху зеленых телевизоров
количество приличных людей среди пишущих код было значительно больше. Сейчас же столько пены. Вон ммодел - двух слов связать не
может, а все туда же - код писать.
о чем вы говорите, наоброт требования повышаются, в 80х это был фан и романтика, никакой культуры кодирования не было вообще.
Кстати в данном примере ошибка не только в том, что не использовался ToUpperCase(), там вместо кейсов можно было проинициализировать Dictionary readonly, он еще и быстрее работал бы.

Ну да, не было культуры кодирования. До 80х был создан весь фундамент - Кнут, Вирт, структурное программирование, Ахо-Хопкрофт-Ульман, Unix.
Да и софт, который тогда создавался, был серьезней, чем сейчас. Индусская копипаста не прокатила бы. Веба не было как класса.
Программисты были суровые бородатые белые мужики. Эдакие джедаи, не то что щас - всякое чмо и быдло.
жизнь она и проще и сложней
User avatar
Prosche
Уже с Приветом
Posts: 8090
Joined: 08 Nov 2004 12:24
Location: GA

Re: Шедевр кода

Post by Prosche »

OtherSide wrote: 29 Dec 2017 10:05 там вместо кейсов можно было проинициализировать Dictionary readonly, он еще и быстрее работал бы.
капитан очевидность? Собственно про это и тред.
Сабина
Уже с Приветом
Posts: 19041
Joined: 11 Jan 2012 09:25
Location: CA

Re: Шедевр кода

Post by Сабина »

Хехе Это вы еще однотредовый индусский питонокод шурующий "бигдату" не видели :)))))))
https://www.youtube.com/watch?v=wOwblaKmyVw
Palych
Уже с Приветом
Posts: 13694
Joined: 16 Jan 2001 10:01

Re: Шедевр кода

Post by Palych »

sfbaguy1 wrote: 30 Dec 2017 04:47 Ну да, не было культуры кодирования. До 80х был создан весь фундамент - Кнут, Вирт, структурное программирование, Ахо-Хопкрофт-Ульман, Unix.
Да и софт, который тогда создавался, был серьезней, чем сейчас. Индусская копипаста не прокатила бы. Веба не было как класса.
Программисты были суровые бородатые белые мужики. Эдакие джедаи, не то что щас - всякое чмо и быдло.
Одно дело - фундамент, а другое - софт для людей.
Это все равно что сравнивать тракториста и гонщика.
Нам однажды пришлось обучаться работе с программами на зеленых экранах (unix, MF)
Либо абсолютно примитивное меню на 5 пунктов, и куча инструкций "туда не ходи - сюда ходи",
либо абсолютно безумная система ввода цифер в 100 полей, причем цифры надо запоминать в стиле "если нужно открыть купить красные тапочки - вводить 43, если белые - 135..."
Palych
Уже с Приветом
Posts: 13694
Joined: 16 Jan 2001 10:01

Re: Шедевр кода

Post by Palych »

Кстати, поскольку я давно сижу на одном приложении - не раз находил куски вопиющего говнокода, лез в репозиторию чтобы поставить на вид автору... и обнаруживал что это я сам и написал :oops:
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

Re: Шедевр кода

Post by Komissar »

Palych wrote: 30 Dec 2017 07:07 Кстати, поскольку я давно сижу на одном приложении - не раз находил куски вопиющего говнокода, лез в репозиторию чтобы поставить на вид автору... и обнаруживал что это я сам и написал :oops:
не то чтобы я был перфектный кодер, но за то, что Дима67 опубликовал, я бы публично отрывал гениталии (простите, мадемуазель).
oshibka_residenta
Уже с Приветом
Posts: 4435
Joined: 13 Feb 2002 10:01
Location: Bay Area

Re: Шедевр кода

Post by oshibka_residenta »

Сабина wrote: 30 Dec 2017 05:17 Хехе Это вы еще однотредовый индусский питонокод шурующий "бигдату" не видели :)))))))
Редкий случай когда встану на защиту индусов. Был случай ( в Штатах) когда русскоязычные программисты написали ровно такой код как в примере у ТС, и он почему-то медленно работал. Чтобы ускорить они собирались переписать все с С на ассемблер. Еле успел схватить за яйца руку. Про hashmap они не слышали.
OtherSide
Уже с Приветом
Posts: 15772
Joined: 01 Mar 2008 15:14

Re: Шедевр кода

Post by OtherSide »

Prosche wrote: 30 Dec 2017 05:08
OtherSide wrote: 29 Dec 2017 10:05 там вместо кейсов можно было проинициализировать Dictionary readonly, он еще и быстрее работал бы.
капитан очевидность? Собственно про это и тред.
Судя по красным подчеркиваниям тред про UpperCase :)
OtherSide
Уже с Приветом
Posts: 15772
Joined: 01 Mar 2008 15:14

Re: Шедевр кода

Post by OtherSide »

Komissar wrote: 30 Dec 2017 07:13
Palych wrote: 30 Dec 2017 07:07 Кстати, поскольку я давно сижу на одном приложении - не раз находил куски вопиющего говнокода, лез в репозиторию чтобы поставить на вид автору... и обнаруживал что это я сам и написал :oops:
не то чтобы я был перфектный кодер, но за то, что Дима67 опубликовал, я бы публично отрывал гениталии (простите, мадемуазель).
Преждевременная оптимизация - зло (С). Если там пару сотен городов - производительность системы не повысится (если все конечно не считается в цикле для 10 млн записей) , а время на рефакторинг стоит дорого.
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

Re: Шедевр кода

Post by Komissar »

OtherSide wrote: 30 Dec 2017 08:04
Komissar wrote: 30 Dec 2017 07:13
Palych wrote: 30 Dec 2017 07:07 Кстати, поскольку я давно сижу на одном приложении - не раз находил куски вопиющего говнокода, лез в репозиторию чтобы поставить на вид автору... и обнаруживал что это я сам и написал :oops:
не то чтобы я был перфектный кодер, но за то, что Дима67 опубликовал, я бы публично отрывал гениталии (простите, мадемуазель).
Преждевременная оптимизация - зло (С). Если там пару сотен городов - производительность системы не повысится (если все конечно не считается в цикле для 10 млн записей) , а время на рефакторинг стоит дорого.
в данном случае не использование toUpperCase() - это просто неграмотность, а не оптимизация. К тому же, простая ашипка юзера, ввод типа "МОСКВа" просто не будет обработан.
OtherSide
Уже с Приветом
Posts: 15772
Joined: 01 Mar 2008 15:14

Re: Шедевр кода

Post by OtherSide »

Komissar wrote: 30 Dec 2017 08:44
в данном случае не использование toUpperCase() - это просто неграмотность, а не оптимизация. К тому же, простая ашипка юзера, ввод типа "МОСКВа" просто не будет обработан.
Вроде речь о хешфункции шла? (Dictionary)
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

Re: Шедевр кода

Post by Komissar »

OtherSide wrote: 30 Dec 2017 09:27
Komissar wrote: 30 Dec 2017 08:44
в данном случае не использование toUpperCase() - это просто неграмотность, а не оптимизация. К тому же, простая ашипка юзера, ввод типа "МОСКВа" просто не будет обработан.
Вроде речь о хешфункции шла? (Dictionary)
хешфункция вместо if(else) - это вопрос имплементации. Создание двух методов, вместо одного, только потому что не прочитал про toUpperCase() - это неграмотность.
OtherSide
Уже с Приветом
Posts: 15772
Joined: 01 Mar 2008 15:14

Re: Шедевр кода

Post by OtherSide »

Komissar wrote: 30 Dec 2017 09:38 хешфункция вместо if(else) - это вопрос имплементации. Создание двух методов, вместо одного, только потому что не прочитал про toUpperCase() - это неграмотность.
По моему вы сами про хеш что-то и написали, но потерли(?) мой пост был в ответ на это.
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

Re: Шедевр кода

Post by Komissar »

OtherSide wrote: 30 Dec 2017 10:00
Komissar wrote: 30 Dec 2017 09:38 хешфункция вместо if(else) - это вопрос имплементации. Создание двух методов, вместо одного, только потому что не прочитал про toUpperCase() - это неграмотность.
По моему вы сами про хеш что-то и написали, но потерли(?) мой пост был в ответ на это.
не гони, я ничего абсолютно не тер. Следи за руками, не гоняй порожняки!

Return to “Вопросы и новости IT”