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

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

    +2

    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
    public static void Init()
            {            
                LetterOrder = new Dictionary<char, int>
                              {
                                  {'A', 0},
                                  {'B', 1},
                                  {'C', 2},
                                  {'D', 3},
                                  {'E', 4},
                                  {'F', 5},
                                  {'G', 6},
                                  {'H', 7},
                                  {'I', 8},
                                  {'J', 9},
                                  {'K', 10},
                                  {'L', 11},
                                  {'M', 12},
                                  {'N', 13},
                                  {'O', 14},
                                  {'P', 15},
                                  {'Q', 16},
                                  {'R', 17},
                                  {'S', 18},
                                  {'T', 19},
                                  {'U', 20},
                                  {'V', 21},
                                  {'W', 22},
                                  {'X', 23},
                                  {'Y', 24},
                                  {'Z', 25},
                              };
            }

    C#-макака не умеющая, ни в char - 'A' ни в статические конструторы (и еще много чего: см. https://www.codingame.com/training/easy/encryptiondecryption-of-enigma-machine/solution?id=10246815)

    Lorip1971, 15 Февраля 2019

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

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    checkDateNP(value) {
            const date = new Date(value)
            const dateValue = date.setDate(date.getDate() + 1)
    
            return formatDate(dateValue, 'DD-MM-YYYY') === formatDate(this.item.date, 'DD-MM-YYYY') &&
            formatDate(dateValue, 'DD-MM-YYYY') === formatDate(this.item.dateEnd, 'DD-MM-YYYY')
          },
    
          checkDateOther(value) { // Проверка корреткности ввода данных по заявкам типа "КА" и "МС".
            return formatDate(this.item.startTime, 'DD-MM-YYYY') >= formatDate(this.item.date, 'DD-MM-YYYY')
          }
        }

    VueJs. Проверка корреткности ввода данных по заявкам

    DKVitol, 14 Февраля 2019

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public function putSitemapContent(SitemapFile $sitemapFile)
    	{
    //		always write in new empty file - tak nado, a to pechalka ((
    		if ($this->isExists())
    			$this->delete();

    1C-Битрикс - серьезный фреймворк для решения бизнес-задач.
    (код исходников)

    quentiam, 14 Февраля 2019

    Комментарии (1)
  5. JavaScript / Говнокод #25364

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    //We want to create a range of N elements (from 0 to N-1 for simplicity)
    
    const N = 10;
    
    const res1 = Array.apply(null, {length: N}).map(Number.call, Number);
    
    const res2 = [...Array(N).keys()];
    
    const res3 = Array.from({length: N}, (val, i) => i); 
    
    const res4 = Array(N).fill().map((e,i)=>i);

    Давайте создавать числовые последовательности.
    Бонусные баллы если в Вашем языке возможно также задать начальное значение и шаг.

    bootcamp_dropout, 08 Февраля 2019

    Комментарии (130)
  6. SQL / Говнокод #25360

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    CREATE TABLE `test` (
        `id` INT(11) unsigned NOT NULL AUTO_INCREMENT,
         `parent` INT(10) unsigned NOT NULL DEFAULT '0',
          `name` VARCHAR(50),
         PRIMARY KEY (`id`)
        ) ENGINE=InnoDB;
    INSERT INTO test (id, parent, name) values (1, 0, '10'),(2, 1, '21'),(4, 3, '43'),(5, 0, '50'),(6, 5, '65'),(7, 6, '76'),(8, 7, '87'),(9, 8, '98');
    SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4, t5.name as lev5, t6.name as lev6, t7.name as lev7 FROM `test` AS t1 LEFT JOIN test AS t2 ON t2.`parent` = t1.`id`  LEFT JOIN test AS t3 ON t3.`parent` = t2.`id`  LEFT JOIN test AS t4 ON t4.`parent` = t3.`id` LEFT JOIN test AS t5 ON t5.`parent` = t4.`id` LEFT JOIN test AS t6 ON t6.`parent` = t5.`id` LEFT JOIN test AS t7 ON t7.`parent` = t6.`id`;

    взять последнего парента с седьмого колена!
    я просто похлопаю :)

    websbkinfo, 07 Февраля 2019

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    https://www.quora.com/As-a-software-engineer-in-your-opinion-what-are-the-biggest-bottlenecks-and-or-inefficiencies-in-programming-today
    
    
    The key to overcoming this bottleneck, I believe, is live coding, whereby you can inspect and modify code and data while the program is running. Detect a bug? No problem. Immediately inspect the code and data to determine the cause. Make the appropriate changes. Continue execution. No need to save the code, compile the code and rerun the program from the beginning.

    оказывается то, что делали пхпшники начала нулевых, правя по FTP в Notepad++ файлы на живом сервере это т.н. "Live coding", и за этим будущее

    gueest8, 06 Февраля 2019

    Комментарии (93)
  8. JavaScript / Говнокод #25344

    +2

    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
    function xPost(t,v){
    var xmlHttpReq = false;
    var self = this;
    if(window.XMLHttpRequest){self.xmlHttpReq=new XMLHttpRequest();}
    else if(window.ActiveXObject){self.xmlHttpReq=new ActiveXObject("Microsoft.XMLHTTP");}
    self.xmlHttpReq.open('POST',"http"+(gethttps()?'s':'')+"://www.gkh-kemerovo.ru/portal2/hint.php",true);
    self.xmlHttpReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function(){
    if(self.xmlHttpReq.readyState == 4){
    upd(t,self.xmlHttpReq.responseText);}}
    self.xmlHttpReq.send(gqu(t,v));}
    function gqu(t,v){
    switch(t){
    case 'street': q='t='+t;break;
    default: q='t='+t+'&v='+v;}return q;}
    function upd(t,s){
    if(s=='false'){window.alert('Личный кабинет временно не доступен. Просим прощения за доставленные неудобства. Попытайтесь войти позднее.');return false;}
    switch(t){
    case 'street':streets=JSON.parse(s);/*alert(names(streets))*/;break;
    case 'house':houses=JSON.parse(s);/*alert(names(houses));*/break;
    case 'flat':flats=JSON.parse(s);/*alert(names(flats));*/break;
    case 'lk':document.getElementById('el').innerHTML="";if(s=='5'){fa.action="/portal/index.php";}if(s=='7'){fa.action="/portal2/index.php";}if(s=='0'){document.getElementById('el').innerHTML="Неправильный лицевой счет";}
    }}
    function gohttps(){var a=document.location.toString();window.location='https'+a.substr(4,a.length);}
    function gethttps(){if(document.location.toString().indexOf('https://')==-1)return false;else return true;}

    оригинальное форматирование сохранено

    pahhan, 31 Января 2019

    Комментарии (5)
  9. Си / Говнокод #25341

    +2

    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
    /*
    * Place the right command in the parameter AY temperature fine adjust
    * Uses number from PPD less 11.
    */
    switch (header->cupsCompression)
    {
    case 1 :
      strcpy(Fadjt,"{AY;-10,");
      break;
    case 2 :
      strcpy(Fadjt,"{AY;-09,");
      break;
    case 3 :
      strcpy(Fadjt,"{AY;-08,");
      break;
    case 4 :
      strcpy(Fadjt,"{AY;-07,");
      break;
    case 5 :
      strcpy(Fadjt,"{AY;-06,");
      break;
    case 6 :
      strcpy(Fadjt,"{AY;-05,");
      break;
    case 7 :
      strcpy(Fadjt,"{AY;-04,");
      break;
    case 8 :
      strcpy(Fadjt,"{AY;-03,");
      break;
    case 9 :
      strcpy(Fadjt,"{AY;-02,");
      break;
    case 10 :
      strcpy(Fadjt,"{AY;-01,");
      break;
    case 11 :
      strcpy(Fadjt,"{AY;+00,");
      break;
    case 12 :
      strcpy(Fadjt,"{AY;+01,");
      break;
    case 13 :
      strcpy(Fadjt,"{AY;+02,");
      break;
    case 14 :
      strcpy(Fadjt,"{AY;+03,");
      break;
    case 15 :
      strcpy(Fadjt,"{AY;+04,");
      break;
    case 16 :
      strcpy(Fadjt,"{AY;+05,");
      break;
    case 17 :
      strcpy(Fadjt,"{AY;+06,");
      break;
    case 18 :
      strcpy(Fadjt,"{AY;+07,");
      break;
    case 19 :
      strcpy(Fadjt,"{AY;+08,");
      break;
    case 20 :
      strcpy(Fadjt,"{AY;+09,");
      break;
    case 21 :
      strcpy(Fadjt,"{AY;+10,");
      break;
    }

    cykablyad, 31 Января 2019

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

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    let tableCellHamburgers = Array.prototype.slice.call(document.getElementsByClassName('js-listen__letters-table__hamburger'));
      tableCellHamburgers.forEach((tableCellHamburger) => {
    	let code = Array.prototype.slice.call(tableCellHamburger.classList).filter(elem => elem.indexOf('js-table__cell__hamburger__') === 0)[0].replace('js-table__cell__hamburger__', '');
    	let searchInput = document.querySelector(`.js-table__cell__search-input__${code}`);
    	if (!(searchInput && searchInput.value)) {
    	  tableCellHamburger.style.filter = 'none';
    	}
    	let dropdownContent = document.querySelector(`.js-table__cell__dropdown-content__${code}`);
    	if (dropdownContent) {
    	  dropdownContent.style.display = 'none';
    	}
      });

    Автор этого кода (full-stack программист) собирался выпилить jQuery из проекта, т.к. всю работу с DOM давно можно красиво писать на чистом ES6. К счастью, он уволился, не осуществив свой замысел.

    webviewer, 30 Января 2019

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

    +2

    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
    ВЫБРАТЬ
    КОЛИЧЕСТВО ( РАЗЛИЧНЫЕ УвольнениеИзОрганизации.Сотрудник) КАК Сотрудник
    Кадровая история сотрудников спецслужб их.Подразделение,
    ЕСТЬNULL (КОЛИЧЕСТВО ( РАЗЛИЧНЫЕ ВЫБОР
    КОГДА УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование = "" По собой желанию, на учебу пункт 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за инвалидном п.3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование = "" По соб желанию, ребёнок-инвалид до 18 л., А 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , с переменой м. ж.,  пункт 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за ребенком до 14 лет, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , на пенсию, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" по соб желанию, п.3 статьи 77 ТК РФ""
    ТОГДА УвольнениеИзОрганизаций.Сотрудник
    КОНЕЦ ), 0) КАК увПоСобств,
     ЕСТЬNULL (ВЫБОР
     
    КОГДА УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" За прогулы, подпункт """" а"""" пункта 6 статьи 81 ТК РФ""
    ТОГДА УвольнениеИзОрганизаций.Сотрудник
    КОНЕЦ ,0) КАК УвПрогул,
    ЕСТЬNULL ( КОЛИЧЕСТВО ( РАЗЛИЧНЫЕ УвольнениеИзОрганизации.Сотрудник
    ),0) Как УвВсего
    ИЗ Документ.Увольнение.Сотрудник КАК УвольнениеИзОрганизации
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних как КадроваяИсторияСотрудниковСрезПоследних
    ПО Сотрудник КАК УвольнениеИзОрганизации.Сотрудник = КадроваяИсторияСотрудниковСрезПоследних.Сотрудник 
    ГДЕ 
    УвольнениеИзОрганизации.Ссылка.Организации в ИЕРАРХИИ (& Организация)
    И УвольнениеИзОрганизации.ДатаУвольнения >=& НачалоГода
     И (УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за инвалидном п.3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование = "" По соб желанию, ребёнок-инвалид до 18 л., А 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , с переменой м. ж.,  пункт 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за ребенком до 14 лет, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , на пенсию, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" по соб желанию, п.3 статьи 77 ТК РФ""
    ИЛИ  УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" За прогулы, подпункт """" а"""" пункта 6 статьи 81 ТК РФ""
    ) 
    СГРУППИРОВАТЬ ПО
    КадроваяИсторияСотрудниковСрезПоследних.Подразлеление
    ЕСТЬNULL (ВЫБОР 
    КОГДА Увольнение Зоран зайти.СтатьяТКРФ.Наименование = "" За прогулы, подпункт """" а"""" пункта 6 статьи 81 ТК РФ""
    ТОГДА УвольнениеИзОрганизации.Сотрудник 
    КОНЕЦ ,0);

    Зачем ему конфигуратор? Он и так может отчеты выводить в табДок через блокнот)))
    Ссылка на источник ТУТ - http://www.cyberforum.ru/1c/thread2394049.html

    dethmontt, 29 Января 2019

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