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

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

    +82

    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
    private String addZerosToColor(String color)
        {
            switch(color.length())
            {
            case 1:
                color = (new StringBuilder()).append("00000").append(color).toString();
                break;
    
            case 2:
                color = (new StringBuilder()).append("0000").append(color).toString();
                break;
    
            case 3:
                color = (new StringBuilder()).append("000").append(color).toString();
                break;
    
            case 4:
                color = (new StringBuilder()).append("00").append(color).toString();
                break;
    
            case 5:
                color = (new StringBuilder()).append("0").append(color).toString();
                break;
            }
            return color;
        }

    Понятно и весьма эстетично :D

    VirtualVoid, 01 Августа 2010

    Комментарии (1)
  3. Pascal / Говнокод #3831

    +94

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if MessageDlg('Удалить проводку №'+srcTransact.DataSet.FieldByName('Trans_ID').AsString+' и ее спецификацию?',
        mtConfirmation, [mbYes, mbNo], 0) = mrYes then
      begin
        CMD.SQL.Add('EXEC dbo.asp_DelTransact '+srcTransact.DataSet.FieldByName('Trans_ID').AsString );
        CMD.Execute;
        _refresh(srcTransact.DataSet);
      end;
    end;

    Из реального проекта (учётная система).
    При определённых условиях можно удалить не только то что пользователь собирался удалить :).
    Да и вообще, сам код - говно.

    Fes, 30 Июля 2010

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

    +115

    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
    public static string GetTable(int type, string title, string[][] rows)
    {
        bool flag2;
        int num;
        bool isEmpty = false;
        string str = "";
        switch (type)
        {
            case 1:
                str = str + "\r\n                            <div class='clear'> </div>\r\n\t\t\r\n\t\t                        <div class='down'>\r\n                                \r\n\t\t\t\t\t                <div class='ProperyDetailHeading'>\r\n\t\t\t\t\t\t                <span class='color2'>" + title + "</span>\r\n\t\t\t\t\t                </div>\r\n\t\t\t\t\t                <div class='PropertyDetailContent'>\r\n\t\t\t\t\t\t                <div  class='PropertyDetailInformation content_inner'>\r\n\t\t\t\t\t\t\t                <table summary='Test Table'>\r\n\t\t\t\t\t\t\t\t                <tbody>";
                if ((rows != null) && (rows.Length > 0))
                {
                    flag2 = true;
                    for (num = 0; num < rows.Length; num++)
                    {
                        if ((rows[num] != null) && (rows[num].Length > 0))
                        {
                            str = str + GetTableRow(ref flag2, rows[num][0], rows[num][1], ref isEmpty);
                        }
                    }
                }
                break;
            case 2:
    ......

    ASP.NET, пакистанские кодеры. Вообще весь код с сайта можна поместить на сайте отдельным разделом. В проекте вообще не используются контролы типа DataGrid/FormView.. даже DataSource. У них и тэмплэйты свои :(.. Грустно так все...(

    Coffeeholic, 30 Июля 2010

    Комментарии (1)
  5. bash / Говнокод #3783

    −126

    1. 1
    if [ "$PROJECTVERSION" -gt  "1.1.0" ; then

    Именно в таком виде найдено в проходящих письмах коммитницы.

    raorn, 26 Июля 2010

    Комментарии (1)
  6. ActionScript / Говнокод #3776

    −172

    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
    UTF8 = {
        encode: function(str){
            for(var c:String, i:Number = -1, l:Number = (str = str.split("")).length, o:Function = String.fromCharCode; ++i < l;
                str[i] = (c = str[i].charCodeAt(0)) >= 127 ? o(0xc0 | (c >>> 6)) + o(0x80 | (c & 0x3f)) : str[i]
            );
            return str.join("");
        },
        decode: function(str){
            for(var a:Array, b:Array, i:Number = -1, l:Number = (str = str.split("")).length, o:Function = String.fromCharCode, c:String = "charCodeAt"; ++i < l;
                ((a = str[i][c](0)) & 0x80) &&
                (str[i] = (a & 0xfc) == 0xc0 && ((b = str[i + 1][c](0)) & 0xc0) == 0x80 ?
                o(((a & 0x03) << 6) + (b & 0x3f)) : o(128), str[++i] = "")
            );
            return str.join("");
        }
    };

    Это чудо народного зодчества было предложено в качестве конвертора из ASCII в UTF8 и обратно. Проблема осложняется тем, что человек так делает в полной уверенности, что он что-то соптимизировал. (Ну и конечно, китайцы со своими иероглифами, как всегда в пролете, а так же французы со своими диакритиками, поляки, немцы и т.д.). То что страдает типизация и инкапсуляция, просто меркнет перед форматированием и полным отсутствием здравого смысла.
    http://www.kirupa.com/forum/showthread.php?t=351816

    wvxvw, 25 Июля 2010

    Комментарии (1)
  7. PHP / Говнокод #3716

    +157

    1. 1
    2. 2
    $wpdb->query($wpdb->prepare("INSERT INTO `".WPSC_TABLE_CART_CONTENTS."` (`prodid`, `name`, `purchaseid`, `price`, `pnp`,`tax_charged`, `gst`, `quantity`, `donation`, `no_shipping`, `custom_message`, `files`, `meta`) VALUES ('%d', '%s', '%d', '%s', '%s', '%s', '%s', '%s', '%d', '0', '%s', '%s', NULL)", $this->product_id, $this->product_name, $purchase_log_id, $this->unit_price, (float)$shipping, (float)$tax, (float)$tax_rate, $this->quantity, $this->is_donation, $this->custom_message, serialize($this->custom_file)));
    		$cart_id = $wpdb->get_var("SELECT LAST_INSERT_ID() AS `id` FROM `".WPSC_TABLE_CART_CONTENTS."` LIMIT 1");

    Это код WP-Ecommerce. Ахтунг!

    karevn, 16 Июля 2010

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

    +105

    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
    93. 93
    94. 94
    using System;
    using System.IO;
    using System.Net;
    using System.Net.Sockets;
    
    
    namespace GisClient
    {
        class EntryPoint
        {
            static void Main()
            {
                TcpClient TcpCli = new TcpClient("127.0.0.1", 15800);
                NetworkStream ns = TcpCli.GetStream();
                
                PacketStructure obj = new PacketStructure();
                obj.CommandOptions = 0x80; //What's this shit??? 0x80 , what's Encoding??? What 0x80 equals to?
    
                obj.Write2Net(ns);
                obj.ReadFromNet(ns);
            }
        }
    
        class PacketStructure
        {
            UInt32 PacketId = 0x35534947;
            Guid UserId = new Guid();
            
            public byte CommandOptions = 0;
            UInt32 CommandSize = 0;
    
            byte[] Reserved = new byte[3];
    
    
            public void Write2BufferStream(MemoryStream ms)
            {
                //PacketId || Length - 4 || Type - UInt32
                ms.Write(BitConverter.GetBytes(PacketId), 0, 4);
                //UserId || Length - 16 || Type - byte[16]
                ms.Write(UserId.ToByteArray(), 0, 16);
                //Command Options || Length - 1 || byte
                ms.Write(BitConverter.GetBytes(CommandOptions), 0, 1);
                //Command Size || Length - 4 || Int32
                ms.Write(BitConverter.GetBytes(CommandSize), 0, 4);
                //Reserved space || Length - 3 || byte[3]
                ms.Write(Reserved, 0, 3);
                //CRC32 - control summary
                ms.Write(BitConverter.GetBytes(CRC32.BytesCrc(ms.ToArray())), 0, 4);
            }
    
            public void Write2Net(NetworkStream ns)
            {
                MemoryStream ms = new MemoryStream();
    
                Write2BufferStream(ms);
    
                byte[] A = ms.ToArray();
                ns.Write(A, 0, (int)ns.Length);
            }
    
            public void ReadFromNet(NetworkStream ns)
            {
                byte[] B = new byte[32];
    
                ns.Read(B, 0, (int)ns.Length);
    
                PacketId = BitConverter.ToUInt32(B, 0); //??????? lolwhat?????!!!!!111
    
                byte[] C = new byte[16];
    
                for (int i = 0; i < 16; i++)
                {
                    C[i] = C[i + 4];
                }
    
                foreach (int i in C)
                {
                    Console.WriteLine(i);
                    Console.ReadLine();
                }
    
                UserId = new Guid(C);
    
                CommandOptions = B[20]; // Why no BitConverter?????!!!!!
    
                CommandSize = BitConverter.ToUInt32(B, 21); // The end of CommandSize IS NOT SET!!!!1111
    
                for (int i = 0; i < 3; i++) Reserved[i] = B[i + 25]; // A[0] = Packet[0 + 25] IF i = 0 THEN i++
    
                Console.ReadLine();
            }
    
        }
    }

    Код с работы, вот так вот мы отслыаем и принимаем пакеты по TCP.
    Комменатрии особенно доставляют удовольствие :)

    sergylens, 12 Июля 2010

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

    +144

    1. 1
    $a = true || false;

    ^)

    ycuk, 12 Июля 2010

    Комментарии (1)
  10. Python / Говнокод #3661

    −146

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    for section in config.sections():
        GROUP_PREFIX = 'group '
        if not section.startswith(GROUP_PREFIX):
            continue
        group = section[len(GROUP_PREFIX):]
        if group in seen:
            continue

    из проекта gitosis

    lig, 07 Июля 2010

    Комментарии (1)
  11. PHP / Говнокод #3644

    +149

    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
    <?
    $txt_file=("logins.txt");
    preg_match( "/value='(.*)'/", file_get_contents("http://login.vk.com/?act=login&[email protected]&pass=asdasd&expire=&vk="), $null );
    foreach(file($txt_file) as $account)
    { 
    $data=explode(':',$account);
    $qwe = file_get_contents('http://login.vk.com/?act=login&email='.urlencode($data[0]).'&pass='.urlencode($data[1]).'&expire=&vk=');
    if($qwe == $null){
           print "".$data[0].":".$data[1]." not valid</br>";
    }else{ 
           print "".$data[0].":".$data[1]." are valid</br>"; 
      } 
      } 
    ?>

    checker

    r00t, 05 Июля 2010

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