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

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

    +153

    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
    // обработка наведения/убирания мышки на тултипы и ссылки
    $("a.popup-link").live("mouseenter", function(event) {
        var id = parseInt($(this).text().replace(">>", ""));
        $(window).data("currentTooltip", id);
        showTooltip(this, id);
    });
    
    $("a.popup-link").live("mouseleave", function(event) {
        $(window).data("currentTooltip", null);
        scheduleTooltipClose();
    });
    
    $("div.comment-tooltip").live("mouseover", function(event) {
        if (!$(event.target).hasClass("popup-link")) {
            $(window).data("currentTooltip", $(this).data("id"));
        }
    });
    
    $("div.comment-tooltip").live("mouseleave", function(event) {
        $(window).data("currentTooltip", null);
        scheduleTooltipClose();
    });

    https://github.com/bormand/govnokod-board

    Превращаем уютненький форум в уютненькую борду (скрипт для greasemonkey).

    P.S. На ГК стоит жквери 1.4, поэтому live() вместо on().

    bormand, 09 Мая 2014

    Комментарии (153)
  3. Python / Говнокод #15833

    −96

    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
    srp_base64_table = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz./"
    
    def srpb64decode(s):
        ints = [srp_base64_table.index(c) for c in s]
        pad = len(ints) % 4
        if pad != 0:
            pad = 4 - pad
        ints = [0 for i in range(0, pad)] + ints
        notleading = False
        buf = []
    
        pos = 0
        while pos < len(ints):
            b = (ints[pos] << 2) | ((ints[pos+1] & 0x30) >> 4)
            if notleading or b != 0:
                buf.append(b)
                notleading = True
            b = ((ints[pos+1] & 0x0f) << 4) | ((ints[pos+2] & 0x3c) >> 2)
            if notleading or b != 0:
                buf.append(b)
                notleading = True
            b = ((ints[pos+2] & 0x03) << 6) | ints[pos+3]
            if notleading or b != 0:
                buf.append(b)
                notleading = True
            pos += 4
    
        return bytes(buf)
    
    def srpb64encode(b):
        pos = len(b) % 3
        b0 = 0
        b1 = 0
        b2 = 0
        notleading = False
        buf = ""
    
        if pos == 1:
            b2 = b[0]
        elif pos == 2:
            b1 = b[0]
            b2 = b[1]
    
        while True:
            c = (b0 & 0xfc) >> 2
            if notleading or c != 0:
                buf += srp_base64_table[c]
                notleading = True
            c = ((b0 & 3) << 4) | ((b1 & 0xf0) >> 4)
            if notleading or c != 0:
                buf += srp_base64_table[c]
                notleading = True
            c = ((b1 & 0xf) << 2) | ((b2 & 0xc0) >> 6)
            if notleading or c != 0:
                buf += srp_base64_table[c]
                notleading = True
            c = b2 & 0x3f
            if notleading or c != 0:
                buf += srp_base64_table[c]
                notleading = True
            if pos >= len(b):
                break
            b0 = b[pos]
            b1 = b[pos + 1]
            b2 = b[pos + 2]
            pos += 3
    
        return buf

    Кодирование и декодирование блобов для openssl SRP.

    А я построю свой диснейленд с блекджеком и шлюхами! (c) тот, кто пилил SRP в openssl

    bormand, 23 Апреля 2014

    Комментарии (153)
  4. Java / Говнокод #8142

    +77

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public static void main(final String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException {
        try {
          UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
          JFrame.setDefaultLookAndFeelDecorated(false);
          JDialog.setDefaultLookAndFeelDecorated(false);
        } finally {
          new ImageMaps().start();
        }
      }

    НАКОНЕЦ запускаю десктоп-приложение.
    Не знаю как вам, а по мне - выглядит весьма странно.

    Lure Of Chaos, 10 Октября 2011

    Комментарии (153)
  5. Куча / Говнокод #29277

    0

    1. 1
    Пиздец-оффтоп #132

    #102: https://govnokod.ru/28978 https://govnokod.xyz/_28978
    #103: https://govnokod.ru/28982 https://govnokod.xyz/_28982
    #104: https://govnokod.ru/28989 https://govnokod.xyz/_28989
    #105: https://govnokod.ru/29052 https://govnokod.xyz/_29052
    #106: https://govnokod.ru/29069 https://govnokod.xyz/_29069
    #107: (vanished) https://govnokod.xyz/_29086
    #108: https://govnokod.ru/29102 https://govnokod.xyz/_29102
    #109: https://govnokod.ru/29126 https://govnokod.xyz/_29126
    #110: https://govnokod.ru/29136 https://govnokod.xyz/_29136
    #111: https://govnokod.ru/29142 https://govnokod.xyz/_29142
    #112: https://govnokod.ru/29155 https://govnokod.xyz/_29155
    #113: https://govnokod.ru/29160 https://govnokod.xyz/_29160
    #114: https://govnokod.ru/29165 https://govnokod.xyz/_29165
    #115: https://govnokod.ru/29173 https://govnokod.xyz/_29173
    #116: https://govnokod.ru/29174 https://govnokod.xyz/_29174
    #117: https://govnokod.ru/29182 https://govnokod.xyz/_29182
    #118: https://govnokod.ru/29191 https://govnokod.xyz/_29191
    #119: https://govnokod.ru/29196 https://govnokod.xyz/_29196
    #120: https://govnokod.ru/29205 https://govnokod.xyz/_29205
    #121: https://govnokod.ru/29216 https://govnokod.xyz/_29216
    #122: https://govnokod.ru/29219 https://govnokod.xyz/_29219
    #123: https://govnokod.ru/29232 https://govnokod.xyz/_29232
    #124: https://govnokod.ru/29237 https://govnokod.xyz/_29237
    #125: https://govnokod.ru/29239 https://govnokod.xyz/_29239
    #126: https://govnokod.ru/29244 https://govnokod.xyz/_29244
    #127: https://govnokod.ru/29248 https://govnokod.xyz/_29248
    #128: https://govnokod.ru/29251 https://govnokod.xyz/_29251
    #129: https://govnokod.ru/29257 https://govnokod.xyz/_29257
    #130: https://govnokod.ru/29266 https://govnokod.xyz/_29266
    #131: https://govnokod.ru/29270 https://govnokod.xyz/_29270

    nepeKamHblu_nemyx, 20 Августа 2026

    Комментарии (152)
  6. Куча / Говнокод #26927

    +3

    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
    В чём прикол "Go"?
    
    Попробовал сделать примитивное апцо - это сущий пиздец. Нельзя просто взять и на лету
    сформировать с нуля массив и отобразить его в виде "JSON" - надо под все случаи прописать
    какие-то долбоёбские структуры и строго их придерживаться. Нельзя просто так взять и
    закомментировать абы какую строку - под это приходится ломать и крушить половину кода
    в файле.
    
    Говорят, что это нужно для какой-то дисциплины, но схуяли программист не может распоряжаться
    СВОИМ кодом по своему усмотрению? С каких пор компилятор учит программиста стилю кода?
    В этом говноязыке чувствуешь себя, как на зоне.
    
    Очень гадостно в этом языке работать с базами данных.
    
    Я было обрадовался, что наконец-то появился язык, официально как будто не дающий возможности
    технически реализовать ООП-подход и ломающий стереотип о необходимости влажных фреймворков,
    но на деле это оказалось той же пиздой, только в другой обёртке.
    
    Поэтому я за "PHP".
    
    В нём я просто создаю на лету массив произвольной структуры и тут же превращаю его в "JSON".
    В нём я просто комментирую ту строку, которая мне в данный момент не нужна. В нём я просто
    создаю подключение к "MySQL" и использую его в коде даже без отсылки к переменной подключения.
    Наконец, в нём я могу не использовать ООП, если не хочу (а я не хочу).
    
    "PHP" переживает все другие языки для серверной разработки. "Ruby" мёртв, "Python" мёртв, "Java" и
    "NodeJS" уже подыхают, на очереди, я так понимаю, как раз "Go". И только "PHP" на коне.

    urinoterapevt, 07 Сентября 2020

    Комментарии (152)
  7. Си / Говнокод #25156

    0

    1. 1
    2. 2
    3. 3
    4. 4
    UCSR0A |= TXC0_MASK;
    UDR0 = value;
    while ((UCSR0A & TXC0_MASK) == 0)
      ;

    The TXCn flag ... can be cleared by writing a one to its location.
    Cleared by writing one, Carl.

    Steve_Brown, 05 Декабря 2018

    Комментарии (152)
  8. C++ / Говнокод #14218

    +15

    1. 1
    normalize((a+b)/2)

    TarasB, 12 Декабря 2013

    Комментарии (152)
  9. Куча / Говнокод #6449

    +129

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    funktion = binary find
    (array element start end) : start = 0, end = array::length {
    [IF} = END - START = 1 THEN RETURN >? start <- array = element ??? start ELSe -1
    ELSE
    int * k = start + end - start >> 1
    IF {element < array::k> ELSE binary find(array element k end THEN := binary find(array element start k); RETURN <<<
    }

    Двоичный поиск такой двоичный

    fuckyounoob, 22 Апреля 2011

    Комментарии (152)
  10. Куча / Говнокод #29247

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    &#x1f437;&#x1f437;&#x1f437;
    
    Рант-тред, иди!
    
    Вахтер, багровей!

    MOPCKAR_CBNHNHA, 07 Апреля 2026

    Комментарии (151)
  11. C++ / Говнокод #28318

    +3

    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
    AnsiString Cut_the_path(AnsiString ExeName)
    {
        AnsiString Path = ExeName;
        char *cp = Path.c_str(); int last = Path.Length()-1;
        int i=last;
        for(; i>=0; i--)
        {
            if( *(cp+i) == '\\' )
                break;
            Path.Delete(Path.Length(),1);
        }
        return Path;
    }

    FataLL, 04 Августа 2022

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