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

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

    −83

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    class ClassifierChoiceForm(forms.ModelChoiceField):
        def __init__(self, dict, empty_label=u"---------", cache_choices=False,
                required=True, widget=forms.Select, label=None, initial=None, help_text=None, to_field_name=None, with_classes=False):
            try:
                 ...
                 # до хуя всего
                 ...
            except Exception, e:
                super(forms.ModelChoiceField, self).__init__()

    прелесть

    t0ster, 26 Октября 2010

    Комментарии (3)
  3. C# / Говнокод #4448

    +110

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <asp:EntityDataSource ID="targert" runat="server" ConnectionString="name=portalEntities1"
                DefaultContainerName="portalEntities1" EnableFlattening="False" 
                CommandText="SELECT first_table.id FROM first_table 
            WHERE ANYELEMENT(select second_table.field_2 from first_table.second_table where second_table.field_2 = @var1).field_2 = @var1
            " EntityTypeFilter="">
                <CommandParameters>
                    <asp:QueryStringParameter Name="var1" QueryStringField="var1" DbType="String" />
                </CommandParameters>
            </asp:EntityDataSource>

    Вот такой странный код с двойной проверкой...
    таблицы second_table и first_table имеют связь многие ко многим...

    test_unit, 26 Октября 2010

    Комментарии (3)
  4. PHP / Говнокод #4436

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    define(FILE, $_SERVER['DOCUMENT_ROOT'] . '/file.db');
    if (!empty($date)){
       $date = @file_get_contents(FILE);
       $pageLinks = unserialize($date);
       //~50 lines of code
    }

    И снова >_<

    Sum, 25 Октября 2010

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

    +74

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    cmd = new byte[2]; //name length
    is.read(cmd);
    int fnamel = cmd[0] << 8 | cmd[1];
    cmd = new byte[fnamel];
    is.read(cmd);
    char[] name = byteToChar(cmd);
    cmd = new byte[4];
    is.read(cmd);
    len = (cmd[0] << 24 & 0xFF000000) | (cmd[1] << 16 & 0xFF0000) | (cmd[2] << 8 & 0xFF00) | (cmd[3] & 0xFF);
    System.out.println("FIO requested: "+new String(name)+"; Size: "+len+" bytes;");

    писал (и пишу уже 1 час (планирую через час же закончить)) микро-сетевой аплоадер файлов.

    danilissimus, 23 Октября 2010

    Комментарии (3)
  6. Си / Говнокод #4415

    +145

    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
    enum {
    	CONST_A,
    	CONST_B,
    	CONST_C,
    	/* ... и еще пяток в том же духе */
    };
    
    /* ... */
    
    char opType = ...;
    switch(opType) {
    case 'A':
    	/* строчек 10 кода использующие CONST_A */
    	break;
    case 'B':
    	/* капипасто тех же строчек 10 кода - но теперь с CONST_B */
    	break;
    case 'C':
    	/* капипасто тех же строчек 10 кода - но с CONST_C */
    	break;
    /* и т.д. и т.п. для других значений opType */
    }

    только что убил полчаса что бы понять что switch/case завален 100% копиями того же самого кода - только со смененной константой. просто замапить тот char в enum ... это наверное исключительно для слишком умных.

    Dummy00001, 22 Октября 2010

    Комментарии (3)
  7. JavaScript / Говнокод #4407

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    if( DateDiff > 1000*60*60*24*122 ) {
    	  	 $("#mfilter_err").text("Выбран интервал времени больше 4 месяцев");
    		 return false;
    	  }

    Странное у человека представление о длине 4 месяцев

    getrix, 21 Октября 2010

    Комментарии (3)
  8. Java / Говнокод #4380

    +71

    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
    class LinkedListVector{
        public int crd;
        public int length;
        LinkedListVector head;
        LinkedListVector next;
        LinkedListVector prev;
        LinkedListVector(){
            this.head=this;
            this.prev=this;
            this.next=this;
            this.length=0;
        }
        LinkedListVector(int val){
            LinkedListVector save=this.head.prev;
            this.prev=this.head.prev;
            this.next=this.head;
            this.next.prev=this;
            save.next=this;
            this.head.length++;
            this.crd=val;
        }
    }

    Эпичнейшая попытка реализовать двусвязный циклический список.

    kir_rik, 18 Октября 2010

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

    −181

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    def get_children(self, **kwargs):
        q = super(Classifier, self).get_children()
        try:           
            for i in kwargs['related']:
                q = q.filter(classifiers = super(Classifier, self).get_by(i, key='translit'))
        except:
            pass
        return q

    такое в django проекте

    t0ster, 12 Октября 2010

    Комментарии (3)
  10. JavaScript / Говнокод #4345

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function xchg(s,o,n)
    {	var r=s.split(o).join(n);
    	return r;
    }
    
    function toHTML(s)
    {return xchg(xchg(xchg(xchg(xchg(xchg(s,'<BR>',''),'<br>',''),'&lt;','<'),'&gt;','>'),'&amp;','&'),'\'\'','\'');}

    Кусок кода из моего скрипта Гостевой книги для Народа, добавляющей туда bb-теги, смайлы и прочие радости (сейчас там, вроде, скрипты уже вырезаются). Писалось лет 6 назад.

    В целом код в скрипте оказался на удивление еще не таким говнокодестым, как я ожидал. Есть еще пара кусочков говнокогда...

    Arigato, 12 Октября 2010

    Комментарии (3)
  11. ActionScript / Говнокод #4324

    −164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if ((frame == lastFrame) && (subFrame == lastSubFrame))
            {
                frame = lastFrame;
                subFrame = lastSubFrame;
            } else
            {
                if (frame != 2)
                {
                    clip.gotoAndStop(frame);
                }

    Этот код позволяет связываться с высшими силами, иначе сложно объяснить, почему он торчит у нас в проекте вот уже как 3 месяца :) Успел стать местным достоянием.

    crazy_horse, 10 Октября 2010

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