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

    В номинации:
    За время:
  2. Куча / Говнокод #24228

    −2

    1. 1
    2. 2
    Золотце
    https://lj.rossia.org/users/sadkov/103320.html?nc=55

    OpenGL - говно опенсурсное
    Попытался реализовать getPixel и putPixel на OpenGL, в результате получение одного пикселя занимает болшьшую часть времени выполнения программы. Другие люди тоже жалуются на тормознутость функций OpenGL, вроде glDrawPixels и glReadPixels

    https://stackoverflow.com/questions/39821850/why-is-glreadpixels-so-slow-and-are-there-any-alternative
    https://stackoverflow.com/questions/36534933/gldrawpixels-vs-textures-to-draw-a-2d-buffer-in-opengl

    >glDrawPixels is known to be very slow

    Зачем вообще нужно все это 3d ускорение? В DOS все было идеально:
    ((uint8_t*)(0xB8000))[y*320+x] = pixel

    почему нельзя современным программам предоставить такой 0xB8000 адрес и пару регистров вывода? Зачем все эти ритуалы? И да, MMU и protected mode значительно замедляют доступ к памяти, посему современный DOS работал бы на порядок быстрей Windows/Linux. Протекция памяти оправдана только на этапе разработки программы, а для release билда ее лучше отключить, чтобы иметь прямой доступ к реальной памяти.

    И я не одинок в негодовании:
    https://stackoverflow.com/questions/39430404/drawing-pixels-in-opengl

    >I'm using integrated GPU (Intel HD graphics 4000), as far as I know CPU and GPU share the same memory so why is it that I need to download? Why is it impossible to get a pointer?

    Начинаю думать, что Unabomber был прав во всем - надо к чертям взорвать офисы мразотных бюрократов из Khronos Group.

    j123123, 05 Мая 2018

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

    +2004

    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
    // ==UserScript==
    // @name         GK refine
    // @version      0.1
    // @description  opens comments on govnokod.ru... etc
    // @match        http://govnokod.ru/*
    // @match        http://www.govnokod.ru/*
    // @grant        none
    // ==/UserScript==
    
    // Показывает в стоке "new" около нового комментария
    // и пишет, сколько времени назад его оставили
    (function(){
        if(location.pathname != '/comments') return;
        
        var key = 'fcd0d66f-9ff0-4827-82f1-e183dc1ab98c-last-time';
        var lastTime = localStorage[key] ? +localStorage[key] : 0;
        var now = new Date();
        
        $('abbr.published').each(function(){
            var d = + new Date($(this).attr('title'));
            $(this).text(((now-d) / 1000 / 60).toFixed(2) + 'm');
            if(d > lastTime) $(this).after('<span style="color: red">NEW </span>');
        });
        localStorage[key] = +now;
    })();
    
    // Открывает скрытые комменты
    $("div.entry-comment-hidden").removeClass('entry-comment-hidden');

    Смотрю, а багры в стоке комментарий подменяют, чтобы пользователи не видели, где новый багор, а где старый.
    Я только сейчас это понял потому, что у меня около непросмотренного в стоке пишется "NEW" уже несколько месяцев.
    Запилил потому, что даже без багров не помнил, что открыл, а что нет. А тут в тему будет для тех, у кого платного аккаунта нет.

    1024--, 21 Августа 2016

    Комментарии (48)
  4. Куча / Говнокод #20302

    +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
    В последнее время наш сайт стали доставать true-программисты, студенты-идеалисты
    и прочие, комментариями с различными однобокими утверждениями,что переменные
    вида $peremennaya или функции шаблона function privet_miry() { /* ... */; } - это т.н.
    "говнокод". Отчасти оные товарищи правы, но...
    
    Наша всеми любимая поисковая система под названием Яндекс, умудряется придумывать
    все новые и новые фильтры с различными модификациями (не так давно был анонсирован АГС-40),
    которые по "неведомым" причинам признают порой вполне качественные сайты "малополезными",
    исключая последние из результов поиска. Одним из многочисленных факторов, влияющих на
    ранжирование и включение сайта в выдачу является уникальность контента (почитайте ответы
    Платона Щукина на любом более или менее приличном SEO-форуме). Но не будем отклоняться от темы,
    обсуждая целесообразность таких подарочков и их точность.
    
    Любой язык программирования, как известно имеет ограниченное количество синтаксических
    конструкций (не придирайтесь к словам). К примеру в PHP это if {...} else {...}, foreach(...): endforeach;
    и т.п. А с учетом API множества CMS (Drupal, Joomla, WordPress...) сниппеты могут и вовсе потерять
    "уникальность" с т.з. поисковой системы Яндекс. Соответственно мы вынуждены называть переменные,
    названия функций, ряд других элементов кириллическим транслитом.

    А всё почему? А потому, что Яндекс не нужен.

    >> #20296

    gost, 30 Июня 2016

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

    +7

    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
    using System;
    
    public class Test
    {
    	 private static void Main(string[] args)
            {
                int d = 2147483647;
    
                Console.WriteLine(d);
    
                long g = 2147483647+d;
    
                Console.WriteLine(g);
    
                long k = new MyClass() + new MyClass();
    
                Console.WriteLine(k);
            }
    
            public class MyClass
            {
                public static implicit operator int(MyClass m)
                {
                    return 5;
                }
    
                public static implicit operator long(MyClass m)
                {
                    return 100;
                }
            }
    }

    Типушня

    kegdan, 30 Апреля 2016

    Комментарии (48)
  6. Си / Говнокод #18242

    +143

    1. 1
    fp_env = popen("env", "r");

    не ну я даже не знаю.

    Dummy00001, 27 Мая 2015

    Комментарии (48)
  7. Objective C / Говнокод #18081

    −415

    1. 1
    [code]<?php echo "Похоже у минусатора всего 12-13 аккаунтов, посоны плюсание 4 раза чтоб этот пост дожил до завтра" ?>[/code]

    Her, 29 Апреля 2015

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

    +165

    1. 1
    2. 2
    3. 3
    <% var telString = data.phone.toString(); %>
    <p class="mb0">Phone: <a class="mb0" itemprop="telephone" rel="dofollow"><%= "("+telString[0]+telString[1]+telString[2]+") "+telString[3]+telString[4]+telString[5]+"-"+telString[6]+telString[7]+telString[8]+telString[9] %></a></p>
    <% } %>

    data.phone - телефон в виде "0951112222".
    Нужно привести к виду (095)111-2222.

    vetal, 15 Апреля 2015

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

    +161

    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
    function user_ini() {
    	
    	session_start();
    	dbconnect();
    	if(!isset($_SESSION['id']) && isset($_COOKIE['id'])) {
    		$u_id=security_sql($_COOKIE['id'],32);
    		$id_request = mysql_query("select id from users where uniq_id='$u_id'");
    		if(mysql_num_rows($id_request) == 1) {
    			$id_mass = mysql_fetch_array($id_request);
    			$_SESSION['id'] = $id_mass['id'];
    		}
    		else die("wrong user data");
    	}
    	if(isset($_SESSION['id'])) {
    		mysql_query("UPDATE users SET last_date='".date("Ymd")."'  where id='".$_SESSION['id']."'");
    	}
    }

    инициализируем юзверя

    zombie65536, 18 Марта 2015

    Комментарии (48)
  10. C# / Говнокод #16523

    +133

    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
    var status = true;
                    var name = aspnet_UsersRepository.FindAll().FirstOrDefault(u => u.aspnet_Membership.Email.Equals(model.Email, StringComparison.InvariantCultureIgnoreCase));
                    if (name != null) { return View("Error_user"); }
    
                    /*13.08.2014 EmirMamashovCode{} нахождение сущ. ли такой агент*/
                    var usersBalanses = UserBalancesRepository.FindAll().ToList();
                   /* если заполнено код агента и имя агента */
                    if (model.KodAgent != null && model.NameAgent != null)
                    {
                        foreach (var usersBalanse in usersBalanses)
                        {
                            if (model.KodAgent == usersBalanse.KodforPay)
                            {
                                status = true;
                            }
                            else{status = false;}
                        }
                        if (status == false)
                        {
                            return View("Error_notFoundAgent");
                        }
                       
                    }

    нахождение сущ. ли такой агент

    Emir, 13 Августа 2014

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

    +160

    1. 1
    ($isLead) ? $customerBalance = 0 : $customerBalance = $customerMapper->calculateBalance($customer);

    Код от мастера Йода

    andr435, 05 Августа 2014

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