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

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

    +129.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
    TYPE
       Numbers=RECORD
         a:ARRAY 1000 OF INTEGER;
         N:INTEGER;
       END;
    
    ........
    
    PROCEDURE Summ(OUT res:Numbers;IN a,b:Numbers); (*Проверена*)
     VAR
       max,i,sum:INTEGER;
    BEGIN (*Суммирование*)
      IF a.N>b.N THEN 
       max:=a.N;
      ELSE
       max:=b.N;
      END;
      i:=0;
      sum:=0;
      WHILE i<=max DO
       IF i<=a.N THEN
         sum:=sum+a.a[i];
       END;
       IF i<=b.N THEN
         sum:=sum+b.a[i];
       END;
       res.a[i]:=sum MOD 10;
       sum:=sum DIV 10;
       i:=i+1;
      END;
      IF sum>0 THEN
        res.N:=max+1;
        res.a[max+1]:=sum;
      ELSE
        res.N:=max;
      END;
    END Summ;

    Кусок из написанной одним энтузиастом-программером реализации длинной арифметики (комментарии сохранены)
    4 байта под каждую десятичную цифру. Много? Зато все понятно, как в школе ;)
    шесть + семь = три, единица на ум пошла...

    P.S. язык оберон - наследник паскаля

    guest, 10 Июня 2009

    Комментарии (8)
  3. Куча / Говнокод #2571

    +129.5

    1. 1
    2. 2
    3. 3
    <table cellpadding="5"><tr>
    <td width="90%"><input id="dezsearch" type="text" value="" class="text" onKeyDown="if(event.keyCode==13) {parent.location='/ads/find/?section=all&find='+document.getElementById('dezsearch').value;}"></td>
    <td><img src="/img/najti.gif" onClick="parent.location='/ads/find/?section=all&find='+document.getElementById('dezsearch').value"></td></tr></table>

    Вот так вот... Находится не в фрейме

    Suor, 08 Февраля 2010

    Комментарии (3)
  4. Assembler / Говнокод #1520

    +129.5

    1. 1
    2. 2
    call LABEL
    LABEL: pop eax

    Получение адреса текущей инструкции убийственным для производительности методом.

    OlegD, 11 Августа 2009

    Комментарии (40)
  5. Куча / Говнокод #2460

    +129.4

    1. 1
    2. 2
    3. 3
    <a class="btn" href="#" onclick="{if $client->getId()}xmlrpc_choose_playlist(this,{$mp3->getId()},1,'top_month_mp3');return false;{else}xmlrpc_load_popup('login', null);{/if}">
    <img src="views/default/images/add.gif" width="8" height="8" alt="Добавить в плейлист" title="Добавить в плейлист" />
    </a>

    Это кусок смартявского шаблона
    Типа песенку в плейлист добавляем


    а иногда таких песен на странице ни одна сотня )))

    paranoid, 20 Января 2010

    Комментарии (18)
  6. PHP / Говнокод #1499

    +129.4

    1. 1
    (string) $def == (string) $value

    Видимо о том, что == сравнивает строковые представления программист не знал.

    guest, 09 Августа 2009

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

    +129.3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    // IPrincipal Implementation
    public bool IsInRole(string role)
    {
      return Array.BinarySearch( _roles, role ) >=0 ? true : false;
    }
    public IIdentity Identity
    {
      get
      {
        return _identity;
      }
    }

    Взято из Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication (http://msdn.microsoft.com/en-us/library/aa302401.aspx)

    Step 4. Create a Class that Implements and Extends IPrincipal
    6. Implement the IsInRole method and Identity property defined by the IPrincipal interface as shown below.

    mikle.smirnov, 16 Сентября 2009

    Комментарии (15)
  8. Си / Говнокод #2968

    +129.2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    new = ngx_pnalloc(cf->pool, sizeof("; domain=") - 1 + domain->len);
        if (new == NULL) {
            return NGX_CONF_ERROR;
        }
    
        p = ngx_cpymem(new, "; domain=", sizeof("; domain=") - 1);
        ngx_memcpy(p, domain->data, domain->len);
    
        domain->len += sizeof("; domain=") - 1;

    Это, между прочим, файл nginx-0.7.62\src\http\modules\ngx_http_userid_ filter_module.c.
    Такие вот разочарования случаются...

    dmitry_113, 08 Апреля 2010

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

    +129

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    for(const auto & row : table; const auto & element : row) {
        handle(element);
    }
    
    // versus
    
    for(const auto & row : table) {
        for(const auto & element : row) {
            handle(element);
        }
    }

    Всякого ненужного говна в новые крестостандарты насовали, а о простых вещах не подумали. Ну ведь удобней же было бы!
    Но не-ет, нам нужна функциональщина в крестах, ведь нам мало мозгоклюйства с другими языками; а давайте засунем в стандартную библиотеку либкайро, чтобы разработчики стандартных библиотек соревновались, кто быстрее запилит частичную поддержку в 95% случаев ненужной либы полутра операционными системами, куда-ах-тах-тах!
    Забавно, только что узнал, что в vs2013 есть шорткат ^ko, который переключает между заголовком и реализацией. ^ko^ko^ko

    Xom94ok, 30 Марта 2015

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

    +129

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #widgetu2272.frm-sub-st #u2283-4,#widgetu2272.frm-subm-err-st #u2284-4,#widgetu2272.frm-subm-ok-st #u2282-4,#widgetu2293.frm-sub-st #u2304-4,#widgetu2293.frm-subm-err-st #u2305-4,#widgetu2293.frm-subm-ok-st #u2303-4,#widgetu2575.frm-sub-st #u2586-4,#widgetu2575.frm-subm-err-st #u2577-4,#widgetu2575.frm-subm-ok-st #u2576-4,#widgetu2608.frm-sub-st #u2619-4,#widgetu2608.frm-subm-err-st #u2610-4,#widgetu2608.frm-subm-ok-st #u2609-4,#widgetu2641.frm-sub-st #u2652-4,#widgetu2641.frm-subm-err-st #u2643-4,#widgetu2641.frm-subm-ok-st #u2642-4,#widgetu2471.frm-sub-st #u2472-4,#widgetu2471.frm-subm-err-st #u2483-4,#widgetu2471.frm-subm-ok-st #u2477-4,#widgetu2772.frm-sub-st #u2778-4,#widgetu2772.frm-subm-err-st #u2779-4,#widgetu2772.frm-subm-ok-st #u2777-4,#widgetu2706.frm-sub-st #u2712-4,#widgetu2706.frm-subm-err-st #u2713-4,#widgetu2706.frm-subm-ok-st #u2711-4,#widgetu2404.frm-sub-st #u2405-4,#widgetu2404.frm-subm-err-st #u2419-4,#widgetu2404.frm-subm-ok-st #u2414-4,#widgetu2674.frm-sub-st #u2685-4,#widgetu2674.frm-subm-err-st #u2676-4,#widgetu2674.frm-subm-ok-st #u2675-4,#widgetu2197.frm-sub-st #u2200-3,#widgetu2197.frm-subm-err-st #u2209-4,#widgetu2197.frm-subm-ok-st #u2198-4
    {
    	opacity: 1;
    	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    	filter: alpha(opacity=100);
    	min-height: 51px;
    }

    Сайты, который продают (с)
    Основной хардкор не влез.
    По ссылке вся прелесть бытия:
    http://www.nextpage.com.ua/css/index.css

    thereiter, 30 Марта 2015

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

    +129

    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
    @servers(['web' => '[email protected]'])
     
    <?php
    $repo = '[email protected]:webbox/lb.git';
    $release_dir = '/home/admin/web/releases';
    $app_dir = '/home/admin/web/likebox-dev/public_html';
    $release = 'release_' . date('YmdHis');
    ?>
     
    @macro('deploy', ['on' => 'web'])
    fetch_repo
    run_composer
    update_permissions
    update_symlinks
    @endmacro
     
    @task('fetch_repo')
    [ -d {{ $release_dir }} ] || mkdir {{ $release_dir }};
    cd {{ $release_dir }};
    git clone {{ $repo }} {{ $release }};
    @endtask
     
    @task('run_composer')
    cd {{ $release_dir }}/{{ $release }};
    composer install --prefer-dist;
    @endtask
     
    @task('update_permissions')
    cd {{ $release_dir }};
    chgrp -R www-data {{ $release }};
    chmod -R ug+rwx {{ $release }};
    @endtask
     
    @task('update_symlinks')
    ln -nfs {{ $release_dir }}/{{ $release }} {{ $app_dir }};
    chgrp -h www-data {{ $app_dir }};
    @endtask

    Гит не нужен =)

    Rijen, 11 Февраля 2015

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