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

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

    −4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    На работе такая таска:
    Есть сервис, который запускает наши сервисы и следит за ними, напр. перезапускает, если один из них упал.
    Таска такая, что нужно посылать всем сервисам сообщения из командной строки.
    Т.е. уже можно послать сигналы из командной строки (SIGTERM, SIGHUP, и.т.д)
    `svctl -s stop` - наример.
    Но теперь нужно посылать SIGUSR1, перед этим записав в файл сообщение, тоже переданное из командной строки. Все запущенные сервисы по этому сигналу должны прочитать файл с сообщением и обработать его.
    И вот тут я сомневаюсь, что так правильно.
    1. Может лучше открыть именованный канал, и туда всё посылать, без сигналов? Но тут треды и код усложнится, а проект простой, на 20 методов в двух классах.
    2. Если это всё же правильно, то вместо файла тоже может использовать именованный канал для обмена сообщениями?

    YpaHeLI_, 19 Сентября 2022

    Комментарии (16)
  3. Python / Говнокод #28085

    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
    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
    p = []
    m = []
    
    import telebot
    import pyodbc
    from telebot import apihelper
    connection = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER=(тут сервер);DATABASE=(наим базы);UID=(логин);PWD=(пароль)')
    
    cursor = connection.cursor()
        
    mySQLquery = ("""
                    select  фамилия from OPCFIO)
                      """)
    cursor.execute(mySQLquery)
    results = cursor.fetchall()
    i=0
        
    for row in results:
        quality = row[0] #присваиваю имя
        id = row[1] #присваиваю фамилию
            
        p.append(id) #добавляю в массив
        m.append(quality) #добавляю в массив
        
        for j in range(len(p)):   
            bot = telebot.TeleBot('токен бота')
            apihelper.proxy = {
                           "http": "айпи прокси",
                            "https": "айпи прокси",
                            }
            @bot.message_handler()  
            def start(message):
                print(str(p[j]))
                if message.text == str(p[j]):
                        bot.send_message(message.chat.id, 'Вы выбрали имя '+ str(quality[j])  +"   " + "Фамилия будет" + str(m[j]))
                else:
                        bot.send_message(message.chat.id, 'Такого имени нету {}'.format(message.text))
    
    bot.polling()

    Что я такого сделал, что я должен был это увидеть...

    Vindicar, 18 Марта 2022

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

    +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
    function main() {
        let c = 0;
    
        try {
            c++;
            print("try");
            throw "except";
            c--;
            print("after catch");
        } finally {
            c++;
            print("finally");
        }
    
        assert(2 == c);
    }

    ну вот и все... проимплементил последний keyword в языке... (осталось только темплейты - ну и головняк меня ждем)

    ASD_77, 29 Сентября 2021

    Комментарии (16)
  5. JavaScript / Говнокод #27647

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function main() {
        for await (const v of [1, 2, 3, 4, 5]) {
            print(v);
        }
    
        print("done.");
    }

    вот такой чудный говнокод подоспел... (иногда глючит если врубить GC - видимо я что-то не добавил)

    ASD_77, 06 Сентября 2021

    Комментарии (16)
  6. 1C / Говнокод #27537

    −2

    1. 1
    Немного лирики в ветку

    День за днем из года в год
    Мы херачим говнокод
    Не испытывая стресс
    Мы шатаем 1С

    И работаем мы чисто
    По заветам программистов:
    "CTRL+C, CTRL+V
    И гоните мне лавэ!"

    DrAku1a, 26 Июля 2021

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

    +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
    var proto = $new(null);
    proto.foo = function() { 
      $print(this.msg) 
    }
    
    var o = $new(null);
    o.msg = "hello";
    $objsetproto(o,proto);
    o.foo(); // print "hello"
    
    $objsetproto(o,null); // remove proto
    o.foo(); // exception

    Давайте писать ня Neko!
    https://nekovm.org

    PolinaAksenova, 29 Апреля 2021

    Комментарии (16)
  8. JavaScript / Говнокод #27272

    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
    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
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    var utils = require('util');
    
    module.exports = class Client {
        constructor(Socket) {
    
            this.Socket = Socket;
            this.TLSSocket = require('tls');
            this.XmlParser = new require('xml2js').Parser();
            this.XmlBuilder = require('xmlbuilder');
            this.Client = this;
            this.Authorized = false;
            this.OnlineId = '1';
            this.Socket.on('data', (Packet) => this.OnData(Packet));
            this.Player = null;
            this.Status = 0;
        }
    // Авторизация.
        OnData(Packet) {
            if (Packet[0] == 0xad || Packet[1] == 0xde || Packet[2] == 0xed || Packet[3] == 0xfe) {
                var PacketBuffer = Buffer.alloc(Number(Packet.readBigInt64LE(4)));
                Packet.copy(PacketBuffer, 0, 12);
                var Query = PacketBuffer.toString();
                console.log('[CLIENT] ',Query);
                this.XmlParser.parseString(PacketBuffer.toString(), (err, result) => {
                    if (result) 
                    {
                        if (result.starttls && !this.TLSSocket.Authorized && !this.Authorized) {
                            this.Send(this.XmlBuilder.create({
                                proceed: {
                                    '@xmlns': 'urn:ietf:params:xml:ns:xmpp-tls'
                                }
                            }, {
                                    headless: true
                                }).end({
                                    pretty: false
                                }));
                            this.TLSSocket = new this.TLSSocket.TLSSocket(this.Socket, {
                                cert: global.Cert,
                                key: global.CertKey,
                                ca: global.CertBundle,
                                minVersion: 'TLSv1',
                                isServer: true
                            })
                            this.TLSSocket.once('secure', () => {
                                this.TLSSocket.Authorized = true;
                                console.log('TLS Connection established!');
                            });
                            this.TLSSocket.on('data', (Packet)=>this.OnData(Packet));
    
                        }
                        else if (result.iq && result.iq.bind) {
                            this.Send(this.XmlBuilder.create({
                                iq: {
                                    '@id': result.iq.$.id,
                                    '@type': 'result',
                                    bind: {
                                        '@xmlns': 'urn:ietf:params:xml:ns:xmpp-bind',
                                        jid: this.OnlineId
                                    }
                                }
                            }, {
                                headless: true
                            }).end({
                                pretty: false
                            }));
                        } else if (result.iq && result.iq.session) {
                            this.Send(this.XmlBuilder.create({
                                iq: {
                                    '@id': result.iq.$.id,
                                    '@type': 'result',
                                    '@to': this.OnlineId,
                                    session: {
                                        '@xmlns': 'urn:ietf:params:xml:ns:xmpp-session'
                                    }
                                }
                            }, {
                                headless: true
                            }).end({
                                pretty: false
                            }));
                        }
                        else if (result.iq && result.iq.query) {
    
                            var QueryName = Object.keys(result.iq.query[0]).filter(function (str) {
                                return str != '_' && str != '$'
                            })[0];
    
                            var QueryFunction = global.PacketFactory[QueryName];
    
                            if (QueryFunction) {
                                var Stanza = result.iq.query[0][QueryName][0];
    
                                console.log(`\x1b[32mQueryname: ${QueryName} ${utils.inspect(Stanza.$)}\x1b[0m`);
                                global.PacketFactory[QueryName].handle(this, Stanza, result.iq.$.to, result.iq.$.id);
                            }

    Nodejs вход пользователя

    Seagate, 25 Февраля 2021

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    #include <string>
    #include <iostream>
     
    int main() {
        std::string kakoi("Какой багор )))", 5);
        std::string bagor((std::string)"Какой багор )))" , 5);
        std::cout << kakoi << bagor << std::endl; 
    }

    Наверняка было, но ладно.

    https://ideone.com/syFnI2

    3_dar, 04 Января 2021

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

    +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
    https://www.opennet.ru/opennews/art.shtml?num=53839
    
    Facebook развивает TransCoder для перевода кода с одного языка программирования на другой 
    
    Инженеры из Facebook опубликовали транскомпилятор TransCoder, использующий методы
    машинного обучения для преобразования исходных текстов с одного высокоуровневого
    языка программирования на другой. В настоящее время предоставлена поддержка
    трансляции кода между языками Java, C++ и Python. Например, TransCoder позволяет
    преобразовать исходные тексты на Java в код на Python, а код на Python в исходные
    тексты на Java. Наработки проекта реализуют на практике теоретические изыскания по
    созданию нейронной сети для эффективной автоматической транскомпиляции кода и
    распространяются под лицензией Creative Commons Attribution-NonCommercial 4.0,
    разрешающей применение только для некоммерческих целей.

    Фраза <<Перепиши на "PHP"> > может потерять свою актуальность, ведь можно будет автоматически переписывать на через нейросети.

    j123123, 09 Октября 2020

    Комментарии (16)
  11. Куча / Говнокод #27006

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    # PowerShell
    
    if ($a2[$j] -Match $a1[$i] -and $a1[$i] -notin $r -and $a1[$i] -ne "ohio") {
        $r += $a1[$i]   
    }

    https://www.codewars.com/kata/reviews/5be8395356b146add7000017/groups/5f4a316915fbdc0001e1c60b

    Когда в тестах есть один случай, который может не пропустить твоё решение
    из-за "ohio", кто-то просто решил добавить эту строку в исключении в условии.

    // ТРЕБУЮ ДОБАВИТЬ PowerShell В СПИСОК GOVNOKOD.RU!

    groser, 06 Октября 2020

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