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

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

    −184

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    CREATE TABLE IF NOT EXISTS `participant` (
      ...
      `subscribed` enum('yes','no') COLLATE utf8_unicode_ci NOT NULL COMMENT 'whether the participant is currently subscribed',
      `posted` enum('yes','no') COLLATE utf8_unicode_ci NOT NULL COMMENT 'whether the participant has posted a message to this stream'
    )

    VASMAN, 14 Декабря 2010

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $('.tariffs').click(function(){$('#tabs').tabs( 'select' , 1 ); top.scrollTo(0,0); return false;});
    	$('.tarifffs').click(function(){$('#tabs').tabs( 'select' , 2 ); top.scrollTo(0,0); return false;});
    	$('.testdrive').click(function(){$('#tabs').tabs( 'select' , 3 ); top.scrollTo(0,0); return false;});
    	$('.faq').click(function(){$('#tabs').tabs( 'select' , 5 ); top.scrollTo(0,0); return false;});
    	$('.zakaz').click(function(){$('#tabs').tabs( 'select' , 3 ); top.scrollTo(0,0); return false;});	
    	$('.vfaq').click(function(){$('#tabs').tabs( 'select' , 4 ); top.scrollTo(0,0); return false;});
    	$('.solution').click(function(){$('#tabs').tabs( 'select' , 1 ); top.scrollTo(0,0); return false;});

    Сайт Петерстара для верности дважды подключает jQuery разных версий и сверкает говнокодом: см. строки 56-62 HTML-кода —
    http://twitter.com/pepelsbey/statuses/12677274499293184

    0__1, 09 Декабря 2010

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

    +145

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    /// <summary>
            /// Есть ли в коллекции результаты
            /// </summary>
            public bool HasRecords
            {
                get
                {
                    return _records.Count > 0 ? true : false;
                }
            }

    Взгянул на коммент http://govnokod.ru/4846#comment55906 и понял кое что и кое где....

    Nigma143, 07 Декабря 2010

    Комментарии (2)
  5. ActionScript / Говнокод #4832

    −142

    1. 1
    getChildAt(getChildIndex(console)).visible = false;

    Нашел в одном из своих старых проектов, бывает..

    Maxa, 06 Декабря 2010

    Комментарии (2)
  6. C++ / Говнокод #4823

    +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
    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
    #include <stdio.h>
    #include <stdlib.h>
    
    #define m(x)(x<0?-1:!!x)
    #define g tj()-J
    #define a(x)(x<0?-x:x)
    #define h(x)((x)<=K?x:N-(x))
    #define f 9999
    #define A return
    #define H printf(
    #define R double
    #define U int
    #define V for
    #define b else
    #define u while
    #define B if
    U v,w,Y= -1,W,J,p,F,o=f,M,N,K,X,YY,_,P[f],s(); typedef U(*L)(); L q[f]; tj(){
    U S=m(v)+(m(w)<<K); B(!S)A J; V(v=W+S; v!=J&&!q[v]; v+=S); A v; } k(){ _=K; A
    
    v?a(v)>1||w-Y||!q[J]:(w-Y&&(w-Y*2||q[W+Y*(N+1)]|| (J>>K)-K+(Y-1)/
    v?a(v)>2))||q[J];
    
    } z(){ _=5; A v*w||g; } e(){ _= -2;
    A(v*v*v-v||w*w*w-w)&&(J-W-2||(W&N)-4||(W>>K!=(Y-1?N:0))||
    q[W+1]||q[W+2]||q[W+K]!=z||P[W+K]*Y<0); } R VR(){ ! int PZ=0x7fff;
    A(R)(rand()&PZ)/(R)PZ; } l(){ _=K+1; A(v*w&&a(v)-a(w))||g; } R UC(){ R i=0,d;
    u((i+=d=VR())<1.0); A d; } c(){ _= -11; A a(v)-a(w)||g; } I(ur,n,x){ W=ur;
    J=n; B(P[W]!=Y||P[J]==Y)A J+1; v=(J&N)-(W&N); w=(J>>K)-(W>>K); A
    q[W]()||(x&&QL(W,J,s)); } TT(W){ v=w=0; A q[W]()+K; } s(){ U j= -1,i; Y= -Y;
    V(i=0; i<M; ++i){ B(j<0&&P[i]== -Y&&TT(i)&&_== -2) { j=i; i= -1; } b
    
    B(j>=0&&!I(i,j,0))A Y= -Y; } A!(Y= -Y); } bb(){ _=1; A a(v*w)-2; } uv(){
    
    V(v=0; v<f; ++v){ B(h(v>>K)==0){ U S=h(v&N);
    q[v]=!S?z:(S==1?bb:(S==2?c:(v&N>K?l:e))); } b B(h(v>>K)==1)q[v]=k; b q[v]=0;
    P[v]=!!q[v]*(28-v); } } y(){ U G=Y,i; J=0; V(i=0; i<M; ++i){
    i%8||H"\n%4o ",i); B((Y=P[i]=m(P[i]))&& TT(i))H"%c ",_+93+Y*16); b H"- "); }
    H"\n "); do H"%2d",i++&N); u(i&N); Y=G; H"\n"); } O(W,J){
    B((q[J]=q[W])==k&&h(J>>K)==0)q[J]=l; B(q[W]==e)B(J-W==2)O(J+1,J-1); b
    B(W-J==2)O(W-1,W+1); P[J]=P[W]; q[W]=! 0; P[W]=0; } QL(W,J,D)L D; { U
    HQ=P[J],YX; L AJ=q[J],XY=q[W]; O(W,J); YX=D(); O(J,W); q[J]=AJ; q[W]=XY;
    P[J]=HQ; A YX; } C(){ U i,j,BZ=0; V(i=0; i<M; ++i){ L Z=q[i]; B(Z){ U
    
    r=h(i>>K)+h(i&N),G=Y, S=Z==z?88:(Z==k?11 +r+(P[i]<0?N-(i>>K):(i>>K)):
    
    (Z==l?124-((YY<8&&((i&N)!=K|| (i>>K)!=(P[i]>0?0:N)))?M:0):
    (Z==c?41+r:(Z==e?f-r-r:36+r+r)))); Y=P[i]; V(j=0; j<M;
    ++j)B(!I(i,j,0))S+=(P[j]?5:1); BZ+=G==Y?S:-S; Y=G; } }
    B(!(++X&M-1))write(1,".",1); A BZ; } PX(){ U i,Q=0,XP=0,JZ=M*M,E= -f,t,S=o;
    B(!F--)A++F+C(); V(i=0; i<JZ; ++i)B(!I(i>>K+K,i&M-1,1)){ Y= -Y; o= -E; t=
    
    -QL(i>>K+K,i&M-1,PX); Y= -Y; B(t>E){ ++XP; Q=i; E=t; B(E>=S) A++F,E; } }
    
    B(!XP)E=s()?-f+1:0; p=Q; A++F,E; } RZ(){ U i,j,T=0; V(; ; ){ y(); o=f; do{
    H"\n%d %d %d %s ",X,T,C(),s()?"!":">"); fflush(stdout); }
    u(scanf("%o%o",&i,&j)!=2||I(i,j,1)); O(i,j); y(); X=0; ++YY; Y= -Y; T=PX();
    
    i=p>&g t;(K<<1); j=p&(M-1); B(I(i,j,1)){ H"Rats!\n"); A; } O(i,j); Y= -! Y;
    B(T>M*M)H"\nHar har.\n"); } } main(ac,av)char**av; { long
    B(T>time(),j=time(&j);
    
    R i=0; srand((U)j); V(M=0; M<=f; ++M)i+=UC(); M=i/100; B(M&3)++M; B(M&1)--M;
    V(N=1; N*N<M; ++N); K= --N/2; F=ac>1?atoi(av[1]):2; uv(); RZ(); }

    no comments

    onto, 03 Декабря 2010

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

    +121

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (OnCreated != null)
                {foreach (EventHandler<CreatedEventArgs> handler in OnCreated.GetInvocationList())
                    {
                        handler(this, args);
                    }
    }

    человек слышал про GetInvocationList но когда его надо применять не понял - зато можно написать 4 строки вместо одной.
    В данном случае аналогом будет простой вызов OnCreated().

    eval_2009, 02 Декабря 2010

    Комментарии (2)
  8. PHP / Говнокод #4755

    +159

    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
    function get_existing_boxes () {
    		global $wp_meta_boxes, $more_fields;
    		$data = $wp_meta_boxes;
    		$boxes = array();
    		foreach ((array) $data as $data1) {
    			foreach ((array) $data1 as $data2) {
    				foreach ((array) $data2 as $data3) {
    					foreach ((array) $data3 as $box) {
    						 if ($title = $box['title']) {
    							 $boxes[$box['id']] = $box;
    						 }
    					}
    				}
    			}						
    		}
    		//if (is_object($more_fields)) {
    	//		$mfs = $more_fields->get_objects(array('_plugin_saved', '_plugin'));
    	//		foreach ($mfs as $mf_key => $mf) $boxes[$mf_key] = $mf;
    	//	}
    		//__d($wp_meta_boxes);
    
    		return $boxes;
    	}

    Из плагина "more-post-types" для WP

    Anderson, 25 Ноября 2010

    Комментарии (2)
  9. VisualBasic / Говнокод #4743

    −102

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    flagnum=Isnumeric(pSum$) 'сумма к погашению
    If flagnum=False Then
    	If Instr(pSum$,",")=0 Then
    		flagnum1$=Strleft(pSum$,".")
    		flagnum2$=Strrightback(pSum$,".")
    		pSum$=flagnum1$&","&flagnum2$
    	Else
    		flagnum1$=Strleft(pSum$,",")
    		flagnum2$=Strrightback(pSum$,",")
    		pSum$=flagnum1$&"."&flagnum2$
    	End If
    End If

    LotusScript
    Преобразования строкового представления числа в число. При входе "0" на выходе строка ".", которая пытается безусловно быть преображена в число.

    Dimly, 25 Ноября 2010

    Комментарии (2)
  10. Java / Говнокод #4731

    +78

    1. 1
    2. 2
    3. 3
    double price=199990.10;
    BigDecimal realPrice=new BigDecimal(price).round(
    		new MathContext((int)Math.round(Math.log10(price))+3)));

    Округление до копеек.
    Реальный финансовый проект.

    gavnokoder, 24 Ноября 2010

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

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    //Set different text depending on how long on progressbar progress is
    if (dwStepPercent < 25)
        byText=0;
    else if (dwStepPercent < 50)
        byText=1;
    else if (dwStepPercent < 75)
        byText=2;
    else
        byText=3;

    Отличный способ не делить.

    Shumway, 23 Ноября 2010

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