Опять же истории из жизни
Sep. 4th, 2003 03:20 pmОднажды приятель, работающий в Хеврат Хашмаль, прислал мне на работу письмо с заголовком: "Смотри, как в нашей конторе проверяют две переменные на равенство" и кусочком кода на несколько строчек:
if( a > b)
{
/* Do nothing */
}
else if( a < b)
{
/* Do nothing */
}
else
{
блаблабла - тут был написан какой-то реальный код.
}
Я посмеялся в усы и тут же переслал это письмо всем на фирме - только на всякий случай, чтобы не подставлять мужика (кто знает, какие у них там порядки в Хеврат Хашмале), вырезал все его данные и написал только, что вот, мол, этот код - не просто шутка, а кусок живой программы. Пусть, думаю, народ повеселится.
Через три минуты мне пришло ДВА ответа примерно одинакового содержания: "It's not me, it was there before"
if( a > b)
{
/* Do nothing */
}
else if( a < b)
{
/* Do nothing */
}
else
{
блаблабла - тут был написан какой-то реальный код.
}
Я посмеялся в усы и тут же переслал это письмо всем на фирме - только на всякий случай, чтобы не подставлять мужика (кто знает, какие у них там порядки в Хеврат Хашмале), вырезал все его данные и написал только, что вот, мол, этот код - не просто шутка, а кусок живой программы. Пусть, думаю, народ повеселится.
Через три минуты мне пришло ДВА ответа примерно одинакового содержания: "It's not me, it was there before"
no subject
Date: 2003-09-04 12:23 pm (UTC)I've seen code like this:
if ( commission != 0.0 ) {
price += commission;
}
no subject
Date: 2003-09-04 01:48 pm (UTC)no subject
Date: 2003-09-05 06:59 pm (UTC)Например, если в системе, под которую это писалось,
а) плавающие операции дороги;
б) сравнение двух переменных на равенство не есть плавающая операция;
в) commission почти всегда равен нулю
Экономия, конечно, маленькая, но всё ж.
no subject
Date: 2003-09-05 07:59 pm (UTC)Человек, который пишет финансовую аппликацию в системе, где плавающие операции настолько дороги - полный мудак.
Кроме того, быстродействие компьютеров растет. Можно оптимизировать, а можно - подождать, пока hardware догонит требуемую мощность. Оптимизация уместна, если она может быть сделана за время, меньшее времени требуемого ожидания нового железа. А тут надо было как минимум секунд 5 печатать.
no subject
Date: 2003-09-06 06:55 am (UTC)no subject
Date: 2003-09-06 08:34 am (UTC)Несомненно, но мне было лень писать очевидное :-)
Про то, что компьютеры делаются все быстрее - как раз часто забывают. Я видал такие проекты, где 2 программиста с зарплатой за 100 целый год оптимизировали огромную библиотеку так, что она стала в среднем - на 30% быстрее. Могли вместо того закупить новые сервера, на которые всегда так жалко тратиться, и за те же бабки, за то же время - разогнаться куда? Именно.
no subject
Date: 2003-09-06 09:50 am (UTC)no subject
Date: 2003-09-06 10:14 am (UTC)Так о чем мы спорим?
Игорь Борисович, Вы же - интеллигентный человек...