1. Лучший говнокод

    В номинации:
    За время:
  2. JavaScript / Говнокод #7461

    +149

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function returnFalse() {
    	return false;
    }
    function returnTrue() {
    	return true;
    }

    Не знаю, может было.
    Нашел в jquery http://code.jquery.com/jquery-1.6.2.js
    Может я не шарю, но зачем?

    Denya, 05 Августа 2011

    Комментарии (17)
  3. Куча / Говнокод #7449

    +140

    1. 1
    <a href='javascript:go("http://www.site.ru/?id=2167&lang=ru&ct=3&cid=2167&r=2167")' class="A_ThirdSelected"><nobr>Экономика</nobr></a>

    Функция go просто переадресовывает на нужный адрес. Видать писать ссылки в href уже не модно

    jQuery, 04 Августа 2011

    Комментарии (17)
  4. Си / Говнокод #7440

    +147

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    {
        //-----------------------------------------
        // Declare and initialize variables
        WSADATA wsaData;
        int iResult = 0;
    
        int iError = 0;
        INT iNuminfo = 0;
    
        int i;
    
        // Allocate a 16K buffer to retrieve all the protocol providers
        DWORD dwBufferLen = 16384;
    
        LPWSAPROTOCOL_INFO lpProtocolInfo = NULL;
    
        // variables needed for converting provider GUID to a string
        int iRet = 0;
        WCHAR GuidString[40] = { 0 };
    
        // Initialize Winsock
        iResult = WSAStartup(MAKEWORD(2, 2), &wsaData);
        if (iResult != 0) {
            wprintf(L"WSAStartup failed: %d\n", iResult);
            return 1;
        }
    
        lpProtocolInfo = (LPWSAPROTOCOL_INFO) MALLOC(dwBufferLen);
        if (lpProtocolInfo == NULL) {
            wprintf(L"Memory allocation for providers buffer failed\n");
            WSACleanup();
            return 1;
        }
    
        iNuminfo = WSAEnumProtocols(NULL, lpProtocolInfo, &dwBufferLen);
        if (iNuminfo == SOCKET_ERROR) {
            iError = WSAGetLastError();
            if (iError != WSAENOBUFS) {
                wprintf(L"WSAEnumProtocols failed with error: %d\n", iError);
                if (lpProtocolInfo) {
                    FREE(lpProtocolInfo);
                    lpProtocolInfo = NULL;
                }
                WSACleanup();
                return 1;
            } else {
                wprintf(L"WSAEnumProtocols failed with error: WSAENOBUFS (%d)\n",
                        iError);
                wprintf(L"  Increasing buffer size to %d\n\n", dwBufferLen);
                if (lpProtocolInfo) {
                    FREE(lpProtocolInfo);
                    lpProtocolInfo = NULL;
                }
                lpProtocolInfo = (LPWSAPROTOCOL_INFO) MALLOC(dwBufferLen);
                if (lpProtocolInfo == NULL) {
                    wprintf(L"Memory allocation increase for buffer failed\n");
                    WSACleanup();
                    return 1;
                }
                iNuminfo = WSAEnumProtocols(NULL, lpProtocolInfo, &dwBufferLen);
                if (iNuminfo == SOCKET_ERROR) {
                    iError = WSAGetLastError();
                    wprintf(L"WSAEnumProtocols failed with error: %d\n", iError);
                    if (lpProtocolInfo) {
                        FREE(lpProtocolInfo);
                        lpProtocolInfo = NULL;
                    }
                    WSACleanup();
                    return 1;
                }
    
            }
        }
    
        wprintf(L"WSAEnumProtocols succeeded with protocol count = %d\n\n",
                iNuminfo);
        for (i = 0; i < iNuminfo; i++) {
            wprintf(L"Winsock Catalog Provider Entry #%d\n", i);
    
    --- skipped ---
    
            wprintf(L"\n");
        }
    
        if (lpProtocolInfo) {
            FREE(lpProtocolInfo);
            lpProtocolInfo = NULL;
        }
        WSACleanup();
    
        return 0;
    }

    http://msdn.microsoft.com/en-us/library/ms741574(v=VS.85).aspx

    Я считаю это говнокодом, т.к. автор данного примера страдает сильнейшие паранойей. Всем переменным он присваивает нолики, например перед return строки 87, 52 и т.д. ... Даже iResult, lpProtocolInfo и т.д. в начале...

    fddpro, 04 Августа 2011

    Комментарии (17)
  5. Java / Говнокод #7419

    +76

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    @Column(name = "IS_DEFAULT", unique = false, nullable = true, insertable = true, updatable = true, length = 1)
    private String isDefault;
    
    ......
    
    if (b.getIsDefault().equals("N"))...

    Created by: Sudharsan Veluru

    artureg, 02 Августа 2011

    Комментарии (17)
  6. JavaScript / Говнокод #7404

    +161

    1. 1
    console.loh(this);

    random2, 01 Августа 2011

    Комментарии (17)
  7. C++ / Говнокод #7387

    +147

    1. 1
    2. 2
    // В деструкторе класса
    if(this) this->Free(this);

    фрагмент самоудаляемого объекта, который привязан к определенному классу, который реализует пул-памяти... впринципе не говнокод, но у многих подобные объекты в начале вызывают недоумение...

    ReL, 29 Июля 2011

    Комментарии (17)
  8. 1C / Говнокод #7340

    −140

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    Говно = 0;
    		ТекущийДокумент.ВыбратьСтроки();
    		Пока ТекущийДокумент.ПолучитьСтроку() = 1 Цикл
    			Если (ТекущийДокумент.ДатаПоставкиЭА < ТекущаяДата()) и (ПустоеЗначение(ТекущийДокумент.ДатаПоставкиЭА) = 0) и (ТекущийДокумент.Аннулирован = 0) и (ТекущийДокумент.Аннулирована = 0) Тогда
    				Если (ТекущийДокумент.СостояниеСтрокиЗаказа = Перечисление.СостояниеЗаказа.Сделан) или (ПустоеЗначение(ТекущийДокумент.СостояниеСтрокиЗаказа) = 1) Тогда
    					Говно = 1;
    					Прервать;
    				КонецЕсли;
    			КонецЕсли;
    		КонецЦикла;
    		Если Говно = 1 Тогда
    			Возврат "FONT["+ПолучитьЦвет(0,0,0)+"] BRUSH["+ПолучитьЦвет(128,128,0)+"]";		
    		КонецЕсли;
    
    Код окрашивает строку в цвет говна:)
    К коду претензий не имею, но говно-код получается.

    Unknown181538, 26 Июля 2011

    Комментарии (17)
  9. Assembler / Говнокод #7313

    +245

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    cmp     DWORD PTR [esi+4], 0     ; if obj->curChip == 0
        push    ebx
        push    edi
        jne     SHORT $LN8@harddetect
        movzx   ebx, WORD PTR [esi+12]   ; ebx = obj->baseport;
        jmp     SHORT $LN9@harddetect
    $LN8@harddetect:
        mov     ax, WORD PTR [esi+12]    ;\
        add     ax, 2                    ; шедевр!
        movzx   ebx, ax                  ;/
    $LN9@harddetect:

    Не понравился размер кода после компиляции. Полез посмотреть. Особо забавной показалась скомпилированная незатейливая конструкция:

    unsigned short port = (curChip == 0 ? baseport : baseport + 2);

    Компилятор VC++ 2005, с оптимизацией по размеру генерируемого кода. Наоптимизировал :D

    DemonId7, 22 Июля 2011

    Комментарии (17)
  10. PHP / Говнокод #7274

    +166

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    <?php $ago = time()-$time; ?>
    <?php $hour = sfConfig::get('app_hour_in_seconds'); ?>
    <?php $day = sfConfig::get('app_day_in_seconds'); ?>
    
    <?php if($ago < 60): ?>
    	<span>less than one minute ago</span>
    <?php elseif($ago < $hour): ?>
      <?php $m = floor($ago/60); ?>
    	<span><?php echo($m); ?> minute<?php echo(($m > 1 ? 's' :'')); ?> ago</span>
    <?php elseif($ago <= $day): ?>
    	<?php $h = floor($ago/$hour); ?>
    	<span><?php echo($h); ?> hour<?php echo(($h > 1 ? 's' :'')); ?> ago</span>
    <?php elseif ($ago <= $day*30): ?>
    	<?php $d = floor($ago/$day); ?>
    	<span><?php echo($d); ?> day<?php echo(($d > 1 ? 's' :'')); ?> ago</span>
    <?php elseif ($ago <= $day*365): ?>
    	<?php $m = floor($ago/$day*30); ?>
    	<?php $d = floor(($ago-$m)/$day); ?>
    	<span><?php echo($m); ?> month<?php echo(($m > 1 ? 's' :'')); ?> <?php echo($d); ?> day<?php echo(($d > 1 ? 's' :'')); ?> ago</span>
    <?php else: ?>
    	<?php $y = floor($ago/$day*365); ?>
    	<?php $m = floor(($ago-$y)/$day*30); ?>
    	<?php $d = floor(($ago-$y-$m)/$day); ?>
    	<span><?php echo($y); ?> year<?php echo(($y > 1 ? 's' :'')); ?> 
    		<?php echo($m); ?> month<?php echo(($m > 1 ? 's' :'')); ?> 
    		<?php echo($d); ?> day<?php echo(($d > 1 ? 's' :'')); ?> ago</span>
    <?php endif; ?>

    Кусок кода, выводящий дату поста в формате N days N hours ago....
    Кроме собственно говностиля забавляет наличие цифр 30 и 365 в коде)

    programmer, 18 Июля 2011

    Комментарии (17)
  11. SQL / Говнокод #7252

    −859

    1. 1
    2. 2
    3. 3
    4. 4
    SELECT 
    	InstanceID, 
    	DisplayValue AS VidDocValue 
    FROM [dvtable_{D25F1089-C63D-43E1-9FA4-864C48EECCB4}] AS [dvtable_{D25F1089-C63D-43E1-9FA4-864C48EECCB4}_1]

    HellMaster_HaiL, 15 Июля 2011

    Комментарии (17)