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

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

    −110

    1. 1
    2. 2
    If f <> "" Then Shell(Path, AppWinStyle.Hide)
            If f = "" Then Shell(Path)

    Угу, про Else тогда еще не слышали :)

    ipro, 12 Февраля 2012

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

    +156

    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
    function mydebug($arr1=array(), $narr1='', $arr2=array(), $narr2='', $arr3=array(),$narr3='',$arr4=array(),$narr4='',$arr5=array(),$narr5='',$arr6=array(),$narr6='',$arr7=array(),$narr7='' ) {
    	$var = 'arr';
    	$nvar =  'narr';
    	$quit = false;
    	for($i=1; $i<8; $i++) {
    		if(${$var.$i} == 'exit' ) {
    				$quit = true;
    				continue;
    			}
    			 
    			elseif( !is_array(${$var.$i}) || is_array(${$nvar.$i})) {
    				${$var.$i} = false;
    				${$nvar.$i} = false;
    			}
    			 
    			elseif(!empty(${$var.$i})) {
    				echo ${$nvar.$i}.'<br>';
    				var_dump(${$var.$i});
    				echo "<hr>";
    			}
    			 
    			else continue;
    	}
    	if($quit == true) {
    		exit;
    	}
    }

    breathe, 10 Февраля 2012

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

    +132

    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
    #define COMMAND_MARKER		'\x1B'
    #define COMMAND_SET			'='
    #define COMMAND_XOR			'^'
    #define COMMAND_OR			'|'
    #define COMMAND_AND			'&'
    
    void usbWriteOut(uchar *data, int len)
    {
    	while(len--) {
    		uchar c = *data;
    		buf[0] = buf[1];
    		buf[1] = buf[2];
    		buf[2] = buf[3];
    		buf[3] = c;
    		
    		if(buf[0] == COMMAND_MARKER) {
    			uint8_t val = (hex2u(buf[2]) << 4) | hex2u(buf[3]);
    			if(buf[1] == COMMAND_SET) {
    				colorData = val;
    			}
    			else if(buf[1] == COMMAND_XOR) {
    				colorData ^= val;
    			}
    			else if(buf[1] == COMMAND_OR) {
    				colorData |= val;
    			}
    			else if(buf[1] == COMMAND_AND) {
    				colorData &= ~val;
    			}
    		}
    	}
    }

    Простой баг оказался крайне подлым!
    При тестировании девайса терминалкой и чепятании команды ручками, каждый символ уходил в отдельном пакете и создавалось впечатление, что всё работает.
    После чего девайс был собран с применением большого количества термоклея, так что исправление бага оказалось совершенно непростым занятием >_<

    odmin, 09 Февраля 2012

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

    +1014

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    #ifndef _WIN32
        std::ostream  * dpOutputStream;
    #else
            ostream  * dpOutputStream;
    #endif

    делаем код портабельным.

    Dummy00001, 08 Февраля 2012

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

    +117

    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
    /// <summary>
    /// Преобразование элемента перечисления в строку
    /// </summary>			
    private String GetEnumElementString(Object e, Type t)
    {
    	string result = string.Empty;
    
    	if (t == typeof(AccessMode))
    	{
    		if ((AccessMode)e == AccessMode.CacheOnly)
    		{
    			result = LocalStrings.AccessMode_CacheOnly_RU;
    		}
    		else if ((AccessMode)e == AccessMode.ServerOnly)
    		{
    			result = LocalStrings.AccessMode_ServerOnly_RU;
    		}
    		else if ((AccessMode)e == AccessMode.ServerAndCache)
    		{
    			result = LocalStrings.AccessMode_ServerAndCache_RU;
    		}
    		else
    		{
    			throw new Exception(string.Format("Отсутствует конвертация перечисления {0} к списку строк.", e));
    		}
    	}
    	else if (t == typeof(MapImageType))
    	{
    		if ((MapImageType)e == MapImageType.Map)
    		{
    			result = LocalStrings.MapImageType_Map_RU;
    		}
    		else if ((MapImageType)e == MapImageType.Satellite)
    		{
    			result = LocalStrings.MapImageType_Sattelite_RU;
    		}
    		else if ((MapImageType)e == MapImageType.Hybrid)
    		{
    			result = LocalStrings.MapImageType_Hybrid_RU;
    		}
    		else
    		{
    			throw new Exception(string.Format("Отсутствует конвертация перечисления {0} к списку строк.", e));
    		}
    	}
    	else
    	{
    		throw new Exception(string.Format("Отсутствует конвертация перечисления {0} к списку строк.", e));
    	}
    
    	return result;
    }

    Конвертация Enum в строку. Аффтар уникален, и это лишь одно из проявлений его уникальности.
    Swith - для трусов, статические тулзы и Extension - для дураков. У нас для этого будут методы классов, между прочим класс, в который входит этот метод - UserControl.
    Кстати, поля LocalStrings - не константы, а статика:

    public static string AccessMode_CacheOnly_RU = "Только кэш"; ....

    ICELedyanoj, 08 Февраля 2012

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

    −134

    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
    Если Сумма25<>0 Тогда
    				с25=Сумма25/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма26<>0 Тогда
    				с26=Сумма26/Итог("Материалы")*Материалы;
    			КонецЕсли;
    			Если Сумма60<>0 Тогда
    				с60=Сумма60/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма691<>0 Тогда
    				с691=Сумма691/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма692<>0 Тогда
    				с692=Сумма692/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма6921<>0 Тогда
    				с6921=Сумма6921/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма6922<>0 Тогда
    				с6922=Сумма6922/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    
    			Если Сумма693<>0 Тогда
    				с693=Сумма693/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма6931<>0 Тогда
    				с6931=Сумма6931/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма6932<>0 Тогда
    				с6932=Сумма6932/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма694<>0 Тогда
    				с694=Сумма694/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма695<>0 Тогда
    				с695=Сумма695/Итог("Материалы")*Материалы;
    			КонецЕсли;
    			Если Сумма70<>0 Тогда
    				с70=Сумма70/Итог("Материалы")*Материалы;
    			КонецЕсли; 
    			Если Сумма97<>0 Тогда
    				с97=Сумма97/Итог("Материалы")*Материалы;
    			КонецЕсли;

    glavdir, 06 Февраля 2012

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

    +83

    1. 1
    2. 2
    3. 3
    symb("4")begin Хочешь узнать кто посещал твою страницу end; http://reserpo.my1.ru/index.html?opi=!random!
    
    $#4629447380677#$

    Кривой спамбот на паскале кривоспамит в пабликах

    ReckO, 05 Февраля 2012

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

    −116

    1. 1
    SELECT * FROM SomeTable WHERE Column1 = '%SearchWord%' AND Column2 = '%AnotherSearchWord%' AND Column3 = '%%' AND Column4 = '%%' AND Column5 = '%%'

    Коллега написал поиск на Reporting Services, в таблице есть несколько текстовых полей, пользователю предлагается заполнить несколько полей ввода. В представленном выше примере пользователь заполнил 2 поля из 5 и вот такой замечательный запрос идет на сервер.

    DBdev, 03 Февраля 2012

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /*
     @param string $ext File extension
     @return string Filename.
    */
    function GenFName($ext)
    {
        return md5(rand(rand(0, rand()), time())).md5(rand(rand(0, rand()), time())).".".$ext;
    }

    varg242, 31 Января 2012

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

    +157

    1. 1
    2. 2
    3. 3
    $topcellcolor = '"#e7e9f0" id="table_class_header"'; // заглавная строка
      $cellcolor1 =   '"#f8f9fb" id="table_class_1"'; // строка 1
      $cellcolor2 =   '"#FFFFFF" id="table_class_2"'; // строка 2

    Верстаем правильно...
    P.S. там нет дальше "строка 3", "строка 4", 5, 6,

    Чуете олдскульность? Раньше программеры были жесче! Это сейчас все расслабились со своими MVC, MVVM, декораторами, отделением бизнес-логики от кода и прочей чепухой...

    Nemoden, 31 Января 2012

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