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

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

    +155

    1. 1
    2. 2
    list($usec, $sec) = explode(' ', microtime());
    $s2_start = ((float)$usec + (float)$sec);

    О первом параметре функции microtime не слыхали?
    http://s2cms.ru/trac/browser/trunk/index.php#L11

    Интересное замечание: hook'и копипастом подключаются

    ($hook = s2_hook('idx_pre_redirect')) ? eval($hook) : null;
    // …
    ($hook = s2_hook('idx_pre_rss')) ? eval($hook) : null;
    // …
    $return = ($hook = s2_hook('idx_get_content')) ? eval($hook) : null;
    // и так еще 4 раза

    Функцию надо.

    volter9, 07 Ноября 2014

    Комментарии (38)
  3. 1C / Говнокод #16605

    −167

    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
    Функция НайтиСтатусРемонта(ВыбСтатус) Экспорт
    	Возврат Ремонт.Найти(ВыбСтатус, "СтатусРемонта");
    КонецФункции
    
    Процедура УстановитьДанныеСтрокиРемонта(СтатусРемонта, ДатаСтатуса, ДатаВх) Экспорт
    	СТЧ = НайтиСтатусРемонта(СтатусРемонта);
    	Попытка
    		Если СТЧ.Дата = Дата(1,1,1) Тогда
    			Попытка СТЧ.Дата = ДатаВх; Исключение КонецПопытки;
    		ИначеЕсли СТЧ.Дата <> ДатаВх Тогда
    			обСообщить(""+Ссылка+" "+СтатусРемонта+" Дата уже установлена",СтатусСообщения.Важное);
    		КонецЕсли;
    	Исключение
    	КонецПопытки;
    КонецПроцедуры

    На фоне всей базы это всего лишь цветочки ...
    Есть еще отчет, для формирования которого создается 36 (!!!) запросов )))
    Хотел отчет выложить, но ограничение из 100 строк меня остановило :(

    anton903, 27 Августа 2014

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

    +124

    1. 1
    https://support.skype.com/ru/faq/FA34438/pocemu-proizosel-vyhod-iz-moej-ucetnoj-zapisi-skype-i-poavilsa-zapros-zagruzki-poslednej-versii-programmy-cto-nuzno-sdelat-ctoby-prodolzit-ispol-zovanie-skype

    ЧПУ такой ЧПУ...
    PS, простите за тарасокод :D

    gost, 18 Июля 2014

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

    +61

    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
    #include <iostream>
    #include <iomanip>
    
    using std::boolalpha;
    using std::cout;
    using std::endl;
    
    template <class N>
    bool getbit(N var, int bit)
    {
        size_t bsz = sizeof(N)*8;
        return ((bsz>=bit)?((var>>bit)%2):(0));
    }
    
    template <class N>
    bool bitCompare(N a, N b)
    {
        size_t bsz = sizeof(N)*8;
    
    	for (size_t i = 0; i < bsz; i++)
    	{
            bool gba = getbit(a, i);
    		bool gbb = getbit(b, i);
    		if (gba != gbb)
    		{
    			return false;
    		}
    	}
    
    	return true;
    }
    
    int main(int argc, char* argv[])
    {
    	cout << "100500 == 100500:" << boolalpha << bitCompare(100500, 100500) << endl;
    	cout << "100500 == 9000: " << bitCompare(100500, 9000) << endl;
    	cout << "'H' == 'H': " << bitCompare('H', 'H') << endl;
    	cout << "'H' == 'K': " << bitCompare('H', 'K') << endl;
    
    	return 0;
    }

    Байтоебство проходили... Дамы и господа! Встречайте битоебство!

    gost, 29 Марта 2014

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $query = $this->_db->prepare("SELECT * FROM `Stats` WHERE `Login` = :login");
    $query->bindParam(':login', $login, PDO::PARAM_STR);
    $query->execute();
    $result = $query->fetchAll();
    return count($result);

    SELECT COUNT - неизвестная для того человека конструкция...

    ByMsx, 25 Марта 2014

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

    +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
    if (other && other->client && other->s.number < MAX_CLIENTS)
    		{//player touched me
    			/*
    			char *text;
    			qboolean	keyTaken;
    			//give him my key
                            ...
    
    			*/
    			//rwwFIXMEFIXME: support for goodie/security keys?
    			/*
    			if ( keyTaken )
    			{//remove my key
    				NPC_SetSurfaceOnOff( self, "l_arm_key", 0x00000002 );
    				self->message = NULL;
    				//FIXME: temp pickup sound
    				G_Sound( player, G_SoundIndex( "sound/weapons/key_pkup.wav" ) );
    				//FIXME: need some event to pass to cgame for sound/graphic/message?
    			}
    			//FIXME: temp message
    			gi.SendServerCommand( NULL, text );
    			*/
    		}

    FIXMEFIXMEFIXME... Да ну нахуй, лучше все закомментим.

    gost, 15 Марта 2014

    Комментарии (38)
  8. Java / Говнокод #15300

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    private boolean isShowPosition(List<Integer> lists, int p) {
            for (int l : lists) {
                if (p == l)
                    return true;
            }
            return false;
        }

    Вьетнамское творчество

    AAverin, 04 Марта 2014

    Комментарии (38)
  9. Си / Говнокод #15279

    +139

    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
    #include <stdio.h>
    #include <stdlib.h>
    #define value_i int
    #define gen_program main()
    #define begin {
    #define end }
    #define sep ;
    #define back_val return
    #define vis(a) printf ("%d", a)
    #define ln printf ("\n")
    #define ln3 printf ("\n\n\n")
    #define cycle_count for
    #define rand rand()
    #define gen_rand srand((unsigned)time(NULL))
    #define value_c char
    #define vis_c(a) printf("%c", a)
    #define eq =
    #define uneq !=
    #define check ==
    #define inc(a) a++
    #define res %
    #define add +
    #define sub -
    #define blank void
    #define small <
    #define big >
    
    blank line(blank) sep
    
    value_i gen_program
    begin
        value_i x, i                                sep
        gen_rand                                    sep
        value_c c eq ' '                            sep
        cycle_count(i eq 1 sep i small 10 sep inc(i))
        begin
            x eq rand res 10 add 1                  sep
            if (x uneq 10)
            begin
                vis(x)                              sep
                vis_c(c)                            sep
            end
        end
        ln3                                         sep
        line()                                      sep
        ln                                          sep
        back_val 0                                  sep
    
    end
    
    blank line(blank)
    begin
        value_i i sep
        cycle_count (i eq 0 sep i small 10 sep inc(i) )
        begin
        printf("-/*\\")                                sep
        end
        printf("-")                                    sep
    end

    Можно рефакторить.

    Hammer, 01 Марта 2014

    Комментарии (38)
  10. Java / Говнокод #15252

    +67

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public class LoaderForMongoCompanies extends AbstractJdbcLoader {
    
        @Override
        protected String getTableSuffix() {
            return "mongo";
        }
    
    }

    нужно больше классов

    roman-kashitsyn, 28 Февраля 2014

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

    +153

    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
    /*где-то в начале: error_reporting(0);*/
    
    class PhocaGalleryFile{
    	function getCSSFile($id = 0, $fullPath = 0) {
    		if ((int)$id > 0) {
    			$db = &Factory::getDBO();
    			$query = 'SELECT a.filename as filename, a.type as type'
    				.' FROM #__styles AS a'
    			    .' WHERE a.id = '.(int) $id;
    			$db->setQuery($query, 0, 1);
    			$filename = $db->loadObject();
    			if (isset($filename->filename) && $filename->filename != '') {
    				if ($fullPath == 1 && isset($filename->type)) {
    					return self::getCSSPath($filename->type). $filename->filename;
    				} else {
    					return $filename->filename;
    				}
    			}
    		}
    
    		return false;
    	}
    
     . . .
    }

    Поубивал пустые строки (по 2 штуки между каждой строкой кода) и комменты вида:
    /* ===============
    == This function is geting a CSSFile fron database .....
    ===============
    */
    Гы! Код для заказчика должен выглядеть наукообразно и непонятно.
    И обязательно выдавать Notices и Warnings.

    virtual_cia, 19 Декабря 2013

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