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

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

    +170

    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
    public function action_ajaxlogin()
    	{
    		// Если запрос поступил не через AJAX, то шлем нахуй
    		if ( ! $this->request->is_ajax())
    		{
    			throw new HTTP_Exception_404(NULL);
    		}
    
    		// Вырубаем авто-рендер, ибо это хуев аякс запрос
    		$this->auto_render = false;
    
    		// Собираем информацию и пользователе в ёбанный массив
    		$user_data = $this->request->post('user_data');
    
    		// Если пользователь авторизирован, то заебато, и возвращаем статус 200!
    		if (Auth::instance()->login($user_data['username'], $user_data['password'], (bool) isset($user_data['remember_me'])))
    			return $this->response->status(200);
    
    		// Если нет, то "Вася, все хуйня! Давай по новой!"
    		return $this->response->status(400);
    	}
    
    	public function action_logout()
    	{
    		// Если запрос поступил не через AJAX, то шлем нахуй
    		if ( ! $this->request->is_ajax())
    		{
    			throw new HTTP_Exception_404(NULL);
    		}
    
    		// Вырубаем сучий авто-рендер, нахуй, в пизду блядь
    		$this->auto_render = false;
    
    		// Выходим из аккаунта, если вышли, то ахуенно, 200-ый статус)
    		if (Auth::instance()->logout())
    			return $this->response->status(200);
    
    		// Если все хуйня, то "Вася, давай по новой!"
    		return $this->response->status(400);
    	}

    Kohana фреймворк, и таких комментариев по проекту тьма :)

    proweber1, 03 Марта 2015

    Комментарии (130)
  3. VisualBasic / Говнокод #13839

    −97

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    System.Diagnostics.Process.Start("ShutDown", "/s") ' Выключение
    System.Diagnostics.Process.Start("ShutDown", "/r") ' Перезагрузка
    System.Diagnostics.Process.Start("ShutDown", "/l") ' Выход из пол-ля
    System.Diagnostics.Process.Start("ShutDown", "/h") ' Спящий режим
    
    Автор: Release
    E-mail: [email protected]
    Сайт: ds-release.ru

    http://vbbook.ru/vb.net/zavershenie-rabotu/

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

    Stertor, 21 Сентября 2013

    Комментарии (130)
  4. JavaScript / Говнокод #26446

    +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
    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
    function isVowel(char){
        return "аоэиуыеёюя".indexOf(char.toLocaleLowerCase())>=0 ? 1 : 0;
    }
    
    function vorefy(text)
    {
        // Г => C 0.85
        // Г => Г 0.15
        // С => С 0.30
        // С => Г 0.70   
        var markov = [[0.3,0.7],[0.85,0.15]]; 
        var mCorr = [ 1/Math.sqrt(0.3*0.7), 1/Math.sqrt(0.85*0.15) ];
        //степень влияния марковских вореантностей
        var pow = x => Math.pow(x,2);
        
        var prev=null;
        return text.replace(/./g,(char,offset,text) => 
        {
            if (E2R[char]){
                var replace = Object.entries(E2R[char]);
                if (1==replace.length) {
                    prev = replace[0][0];
                    return prev;
                }
                var r = Math.random()*200, probability=0;
                for (const [k, v] of replace) {
                    vowel = isVowel(k);
                    probability += v * ((null==prev) ? 1 
                        : pow( 
                            mCorr[vowel]*2*markov[isVowel(prev)][vowel]
                        ));
                    if (r<=probability) {
                        prev = k;
                        return prev;
                    }
                }
            }
            prev=null;
            return char;
        });        
    }

    Марковым отмечена еще одна устойчивая закономерность открытых текстов, связанная с чередованием гласных и согласных букв. Им были подсчитаны частоты встречаемости биграмм вида гласная-гласная (г, г), гласная-согласная (г, с), согласная-гласная (с, г), согласная-согласная (с, с)

    [color=blur]https://ideone.com/VpkwXT[/color]

    3.14159265, 22 Февраля 2020

    Комментарии (129)
  5. PHP / Говнокод #25591

    0

    1. 1
    $result = array_filter($paths,  fn($v) => in_array($v, $names));

    В PHP 7.4 войдут стрелочные функции.
    https://habr.com/ru/post/450544/

    _PHP_, 06 Мая 2019

    Комментарии (129)
  6. C++ / Говнокод #14336

    +16

    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
    #include <iostream>
    using namespace std;
    struct T
    {
      int a, b, &c;
      T():a(0), b(1), c(a){cout<<"dc"<<endl;}
      T(const T& a):a(a.a), b(a.b), c(&a.c == &a.a ? this->a : b){cout<<"cc"<<endl;}
      T& operator=(T a)
      {
        ::new((void*)(&b+1)) int*(&a.c == &a.a ? &this->a : &b);
        //asm volatile ("" : : : "memory");
        cout<<"co"<<endl;
        return *this;
      }
      void Switch()
      {
        ::new((void*)(&b+1)) int*(&c == &a ? &b : &a);
        //asm volatile ("" : : : "memory");
        cout<<"sw"<<endl;
      }
    } __attribute__((aligned(1))) ;
    
    int main() {
      T a;
      cout<<a.a<<endl;
      cout<<a.b<<endl;
      cout<<a.c<<endl;
      a.Switch();
      cout<<a.c<<endl;
      T b;
      cout<<b.c<<endl;
      b=a;
      cout<<b.c<<endl;
      b.b=666;
      cout<<b.c<<endl;
      return 0;
    }

    Очевидно откуда это.

    LispGovno, 10 Января 2014

    Комментарии (129)
  7. Си / Говнокод #13408

    +123

    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
    #include <malloc.h>
    #include <stdio.h>
    #include <string.h>
    #include <stdint.h>
    
    typedef struct {
      char * begin;
      uint64_t size, data_size;
    } str_t;
    
    inline uint64_t max(uint64_t a, uint64_t b) {
      return (a > b) ? a : b;
    }
    
    inline str_t correct_data_size(str_t str, uint64_t new_size) {
      if(str.data_size < new_size) {
        str.data_size = (max(str.data_size, new_size) << 1);
        str.begin = realloc(str.begin, str.data_size);    
      }
      return str;
    }
    
    inline str_t concat(str_t dest, str_t src) {
      uint64_t new_size = (dest.size + src.size - 1);
      dest = correct_data_size(dest, new_size);
      memcpy((dest.begin + dest.size - 1), src.begin, src.size);
      dest.size = new_size;
      return dest;
    }
    
    inline str_t create_str(char * str, uint64_t size) {
      return (str_t){.begin = strcat(malloc(size), str), .size = size, .data_size = size};
    }
    
    inline void print_str_t(str_t str) {
      fprintf(stderr, "str = %ssize = %lu, data_size = %lu\n", str.begin, str.size, str.data_size);
    }
    
    uint64_t test(uint64_t star_n, uint64_t n, str_t str, str_t * gstr) {
      uint64_t end = (star_n + n);
      do {
        *gstr = concat(*gstr, str);
        
        char * pos = gstr->begin;
        while((pos = strstr(pos, "efgh")))
          memcpy(pos,"____",4);
        
      } while((++star_n) != end);
      return star_n;
    }
    
    int main(void) {
      char data[] = "abcdefghefghefgh";
      str_t str = create_str(data, sizeof(data)); 
      str_t gstr = create_str("", 1);
      time_t starttime = time(NULL);
      
      uint64_t block_c = 0;
      
      while((block_c = test(block_c, ((256/16) * 1024), str, &gstr)) != (((256/16) * 1024) * 20))
        printf("%ldsec\t\t%lukb\n",time(NULL)-starttime,gstr.size/1024);
      
    }

    Минимально оптимизированный вариант в царь-стиле теста из предыдущего ГК. Никто не увидел и начали на меня кукарекать. То ещё ГК, давайте объясняйте что здесь говно.

    superhackkiller1997, 11 Июля 2013

    Комментарии (129)
  8. Pascal / Говнокод #3328

    +107

    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
    var
      OGTC: cardinal; // для сверки с таймером
    
    procedure CheckPhys;
    begin
      if OGTC < GetTickCount then begin
        Phys;   // тут считается вся игровая физика и все изменения состояний. Звуки тоже здесь.
        Inc(OGTC, dT);
      end;
    end;
    
    procedure Graph;     // процедура отрисовки графики
    var
      i: integer;
    begin
      CheckPhys;
      for i := 0 to ItemCount - 1 do with Items[i]^ do CopyPosition := Position; // делаем копию состояния перед отрисовкой мира!
      for i := 0 to ItemCount - 1 do begin
        ShowItem(Items[i]^);           // рисуем элемент мира
        CheckPhys;                     // проверяем, не пора ли снова считать физику
      end;
    end;
    
    procedure OnIdle;
    begin
      if PlayingGame then Graph;
    end;

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

    TarasB, 26 Мая 2010

    Комментарии (129)
  9. bash / Говнокод #27268

    0

    1. 1
    $ find ~ -name .git -type d -prune -printf "***\n%p\n***\n" -exec git -C '{}/..' status  \;

    MAKAKA, 21 Февраля 2021

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

    0

    1. 1
    https://tproger.ru/articles/frontend-roadmap-2021/

    Как много надо учить ради того, чтобы клепать красивые формочки.
    Они там совсем ебанулись?

    YpaHeLI_, 12 Ноября 2020

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

    −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
    std::optional<int64_t> readNumber(const wchar_t *&str)
    {
        const wchar_t *origStr = str;
    
        if (*str == L'-' || *str == L'+') {
            str++;
            if (!std::iswdigit(*str)) {
                str--;
                return {};
            }
        } else {
            if (!std::iswdigit(*str)) {
                return {};
            }
        }
    
        while (std::iswdigit(*str)) {
            str++;
        }
    
        return wcstoll(origStr, NULL, 10);
    }

    А всё потому, что доки по «wcstoll» надо читать!

    gost, 07 Января 2019

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