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

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

    +136.4

    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
    public class Xps2Slides
    {
        private int MakeCollection(List<string> data)
        {
            ...
            CallGC();
            ...
        }
    
        private void bgw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            ...
            CallGC();
            ...
        }
    
        private void makeDeepZoomFiles(string png)
        {
            ...
            CallGC();
        }
    
        private string MakePNG(ref FrameworkElement fe, int pageNumber)
        {
            CallGC();
            ...
            CallGC();
            ...
        }
    
        private void doPNG(string outputPath, ref RenderTargetBitmap bmp)
        {
            ...
            CallGC();
            ...
        }
    
        private void CallGC()
        {
            GC.AddMemoryPressure(300000);// number was picked at random..
            GC.Collect();
            GC.WaitForPendingFinalizers();
            GC.WaitForFullGCComplete();
        }
    }

    Кандидат на позицию программиста: "There are alot of samples on the internet of such similar code, but nothing that could be used for serially generating these collections on the fly without crashing with a memory overflow error or some other input output issue. I have resolved these problems in the file contained in the sample."

    OlgaWolga, 02 Сентября 2009

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

    +151.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $_SEARCH_DATA= JRequest::get($_GET);
    $arr_keys=array_keys($_SEARCH_DATA);
    for($i=0;$i<count($arr_keys);$i++){ 
    	$arr_data[$i]=$_SEARCH_DATA[$arr_keys[$i]];
    }
    $arr_form=array_combine($arr_keys,$arr_data);

    Pendalff, 31 Августа 2009

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

    +138.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
    /*А вот так РНР программисты пишут код для ASP.NET.
    См проверку типов*/
    
    protected HttpContext CurrentContext
    {
     get {
      return _context;
     }
     set {
      if (typeof(HttpContext) == value.GetType())
       _context = value;
      else
       //...
     }
    }

    ArbuzOFF, 29 Августа 2009

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

    +151

    1. 1
    @filemtime($cache_f) < time()-(600+((integer)rand(-100,100)))

    плавающий кеш? о_О

    gorvic, 28 Августа 2009

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

    +67.9

    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
    #!/bin/bash
    
    ln -s /tomcat/tc1/logs/CR.log /tomcat/logs/tc1.log
    ln -s /tomcat/tc2/logs/CR.log /tomcat/logs/tc2.log
    ln -s /tomcat/tc3/logs/CR.log /tomcat/logs/tc3.log
    ln -s /tomcat/tc4/logs/CR.log /tomcat/logs/tc4.log
    ln -s /tomcat/tc5/logs/CR.log /tomcat/logs/tc5.log
    ln -s /tomcat/tc6/logs/CR.log /tomcat/logs/tc6.log
    ln -s /tomcat/tc7/logs/CR.log /tomcat/logs/tc7.log
    ln -s /tomcat/tc8/logs/CR.log /tomcat/logs/tc8.log
    
    rm -fR /tomcat/webapps
    mv /tomcat/tc1/webapps /tomcat/webapps
    rm -fR /tomcat/tc1/webapps
    rm -fR /tomcat/tc2/webapps
    rm -fR /tomcat/tc3/webapps
    rm -fR /tomcat/tc4/webapps
    rm -fR /tomcat/tc5/webapps
    rm -fR /tomcat/tc6/webapps
    rm -fR /tomcat/tc7/webapps
    rm -fR /tomcat/tc8/webapps
    ln -s /tomcat/webapps /tomcat/tc1/webapps
    ln -s /tomcat/webapps /tomcat/tc2/webapps
    ln -s /tomcat/webapps /tomcat/tc3/webapps
    ln -s /tomcat/webapps /tomcat/tc4/webapps
    ln -s /tomcat/webapps /tomcat/tc5/webapps
    ln -s /tomcat/webapps /tomcat/tc6/webapps
    ln -s /tomcat/webapps /tomcat/tc7/webapps
    ln -s /tomcat/webapps /tomcat/tc8/webapps
    rm -fR /tomcat/tc2/conf/Catalina/localhost
    rm -fR /tomcat/tc3/conf/Catalina/localhost
    rm -fR /tomcat/tc4/conf/Catalina/localhost
    rm -fR /tomcat/tc5/conf/Catalina/localhost
    rm -fR /tomcat/tc6/conf/Catalina/localhost
    rm -fR /tomcat/tc7/conf/Catalina/localhost
    rm -fR /tomcat/tc8/conf/Catalina/localhost
    ln -s /tomcat/tc1/conf/Catalina/localhost /tomcat/tc2/conf/Catalina/localhost
    ln -s /tomcat/tc1/conf/Catalina/localhost /tomcat/tc3/conf/Catalina/localhost
    ln -s /tomcat/tc1/conf/Catalina/localhost /tomcat/tc4/conf/Catalina/localhost
    ln -s /tomcat/tc1/conf/Catalina/localhost /tomcat/tc5/conf/Catalina/localhost
    ln -s /tomcat/tc1/conf/Catalina/localhost /tomcat/tc6/conf/Catalina/localhost
    ln -s /tomcat/tc1/conf/Catalina/localhost /tomcat/tc7/conf/Catalina/localhost
    ln -s /tomcat/tc1/conf/Catalina/localhost /tomcat/tc8/conf/Catalina/localhost
    rm -fR /tomcat/tc2/lib
    rm -fR /tomcat/tc3/lib
    rm -fR /tomcat/tc4/lib
    rm -fR /tomcat/tc5/lib
    rm -fR /tomcat/tc6/lib
    rm -fR /tomcat/tc7/lib
    rm -fR /tomcat/tc8/lib
    ln -s /tomcat/tc1/lib /tomcat/tc2/lib
    ln -s /tomcat/tc1/lib /tomcat/tc3/lib
    ln -s /tomcat/tc1/lib /tomcat/tc4/lib
    ln -s /tomcat/tc1/lib /tomcat/tc5/lib
    ln -s /tomcat/tc1/lib /tomcat/tc6/lib
    ln -s /tomcat/tc1/lib /tomcat/tc7/lib
    ln -s /tomcat/tc1/lib /tomcat/tc8/lib
    rm -fR /tomcat/tc2/common
    rm -fR /tomcat/tc3/common
    rm -fR /tomcat/tc4/common
    rm -fR /tomcat/tc5/common
    rm -fR /tomcat/tc6/common
    rm -fR /tomcat/tc7/common
    rm -fR /tomcat/tc8/common
    ln -s /tomcat/tc1/common /tomcat/tc2/common
    ln -s /tomcat/tc1/common /tomcat/tc3/common
    ln -s /tomcat/tc1/common /tomcat/tc4/common
    ln -s /tomcat/tc1/common /tomcat/tc5/common
    ln -s /tomcat/tc1/common /tomcat/tc6/common
    ln -s /tomcat/tc1/common /tomcat/tc7/common
    ln -s /tomcat/tc1/common /tomcat/tc8/common

    yvu, 27 Августа 2009

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (!@unlink('very-important-file.db')){
          echo strtoupper('ф'), 'а', 'й', 'л', 'а', ' ', 'н', 'е', ' ', 'с', 'у', 'щ', 'е', 'с', 'т', 'в', 'у', 'е', 'т';
    } else {
          echo strtoupper('ф'), 'а', 'й', 'л', ' ', 'с', 'у', 'щ', 'е', 'с', 'т', 'в', 'о', 'в', 'а', 'л';
    }

    так проверяют существование файла все Ъ пацаны

    VladX, 26 Августа 2009

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

    +141.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    HWsDigrfLvdsctrlRxEnable(HWvDigrflvdsctrlrxenableOn) ; 
        HWsDigrfLvdsctrlIcmEnable(HWvDigrflvdsctrlicmenableOn) ;
        HWsDigrfLvdsctrlRxSpeed(HWvDigrflvdsctrlrxspeedF2) ; 
    
        HWsDigrfLvdsctrlTxEnable(HWvDigrflvdsctrltxenableOn) ;
        HWsDigrfLvdsctrlTxSpeed(HWvDigrflvdsctrltxspeedF) ;

    Кусок конфигурационного кода (реальный проект). Фантазия авторов на имена функций поражает...

    govnocoder, 26 Августа 2009

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

    +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
    while(true)  // Последующие недели.
            {
                for($i = 0; $i < 7; $i++)
                {
                    if($this->date_count > $this->all_days)
                        break;
                    else
                    {
                        $this->calendar_table[$this->week_counter][$i] = $this->date_count;
                        $this->date_count++;
                    }
                }
                if($this->date_count > $this->all_days)
                    break;
                $this->week_counter++;
            }

    Заполнение массива с датами для календаря после первой недели...

    Grockles, 25 Августа 2009

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

    −118.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
    28. 28
    29. 29
    30. 30
    if ( $in{s} )
    {
    
    #	максимальная вложенность =3 - сформируем строку для чекбокса по-простому 
    	my %ha = db_select_row [ 'id', 'title', 'parent_id' ], "catalog_section", "id=$in{s}			AND `object_id`=1";
    	if (%ha)    																				          		    ¦
    	{           																				          			¦
    		$selected_only[ $ha{parent_id} ] = 'selected';    										          			
    	}    																						              		¦
    	     																						          			¦
    	my %parent = db_select_row [ 'title', 'parent_id' ], "catalog_section",  "id=$ha{parent_id}		AND `object_id`=1";
    	my %parent2 = db_select_row [ 'title', 'parent_id' ], "catalog_section", "id=$parent{parent_id}	AND `object_id`=1";
    	my $only_title = $ha{title};
    
    	$only_title = "$parent{title} &mdash; $only_title"  if %parent;
    	$only_title = "$parent2{title} &mdash; $only_title" if %parent2;
    	$only_this_cat_string = "";
    
    	if ( %parent || %parent2 )
    	{
    
    		#%ha
    		$only_this_category_text = qq~
    			<span>
    				<input type="checkbox" name="only_this_cat" id="only_this_cat" $checked_only onchange="checkSelect();">
    				<label for="only_this_cat">Искать только в разделе &laquo;$only_title&raquo;</label>
    			</span>~;
    
    	}
    }

    по-простому

    nolka4, 25 Августа 2009

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

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    //Из библиотеки prototype
    
    ....
      unescapeHTML: function() {
        return this.replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>');
      }
    
    ....

    Смеяться надо из-за того, что замена &amp; на & идёт первой, таким образом &amp;lt замениться на <, а не на &lt;

    Oleg_quadro, 24 Августа 2009

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