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

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

    +23

    1. 1
    2. 2
    Вообще-то HTML и CSS, но вот на это ругается валидатор:
    <b class="r10"></b><b class="r7"></b><b class="r5"></b><b class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r2"></b><b class="r1"></b><b class="r1"></b><b class="r1"></b>

    Дизайн - базарунет, но повтыкайте там хотя б пробелы &nbsp;

    guest, 26 Декабря 2008

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

    +104.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
    echo “<select id=\”seltel[".$i."]\”>”;
    switch ($data2["PHONE"][$i]["type"]) {
    case “Факс”:
    echo “<option selected>Факс”;
    echo “<option>Офисный телефон”;
    echo “<option>Колцентр”;
    echo “<option>Телефон”;
    echo “<option>Мобильный телефон”;
    break;
    case “Офисный телефон”:
    echo “<option>Факс”;
    echo “<option selected>Офисный телефон”;
    echo “<option>Колцентр”;
    echo “<option>Телефон”;
    echo “<option>Мобильный телефон”;
    break;
    case “Колцентр”:
    echo “<option>Факс”;
    echo “<option>Офисный телефон”;
    echo “<option selected>Колцентр”;
    echo “<option>Телефон”;
    echo “<option>Мобильный телефон”;
    break;
    case “Телефон”:
    echo “<option>Факс”;
    echo “<option>Офисный телефон”;
    echo “<option>Колцентр”;
    echo “<option selected>Телефон”;
    echo “<option>Мобильный телефон”;
    break;
    case “Мобильный телефон”:
    echo “<option>Факс”;
    echo “<option>Офисный телефон”;
    echo “<option>Колцентр”;
    echo “<option>Телефон”;
    echo “<option selected>Мобильный телефон”;
    break;
    };
    echo “</select><br/>”;

    вот как надо создавать выпадающие списки!

    guest, 12 Декабря 2008

    Комментарии (17)
  4. Perl / Говнокод #100

    −1006.6

    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
    @lib_001=('A','G','C','T','A');
    @lib_002=('C','T','A','A','G');		 
    @lib_003=('T','G','C','A','T');
    
    $string=<FILE>;
    @sequence=split("",$string);
    @code=@sequence[-7..-3];
    		
    if((join('',@lib_001) eq join('',@code)) or
        (join('',@lib_001[0..3]) eq join('',@code[0..3])) or
        (join('',@lib_001[1..4]) eq join('',@code[1..4])) or
        (join('',@lib_001[0,1,2,4]) eq join('',@code[0,1,2,4])) or
        (join('',@lib_001[0,2,3,4]) eq join('',@code[0,2,3,4])) or
        (join('',@lib_001[0,1,3,4]) eq join('',@code[0,1,3,4]))) 
    	{$tag=join('',@code);
    	 $closest_tag=join('',@lib_001);}
    			
    elsif((join('',@lib_002) eq join('',@code)) or
         (join('',@lib_002[0..3]) eq join('',@code[0..3])) or
         (join('',@lib_002[1..4]) eq join('',@code[1..4])) or
         (join('',@lib_002[0,1,2,4]) eq join('',@code[0,1,2,4])) or
         (join('',@lib_002[0,2,3,4]) eq join('',@code[0,2,3,4])) or
         (join('',@lib_002[0,1,3,4]) eq join('',@code[0,1,3,4]))) 
    	{$tag=join('',@code);
    	 $closest_tag=join('',@lib_002);}
    		
    elsif((join('',@lib_003) eq join('',@code)) or
         (join('',@lib_003[0..3]) eq join('',@code[0..3])) or
         (join('',@lib_003[1..4]) eq join('',@code[1..4])) or
         (join('',@lib_003[0,1,2,4]) eq join('',@code[0,1,2,4])) or
         (join('',@lib_003[0,2,3,4]) eq join('',@code[0,2,3,4])) or
         (join('',@lib_003[0,1,3,4]) eq join('',@code[0,1,3,4]))) 
    	{$tag=join('',@code);
    	 $closest_tag=join('',@lib_003);}
    
    else
    	{$tag=join('',@code);
    	  $closest_tag='NONE';}

    guest, 10 Декабря 2008

    Комментарии (17)
  5. SQL / Говнокод #24

    −401.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
    SELECT *
    FROM (SELECT n.root, n.nodeid, n.name, UNIX_TIMESTAMP(m.createtime) AS
     updatetime, (SELECT COUNT(*) FROM fs_node WHERE sid = n.sid AND root = n.root
      AND cleft > n.cleft AND cright < n.cright AND clevel = n.clevel + 1 AND
       nodetype = 1) AS objcount FROM fs_node AS n, fs_node AS m WHERE n.sid = $ sid
        AND n.root IN (0, 1, 2, 3) AND n.nodetype = 0 AND m.nodeid =(SELECT MAX(
        nodeid) FROM fs_node WHERE sid = n.sid AND root = n.root AND cleft > n.cleft
         AND cright < n.cright AND clevel = n.clevel + 1 AND nodetype = 1) UNION ALL
         SELECT n.root, NULL, NULL, UNIX_TIMESTAMP(m.createtime) AS updatetime, (
         SELECT COUNT(*) FROM fs_node WHERE sid = $ sid AND root = n.root AND clevel
          = 1 AND nodetype = 1) AS objcount FROM (SELECT 0 AS root UNIONSELECT 1
           UNIONSELECT 2 UNIONSELECT 3) AS n, fs_node AS m WHERE m.nodeid =(SELECT
            MAX(nodeid) FROM fs_node WHERE sid = $ sid AND root = n.root AND clevel
             = 1 AND nodetype = 1)) AS tmp
    ORDER BY updatetime DESC

    guest, 27 Ноября 2008

    Комментарии (17)
  6. JavaScript / Говнокод #14

    +35.6

    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
        function getError() {
            var error = false;
            if (isNaN($('client_sum').value) || $('client_sum').value <= 0) {
                $('error_op').innerHTML = "Только число большее  нуля";
                error = true;
            } else {
                $('error_op').innerHTML = "";
            }
            if ($('comment').value == "") {
                $('error_op2').innerHTML = "Введите примечание";
                error = true;
            } else {
                $('error_op2').innerHTML = "";
            }
            if (error == true) return false;
        }

    guest, 25 Ноября 2008

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

    +1

    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
    Функция ЭтоVIN(Знач Значение, Знач ПробелыЗапрещены = Истина) Экспорт 
    	
    	Если ТипЗнч(Значение) <> Тип("Строка") Тогда
    		Возврат Ложь;
    	КонецЕсли;   
    	
    	Если Не ПробелыЗапрещены Тогда
    		Значение = СтрЗаменить(Значение, " ", "");
    	КонецЕсли;
    	
    	Возврат ЗначениеЗаполнено(Значение)
    	И (СтрДлина(Значение) = 17)
    	И 	
    	// Если содержит только цифры, то в результате замен должна быть получена пустая строка.
    	// Проверять при помощи ПустаяСтрока нельзя, так как в исходной строке могут быть пробельные символы.
    	СтрДлина(  
    	СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить(	СтрЗаменить(
    	СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить(
    	СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить(	СтрЗаменить(
    	СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить(
    	СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( 
    	СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить(
    	СтрЗаменить( СтрЗаменить( СтрЗаменить( 
    	Значение, "0", ""), "1", ""), "2", ""), "3", ""), "4", ""), "5", ""), "6", ""), "7", ""), "8", ""), "9", "")
    	, "A", ""), "B", ""), "C", ""), "D", ""), "E", ""), "F", ""), "G", ""), "H", ""), "J", ""), "K", ""), "L", ""), "M", "")
    	, "N", ""), "P", ""), "R", ""), "S", ""), "T", ""), "U", ""), "V", ""), "W", ""), "X", ""), "Y", ""), "Z", "")) = 0; 
    	
    КонецФункции

    Функция определяет является ли строка VIN, метода выбрана забавная - в строке удаляются все допустимые символы, то что осталось, по мнению автора - мусор, т.е. vin невалидный. Видимо просто проверить каждый символ на вхождение в допустимый алфавит это слишком просто ;).

    VladC, 20 Мая 2024

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

    0

    1. 1
    https://github.com/HermanKirshin/MainBrainfuck/blob/main/_.cs

    "Если кому интересно - предлагаю угадать что делает этот код" (Ц)

    JloJle4Ka, 23 Июня 2023

    Комментарии (16)
  9. Куча / Говнокод #28633

    +7

    1. 1
    Логика работы бота для создания активности.

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

    Особенно опасна такая ситуация на небольших форумах, где тем - две-три и - обчелся, ибо ведет к охлаждению интереса к ним у юзеров и запустеванию. В целях борьбы с этим явлением, на форумах обязательно имеются разделы "флудильня" и подобные, где пользователи могли бы пообщаться на нейтральные темы, но ввиду вышеописанного принципа эта мера также не является эффективной.

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

    1. Бот бот-батбот-батбот "прошевеливает пламень уст" в замершей ветке, анализируя дату последнего коммента и отвечая на него комментарием, который будет являться своеобразным эвентом - сигналом, подталкивающих пользователей к общению.
    2. Поскольку по статистике человек запоминает последнюю сказанную собеседником фразу (а читатель - последнее предложение в абзаце), несложно было разработать незамысловатый алгоритм, который парсит комментарии и сортирует по дате. Комментарии дифференцируются на пригодные - в последнем предложении есть по крайней мере один глагол, - и непригодные, т.е. не содержащие глаголов.

    3. Из фразы в случайном порядке вычленяется глагол. Затем, при использовании таблицы спряжений, глаголу придается изъявительное наклонение единственного числа прошедшего времени (нашёл, сделал, обработал, уснул, купил). Далее бог составляет вопросительное предложение по схеме частица+вопросительное наречие+глагол, например, "ну как, сделал?", которое бот постит в ответ на последний комментарий.

    guest6_uebok, 14 Марта 2023

    Комментарии (16)
  10. Куча / Говнокод #28456

    −3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Решил поставить пароль на BIOS (UEFI), но и он, оказывается, не панацея.
    Если ты параноик, то просто таскай ноутбук с собой, а вот если у тебя системник - смирись, за тобой могут следить.
    
    https://techarks.ru/windows/bios/kak-vosstanovit-ili-ustanovit-parol-bios-ili-uefi-dlya-kompyuterov-s-windows/
    https://habr.com/ru/post/128466/

    YpaHeLI_, 24 Ноября 2022

    Комментарии (16)
  11. Куча / Говнокод #28375

    −4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    На работе такая таска:
    Есть сервис, который запускает наши сервисы и следит за ними, напр. перезапускает, если один из них упал.
    Таска такая, что нужно посылать всем сервисам сообщения из командной строки.
    Т.е. уже можно послать сигналы из командной строки (SIGTERM, SIGHUP, и.т.д)
    `svctl -s stop` - наример.
    Но теперь нужно посылать SIGUSR1, перед этим записав в файл сообщение, тоже переданное из командной строки. Все запущенные сервисы по этому сигналу должны прочитать файл с сообщением и обработать его.
    И вот тут я сомневаюсь, что так правильно.
    1. Может лучше открыть именованный канал, и туда всё посылать, без сигналов? Но тут треды и код усложнится, а проект простой, на 20 методов в двух классах.
    2. Если это всё же правильно, то вместо файла тоже может использовать именованный канал для обмена сообщениями?

    YpaHeLI_, 19 Сентября 2022

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