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

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

    −4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public static unsafe int Strlen(byte* data)
    {
                int i = 0;
                while (data[i] != 0)
                {
                    ++i;
                }
                return i;
    }

    Работа с C строками

    Koshak90, 20 Декабря 2019

    Комментарии (83)
  3. C++ / Говнокод #25981

    0

    1. 1
    А вот операторов сравнения между всеми типами умных указателей, я как понял, нету, и даже по стандарту.

    OlegUP, 21 Октября 2019

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

    +3

    1. 1
    2. 2
    $this->imageurl      = str_replace('http' , 'https', (string)$data['imageurl']);
    $this->largeimageurl = str_replace('http' , 'https', (string)$data['largeimageurl']);

    striker, 20 Августа 2019

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

    +2

    1. 1
    https://github.com/klacke/yaws/blob/ba31d14a24842e047e7fa856257df6e3f994ac96/src/yaws_api.erl#L2596

    Сертификат сменился? А давайте пол-ноды ёбнем

    CHayT, 06 Ноября 2018

    Комментарии (83)
  6. Куча / Говнокод #24839

    −4

    1. 1
    Technical post.

    Технический пост для работы говнофорума.

    gvforum, 30 Сентября 2018

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

    +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
    #include <malloc.h>
    #include <string.h>
    
    void print( void **p, int n ) {
    	int i = 0;
    	for(; i < n; ++i ) {
    		printf( "%x ", *( p + i ) );
    	}
    	printf( "\n" );
    }
    
    void get( void** pp, void** p ) {
    	*p = *pp;
    }
    
    void set( void** pp, void **p ) {
    	*pp = *p;
    }
    
    int main() {
    	printf( "sizeof: void* = %d, void** = %d\n", sizeof( void* ), sizeof( void** ) );
    
    	void ** pv = malloc( sizeof( void* ) * 8 ), **pp2;
    	memset( pv, 1, 8 * sizeof( void* ) );
    	printf( "pv = %x\n", pv );
    	print( pv, 8 );
    	
    	pp2 = pv + 2 * sizeof( void** );
    	void *p = (void*)0x01020304c, *p2  = p;
    	*pp2 = p;
    
    	printf( "pv = %x, pp2 = %x, p=%x, p2 = %x\n", pv, pp2, p, p2 );
    
    	get( pv + 1, &p );
    	printf( "result get( pv + 1, &p ) -> *( pv + 1 ) = %x, p = %x\n", *( pv + 1 ), p );
    	
    	set( pv + 2, &p2 );
    	printf( "result set( pv + 2 *, p2 ) ->  *( pv + 2 ) = %x, p2 = %x\n",  *( pv + 2 ), p2 );
    	print( pv, 8 ); 
    
    	free( pv );
    	return 0;
    }

    Просто оставлю это здесь, на будущее.
    О том, как работать с void**.

    OlegUP, 07 Сентября 2018

    Комментарии (83)
  8. Python / Говнокод #24626

    +4

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    def lookup(self, code):
            """
            Looks up code in Redis
            Returns None on failure
            """
            url = self.redis.get(code)
            try:
                pass
            except:
                url = None
            return url

    Вот такое на полном серьезе получили как кусочек домашнего задания для соискателя на Senior Python Engineer

    Flid, 16 Августа 2018

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

    0

    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
    Давным-давно( сегодня, неск. часов назад )
    В одной уютной-приуютной группке( https://vk.com/topic-30666517_29088463?post=448559 ), 
    Разумеется, даже нифига не в предназначенной для этого ветке, 
    Очередной "отче программирования, ментор и просто_великий_гуру"(тм), 
    Ну_так_уж_и_быть, соизволил искать себе паству, да всерьёз гитхабами мериться.
    
    https://github.com/AndreyMashukov?tab=repositories
    
    
    Посоны, я, кнчн., всё понимаю( аки пьос, Гы ), но.. 
    Разве "Это норма"(тм) всерьёз вываливать в репозитории дерьмо вида:
    
    Целый_распрекрасный_класс_для_сравнения_мать_их_двух_строчек_текста:
    https://github.com/AndreyMashukov/comparison
    В этой срани многие десятки папок и файлов разных расширений
    Даже какие-то говнотесты затолкнуты..
    И всё это для целого_мать_его_говнокласса( 180 строк )_что_сравнивает_ровно_две_ср.ных_строки !

    К сожалению, такие объёмы дерьма даже на Говонокод одним "заходом" не уместятся.

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

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

    sam, 07 Октября 2017

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

    +3

    1. 1
    ^[\s\u200c]+|[\s\u200c]+$

    Стековерфло не могут в регулярные выражения или регулярные выражения не могут в простейшую задачу?
    http://stackstatus.net/post/147710624694/outage-postmortem-july-20-2016

    kipar, 23 Июля 2016

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

    +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
    static void generatorPass()
            {
                string letters = "aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ1234567890";
                StringBuilder initPass = new StringBuilder("", 6);
    
                for (int i = 0; i < 6; i++)
                {
                    initPass.Append(0);
                }
    
                int count = 0;
    
                for (int i = 0; i < 6; i++)
                {
                    for (int a = 0; a < letters.Length; a++)
                    {
                        initPass[i] = letters[a];
    
                        for (int b = 0; b < letters.Length; b++)
                        {
                            initPass[i + 1] = letters[b];
    
                            for (int c = 0; c < letters.Length; c++)
                            {
                                initPass[i + 2] = letters[c];
    
                                for (int d = 0; d < letters.Length; d++)
                                {
                                    initPass[i + 3] = letters[d];
    
                                    for (int e = 0; e < letters.Length; e++)
                                    {
                                        initPass[i + 4] = letters[e];
    
                                        for (int f = 0; f < letters.Length; f++)
                                        {
                                            initPass[i + 5] = letters[f];
    
                                            Console.WriteLine(count++ + "]----> Проверяется пароль: [" + initPass.ToString() + "]");
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }

    Кажется, что то пошло не так . Как можно сделать это проще ?

    partizanes, 06 Июня 2016

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