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

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

    +158

    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
    /*	С этого момента начинается чудо, не спрашивайте меня как это работает,
    				я сам не в курсе, но смысл вот в чём: Надо резануть строку по длине... 
    				Говоно вопрос?! А нет, надо чтобы резалось по пробелу... Фигня? Надо, чтобы 
    				нормально учитывались ссылки в тексте... Уже лучше? А это ещё не всё... надо, чтобы
    				Нормально обрабатывались теги в тексте, которые как оказалось могут присутствовать.
    				
    				Ну и работаем как обычно :) Дедлайн прошёл неделю назад, ТЗ по мере выполнения
    				менялось раза 3, пришлось ещё покреативить и поверстать... вот так и живём :)
    				
    				Вы не поверите... но чудо не пришлось по вкусу, придётся его выключить и забыть про него :(
    				
    				Вы снова не поверите, чудо опять нужно!!! Захотели опять спойлеры, 1000 символов и прочие 
    				плюшки *facepalm* Хорошо, что многое закомментил, не придётся заново всё делать
    				
    			*/
    			function cutfunct($string, $length) {
    				$cache = $string;
    				$string = mb_substr($string, 0, $length,'UTF-8');
    				$length += mb_strlen($string, "UTF-8")-mb_strlen(strip_tags($string), "UTF-8");
    				
    				if($string != $cache){
    					$position = mb_strrpos($string, ' ', 'UTF-8'); 
    					$string = mb_substr($string, 0, $position, 'UTF-8');
    				}
    				return $string;
    			}
    			/*ЧУДО OFF*/

    UncaughtException, 02 Декабря 2014

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

    +158

    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
    <?php
    	public function clearCache() {
    		if(method_exists('regedit', 'getControllerHost')) {
    			$host = regedit::getControllerHost(true);
    			if(!is_null($host)){
    				$host->cacheClear();
    			} else {
    				$sDir = rtrim(mainConfiguration::getInstance()->includeParam('system.static-cache'), '/');
    				if(getServer('WINDIR') || getServer('windir')){
    					$arDirs = glob($sDir . '/*');
    					foreach($arDirs as $item){
    						$item = rtrim($item, "\\/ ") . "/";
    						exec("rd /s /q $item");
    					}
    				} else {
    					exec("rm -rf $sDir/*");
    				}
    			}
    		} else {
    			$sDir = rtrim(mainConfiguration::getInstance()->includeParam('system.static-cache'), '/');
    			if(getServer('WINDIR') || getServer('windir')) {
    				$arDirs = glob($sDir . '/*');
    				foreach($arDirs as $item) {
    					$item = rtrim($item, "\\/ ") . "/";
    					exec("rd /s /q $item");
    				}
    			} else {
    				exec("rm -rf $sDir/*");
    			}
    		}
    	}

    Найди два отличия.

    Elfet, 10 Ноября 2014

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

    +54

    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
    //Given a number, turns on those segments
    //If number == 10, then turn off number
    void lightNumber(int numberToDisplay) {
    
    #define SEGMENT_ON  LOW
    #define SEGMENT_OFF HIGH
    
      switch (numberToDisplay){
    
      case 0:
        digitalWrite(segA, SEGMENT_ON);
        digitalWrite(segB, SEGMENT_ON);
        digitalWrite(segC, SEGMENT_ON);
        digitalWrite(segD, SEGMENT_ON);
        digitalWrite(segE, SEGMENT_ON);
        digitalWrite(segF, SEGMENT_ON);
        digitalWrite(segG, SEGMENT_OFF);
        break;
    
      case 1:
        digitalWrite(segA, SEGMENT_OFF);
        digitalWrite(segB, SEGMENT_ON);
        digitalWrite(segC, SEGMENT_ON);
        digitalWrite(segD, SEGMENT_OFF);
        digitalWrite(segE, SEGMENT_OFF);
        digitalWrite(segF, SEGMENT_OFF);
        digitalWrite(segG, SEGMENT_OFF);
        break;
    
    
    ; и т. д.
    
    
      case 9:
        digitalWrite(segA, SEGMENT_ON);
        digitalWrite(segB, SEGMENT_ON);
        digitalWrite(segC, SEGMENT_ON);
        digitalWrite(segD, SEGMENT_ON);
        digitalWrite(segE, SEGMENT_OFF);
        digitalWrite(segF, SEGMENT_ON);
        digitalWrite(segG, SEGMENT_ON);
        break;
    
      case 10:
        digitalWrite(segA, SEGMENT_OFF);
        digitalWrite(segB, SEGMENT_OFF);
        digitalWrite(segC, SEGMENT_OFF);
        digitalWrite(segD, SEGMENT_OFF);
        digitalWrite(segE, SEGMENT_OFF);
        digitalWrite(segF, SEGMENT_OFF);
        digitalWrite(segG, SEGMENT_OFF);
        break;
      }
    }

    Управление 7-сегментным индикатором для ардуины

    govnokod3r, 25 Октября 2014

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

    +84

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    private static final int INT_5 = 5;
    private static final int INT_3 = 3;
    private static final int INT_4 = 4;
    private static final int INT_6 = 6;
    private static final int INT_7 = 7;
    private static final int INT_8 = 8;

    xaoc, 09 Октября 2014

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

    −84

    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
    public function isContainsHiddenId(hiddenId: String): Boolean
     		{
    -			for (var index: int = 0; index < hiddenIds.length; index++)
    +			/*for (var index: int = 0; index < hiddenIds.length; index++)
     			{
     				if (hiddenIds[index] == hiddenId)
     				{
     					return true;
     				}
     			}
    -			return false;
    +			return false;*/
    +			return hiddenIds.indexOf(hiddenId) == -1 ? false : true;

    От автора MathAndGeometryUtils, после того, как ему посоветовали использовать indexOf.

    wvxvw, 19 Сентября 2014

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

    +54

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Exchange::Params pars = rawParams;
    for(Exchange::Params::const_iterator i = rawParams.constBegin(); i!= rawParams.constEnd(); i++){
        LOGN() << "Work with " << i.key() << "=" << i.value();
        if(m_specific.contains(i.key())){
            pars[i.key()] =
                (this->*m_specific.value(i.key())) (i.value());     //черная магия :)
        }
    }

    Наследие из большого рабочего проекта.
    Чтобы сохранить ясность ума на весь день решил не пытаться понять что оно делает.

    FlySnake, 08 Сентября 2014

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (!isset($_SESSION[$_SESSION['tab_name']]['FILE_ATTRIBUTES'][$request['itemId']][$request['itemFieldId']])) {
          $_SESSION[$_SESSION['tab_name']]['FILE_ATTRIBUTES'][$request['itemId']][$request['itemFieldId']] = $request['itemFieldId'];
    } else {
          unset($_SESSION[$_SESSION['tab_name']]['FILE_ATTRIBUTES'][$request['itemId']][$request['itemFieldId']]);
    }

    И это часный проект где программисту платять большие деньги.
    А еще у автора более 5 лет опыта
    А сам сок, такого дерьма в проекте более 1000 обращений.

    vv3d0x, 29 Августа 2014

    Комментарии (22)
  9. Java / Говнокод #16283

    +69

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public static boolean isEmpty(CharSequence str) {
        if (str == null || str.length() == 0)
            return true;
        else
            return false;
    }

    Я считаю это странным
    Нашёл в android.text.TextUtils

    jonasas, 07 Июля 2014

    Комментарии (22)
  10. VisualBasic / Говнокод #16218

    −130

    1. 1
    2. 2
    3. 3
    4. 4
    Привет всем, помогите решить проблему.
    reached limit: cannot create any more controls for this from
    Как я понял, число контроллеров не должно превышать 255-256 в одной форме. Как этого избежать?
    Можно ли вообще создавать формы с общими переменными? Спасибо

    http://vbbook.ru/visual-basic/vvedenie-visual-basic/

    brutushafens, 24 Июня 2014

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

    +142

    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
    public Config(string[] str)
            {
                InitializeComponent();
                try
                {
                    textBox5.Text = str[0];
                    textBox6.Text = str[1];
                    textBox1.Text = str[2];
                    textBox2.Text = str[3];
                    textBox3.Text = str[4];
                    textBox4.Text = str[5];
                    textBox7.Text = str[6];
                    raz = str[7];
                }
                catch (Exception)
                {
                    return;
                }
            }

    Классика. Говнокод эпохи барокко. Строк мало, но пованивает.

    GreatMASTERcpp, 19 Июня 2014

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