1. Список говнокодов пользователя defecate-plusplus

    Всего: 19

  2. Python / Говнокод #26876

    +2

    1. 1
    https://pythoninstitute.org/certification/

    кто последний в сертификацию напитон?

    defecate-plusplus, 17 Августа 2020

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

    −13

    1. 1
    2. 2
    3. 3
    4. 4
    You should sign all of your APKs with the same certificate throughout the expected lifespan of your apps.
    If you plan to publish your apps on Google Play, the key you use to sign those APKs must have a validity period ending after 22 October 2033.
    The public-key certificate serves as as a "fingerprint" that uniquely associates the APK to you and your corresponding private key. 
    This helps Android ensure that any future updates to your APK are authentic and come from the original author.

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

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

    Гугл, 2016 год на дворе. Почитай про сертификаты, УЦ, CRL. Включи голову. Управлять запросами на получение, сертификатами, их сроком жизни длиной в год-два, а не двадцать, списком отзыва (т.к. приватный ключ легко проебать) из личного кабинета - это не так и сложно. Проверять на устройстве Subject сертификата, корректно подписанного доверенным УЦ, вместо того, чтобы кешировать публичный ключ (я ведь правильно понял твою систему?) не так и сложно.

    Что за пиздец? Не ожидал такого от них.

    defecate-plusplus, 19 Декабря 2016

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

    −38

    1. 1
    function foo() { return typeof null === 'undefined'; } for (var i = 0; i < 1000; i++) console.log(foo());

    Открываем стабильный хром и запускаем в консоли.

    defecate-plusplus, 24 Июня 2016

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

    +4

    1. 1
    http://надальнийвосток.рф

    ну не всем же напитон...

    defecate-plusplus, 22 Мая 2016

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

    0

    1. 1
    Currently, the official WordPress distribution only supports the MySQL database engine.

    https://codex.wordpress.org/Using_Alternative_Databases

    defecate-plusplus, 21 Сентября 2015

    Комментарии (301)
  7. Куча / Говнокод #15804

    +13

    1. 1
    Официальный тред для каклосрача

    срать тут ↓

    defecate-plusplus, 21 Апреля 2014

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

    +69

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    SOAPMessage msg = ctx.getMessage();
    
    //msg.writeTo(System.out);
    
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    msg.writeTo(baos);
    logger.trace(baos);

    где у хвалёного log4j метод для передачи его как аргументом java.io.OutputStream???

    defecate-plusplus, 26 Июля 2013

    Комментарии (26)
  9. C# / Говнокод #13070

    +138

    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
    // Преобразует BCD формат в число
    private static int BCDToInt(byte bIn)
    {
        return ((((bIn / 0x10) * 10) + bIn) - ((bIn / 0x10) * 0x10));
    }
    
    // Преобразует число в BCD формат
    private static byte IntToBCD(int value)
    {
        value -= (value / 100) * 100;
        byte bTH = (byte)(value / 10);
        byte bTL = (byte)(value - (bTH * 10));
        return (byte)(bTL + ((byte)(bTH << 4)));
    }

    навеяло сложными запутывающими большими и маленькими индейцами для элитных программистов

    референс-код от партнеров для конверсии binary-coded decimal вперёд и взад
    чтобы как бы верно срослось между ихним с# и нашим сраным с++

    defecate-plusplus, 29 Мая 2013

    Комментарии (21)
  10. C++ / Говнокод #12827

    +24

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    void sleep_in_qt_ms(unsigned millisec) {
        QMutex foo;
        foo.lock();
        foo.try_lock(millisec);
        foo.unlock();
    }

    sleep в Qt - что, серьезно, чтоли?

    особенно порадовало: Warning: Destroying a locked mutex may result in undefined behavior.
    действительно, накой нам деструкторы?

    defecate-plusplus, 29 Марта 2013

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

    +23

    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
    struct mystream: public std::ostream 
    {
        mystream(std::ostream & o): std::ostream(o.rdbuf()) {}
    
        template <class T>
        mystream & operator << (T const & arg)
        {
            if (enabled_) as_std_ostream() << arg;
            return *this;
        }
    
        // дерьмо STX
        mystream & operator << (std::ostream & (*f)(std::ostream &))
        {
            if (enabled_) as_std_ostream() << f;
            return *this;
        }
    
        mystream & operator << (std::ios & (*f)(std::ios &))
        {
            if (enabled_) as_std_ostream() << f;
            return *this;    
        }
    
        mystream & operator << (std::ios_base & (*f)(std::ios_base &))
        {
            if (enabled_) as_std_ostream() << f;
            return *this;
        }
        // дерьмо ETX
    
        void enable() { enabled_ = true; }
        void disable() { enabled_ = false; }
    
    protected:
        bool enabled_;
        std::ostream & as_std_ostream() { return *this; }
    };

    а так хотелось хоть сегодня рыбки поесть захерачить вместо трёх перегрузок
    template <class O>
    mystream & operator << (O & (*f)(O &)) { ...

    defecate-plusplus, 13 Марта 2013

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