1. C++ / Говнокод #26357

    +3

    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
    // https://habr.com/ru/post/451830/  Кратко с реализацией о AES 128 ECB
    
    // ...
    
    byte_t hex(char ch) { return (ch - '0') % 39; }
    byte_t sbox(byte_t x, bool decrypt = false) {
      std::string s = (decrypt ? INV_SBOX : SBOX)[x >> 4][x & 15];
      return hex(s[0]) << 4 | hex(s[1]);
    }
    byte_t mult_by_2(byte_t x) { return (x < 128) ? x << 1 : (x << 1 & 0xff) ^ 0x1b; }
    byte_t mult_by_8(byte_t x) { return mult_by_2(mult_by_2(mult_by_2(x))); }
    
    const std::unordered_map<byte_t, std::function<byte_t(byte_t)>> mapper = {
      {0x1, [](byte_t x) { return x; }},
      {0x2, mult_by_2},
      {0x3, [](byte_t x) { return mult_by_2(x) ^ x; }},
      {0x9, [](byte_t x) { return mult_by_8(x) ^ x; }},
      {0xb, [](byte_t x) { return mult_by_8(x) ^ mult_by_2(x) ^ x; }},
      {0xd, [](byte_t x) { return mult_by_8(x) ^ mult_by_2(mult_by_2(x)) ^ x; }},
      {0xe, [](byte_t x) { return mult_by_8(x) ^ mult_by_2(mult_by_2(x)) ^ mult_by_2(x); }},
    };
    byte_t vector_mult(const std::array<byte_t, 4>& v1, std::array<byte_t, 4>&& v2) {
      std::transform(begin(v1), end(v1), begin(v2), begin(v2),
        [](byte_t x, byte_t y) { return mapper.at(y)(x); });
      return std::accumulate(begin(v2), end(v2), byte_t(0), std::bit_xor<byte_t>());
    }
    
    
    const std::vector<std::vector<std::string>> SBOX = { // блядь сука долбоеб нахуя это так делать?
      { "63", "7c", "77", "7b", "f2", "6b", "6f", "c5", "30", "01", "67", "2b", "fe", "d7", "ab", "76" },
      { "ca", "82", "c9", "7d", "fa", "59", "47", "f0", "ad", "d4", "a2", "af", "9c", "a4", "72", "c0" },
      { "b7", "fd", "93", "26", "36", "3f", "f7", "cc", "34", "a5", "e5", "f1", "71", "d8", "31", "15" },
      { "04", "c7", "23", "c3", "18", "96", "05", "9a", "07", "12", "80", "e2", "eb", "27", "b2", "75" },
      { "09", "83", "2c", "1a", "1b", "6e", "5a", "a0", "52", "3b", "d6", "b3", "29", "e3", "2f", "84" },
    // ...

    пиздец нахуй

    j123123, 16 Января 2020

    Комментарии (45)
  2. Python / Говнокод #26356

    +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
    #  Пример #1
    class FastClass:
    
        def do_stuff(self):
            temp = self.value  # это ускорит цикл
            for i in range(10000):
                ...  # Выполняем тут некие операции с `temp`
    
    #  Пример #2
    import random
    
    def fast_function():
        r = random.random
        for i in range(10000):
            print(r())  # здесь вызов `r()` быстрее, чем был бы вызов random.random()

    Забавно, что в статье под названием «Разработка чрезвычайно быстрых программ на Python» (https://habr.com/ru/company/ruvds/blog/483678) этот самый «Python» оказался обосран (ненамеренно) куда качественнее, чем в недавно обсуждённом высере (https://govnokod.ru/26050#comment517858).

    Неужели конпелятор/интерпретатор «Питона» настолько туп, что не может самостоятельно провести вот эти вот микрооптимизации?

    gost, 16 Января 2020

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

    0

    1. 1
    Давайте в жопу ебацца

    MEJlOMAH, 16 Января 2020

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

    −2

    1. 1
    Пока в пидорашке стабильность, в Японии учат застойно-хуйловский диалект ордынского языка.

    https://pbs.twimg.com/media/EOBV94QXUAY8fBq.jpg:large

    N_BCE_3ACMERJINCb, 15 Января 2020

    Комментарии (7)
  5. PHP / Говнокод #26352

    +1

    1. 1
    return Business::find(intval(OptionGroup::find(intval(OptionSet::find($this->attributes['option_set_id'])->first()->option_group_id))->business_id))->first()->

    Eloquent - это пиздец какой то..

    websbkinfo, 14 Января 2020

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

    +7

    1. 1
    https://tsar1997.blogspot.com/ блог царя

    > Я продолжил умножать на ноль недоязычки. Сектанты там атакуют со всех сторон. Сидел в окопе всё это время.

    лол

    j123123, 14 Января 2020

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

    +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
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    Сообщаю, что я пытался воскресить эту ебучую хуету на php4. Сначала пытался
    воспользоваться docker'ом, чтобы заполучить нужные дистрибутивы мускуля и
    пыхи, в связи с чем огрёб следующие траблы:
    1) все готовые докерфайлы для четвёртой пыхи как минимум трёхлетней давности,
        поэтому в них:
          а. попадаются уже мёртвые GPG ключи
          б. попадаются уже мёртвые ссылки на различные файлопомойки, откуда предпо-
              лагалось тащить исходники или пакеты для всякого старья
        через эти пункты мне удалось прорваться, и сделать живой контейнер с пыхой, но тут
    2) оказалось, что проект представляет из себя настолько бессистемную кучу пыхофайлов,
        непредсказуемо поименованных и состоящих из смеси вёрстки, кода и запросов к базе,
        что мне понадобился отладчик xdebug либо zend debugger, в связи с чем я с радостью
        узнал, что
           а. xdebug вообще не сущетсвует для линукса на php4.4, если только не попытаться со-
               брать его из сырцов для винды
           б. zend debugger такой старый просто само по себе очень сложно найтй, и в докер его
               по всей видимости никто никогда не пихал, и я не буду :)
    В связи со всем вышеперечисленным, сейчас я скачиваю образ свинёрки, чтобы гонять
    её в виртуалке, потому что промелькнула надежда на denver, который вроде как из ко-
    робки предлагает такое говно мамонта.
    Держите за меня кулачки.

    vistefan, 14 Января 2020

    Комментарии (42)
  8. Go / Говнокод #26349

    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
    // GostServer is the type that contains all of the relevant information to set
    // up the GOST HTTP Server
    type GostServer struct {
    	host       string      // Hostname for example "localhost" or "192.168.1.14"
    	port       int         // Port number where you want to run your http server on
    	api        *models.API // SensorThings api to interact with from the HttpServer
    	https      bool
    	httpsCert  string
    	httpsKey   string
    	httpServer *http.Server
    }
    
    // CreateServer initialises a new GOST HTTPServer based on the given parameters
    func CreateServer(host string, port int, api *models.API, https bool, httpsCert, httpsKey string) Server {
    	setupLogger()
    	a := *api
    	router := CreateRouter(api)
    	return &GostServer{
    		host:      host,
    		port:      port,
    		api:       api,
    		https:     https,
    		httpsCert: httpsCert,
    		httpsKey:  httpsKey,
    		httpServer: &http.Server{
    			Addr:         fmt.Sprintf("%s:%s", host, strconv.Itoa(port)),
    			Handler:      PostProcessHandler(RequestErrorHandler(LowerCaseURI(router)), a.GetConfig().Server.ExternalURI),
    			ReadTimeout:  30 * time.Second,
    			WriteTimeout: 30 * time.Second,
    		},
    	}
    }
    
    // Start command to start the GOST HTTPServer
    func (s *GostServer) Start() {
    	t := "HTTP"
    	if s.https {
    		t = "HTTPS"
    	}
    
    	logger.Infof("Started GOST %v Server on %v:%v", t, s.host, s.port)
    
    	var err error
    	if s.https {
    		err = s.httpServer.ListenAndServeTLS(s.httpsCert, s.httpsKey)
    	} else {
    		err = s.httpServer.ListenAndServe()
    	}
    
    	if err != nil {
    		logger.Panicf("GOST server not properly stopped: %v", err)
    	}
    }
    
    // Stop command to stop the GOST HTTP server
    func (s *GostServer) Stop() {
    	if s.httpServer != nil {
    		logger.Info("Stopping HTTP(S) Server")
    		s.httpServer.Shutdown(context.Background())
    	}
    }

    Нашёл ГостСервер го

    https://github.com/gost/server/blob/master/http/gostserver.go

    gostinho, 13 Января 2020

    Комментарии (23)
  9. Куча / Говнокод #26347

    −3

    1. 1
    Каким же додиком оказался админ.

    Сайт прогнил до основания

    KAPABAH, 12 Января 2020

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

    +3

    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
    Разработчикам непомерно переплачивают
    
    
    Еще в 1970 году были отличные разработчики, которые построили фундамент для всего,
    что мы используем сейчас. Они были невероятно талантливы и чрезвычайно скромны.
    И то и другое одинаково важно. Они выполняли свою работу как самые ранние исследователи,
    в пустыне знаний и под ураганами ошибок, простите уж мне мой высокопарный слог.
    Я никогда не слышал, чтобы отсутствие вертикального монитора или стоящего
    стола — мешали им делать все возможное, да и невозможное тоже.
    
    Всему, что у нас есть, мы обязаны им. Они были элитой. Мы — нет.
    
    Это в общем-то означает, что мы, вероятно, должны перестать просить
    бонусы к нашим уже и так непомерно раздутым зарплатам, перестать ныть
    и перестать требовать лучшей жизни. У нас уже есть одна.

    Охуенный наброс говна на вентилятор, ящитаю!

    https://habr.com/ru/post/483592/

    gost, 12 Января 2020

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