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

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

    +2

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

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

    CHayT, 06 Ноября 2018

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

    −4

    1. 1
    Technical post.

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

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

    Комментарии (83)
  4. Си / Говнокод #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)
  5. 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)
  6. 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)
  7. Куча / Говнокод #20415

    +3

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

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

    kipar, 23 Июля 2016

    Комментарии (83)
  8. 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)
  9. C++ / Говнокод #17064

    +53

    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
    const char *GetExternalFilesDir ()
      {
        assert (started);
        static std::string s="";
        if (s.length()==0)
        {
          LOGI("Try get external files dir");
          jclass c; jmethodID m; jobject o;
    
          c = env->FindClass        ("android/app/NativeActivity");
          m = env->GetMethodID      (c, "getExternalFilesDir", "(Ljava/lang/String;)Ljava/io/File;");
          o = env->CallObjectMethod  (appState->activity->clazz, m, NULL);
    
          c = env->GetObjectClass    (o);
          m = env->GetMethodID      (c, "getAbsolutePath", "()Ljava/lang/String;");
          o = env->CallObjectMethod  (o, m);
          jstring jo = (jstring)o;
    
          const char *path = env->GetStringUTFChars(jo, NULL);
          s=path;
          env->ReleaseStringUTFChars(jo, path);
          s+='/';
          LOGI("Path for program's data files is %s", s.c_str());
        }
        return s.c_str();
      }

    Этот код был написан одним очень известным в очень узких кругах человеком. Будем надеяться, что он придет в обсуждение и прокомментирует его.

    DlangGovno, 04 Ноября 2014

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

    −98

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    ResetList( Chars( ) )
    While NextElement( Chars( ) )
    	Define Address.l = @Chars( )
    	Define Reference.s = Chars( )
    	While NextElement( Chars( ) )
    		If Chars( ) = Reference
    			DeleteElement( Chars( ) )
    		EndIf
    	Wend
    	ChangeCurrentElement( Chars( ), Address )
    Wend

    Stertor-, 01 Марта 2014

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

    +74

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    List<CurrentRegion> currentRegionsFromDb = impl
    		.getAll(CurrentRegion.class);
    
    if (currentRegionsFromDb.size() != 1) {
    	throw new FillReportException();
    }
    
    CurrentRegion currentRegion = (CurrentRegion) currentRegionsFromDb
    		.toArray()[0];

    массив головного мозга

    evg_ever, 29 Января 2014

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