Подборка коментариев

12.10.2009

Иногда нашему брату приходится разгребать чужой код, и коментарии, которые оставили для себя, приукрашают трудный рабочий день другому страдальцу.
Вот несколько примеров:


#1
// drunk, fix later

#2
// Magic. Do not touch.

#3
// I'm sorry.

#4
//This code sucks, you know it and I know it. Move on and call me an idiot later.

#5
try {

} finally { // should never happen

}

#6
//I am not sure why this works but it fixes the problem.

#7
// This only exists because Scott doesn't know how to use const correctly

#8
//When I wrote this, only God and I understood what I was doing
//Now, God only knows

#9
//Please work

#10
// I am not responsible of this code.
// They made me write it against my will.

#11
# To understand recursion, see the bottom of this file
At the bottom of the file:
# To understand recursion, see the top of this file

#12
// I am not sure if we need this, but too scared to delete.

#13
/**
* Always returns true.
*/
public boolean isAvailable() {
return false;
}

#14
//Mr. Compiler, please do not read this.

#15
return null; //Not really null

#16
// Hard to explain

#17
i++; // increment variable i

Источник: http://msug.vn.ua/wikis/ithumor/54.aspx

Invert Boolean

12.10.2009

No comments..

function InvertBoolean(Value: Boolean):Boolean;
begin
    if Value then Result := False
    else Result := True;
end;

Прислали вот..

06.02.2009

Доброе время суток,
реальный пример индийской практики в проекте на яве:

public static boolean isData(String data) {
return data != null;
}

Благодарим Ilya V Pogrebenko

Загадочные точки с запятой

21.01.2009

Источник: http://www.dtf.ru/forum/thread.php?id=193131&set_mode=1

Цитирую: “Я видел где-то код, в котором после отступов ставят точки с запятой. Вот приблизительно таким образом. Вы подобное встречали? Зачем ставят пустые команды после отступов?”

void func (void)
{
int a, b[2], i;

for (a=0;a<3;a++) {
; ; if (b[i]==4) {
; ; ; b [i] = 14;
; ; }
}

}

Защита от SQL injection

03.01.2009

Источник: http://thedailywtf.com/Articles/SQL-Injection-Protection–3.aspx

// The following string is an SQL comment, and could
// blank out the check for password in our SQL statement
// if used in the username!
if (username.indexOf(”‘;–”)!=-1) {
throw new AuthorisationException(username +” given as login name contains ‘;–, this is bad for SQL!”);
}

// Get the (hopefully single) id of the player with
// this name and password
ResultSet authorised = statement.executeQuery( “SELECT id FROM table_name_redacted WHERE ” + “username=’”+username +”‘ AND password=’”+password+”‘;”)

Модуль числа

05.12.2008

Вот такой вот забавный способ получения модуля, не индийский, но довольно заковыристый:

y = x*((x>0)-0,5)*2

Эквивалентно y = abs(x);

Источник: http://habrahabr.ru/blogs/code_wtf/46196/#habracut

Забавная рекурсия

10.11.2008

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

int ToPow2(int i)
{
    if( i == 2 || i == 4 || i == 8 || i == 16
       || i == 32 || i == 64 || i == 128
       || i == 256 || i == 512 || i == 1024 )
        return i;
    else
         return ToPow2(i+1);
}

Комментируем код правильно:

10.11.2008

// set eye position
SetEyePosition();

// UNDONE: blah, this is bad, we should use a stack but I’m too lazy to code one.
for (i = 0;…

float m_frictionFraction; // Sorry, couldn’t resist this name :)

// What the hell are you doing?
pMonster->ReportAIState();

Индийский самолет

04.11.2008

Вчера посмотрел передачу “Атлас Discovery. Индия.”.
Так вот там был сюжет о не большом тренировочном самолете, который индийские специалисты построили с нуля за 22 месяца. Название самолета “IJT”.
Поискал инфу о IJT в инете, и вот на что натолкнулся:

1) Во время демонстрационных полетов на авиасалоне близ индийского города Бангалора потерпел аварию опытный образец учебно-тренировочного самолета IJT производства индийской корпорации HAL. Инцидент произошел при взлете, когда из-за поломки шасси самолет занесло и выбросило в поле. Пилот не пострадал. Как сообщают “Вести”, на некоторое время доступ на взлетно-посадочную полосу был закрыт.

2) Заказ на производство 12 самолетов IJT был получен компанией Hindustan Aeronautics Limited пять лет назад. Первоначально планировалось, что первая партия УТС национальной разработки поступит на вооружение ВВС Индии в 2005-2006 годах. Затем сроки были смещены на 2007-2008 годы, однако и они оказались нереалистичными. Согласно последним оценкам руководства Hindustan Aeronautics Limited, поставка 12 самолетов будет завершена в 2009-2010 годах.

Программой IJT предусматривается закупка двух новых российских двигателей АЛ-55И, первый из которых планировалось получить в ноябре минувшего года для установки на опытный образец УТС. Летные испытания были намечены на июль 2008 года. Однако пока двигатель из России так и не получен.

В фильме так же говорилось о том, что, судя по темпам развития экономики, Индия кандидат на место одной из супердержав в будущем. Мне страшно…

Ссылки:
http://www.lenta.ru/news/2008/03/18/train/
http://www.aviaport.ru/digest/2007/02/08/115734.html

Без коментариев…

04.11.2008

Источнник: http://habrahabr.ru/blogs/code_wtf/28535/

if (160>450) {
    resize_height=450;
} else {
    resize_height=160;
}