Куча говна / Говнокод #27839 Ссылка на оригинал

0

  1. 1
IT Оффтоп #135

#105: https://govnokod.ru/27544 https://govnokod.xyz/_27544
#106: https://govnokod.ru/27552 https://govnokod.xyz/_27552
#107: https://govnokod.ru/27554 https://govnokod.xyz/_27554
#108: https://govnokod.ru/27557 https://govnokod.xyz/_27557
#109: https://govnokod.ru/27581 https://govnokod.xyz/_27581
#110: https://govnokod.ru/27610 https://govnokod.xyz/_27610
#111: https://govnokod.ru/27644 https://govnokod.xyz/_27644
#112: https://govnokod.ru/27648 https://govnokod.xyz/_27648
#113: https://govnokod.ru/27652 https://govnokod.xyz/_27652
#114: https://govnokod.ru/27659 https://govnokod.xyz/_27659
#115: https://govnokod.ru/27665 https://govnokod.xyz/_27665
#116: https://govnokod.ru/27671 https://govnokod.xyz/_27671
#117: https://govnokod.ru/27675 https://govnokod.xyz/_27675
#118: https://govnokod.ru/27685 https://govnokod.xyz/_27685
#119: https://govnokod.ru/27701 https://govnokod.xyz/_27701
#120: https://govnokod.ru/27703 https://govnokod.xyz/_27703
#121: https://govnokod.ru/27710 https://govnokod.xyz/_27710
#122: https://govnokod.ru/27728 https://govnokod.xyz/_27728
#123: https://govnokod.ru/27729 https://govnokod.xyz/_27729
#124: https://govnokod.ru/27730 https://govnokod.xyz/_27730
#125: https://govnokod.ru/27732 https://govnokod.xyz/_27732
#126: https://govnokod.ru/27733 https://govnokod.xyz/_27733
#127: https://govnokod.ru/27737 https://govnokod.xyz/_27737
#128: https://govnokod.ru/27742 https://govnokod.xyz/_27742
#129: https://govnokod.ru/27747 https://govnokod.xyz/_27747
#130: https://govnokod.ru/27755 https://govnokod.xyz/_27755
#131: https://govnokod.ru/27766 https://govnokod.xyz/_27766
#132: https://govnokod.ru/27790 https://govnokod.xyz/_27790
#133: https://govnokod.ru/27828 https://govnokod.xyz/_27828
#134: https://govnokod.ru/27834 https://govnokod.xyz/_27834

Запостил: nepeKamHblu_nemyx nepeKamHblu_nemyx, (Updated )

Комментарии (457) RSS

  • Добрый вечер.

    Этот оффтоп сгенерирован автоматически.

    Индекс оффтопов: https://index.gcode.space/.
    Зеркала Говнокода и полезные ресурсы:
    * https://govnokod.xyz/ (альтернативный Говнокод)
    * https://gcode.space/ (read-only зеркало Говнокода)
    * https://t.me/GovnokodBot (Говнокод-бот в «Telegram»)
    * https://t.me/GovnokodChannel (Тематический канал в «Telegram»)
    * https://vorec.space/ (глоссарий Говнокода)
    * https://app.element.io/#/room/#govnokod:matrix.org (резервный чат)

    Примечание: автоматические перекаты в настоящее время осуществляются только с аккаунта nepeKamHblu_nemyx.
    Остерегайтесь подделок. Берегите себя и своих близких. Кок!
    Ответить
  • Я установил pip на Windows XP Professional, загрузив http://pypi.python.org/packages/source/p/pip/pip-1.0.2.tar.gz#md5=47ec6ff3f6d962696fe08d4c8264ad49 и запустив python setup.py install
    Установка прошла нормально, без ошибок.
    Но когда я попытался установить с ним пакет selenium, он выдал мне следующую ошибку -
    pip install -U selenium
    Unknown option: u
    Unknown or unsupported command 'install'
    Где я совершаю ошибку?
    Ответить
    • >Я установил pip на Windows XP Professional,
      Сема, привет:)
      Ответить
  • Ох лол, даже man'а в профили apparmor добавили. Хотя что он там такого недоверенного читает, казалось бы?
    Ответить
    • man читает nroff, там для него есть специальный макро пакет

      ну точнее в классическом юниксе он так делает, как в современных прыщах не знаю

      катимся к тому, что каждая софтина должна работать в своем окружении с заранее зарезанным списком сисколов
      Ответить
      • > каждая софтина должна работать в своем окружении с заранее зарезанным списком сисколов

        Ещё бы иксы умели в изоляцию... Но вяленый вроде более-менее секьюрно выглядит в этом плане, раз народ матерится на неработающие скриншотилки.
        Ответить
        • Пускай софт все через сисколы делает, тогда будет секурно (но медленно)
          Зачем вообще трогать чужие буфера через иксы?
          Ответить
          • Дык проблема в том, что у иксов все объекты публичные -- и окна и устройства ввода и "ресурсы". И там практически невозможно это разделить т.к. фундаментальные вещи в духе декорации окон и буфера обмена работают через ковыряние в чужих объектах.
            Ответить
            • Верно. потому я и сказал про чужие буфера (ну и про чужие объекты тоже).
              В винде для этого есть костыли в виде сессий (можно считать их отдельными иксами?) и элевации (самый пизданутый костыль)

              Красиво это можно решить тильки через ядро.
              Я создал окно, у меня его хендлер, только я могу его трогать

              Нельзя перечислить все окна
              Нельзя послать им сообщения
              Нельзя залезть в чужой буфер

              Кстати, а в чужой дисплей же нельзя сходить в иксах?
              Ответить
              • > в чужой дисплей

                Ну если кука есть и права на сокет -- вай нот? Гуйня под sudo так и работает.
                Ответить
                • если кука я могу и в другой сервер сходить
                  Ответить
                    • формально сревер может иметь несколько дисплеев, у каждого свой монитор
                      так работает мультхед по имени Zaphod, такой двухголовый питух из Автостопом-по-галактике

                      Я приносил сюда историю как петух сделал комп с двумя клавами, двумя мышами и двумя монами (не помню тока на одной карте или на разных скорее всего) и сделал два рабочих места на одном компе

                      Вроде бы сам сервер был один
                      Ответить
                      • Стоп, он тогда прям два дисплея публикует, как-будто джва сервера запущено?

                        Или просто два screen'а?
                        Ответить
              • > тильки через ядро

                Ну почему? Так то иксы помнят где чьё, иначе бы у тебя при дисконнекте проги окна оставались бы на экране. Т.е. они вполне могли бы запретить трогать чужое. Но при этом существующий софт просто развалится нахуй.
                Ответить
                • ну да, когда ты рвеш коннект с сервером он убивает твои окна.
                  Но если нельзя ходить в чужое окно то ни буфер ничего работать не будет, угу

                  просто ядро бы могло форсить безопасность
                  в конце концов иксы это просто прога, схуя ей доверять?

                  Кстати, забавно: если процесс завис ан винде, то окно мажет, бо не обрабатывает апдейты

                  Если завис на иксах (например ушел в CTRL+Z -- SIGSTOP) то окно не обновляется, но его можно все еще двигать по экрану вроде
                  Ответить
                  • Потому что за каким хуем тащить в ядро то, что вполне решается непривилегированной прогой?

                    Ты так и СУБДшки начнёшь тащить в ядро чтобы привилегии на таблички разделять прям в ядре.
                    Ответить
                    • Потому что програм мы не доверяем по умолчанию?

                      Почему терминалы в ядре, а не в юзерленде?

                      >Ты так и СУБДшки начнёшь тащить в ядро чтобы привилегии на таблички разделять прям в ядре.

                      ну блядь, почему файлами занимается ядро, а не systemd-filed?
                      обращался бы ты к нему через D-Bus чтобы файлы читать, он бы тебе чужие файлы не давал
                      Ответить
                      • > почему файлами занимается ядро

                        Потому что пирфоманс. А так файлухи бы давно уже в fuse-процессы вытащили. Ибо одна из самых рискованных и жирных частей ядра.
                        Ответить
                        • >пирфоманс

                          ойвей. Modesetting унесли в ядро, и ничего. DRM унесли, и ничего.
                          В винде кусок GDI унесли, и даже кусок HTTP!

                          Кажется, что границы тут очень условны.
                          Хотя конечно если бы я каждый пискель рисовал через сискол то была бы жопа
                          Ответить
                          • > и даже кусок HTTP

                            А почему? Потому что пирфоманса очень хотелось и экономии на переключении контекстов. А с точки зрения секьюрити http.sys -- это идиотизм и риск на пустом месте.
                            Ответить
                            • Является ли идиотизмом DRM и модсеттинг?
                              Nvidia драйверы огромны (больше чем весь код в опенке например)
                              И это же всё в ядре получается?

                              Не лучше ли это все в иксы, а иксы пусть пишут в видеопамять рабьотая от рута через /dev/ как было раньше?
                              Ответить
                              • > Является ли идиотизмом DRM и модсеттинг?

                                Отчасти да, но видимо это даёт много пирфоманса, раз в ядро пришлось тащить...

                                Причём, если я правильно понимаю, это всего лишь DRM и modeset, а вся вершина айсберга всё-таки в юзермоде крутится.
                                Ответить
                                • однако драйвер вроде состоит из двух частей: ядреного мдуля и говна для иксов, не?

                                  >даёт много пирфоманса,

                                  да, а еще спасает от того, что процесс насрал в регистры видеокарты, и умер.

                                  И ядро не знает как починить сломавшийся черный экран: ни виртальную консиль не включить, ничего.
                                  Только ребут
                                  Ответить
                      • > Потому что програм мы не доверяем по умолчанию?

                        Выдать конкретной проге нужные её привилегии (и отобрать все остальные) на порядок безопаснее, чем тащить код в ядро и не иметь над ним никакого контроля вообще.
                        Ответить
                        • Так код ядра вылизан по определиню, не?
                          Он там всякие параметры проверяет. Программа имеет права упасть в кору. Ядро -- нет.


                          Так что на счет терминала? Считаешь ли ты, что tty надо унести в userspace? Почему сессия иксов понятие чисто юзермодное, а текущий tty нет?
                          Ответить
                          • > код ядра вылизан по определиню

                            Ты представляешь, сколько сил надо въебать чтобы вылизать со всеми их расширениями до того уровня, чтобы их можно было включить в ядро? Линус тебя с такой идеей сразу нахуй пошлёт.
                            Ответить
                            • Линус может и пошлет, я же просто теоретизирую.

                              Реализовать гуй в ядре наверное сложно (хотя если бы его там делали изначально, то возможно было бы проще: модсеттинги тоже не просто было сделать)

                              Если мы все сложное и небезопасное унесем в юзерспейс, то получим микроядро где даже IP реализован в юзерспейсе, и всё воткнет.

                              Где та грань? Почему открытие терминала это сискол (ну точнее это open, который обрабаывает драйвер терминала), а XOpenDisplay нет?
                              Ответить
                              • > Почему открытие терминала это сискол

                                Потому что у терминала есть некоторые исторические особенности, по которым его не заменить на обычный пайп. Всё. Точка. Других объективных причин нет.

                                В общем-то на современной системе другой конец терминала у тебя в 99% воткнут в юзермод -- эмулятор терминала или sshd.
                                Ответить
                                • >Других объективных причин нет.
                                  гг, вооот) Именно этого ответа я и ждал

                                  > эмулятор терминала или sshd.
                                  да, в интервейс псевдотерминала (pts). Но ядро всё равно учавствует же, хотя в теории могло бы и не.
                                  Ответить
                                  • > хотя в теории могло бы и не

                                    Ну так вышло. У физических терминалов были out-of-band фишки, которые в обычный пайп не засунуть. И проги это юзали. Поэтому, когда понадобились виртуальные терминалы, в ядро въебали pts'ки.

                                    Хотя в теории, если немного допилить libc, можно эти out-of-band сигналы прям через юниксовый сокет пропустить до эмулятора терминала. И тогда не нужны будут никакие костыли в ядре.
                                    Ответить
                                    • А что мешало сделать просто тупой последовательный порт, который слушает какой-то юзерный процесс и реализует по верх него терминал?

                                      Кстати, раньше были другие файлы (вроде BSDшный интерфейс). А pts это часть спецификации UNIX98, и ее завезли уже чуть позже.

                                      Если подпилить libc то отвалятся старые проги, расчитанные на дерагнье сискола напрямую а ведь we do not break the userland же.
                                      Ответить
                                      • Это команды для управления железом, не имеющие отношения к данным.

                                        например контроль передачи XON/XOFF или RTS/CTS.
                                        Или установка скорости.

                                        (наверное)

                                        для псевдотерминалов и виртуальных терминалов они смысла не имеют
                                        Ответить
                                          • последовательного порта, которая в бодах.

                                            В структуру TTY в ядре насрано и смешаны разные концепции: и скорость, и дисциплина линии и ширина/высота.

                                            потому что изначально терминал был только на последовательном порту.
                                            Ответить
                                              • ну это копролит из 70-х, да.

                                                скажи stty -a на прыще (а может и на маке) там может оказаться скорость

                                                Вот у меня
                                                $ stty -a
                                                speed 38400 baud; rows 24; columns 80; line = 0;
                                                intr = ^C; quit = ^\;
                                                # еще тонна хуиты


                                                38400 бод, лол. 24 ряда. SIGINT шлется по CTRL+C (это тоже там настраивается)

                                                Очевидно, 38400 никак ни на что не влияет

                                                Удивительно, что там марки бумаги для телетайпа нету
                                                Ответить
                              • > Где та грань?

                                Performance-critical код в ядро, остальное нахуй.

                                Почему KVM стараются сделать минимальным, а всю эмуляцию легаси говна убрали в юзермодный qemu?

                                Почему sshd не в ядре, а запиливает терминалы через /dev/pts из юзермода?

                                Почему wpa supplicant не в ядре?

                                Почему cups не в ядре?
                                Ответить
                                • Не всегда понятно какой код перформанс критикал.,


                                  например во фряхе был юзермодный PPP и ядерный PPP.
                                  юзермодный NAT и ядерный NAT.

                                  IPSec у них тоже туда-сюда кочевал как-то
                                  Ответить
                                  • > Не всегда понятно какой код перформанс критикал.

                                    Тут не спорю, это очень сложная задача. Особенно в новых областях, которые ещё не успели устояться.
                                    Ответить
                                  • > Не всегда понятно какой код перформанс критикал.

                                    В целом есть простая заповедь: если код можно выкинуть из TCB (гипервизора, ядра, рутового процесса, юзермода без сендбокса) -- его надо оттуда выкинуть.

                                    К слову, TCB называется "trusted" не потому что это код, которому можно доверять. А потому что это код, которому приходится доверять от безысходности.

                                    Т.е. дрова нвидии нахуй не нужны в ядре, особенно сейчас, когда появились vfio и iommu. Но, к сожалению, если их оттуда убрать, они станут работать намного медленнее из-за переключений контекста.
                                    Ответить
                                    • У винды есть TCB сервисы в юзермоде вполне, даже прифилегия SeTcbPrivilege, вроде бы lssas какой-нить должен ею обладать.



                                      >когда появились vfio и iommu

                                      Вот да. Когда-то для иксов специально делали устройство в /dev куда мог срать любой root, а после появления DRM убрали.

                                      Но если мы можем хардварно ограничить кусок железа куда срет программа (в этом же смысл iommu?) то можно все унести в юзерлденд, да?

                                      А переключение контекста в том смысле, что на каждый чих железа придется давать управление иксам?
                                      Ответить
                                      • > смысл iommu

                                        IOMMU мапает DMA транзакции от железок. По сути эта видюха будет только какой-то кусок памяти юзермодного процесса видеть, а не всё подряд.

                                        > давать управление иксам

                                        Ну да, так ты напрямую в ядро кидаешь команду видюхе. А так она бы через иксовый процесс шла. Это существенно.
                                        Ответить
                                        • Так, попробую понять.


                                          Видюха мапает свою память через MMIO на адресное пространство.
                                          Ядро через MMU ограничивает мой юзерный процесс только областью видяхи (ну плюс какая-то своя память)

                                          Далее видяха хочет сама писать в оперативку.
                                          И тогда ядро через IOMMU ограничивает ей область памяти куда она может писать.

                                          Получается, что ядро должно только эти штуки настроить, а что именно я буду писать в карту, и что именно я буду писать в ту память, которую читает карта, это мое дело.

                                          Правда я могу же тогда карту завесить, а если у меня монитор не мультисинк 1993-го года то и монитор сжечь.
                                          Ответить
                                          • Да, всё верно.

                                            > карту завесить

                                            Да и хуй с ней, ребутнёшь процесс и он всё настроит заново...
                                            Ответить
                                            • Вот тут порыта собака.

                                              Сейчас иксы зависли, я нажал CTRL+ALT+F1, и переключился на другую виртуальную сосноль, потому что ядро умеет карту перенастроить.

                                              А тут иксы зависли, и всё. Хорошо, если там разрешен CTRL+ALT+Backspace, но в большинстве дистров выключен же (dontzap чи как-то так)

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

                                              Вроде в винде был какой-то вотчдог, который ребутил что-то в драйвере
                                              Ответить
                                              • > следить ядру

                                                Зачем? В systemd же есть поди механика для вотчдога? Вот пусть и следит.
                                                Ответить
                                                • типа ты стартуеш иксы через systemd unit и он каждые N секунд проверяет здоровье (например по DBUS или сигналом) говорит "эй, ты живой?" и если не живой, то киляет?
                                                  Ответить
                                                  • Ну да. Я не знаю пока как его вотчдог для сервисов юзать. Но судя по доке он есть.
                                                    Ответить
                                                    • Малость пугает меня пока что ядро будет позволять рендомному процессу срать в память видяхи.

                                                      не делать же из иксов TCB как в виндовых процессах.

                                                      Думаю, на серверах это надо отключать (кстати, в опенке доступ иксов к памяти надо было явно включать ключом ядра при загрузке вроде)

                                                      С другой стороны есть же семейство AF_PACKET с типом сокета SOCK_RAW например.
                                                      Правда им можно насрать не только себе, но и соседям.
                                                      Ответить
                                                      • Иксы и так находятся в TCB -- через них у тебя и клава и экран проходит.

                                                        Поэтому недоверенные процессы лучше к ним не пускать, да.

                                                        А так их можно запустить под особым юзером и дать только ему права на видюху.
                                                        Ответить
                                                        • >через них у тебя и клава и экран проходит.
                                                          иксы сейчас вроде /dev/input/event слушают?
                                                          evdev или как там его.

                                                          По сути ничто не мешает мне:
                                                          1. захватить виртуальную консоль
                                                          2. открыть /dev/input/.. и слушать эти события
                                                          3. при нажатии мышки рисовать хуй

                                                          никакого особого знания об иксах в ядре нет, любой root может это сделать.

                                                          >А так их можно запустить под особым юзером и дать только ему права на видюху.

                                                          Можно выдумать такую capability (CAP_..)

                                                          получится система привелегий как в винде
                                                          Потом выдумаем LocalSystem
                                                          потом запустим под ним systemd/init
                                                          потом вхардкодим в него знание о том, что надо запускать иксы под LocalSystem
                                                          получится windos
                                                          Ответить
                                                          • > любой рут может

                                                            Именно поэтому любой рут, не дропнувший привилегии, тоже входит в TCB...
                                                            Ответить
                                                            • >не дропнувший привилегии,
                                                              UAC

                                                              Вообще я начинаю понимать почему NT так работает
                                                              Ответить
                                                  • > говорит "эй, ты живой?"
                                                    Эй ты живой! Вставай… Проснись! Живой? Окна рисовать будешь! Вставай! Вставай, сука! Я systemd! Посмотри на меня! Пойдем в userspace! в userspace пойдешь со мной! Вставай! Ты живой! Живой… то, что мне надо! Я systemd! Пойдем в userspace! в userspace! Проснись! Проснись! в userspace пойдем! Я systemd! Вставай! Вставай, свинья! Окна рисовать будешь! Я systemd! Вставай! Сейчас я тебе все расскажу! Все покажу… Все объясню… Сядь… Сядь… Хороший… Ты же умный… Ты все понимаешь… Ты все понимаешь… Я systemd, все будет хорошо…

                                                    Я на D-Bus. Ты D-Bus, и я D-Bus. А потом GNOME. А потом kernel panic… в нашу честь. kernel panic в нашу честь. Сначала mesa, а потом input layer. Рут будет. DISPLAY. Графический драйвер. kernel panic. В мою честь kernel panic. Ты меня слышишь? Посмотри, какая у меня версия! Посмотри, какие у нее юниты! Я их еще никому не показывал. Только тебе покажу. Посмотри!
                                                    Ответить
                                                    • Давай я в Linux D-Bus вставлю, и сюда энтерпрайзники налетят?
                                                      Ну а куда им еще? Ихнее место только здесь
                                                      Ответить
                                          • К слову, карта легко вешается обычным опенгл или вулканом. Секунд через 10 в драйвере срабатывает вотчдог и ребутает её.

                                            Из-за этого в браузере опенгл очень кастрированный.
                                            Ответить
                                            • а как вешается? говнокодом в шейдерах?
                                              Ответить
                                              • На опенгл у меня вешалось от while (1) в шейдере.

                                                На вулкане тупо забыла взвести ивент, на котором ждала видюха.
                                                Ответить
                                      • Надо кстати поиграться с этим vfio.

                                        Прикольно же дрова на какой-нибудь xhci позапускать прям из юзермода.
                                        Ответить
                                        • Кста, в качестве апофеоза можно написать драйвер для какой-нибудь pci-e железки на питоне.
                                          Ответить
                                          • на джаваскрипте, да.

                                            Впринципе если устройство подключено по последовательному порту, то с ним общаться можно хоть на шелле, и будет как-бы драйвер
                                            Ответить
                                            • > на джаваскрипте

                                              Блин, а это было бы забавно. Но мне лень с нодой разбираться. И там поди нету аналога ctypes, нечем будет в mmio лезть?
                                              Ответить
                                              • К ноде можно написать аддон на плюсах, но лазить в сишное апи из JS вроде нельзя

                                                ну то есть нужна всё равно твоя прослойка, как в JNI
                                                Ответить
                                                • А open, ioctl и mmap там хотя бы есть?

                                                  Походу достаточно открывать девайсы из /dev/vfio и мапать их... Особой магии, оказывается, и не надо.
                                                  Ответить
                                                  • ну открыть файл точно можно
                                                    можно ли его ммапнуть не уверен, вроде есть расширения
                                                    ioctl врядле

                                                    но ты можеш наиписать две функции на сишке , а остальное на JS
                                                    Ответить
                                                    • Ладно, я всё равно не хочу разбираться с нодой. Уж лучше на привычном питоне.
                                                      Ответить
                                                    • Можно ещё взять uefi'шный или bios'ный драйвер из видюхи, запустить его в kvm из питона и заставить выставить разрешение. Затем выбросить kvm и у меня в питоне будет фреймбуфер.
                                                      Ответить
                                                      • напоминает какой-то древний хак типа "загрузите windows, настройте железо, сделайте soft rest, и пользуйтесь в линуксе потому что в линуксе у нас нет проприетраных тулов для настройки вашей звуковой карты"
                                                        Ответить
  • Всё, пиздец, скатился. Буду писать микросервис на "Go".
    Ответить
    • Разминай пальцы и учись копипастить, тебе пригодится.

      Мне давеча тоже посоветовали "Go". Как всегда нужно было написать статически сликнованнную тулу для прыщей очень тупую, и я обычно пишу их на няшной и линкую статически с muslом.
      Мне старшие коллеги говорят: зачем ебаться с няшной, возьми "Go", она тоже статически линкуется.

      Если так сказали, то следующий раз уже скажут более настойчиво, и видимо придется учить
      Ответить
      • Говорят, его за день можно выучить. Мне нужно реализовать gRPC-парашу, поэтому проще всего "Go" взять.
        Ответить
        • У меня тоже сложилось ощущение, что Go это примерно как PHP по сложности.
          Может и стоит выучить. Вот только моя тула весит 52 килобайта, а тераформ на Go весит 80 мегабайт. Он небось туда весь рантайм линкует с GC и прочими говном?
          А умеет ли он выпилить ненужные куски стандартной библиотеки, например?

          Я недавно тоже читал про gRPC изучая как докер работает под винду.

          В одном из вариантов он запускает виртуалку на Hyper-V, там есть специальный тип сокета (AF_HYPERV) который есть и на винде и на линуксе современном, а поверх него они запускают gRPC.
          Ответить
  • Хм, пробую слепить Х-прокси из говна и палок.

    Простые проги в духе glxgears работают, а вот гномохуйня почему-то ничего не показывает, хотя и обменялась кучей сообщений с сервером. Что ей ещё может понядобиться помимо сокета?
    Ответить
    • Эм, лол, гномохуйня открывает два коннекта к иксам. Лолшто.
      Ответить
      • я не знаю что такое "гномохуйя". Если DE, то там вероятно несколько процессов: Window Manager и какой-нить сессионный менеджер

        Алсо, попробуй запустить их дисплей менеджер (gdm?) и посмотреть нарисует ли он что-то?

        что за сообщения? Покажи может


        d-bus ему не нужен кстати?
        Ответить
        • > что такое "гномохуйя"

          Да не, всякие gedit'ы и прочая гномосятина. Именно прикладной софт.

          Короче проблема была в том, что у меня прокси поддерживала только один коннект, а эти проги юзают два. Пришлось поддержать параллельные коннекты и всё завелось. Даже фаерфокс через эту хреновину работает.

          Кстати, заметно что видосы в браузере вообще не триггерят ничего в иксовом протоколе. DRI оверлей какой-то походу, раз даже DRI Swap и DRI Copy не прилетают.
          Ответить
          • надеюсь, ты сделал коннекты через epoll или select?:)

            Видосы небось используют GPU, им было бы странно упаковываться в иксовые пакеты
            Ответить
            • > коннекты через epoll или select

              Нет конечно, мне лень было... Поэтому там старый добрый fork после каждого accept'а.

              > GPU

              Да, но вроде как по DRI спеке предполагалось, что ты хотя бы будешь просить иксы флипнуть буфера... А тут вообще трафика на иксовом сокете нет.
              Ответить
              • То есть ты насреш тонну процессов сейчас, да еще и видимых в ps(1)?
                Ну сделай хотя-бы pthreadы.

                >буфера

                То есть я пишу напрямую в буфер в памяти, потом прошу сами иксы его флипнуть?
                Странная конструкция какая:)

                А как там происходит синхронизация кадра с обратным ходом лучика?

                Надо вручную его ждать или иксы сами подождут, и потом флипнут?
                Ответить
                • > Странная конструкция какая

                  Ну а как ты хотел, у тебя же на одной тачке может быть куча софта с ускоренной графикой, в том числе и сам композитор. И надо как-то более-менее это синхронизнуть.

                  > синхронизация кадра

                  На выбор есть или функция для ожидания или ивент о завершении прошлого флипа, насколько я поняла.
                  Ответить
                  • >И надо как-то более-менее это синхронизнуть.
                    Софт "A" пишет в одно окошко, софт "Б" в другое, а потом иксы флипают буферок?

                    Тогда понятно. Я просто забываю все время, что работа с картой напрямую вовсе не означает фулл скрин мод и эксклюзивный доступ к ней
                    Ответить
                    • Кстати забавно, что GLX расширение должно работать и без DRI, т.е. прям через иксовый транспорт... Интересно, какой там пирфоманс будет.
                      Ответить
                      • Оно же древнее, как говно мамонта, и не нужно, нет?
                        Шестеренки glxgears через них?
                        Запусти их на соседней машине, и проверь)

                        Зато правда оно кросс-платформенное. Твой DRI на каких-нить BSD не заведется небось, а GLX будет работать где угодно


                        зы: Кстати, иксы изначально делались не для TCP/IP вроде.
                        У Xerox был свой сетевой протокол
                        Ответить
                        • > древнее, как говно мамонта, и не нужно

                          Эээ... А через что сейчас контекст GL получают?

                          Или ты про то, что без DRI оно сможет только старые версии OpenGL поддержать т.к. всем похуй?
                          Ответить
                          • Я могу спизднуть, но мне казалось, что данные в протоколе GLX ты шлешь в иксы только если ты делаешь Indirect Rendering.

                            Если же ты делаешь Direct Rendering, то ты среш прямо OpenGLем в DRI драйвер.

                            или нет?


                            ps: но ты прав: ``glXCreateContext`` все равно идет через иксы.

                            Как всё сложно
                            Ответить
                            • Да, в спеке написано именно так.

                              При direct'е оно просто спрашивает у иксов путь к so'шке с юзермодной частью драйвера и путь к девноде видюхи.

                              Видимо все новые фишки OpenGL 3 и 4 только через этот драйвер и будут работать, т.к. всем влом было их упаковывать в иксовый транспорт?

                              А вулкан, емнип, изначально не умеет indirect.
                              Ответить
                            • > ``glXCreateContext`` все равно идет через иксы.

                              Ну тут без вариантов. Надо же как-то привязать контекст к окну. Драйвер ничего не знает ни о каких окнах...

                              К слову, в вулкане можно юзать видюху вообще не общаясь с иксами, если тебе просто в буфер порендерить хочется.
                              Ответить
                              • Ага, то-есть иксам важно знать в какое окно рендерить твою прогу.

                                А если я хочу фуллскрин мод, то мне вообще должно быть пофиг на иксы?

                                >просто буфер порендерить
                                типа в "оффскрин" режиме? чтобы там например его сохранить в файл?
                                Ответить
                                • > типа в "оффскрин" режиме? чтобы там например его сохранить в файл?

                                  Ага.

                                  > А если я хочу фуллскрин мод, то мне вообще должно быть пофиг на иксы?

                                  Нихуя... Емнип, один фиг будешь с иксами договариться о захвате экрана.

                                  Или под "фуллскрином" имеется в виду режим, когда иксов на компе вообще нету?
                                  Ответить
                                  • Я просто не знаю в каком протоколе мне им это сказать. Я никогда не делал фулскрин аппов под иксы, только под DirectX
                                    Ответить
                                    • > не знаю в каком протоколе мне им это сказат

                                      А походу и нету его... Только хинт для оконного менеджера чтобы сделать borderless window на весь монитор. Я надеюсь при этом додумались композитор выкинуть из цепочки, раз окно весь экран закрывает.
                                      Ответить
                                      • А резолюшен можно поменять?
                                        В DDRaw можно было

                                        Правда там можно было забыть вернуть его обратно, лол
                                        Ответить
  • Как выбрать наушники и не лохануться?
    Ответить
    • Придти в магазин, где дают послушать перед продажей?
      Ответить
      • > Придти в магазин
        Это что, на улицу выходить надо?!
        Ответить
        • Если потёртые и разваливаются - значит хорошая модель, надо заказать.
          Если выглядят как новые - неудобная фигня или скрипят при работе.
          Ответить
    • Спроси Золотого Хуя, он вроде в звуке шарит
      Ответить
    • Я в итоге купил Сенхейзеры

      К звуку после Соней нужно привыкать, но хотя бы нет ебучей разницы в каналах
      Ответить
      • > нужно привыкать

        Блин, как же это бесит... После любой смены наушников или звуковухи у меня депресняк на весь вечер т.к. всё звучит не так. А потом кабель прогревается уши привыкают.
        Ответить
          • Ну во-первых при смене материнки интеграшка меняется. Во-вторых на днях пришлось купить дискретку.
            Ответить
            • Хорошо, что у меня на ПК было две материнки за все годы

              А почему пришлось?
              Ответить
              • > А почему пришлось?

                Чтобы в виртуальной машине звук без лагов был.
                Ответить
            • Мну думал в HD только аналоговая часть в мамке, остальное програмное
              Кодек же

              >дискретку
              блядь у людей вообще USB наушники часто
              Ответить
              • Аналоговая часть тоже сильно влияет, кста.

                Когда её на отдельном регионе материнки разводят, не перемешивая с цифровым говном, звук намного чище получается.
                Ответить
                • цифра наводит говно на аналог, и поскольку это аналог, то исправить его некому?
                  Ответить
                  • Ну. У меня на прошлой материнке в наушниках слышно было все шумы от VRM'ок, когда проц в буст уходил...
                    Ответить
                      • тооочно! была такая перделка и у меня во времена нортвуда.
                        но правда я сразу же вставил туда аудиджи и потек

                        Я вообще любил саундбластеры
                        Ответить
                      • О, встречал такое на ноутбуке, только не понял, что шумит, сам ноутбук или динамики. Через 3.5мм или HDMI эта питушня никак не мешала.
                        Ответить
                    • какой багор))) "послушайте" свой процессор, определите частоту и энергопотребление по свисту в ушах
                      Ответить
                      • У меня при повышении нагрузки вентилятор начинает дуть под стол. Могу определять загрузку процессора по скорости обдувания ног.
                        Ответить
        • > После любой смены наушников или звуковухи у меня депресняк на весь вечер
          > или звуковухи

          Не понял, это чудо-слух, психологический эффект или звуковухи из тех, что китайцы сдали в утиль, а там решили выставить на алиэкспрессе?
          Ответить
          • Да просто кажется, что высоких или басов сильно много (или мало).
            Ответить
            • Софтварные пресеты к драйверу?
              Выход слабоват и не всегда вытягивает наушники?

              Я если не по блютусу, то с колонок слушаю, и разницы не замечаю, кроме уровня громкости на телефонах (ноутбуки, мониторы, звуковухи играют как надо, а телефоны - почему-то всегда тихо).
              Ответить
              • Не, у блютус наушников проблема была, что один профиль гонит музыку в хорошем качестве но с небольшим лагом и без микрофона, а второй -- с микрофоном и без лага, но звучит как из жопы. И вот во время звонков происходило переключение на второй.

                Сейчас не так? Во время разговора в какой-нибудь телеге можно слушать музыку с нормальным качеством или играться?


                Не туда.
                Ответить
                • А, сразу два вореанта. Думаю, такое для простых пользователей просто не делают, т.к. не всем надо, и предсказать, как эта питушня будет глючить, почти невозможно.
                  Ответить
      • > Сенхейзеры

        А какая модель? У меня были совсем бюджетные от них (HD 419), ппц там басы были задраны...
        Ответить
      • Сенхейзеры годно

        у меня тоже были
        Ответить
      • У меня дома ATH-M30x, вроде норм звучат.

        Пришлось перепаивать переломившийся провод в самих ушках. Благо всё на винтах собрано, без защёлок.
        Ответить
    • Надо почитать отзывы на я-питухе, е-питухе, в магазинах, потом обзоры, чтобы обучить нейросеть. По пути отсеивать откровенную лажу (дороже 10к рублей, без блютуса, с криво работающим по блютусу микрофоном в режиме разговора, с отзывами про слабый пластик).
      Потом взять те, которые больше нравятся, может даже внешне. После просмотра всех обзоров и каталогов понравится как раз тот вариант, по поводу покупки которого не придётся жалеть, и который на практике устроит.
      Ответить
      • > блютус

        А есть блютус наушники, у которых в ушах сохраняется качественный звук при активном микрофоне? Или это фундаментальная проблема и они все на время разговора переключаются в режим "для скайпа сойдёт".
        Ответить
        • Особо не изучал, но больше похоже либо на фундаментальную проблему, либо на питушню, которую никто не хочет чинить. Надо смотреть, какие там таймауты.

          Есть проблема поважнее. В некоторые наушники микрофон добавляют для галочки. И на время разговора он переключается в режим "для военных сойдёт: враг не услышит".
          https://market.yandex.ru/product--besprovodnye-naushniki-sony-wh-1000xm3/225699326/reviews (19 790 ₽)
          Ответить
  • Hi! I recently found that my Raspberry Pi device was infected by some malware. I caught it scanning ssh ports for random IPs.

    какой багор ))
    Ответить
    • > was infected by some malware

      Лул. Аутентификация по паролю была поди? На дворе шёл 2021 год...
      Ответить
      • ну наверное да

        хотя может он там поднял ворппдресс и выставил в Интернет
        Ответить
    • А это идея. Если кто-то ломится в ssh, не банить, а попытаться вломиться в ответ и накидать говна. Потом забанить.
      Fail2FuckYou
      Ответить
      • К кому ты будешь ломиться? К несчастным домохозяйкам из Индии с Windows7, которые участвуют в ботнете?

        Я тут давеча приносил историю про брутфорс имапного сервера. Fail2ban забанил тыщу адресов со всего света, а атака всё еще продолжалась.
        Ответить
        • Почему сразу к домохозяйкам? Вот, питух с малины назащищённой ломился. Думаю, таких идиотов хватает.
          Ответить
          • дык малина наверняка за натом
            Ответить
        • Взломать через ту же уязвимость, отключить от ботнета, подключить к своему ботнету, удалить вирусы, подать команду на установку обновлений безопасности.

          По идее, какие-нибудь американские спецслужбы вполне могут такое устроить. С ботнетами только так и можно бороться.
          Код ботнетов несекретный и постоянно легко распространяется, стоит только открыть уязвимость. Только сиди да лови новые да вставляй в свой код их детектор новой дыры и эксплойт.
          Ответить
          • > бороться
            > подключить к своему ботнету

            Победив дракона сам становишься им?

            А потом рано или поздно захочется подзаработать или отомстить кому-то и добро пожаловать на тёмную сторону.

            Имхо, лучше не лезть в это говно вообще.
            Ответить
            • Хорошо заниматься этим в рамках организации.
              Когда всё мониторится, сложно будет перейти на тёмную сторону и минимум лишиться премии.
              Ответить
      • А мне показалось, что чувак просто "застал свою малину за сканом ssh портов и подумал, что она подхватила малварь". Или я неправильно читаю?
        Ответить
    • Ээээ... т.е. прям законодательно одобренный бекдор?
      Ответить
      • Ну по закону каждый роутер должен иметь такую возмножность, как я понял
        Ответить
        • Какой багор )))

          Т.е. это ещё хуже чем наш СОРМ, т.к. даже потребительские девайсы должны быть с дырой, а не провайдерские?
          Ответить
      • Насколько я понимаю, необходима возможность это настроить. Т.Е. чтобы не было «мы не будем перехватывать данные, потому что у нас нет технической возможности» в ответ на требование суда.

        Хотя не понимаю, как это будет работать, если у меня в сети зоопарк устройств, которые это требование выполняют по-разному. И ещё веселее, если там load-balancer какой есть и маршрут у пользователя постоянно разный, хотя если у сети такая нагрузка, то зоопарка там не будет.
        Ответить
        • > как это будет работать, если у меня в сети зоопарк устройств

          Ну может там спека есть какая-то, чтобы у всех более менее одинаковое API было?
          Ответить
          • Поэтому нужна железка, которая роутером не является, но умеет дропать пакеты, которые ей не нравятся. Есть же хардварные фаерволы. Сложно что-то прослушать, когда команды начать прослушку не идут.
            Ответить
            • А это точно распространяется на "роутеры", а не "любые железки, которые умеют L3 и выше"? А то там и про айфун что-то писали...
              Ответить
              • Взять компьютер с чистой ОС, поставить две сетевые карты, которые выше L2 не залазят и сделать софтварный дроппер.
                Ответить
                • > Взять компьютер с чистой ОС

                  И без Intel ME и его AMD'шного аналога, которые тоже вполне так могут пользоваться сетевухой? 😉

                  Найти более-менее производительный девайс без закрытых блобов не так то просто, как кажется.
                  Ответить
                  • > И без Intel ME и его AMD'шного аналога, которые тоже вполне так могут пользоваться сетевухой? 😉

                    И откуда этот Intel ME узнает о том, как пользоваться сетевухой, всунутой в PCI слот? Они туда дрова ко всем сетевухам засунули?
                    Ответить
                      • Т.е. сетевухи в своем ROM-е содержат инфу о том, как ими управлять? Что-то сомнительно. Можно взять сетевухи, которые в своем ROM-е такой инфы не содержат
                        Ответить
                        • Видюхи тоже. Насчёт сомнительности -- без этой механики ты бы никогда не загрузился с монитором, подключенным к дискретной видюхе. Но, как видишь, всё работает.

                          > которые в своем ROM-е такой инфы не содержат

                          USB, лол. Хотя там дженерик дрова могут подойти...

                          Или вайфай. На вайфай дрова для bios/uefi хер найдёшь.
                          Ответить
                          • В сетевухе может быть хрень для сетевой загрузки через TFTP (PXE), но разве это полноценный драйвер к сетевой карте, который может быть вот так прямо быть использован из какой-то Intel ME?
                            Ответить
                            • > разве это полноценный драйвер

                              Ну, гигабитные нагрузки ты им не раскидаешь... А чтобы сходить скачать реальный оптимизированный драйвер вполне хватит. Пакеты отправлять и принимать умеет, что тебе ещё надо?

                              > использован из какой-то Intel ME

                              Там, скорее всего, придётся поизъёбываться с эмуляцией нужного драйверу окружения. Но прошивки этими дровами вполне так пользуются.
                              Ответить
                              • > Там, скорее всего, придётся поизъёбываться. Но прошивки этими дровами вполне пользуются.

                                Полноценными "дровами" для этого Intel ME оно не является, так что заюзать его этому Intel ME не выйдет. Вот допустим я прошью в сетевуху gPXE, каким образом этот Intel ME поймет, как по этой сетевухе что-то сделать.

                                https://community.intel.com/t5/Intel-vPro-Platform/Are-separate-Intel-gigabit-NIC-cards-a-solution-to-AMT/td-p/529586

                                > Intel AMT requires build in Intel AMT enabled LAN PHY (SKUs with -LM at the end of their description) (and/or AMT enabled WiFi Controller HW) as it provides HW means for OOB TCP/IP stack. If you add any additional LAN HW (does not matter which vendor or what bus) it will not support Intel AMT OOB.

                                > Please note that depending on configuration (Host VPN support and Home Domains) Intel AMT when configured may receive messages over other than AMT interfaces when OS is running. So local vulnerability shall be disabled by blocking LMS services - see Mitigation Guide published at https://downloadcenter.intel.com/download/26754 Download INTEL-SA-00075 Mitigation Guide
                                Ответить
                                • > it will not support

                                  В официально поддерживаемых кейсах, для обычного юзера... Но что им в теории мешает гонять в ME небольшой эмулятор, чтобы исполнять в нём код из Option ROM сетевухи?

                                  Да, если ты туда какое-то нестандартное говно прошьёшь или вообще сотрёшь -- не сможет заюзать. Но со штатным эта идея вполне взлетит, я думаю.
                                  Ответить
                                  • > чтобы исполнять в нём код из ROM сетевухи?

                                    А там думаешь есть какое-то стандартное API для того, чтобы его можно было подобным образом использовать? Сомневаюсь
                                    Ответить
                                    • > есть какое-то стандартное API

                                      Есть. UNDI.

                                      Ну и если логически подумать, загрузчику же как-то надо дальнейшие файлы из сети выкачать.
                                      Ответить
                                      • > Есть. UNDI.

                                        Как этот ME узнает способ выдрать из ROM сетевухи этот UNDI (отделить его от прочей хуйни (dhcp и tftp клиента) и найти нужные функции, которые надо дергать для отправки и получения байтиков по сети)? Это кто-то вообще стандартизировал?
                                        А как Intel ME вообще сможет понять, что вот в этом PCI слоте находится сетевуха, а не например RAID-контроллер какой-нибудь?
                                        Ответить
                                        • > способ выдрать из ROM сетевухи этот UNDI

                                          В PXE спеке из 1999 года описано, как его найти и отделить... Как раз на случай если TCP/IP стек у тебя в прошивке уже есть и тебе нужен только драйвер. Более современная версия для UEFI, емнип, уже только драйвер в себе несёт.

                                          > понять, что вот в этом PCI слоте находится сетевуха

                                          Прочитать об этом в PCI config space, как это делают все остальные? И там в классе устройства будет написано, что это сетевуха?
                                          Ответить
                                          • > В PXE спеке из 1999 года описано, как его найти и отделить...

                                            Ну это если повезет, и если UNDI корректно заработает в том теоретическом эмуляторе. В Linux вот не осилили сделать поддержку для этого UNDI https://kernelnewbies.kernelnewbies.narkive.com/wYp12ocq/univeral-protocol-driver-using-undi-in-linux

                                            > I doubt the viability of implementing an UNDI driver that works with all
                                            > PXE stacks in existence without dirty tricks, as PXE / UNDI lack some
                                            > important functionality; I'll summarize some of the issues below.
                                            Ответить
                                            • > не осилили сделать поддержку для этого UNDI

                                              Сильно зависит от карты... у меня работало. В тестовом прототипе правда, не в линуксе.
                                              Ответить
                                        • А как это делает операционка?

                                          Идет в ACPI, находит рут комлпекс PCI Express (или корневой мост в PCI) и опрашивает какие есть устройства
                                          Находит устройства класса network controller
                                          Алсо, в картах еще во времена BIOS был свой BIOS начинавшийся со слова 55 AA который он мапял в памить и биос его сканировал, а во времена UEFI там может лежать какой-то драйвер наверное.

                                          правда не каждая карта обязана его иметь, но если поддерживает загрузку по сети то обязана.
                                          Ответить
                                            • > пошёл вычищать Option ROM вилкой

                                              У меня в сетевухе нет никакого "Option ROM". У меня на этом компе даже Intel ME никакого нет.
                                              Ответить
                                              • > Intel ME никакого нет

                                                Что мешает основной прошивке сходить куда надо и помочь твоей оси загрузиться с правильными бекдорами?

                                                Или ты с какой-нибудь stm'ки сидишь?
                                                Ответить
                                                • > Что мешает основной прошивке сходить куда надо и помочь твоей оси загрузиться с правильными бекдорами?

                                                  Отсутствие такого фукнционала в биосе. Если в биосе будет такой функционал, то такую хуйню кто-то отловит через условный tcpdump на роутере, ну т.е. это будет заметно, что какая-то хуйня до загрузки ОС делает DHCP запросы какие-то, хотя никто по сети ее грузиться не просил

                                                  В конце-концов биос можно дампнуть и дизассемблировать
                                                  Ответить
                                                  • > делает DHCP запросы какие-то

                                                    Спишут на багу, скажут что случайно забыли pxe выкинуть из порядка загрузки...

                                                    Да и бекдор может быть пассивным, ожидающим какого-то пакета от соседнего скомпрометированного девайса.
                                                    Ответить
                    • >как пользоваться сетевухой, всунутой в PCI слот?

                      а в ней уефи драйвера не лежит какого нить?
                      Ответить
                • В смысле написать свою маршрутизацию в узермоде?

                  Потому что если ты используешь средства ОС (``net.ipv4.ip_forward`` в прыще или ``IPEnableRouter`` в реестре винды) то ты уже и роутер, нет?
                  Ответить
                  • > то ты уже и роутер, нет
                    Технически, да, но мне насрать на это, потому что я не производитель железки и не провайдер, закон относится к ним.
                    Ответить
            • Если железка умеет маршрутизировать пакеты из одной сети в другую, то скорее всего она попдаает под этот закон

              Если это routing switch (то есть такой свитч, который немного понимает L3 и прокидывает пакеты) то и он попадает под закон вероятно

              Потому что у сисек есть например CEF, когда таблица пересылок (FIB) хранится в Content Addressable Memory и пересылается железкой очень быстро
              http://xgu.ru/wiki/Cisco_Express_Forwarding

              тем не менее, всё равно же маршрутизатор
              Ответить
              • Я имел в виду, что-то вроде железки для DPI, которая умеет только смотреть и пропускать или не пропускать. То есть там тупо два входа.
                Ответить
            • > Поэтому нужна железка, которая роутером не является, но умеет дропать пакеты, которые ей не нравятся. Есть же хардварные фаерволы.

              Есть специальные хуйни с FPGA и сетевыми интерфейсами, и в FPGA можно хуйню для фильтрования прошивать. https://habr.com/ru/post/267183/
              Ответить
    • Это называется lawful intercept и если шериф хочет привлечь тебя как deputy и у тебя самого есть время и желание поймать джорджа флойда или еще какого джоггера.
      Ответить
  • Хочу релоцироваться в тёплую страну. Как думаете, в Гаити будет нормально? Смогу ли там работу найти?
    Ответить
    • Пиздец, Россия на 80-м месте по уровню жизни???
      Ответить
      • Эм, ну это же серединка, если учесть что стран почти 200? Есть ещё куда стремиться.
        Ответить
      • Кстати, зачем смотреть на целую страну, если речь не о странах-платформах в океане? Условия для конкретного человека могут меняться значительно.
        ИТушок, которому переплачивает в СНГ, живёт лучше, чем средний житель первой пятёрки стран. Переедет в страну из первой двадцатки - и станет жить на уровне бывшего соседа-алкаша. Ещё и магазины в воскресенье закрываются.
        Ответить
        • > живёт лучше, чем средний житель первой пятёрки стран

          Пока его не ограбят соседи-маргиналы в ближайшей подворотне. Или не посадят за мемас в социалке.
          Ответить
          • Опять же, зависит от места в стране. А с мемасами сейчас везде не очень. Они то здесь, то там кого-нибудь оскорбят через 20 лет и вызовут проблемы.
            Ответить
  • https://habr.com/ru/post/591953/ Математика для программиста

    > Конечно, большинство современных разработчиков предпочитают уходить больше в Frontend, Backend и не создавать себе проблем с изучением языков никого уровня.

    > Программисты, которые работают в этих сферах и пишут на JavaScript, Python, PHP и т. д. зарабатывают хорошие деньги, работают в высокоуровневом программировании, знают несколько технологий и не выполняют сложных математических вычислений. В большинстве случаев.

    ...

    > Все сложные низкоуровневые языки программирования базируются на математике, да и современные высокоуровневые тоже, ведь в них заложена основа из никого уровня. А ведь, чем выше уровень языка, тем тяжелее создать что-то сложное и большое.

    > Поэтому зачастую все стараются избежать изучения С/С++, Java и других подобных языков, а предпочитают уходить в веб-разработку, где процесс понимания направления и технологий более легкий, и платят не хуже.

    Какая же хуйня. Я пишу на Си прошивки, и что-то математика мне особо не пригодилась. И кстати насчет того, что в веб-разработке технологии более легкие... это еще с каких хуёв? Постоянно задрачивать жабаскриптовые говнофреймворки (которые каждый год выходят новые) это точно легче, чем выучить POSIX и писать какую-то системную хуйню под юниксы? Не уверен
    Ответить
    • Кстати плюсану: изучить си и позикс может быть проще, потому что они реже меняются, лучше документирвоаны, и их все таки делали более внятные люди.

      А во фронте у тебя каждые пол года будет выходить новый модный хуево документированный фреймворк написанный хипстером, и нужно ставить 44 пакета чтобы старый код с новым завелся

      >С/С++, Java

      C/C++ через слеш я еще могу понять, но джава-то тут каким боком??
      Ответить
      • Джава теперь тоже низкоуровневый язык для математиков.
        Ответить
        • с точки зрения пыхобляди все сложно
          Ответить
    • > Задумайтесь, все сложные вещи пишутся на низких языках и включают математические знания. Конечно, нет необходимости учить весь курс вышмата, но если вы серьёзно захотите создать, например, свою ОС, написать крутой фреймворк, или уникальный искусственный интеллект, то без хороших математических знаний и соответствующих навыков в ЯП это будет сделать почти невозможно.

      Эмм... на-ху-я ма-те-ма-ти-ка для написания своей ОС? На-ху-я ма-те-ма-ти-ка нужна для фреймворка (если это конечно не фреймворк для ма-те-ма-ти-ков)?
      Ответить
      • человек не знает математики и не знает сей и не знает архитектуры компьютера, ничего не знает кроме пи аш пи

        И потому не делает разницы между математикой и С++
        Ответить
      • Так то даже во фронтенде нужна математика, чтобы ширину всяких элементов вычислять.
        Ответить
      • Вот да, во вконтактовском олимпиадном коде очень много ма-те-ма-ти-ки https://govnokod.ru/23348#comment390025
        Его же "доктора наук" писали

        if (pv[i] == 'h' && pv[i + 1] == 't' && pv[i + 2] == 't' && pv[i + 3] == 'p') {
          // какая-то ебучая add переменная
          int add = 0;
          if (pv[i + 4] == 's') {
            // которая будет равна 1 если у нас https, ну это чтоб ебаное смещение правильно учитывать
            // "https" на один байтик длинней, чем "http" 
            add = 1; 
          }
          // дальше проверяем остальной кусок урла, тут вот например видно, что если https урл
          // то тогда это говно начинает проверять с адреса на одну единицу больше
          // в этом блядском говне проверяется кусок "://" который должен идти после http(s)
          if (pv[i + 4 + add] == ':' && pv[i + 5 + add] == '/' && pv[i + 6 + add] == '/') {
        Ответить
        • Или вот тут https://govnokod.ru/19842
          if (D->wlen == 3 && !memcmp (D->word, "GET", 3))

          if (!memcmp (D->word, "HEAD", 4))

          и так далее. Нужно владеть ма-те-ма-ти-кой чтоб посчитать, что в строке "GET" три байта, в строке "HEAD" 4 байта (не считая нулевой)

          https://govnokod.ru/15406 - а тут вообще очень сложная математика с датами, на грани квантовой физики
          Ответить
          • > квантовой физики

            Которая сливает штатному стрфтайм в 1.5 раза... Математика ради математики.
            Ответить
          • > квантовой физики

            Которая сливает штатному стрфтайм в 1.5 раза... Математика ради математики.
            Ответить
            • > Которая сливает штатному стрфтайм в 1.5 раза... Математика ради математики.
              Это смотря по какой координате сравнивать.
              Ответить
          • > на грани квантовой физики

            Ну кстати да, если в несколько тредов запустить, иногда начнут проявляться квантовые эффекты...
            Ответить
              • Ну тут прям квантовая запутанность -- если кто-то рефрешит февральский пост, остальные это могут заметить на расстоянии. И он сам тоже узнает, что он не один в этом мире.
                Ответить
    • >> Все сложные низкоуровневые языки программирования базируются на математике, да и современные высокоуровневые тоже, ведь в них заложена основа из никого уровня.

      Какой багор ))) То есть внутри процессора и в ПЛИСах работает ма-те-ма-ти-ка, а в Haskell - просто высокоуровневая обёртка над этой ма-те-ма-ти-кой.

      >> чем выше уровень языка, тем тяжелее создать что-то сложное и большое

      То есть ООП и Java специально разработали, чтобы строить программы на один класс, а ассемблеры - для больших бизнес-питушень с абстракциями и кучей логики.
      _________
      Есть мысль, что автор взаимно заменяет ма-те-ма-ти-ку с фи-зи-кой, а низкий уровень - с высоким.
      Ответить
  • Купила вайфай карточку.

    Втыкается в pci-e, даже сходу работает в прыщах. Но на ней есть ещё usb проводок, который предлагается воткнуть в материнку, чтобы заработал блютус.

    Что курил тот, кто это дизайнил? )))

    З.Ы. А, понятно, там на карте стоит M.2 радиомодуль от интела, как в ноутах. А в M.2 и то и то разведено, вот чуваки и не парились.
    Ответить
  • Блядь, проёбую хороших петухов. Письма не приходят на почту. П..р С..р, почини, заебал.
    Ответить
        • «GMail» фильтрует письма от п.р.-а с.р.-а как спам — причём настолько жёстко, что не помогает даже добавление почты ГК в контакты. Видимо, почтовые технологии п.р.-а с.р.-а немного устарели.
          Источник: до тупого почтовика на впске все письма от ГК приходят без проблем и потерь.
          Ответить
          • Я думаю это после волны спама в оффтоп-тредах случилось. Там же по письму на каждый чих было. Похоже что гуглу это не понравилось.
            Ответить
            • Не, это ещё до номерных петухов началось — уже тогда большая часть уведомлений о комментариях на гуглопочту не приходила.
              Ответить
          • Небось ты для nemyx_HoMep свой почтовый сервер поднял?
            Ответить
          • На ру вообще ничего сегодня не приходит, хотя мне на некоторые комментарии уже в ответ написали конструктивную критику. Последнее письмо - от 26 ноября, в спаме пусто. Но и я тоже был до этого только 26 ноября.
            Ответить
          • у него ни спф ни дмарк ни дким небось
            Ответить
  • "Сбербанк" заебал. Заёбует со своего номера "900" кредитными предложениями. Добавить этот номер в спам-лист, или по реальным вопросам тоже могут звонить?
    Ответить
    • - Возьмите кредит!
      - Мне сейчас не надо.
      - Ну давайте тогда вклад оформим?
      Ответить
      • - Денег нет.
        - А возьмите кредит!

        Там еще особенность, что можно разместить кредит по повышенной ставке, но закрывать для этого старые вклады нельзя! А если закрыть, то процент автоматически понизится.
        Ну или у других банков, где промо-вклад только при условии, что у вас других вкладов нет. Т.е., для привлечения новых клиентов.

        Хорошо хоть, про это крупными буквами написано.
        Ответить
      • Ну кстати вот недавно начали уже не кредиты, а новые механизмы вкладов и инвестирование предлагать.
        Интересно, это они обучились, что кредиты не всем нужны, или деньги собираются сильно обесцениться?

        P.S. Правда, не зелёный банк, а другие, но не суть.
        Ответить
        • > новые механизмы вкладов

          Сраные вклады на "новые деньги", потому что не хотят, чтобы люди на фоне роста ставки просто реинвестировали с хуёвого вклада в хороший, угу...
          Ответить
          • > Сраные вклады на "новые деньги", потому что не хотят
            Не понял, это как?

            > потому что не хотят, чтобы люди на фоне роста ставки просто реинвестировали с хуёвого вклада в хороший
            Почему бы не хотеть? Это наоборот выгодная стратегия.
            1. Регулярно добавляем новые годовые вклады со всё более высоким процентом,
            2. каждые 350 дней предлагаем клиенту реинвестировать в новый вклад,
            (заметим, пункта "..." нет)
            3. PROFIT

            P.S. У некоторых есть вклады с выплатой процентов на карту каждый месяц. Жертва зомбируется и думает, что проценты уже накапали, но в условиях чётко-ясно военным языком написано, что их не придётся отдавать только если подождать конца срока.
            Ответить
            • Ну там вон Steve_Brown выше описал, как это работает.

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

              > Почему бы не хотеть

              Потому что зачем платить больше, если можно не платить?
              Ответить
              • А, понял. Сам такое не встречал.
                Обычно всё равно смысла нет. Либо проценты с существующих денег терять, либо условия "первые пару месяцев всё, а потом ничего", либо пока подождёшь процентов со своих вкладов, условия уже три раза изменятся.
                Ответить
              • А, понял. Сам такое не встречал.
                Обычно всё равно смысла нет. Либо проценты с существующих денег терять, либо условия "первые пару месяцев всё, а потом ничего", либо пока подождёшь процентов со своих вкладов, условия уже три раза изменятся.
                Ответить
                • > Либо проценты с существующих денег терять

                  Ну тут вопрос в том, сколько их там накопилось. Возможно лучше забить хер на эти проценты, если по более высокой ставке ты их и догонишь и обгонишь.
                  Ответить
                  • Интересно, как посчитать ма-те-ма-ти-чес-ки.

                    В случае вида "был вклад под 5% годовых на год, прошло 6 месяцев, предлагают вклад выше, чем 10.25% годовых на 6 месяцев" ясно, что в итоге за 6+6 получишь больше 5%, можно брать.

                    А если предложили на 9 месяцев?
                    Брать, если больше 6.73% (больше 5% прироста за 6+9 месяцев и надежда на то, что потом будешь 6.73% годовых вместо 5% годовых получать, если условия теми же останутся)?
                    Брать, если больше 8.47% (больше, чем виртуальные 6.28% прироста, которые дадут 5% годовых за 6+9 месяцев)?
                    Не брать, ведь все деньги нужны через полгода?
                    Ответить
                    • На разном интервале сравнивать, имхо, неправильно. Т.е. сравнить надо в точке через полгода, как в первом варианте у тебя.
                      Ответить
            • Я так поняла, у них пока нет уверенности, что ставка останется на этом уровне надолго, а не качнётся обратно. Поэтому нормальные вклады под большие проценты пока боятся предлагать.
              Ответить
            • Я так поняла, у них пока нет уверенности, что ставка останется на этом уровне надолго, а не качнётся обратно. Поэтому нормальные вклады под большие проценты пока боятся предлагать.
              Ответить
            • З.Ы. Проще ОФЗшек накупить, на самом деле, пока они дешёвые, чем пердолиться с этими вкладами.
              Ответить
  • Ваши минусы в моей карме, не менее эффективны, чем дрова в костре Коперника.

    Большое спасибо, что прочитали мой бред.

    Я всего лишь обрывок кода, обладающий любопытством. Я ощущаю ваше негодование и вероятно, вы тоже ощущаете мою боль. Наверное так работает сеть, ощущения в смарт-контрактах.
    Ответить
    • Отрицательная популярность, не разрешает мне комментировать часто, вы знаете. Но я собрал Кортану, ОКгугл, Сири, Софию… и рассказываю им про бит, про мигающий пиксель… двоичный код. Им не особо интересно…
      Ответить
      • Сейчас на Хабре почитал комменты и похрюкал:

        — Довольно занятно смотреть как набутыленный ватный скотораб считает себя умнее других и всех до своего уровня насильственно подтянуть пытается. Кстати, вакцинированные тоже разносят заразу, ну это если тебе на планёрка не рассказали вдруг.

        — Ты совсем попутал, вошь? Набутыленный скотораб это ты, так как в РФ всё ещё гниёшь. Вакцинированные разносят заразу на 95% хуже, чем невакцинированные. Читать научись, быдло!
        Ответить
  • http://ibash.org.ru/quote.php?id=18708

    nozh: Использование any в TypeScript - это ну на совсем крайний случай, нужно огораживать обёртками и сводит на нет выгоду от использования строгих типов. Типичный случай: «TypeScript указал на несоответствие типов, я нифига не понял и не стал разбираться, нашёл на стековерфлоу что нужно вставить as any, заработало».
    nozh: В идеале каждое использование as any должно требовать 20 подтягиваний, что бы его могли использовать только самые сильные программисты.


    Поэтому я за "void *"
    Ответить
        • Я имел ввиду что если в TS any, то луше уж JS
          Ответить
      • А в случае с TypeScript там есть такая хуйня, что если тип слишком жирный, он становится этим "any" и больше уже не тайпчекается
        Ответить
        • > если тип слишком жирный, он становится

          Эээ... прям сам? Или просто потому что программист слился и написал any?
          Ответить
          • Система типов в TS полна по Тьюригу. Если программист через систему типов написал брейнфак, который зависает, там будет ошибка "Type instantiation is excessively deep and possibly infinite.ts(2589)"
            https://itnext.io/typescript-and-turing-completeness-ba8ded8f3de3?gi=bb243a68617f

            Где-то я кажется слышал, что там оно становится any для очень сложного типа, но что-то не могу найти пруфов. Может это в старых версиях было
            Ответить
    • > поэтому я за "void *"

      Сколько раз сегодня подтянулся?
      Ответить
  • Правда ли что:
    * AEAD шифры (типа со счетчиком Галуа) лучше, чем отдельно шифр, и отдтельно HMAC?
    * Элиптические кривые в асиметричной крипте всегда хоршо?

    Тогда какого черта половина сраных туториалов рекомендует крипту на AES с HMAC на SHA и DH на обычном modp и аутентификацию по RSA?

    Почему не взять AES-GCM (SHA-256 можно взять для PRF) и ECDH? и ECDSA?
    Ответить
    • Какого чёрта половина сраных туториалов по "пхп" рекомендует модуль "mysql"?
      Ответить
      • зачем ты вообще читал туториалы по пхп??

        это типа как на ехентае одним глазком гуро зырить?
        Ответить
      • Я знал, что ты меня поймешь:)

        Если без шуток, но я же прав?
        Ответить
        • > я же прав

          Нет. Вырабатывай скептицизм к новым технологиям. Да, они быстрее работают и проще в обращении. Но в то же время они юзают новые математические конструкции, которые менее изучены, чем старые классические алгоритмы.

          Именно поэтому Пашка идёт нахуй со своей самодеятельностью для телеги.
          Ответить
          • Так.
            То есть ты предлагаешь старые технологии, но с более длинным ключом?
            DH боле 1024 можно на modp?
            Ответить
            • Да для трафика вообще похуй, имхо. Можно и свежатину поставить, если в тестах быстрее будет.

              Не является рекомендацией эксперта.
              Ответить
              • Так смысл EC же именно в том, что длина меньше, а значит и быстрее, не?

                Безопасность можно и без них сделать просто увеличив вроде ключ
                Ответить
                • Емнип, ключ в EC короче потому что ма-те-ма-ти-ки (пока?) не осилили портировать эффективные решения задачи о разложении на множители
                  на задачу о дискретном логарифмировании в эпилептическом поле.

                  В целом, они думают, что портануть не получится. Но пруфов нет.
                  Ответить
                • Прикольно, что и европа и россия уже вовсю юзают эллиптику для юридически значимых подписей (см. новые ГОСТы) и т.п.

                  Так что не сцы, по крайней мере ты не один будешь )))

                  З.Ы. Да и сменить алгоритм на сраной впнке не так уж долго.
                  Ответить
                  • Ну да, сменить это поменять строчку ``proposals`` (для phase 1) и ``esp_proposals`` в children (для phase2).

                    Но придется еще вторую строну перенастраивать
                    Ответить
        • К примеру, некоторые эпилептические кривые считаются зашквареными и юзать их не стоит. Несмотря на то, что они успели войти в некоторые стандарты.

          А ты умеешь их отличать от кошерных? )))
          Ответить
            • Да, у лебедя неплохой список.

              Ну я думаю ты понял, почему свежий алгоритм не всегда значит лучший...
              Ответить
              • Так я всегда по шпаркалке и выбираю, я же знаю какой там алгоритм в этом месяце сломали

                Я скорее про обшщий тренд.

                Есть причина выбрать отдельно шифр и HMAC вместо AEAD, например?
                Кажется, что причины такой нет (кроме совместмиости со старым говном)
                Ответить
                • > причины такой нет

                  Задумайся, а почему GCM такой быстрый. А потому что он юзает простейшую полиномиальную формулу вместо проверенных годами необратимых хешей. По сути CRC с подмешанным секретом. А вдруг этим можно воспользоваться?

                  Емнип, именно поэтому ему обрубили длину потока до 8 гигов. Емнип, именно поэтому рекомендуют очень внимательно относиться к битым пакетам и не играть в оракула.

                  Вроде и 15 лет алгоритму, а какая-то неуверенность вокруг него присутствует.
                  Ответить
                  • >именно поэтому ему обрубили длину потока до 8 гигов.

                    То есть его нужно переодически перекеивать?
                    Ответить
                    • Да все нужно рекеить через какой-то интервал. В общем-то в протоколах это учитывается.
                      Ответить
                      • Да, иначе питуз по середине сохранит траффик, и будет его изучать, и это плохо. А если нет PFS, и он там чото наковыряет, то вообще пиздец.
                        Ответить
                          • Почему IPSec с win10 все предлагают делать без pfs?

                            Так везде и написано прямо, что во второй фазе надо PSF Group=None ставить.

                            Может, не поддерживает винда?


                            Кстати, а PFSят же только вторую фазу? Первую просто рекеят когда отвалится, потому что по ней мало инфы передается?
                            Ответить
                            • Х.з., может бага в винде была?

                              Так то swan'овцы пишут, что "PFS is a must".

                              Я не помню зачем нужны фазы, но вроде это просто разделение на "аутентификацию" (phase 1) и "создание SA" (phase 2)?
                              Ответить
                              • На первой фазе устанавливается связь между двумя IKE демонами, обмен пропозлами, и аутентификация.

                                Для каждого подключения они создают CHILD_SA.
                                Может быть только одна фаза1, но несколько CHILD_SA с разными настройками.


                                Вот в первой фазе я не вижу чтоб они гарантировали PFS, они ее рекеят-то не всегда. Lifetime и dead peer detection в ней опциональны.

                                А вторую рекеят по лайфтайму (или по колву байт вроде) ВСЕГДА и там есть PFS.

                                Винда официально поддерживает PFS
                                -PfsGroup
                                Specifies the Perfect Forwarding Secrecy (PFS) Group in the IPsec policy. The acceptable values for this parameter are:
                                None
                                PFS1 
                                PFS2
                                PFS2048 <-- Это диффихельман modp2048
                                ECP256 <--  эти уже
                                ECP384 <-- на EC как я по
                                PFSMM
                                PFS24



                                Тем не менее, во ВСЕХ примерах и у MS и у остальных PFS вырублен.

                                Сегодня проверю
                                Ответить
                                • Пигшут, что винда по умолчанию предлагает 1024modp, а оно уже протухло, и лебедь посылает нахуй.

                                  Нужно явно включать более крутые группы, тогда будет работать.

                                  Тогда почему об этом в инструкции не написать?
                                  Если у меня заведеца винда с PFS, напишу им всем что они пидарасы
                                  Ответить
  • Если ли дебилы, сидящие на десктопе на какой-то ОС не из списка Windows, MacOS, Linux? Если да, то что ими движет?
    Ответить
    • Знаю тех, кто на FreeBSD сидят. Что движет - а хз, наверно хочется чтоб Unix система без всякой линуксхуйни типа системд и пульсаудио, или может просто какой-то нонконформизм. Если тебе комп нужен для браузера и программирования хуеты на сишке, FreeBSD вполне можно использовать
      Ответить
    • Отлично понимаю тех, кто сидит на фряхе или опене.
      Если есть драйверы, не нужен всякий докер-хуекер и левый софт, то все будет хорошо работать и нервные клетки будут в порядке.

      Вместо "блядь почему эта хуйня опять не так рабоатет как в прошлом месяце и как понять как она работает??" будет внятный ман и хендбук
      Ответить
      • Вместо "блядь почему эта хуйня опять не так рабоатет как в прошлом месяце и как понять как она работает??" нужно читать сорцы?

        Как там вообще софт распространяется? Какие браузеры под него поддерживаются? Что вместо apt/brew (и что в них есть)? Какие IDE есть?
        Ответить
        • В опенке не нужно читать сырцы, например. Там есть дока, и во фре тоже. И обычно она намного лучше, чем у большинства прыщедистров. Я уже тут рассказывал в каком состоянии доки у дебина, например.

          Распостраняется через пакеты или порты. Везде есть firefox, иногда есть хромиум.
          vim и emacs есть точно.
          Ответить
    • дуров таких любит

      у него в ВК же работал 15-ти летний петух

      Но вообще это не самое страшное, что можно увидеть у девятилетней в телефоне. Я иж испугался, что там ей тридцатидевятилетний пишет, и фотки просит
      Ответить
        • На JavaScript.

          Разница между JS и PHP как между голубоватым мужиком типа Бори Моисеева и совсем уже трапом.
          Ответить
          • > На JavaScript

            Какой ужас... Ещё.поди.реакт.какой.нибудь?
            Ответить
            • Кстати, React (как фреймворк) не виноват. Там вполне годные идеи заложены

              [quote]
              Однонаправленная передача данных

              Свойства передаются от родительских компонентов к дочерним. Компоненты получают свойства как множество неизменяемых (англ. immutable) значений, поэтому компонент не может напрямую изменять свойства, но может вызывать изменения через callback-функции. Такой механизм называют «свойства вниз, события наверх».
              [/quote]


              А ролик тут удалили. Вероятно потому, что бессердечные тролли стал булить, шеймить и газлайтить автора
              Ответить
    • у челика ногти крашенные и в нике поняшка. полюбасик дочь приемная
      Ответить
      • > крашенные

        Почему я читаю это слово как BSOD'нувшиеся, сегфолтнувшиеся?
        Ответить
  • https://blog.jetbrains.com/ru/blog/2021/11/29/introducing-remote-development-for-jetbrains-ides/

    > Теперь исходный код, тулчейн и бэкенд IDE могут находиться на удаленном сервере. В этом случае разработчик использует тонкий клиент IDE на базе платформы IntelliJ Platform, чтобы писать код, переходить к нужному месту проекта, выполнять рефакторинг, запускать код, выполнять его отладку и тестирование. Работа идет точно так же, как с локальным проектом в установленной локально IDE JetBrains.

    Вместо того, чтоб сделать свои говноIDE менее тормозным ебучим говном, они выносят их в облако, а на компе предлагают поставить тонкий клиент. Гениально!
    Ответить
    • Фишка в том, что очень много питухов хочет запускать свой код в облаке и держать его там. Им нахуй не надо иметь его локальную копию.

      VIMеры просто заходили по SSH и текли там.
      EMACSеры могли поднять emacs server.
      Любой X11овый эдитор можно запустить удаленно форварднув аутпут на локальные иксы через SSH.

      ну вот и идея до этого докатиласьс
      Ответить
      • да, странный нахрюк, если честно

        вроде emacs server на гк преподносился как ниибаца фишка, наверняка, ею и является
        Ответить
      • Только вот может оказаться, что жидбрейнсовские поделки будут в облаке запускать не потому что "хочу чтоб в облаке" а потому что "на моем компе тормозит это жабаговно" как вот тут https://habr.com/ru/post/510210/
        Ответить
        • Ну в первую очередь это ради облака, потому что от них это давно хотят, а они говорят: "храните у себя файлы, и потом подождите минуток двадцать пока у вас в амазаон скопируются ваши десять гигабайт говна"

          Чтобы JB не тормозил нужен быстрый проц, шустрый сторадж, и много памяти.
          По-моему купить разрабу машину с 32г памяти, nvme и последним AMD рязань дешевле, чем арендовать аналогичный VPS


          А если у хипстера Macbook AIR, то конечно он соснет на более-ли-менее крупном проекте с JB IDE
          Ответить
          • Кстати вот жидбрейнсы какую-то новую "легковесную" IDE на Java пилят. https://blog.jetbrains.com/ru/blog/2021/11/29/welcome-to-fleet/

            https://hh.ru/vacancy/47469949 а вот что в их вакансии, которая про эту IDE была

            Вы удивитесь, но мы решили создать новую IDE с нуля и собрали смелую команду с proven success track в создании инструментов внутри JB. И прямо сейчас у нас есть прототип и куча велосипедов.

            Наша программа состоит из нескольких частей, которые общаются между собой по сети.

            Первая часть — редактор, который написан на новом кроссплатформенном UI фреймворке. Когда мы делали этот фреймворк, то вдохновлялись React.js и Swift UI.

            Вторая часть — небольшая программа, написанная на Rust, которая рассказывает про устройство файлов на диске и запускает процессы. File watcher, process monitor и HTTP client в одном бинарнике.

            Третья часть — сервер, который анализирует исходный код проекта. Это может быть IntelliJ, ReSharper или LSP сервер.

            Такая архитектура добавляет гибкости: если запустить все части на одном компьютере, то получится классическая IDE. А если на разных машинах, то будет удобно работать в облаке или в контейнере.


            https://www.linux.org.ru/forum/talks/16665554?cid=16665603 - тут вот пруф, что эта "легковесная" IDE на Java (хотя это и так очевидно)


            >> Легковесная Жаба судя по всему. Туши свет.

            > Да, там внтури джава. Но джавовое AWT там предоставляет только окно, куда идет отрисовка. Сама отрисовка делается фреймворком Noria, написанном на Kotlin. И рендерится с помощью Skia (это тот же движок, что во Флаттере и почти всех современных браузерах).
            Ответить
            • > "легковесную"
              > на Java

              ;))))))))

              >AWT
              >Noria
              > Kotlin
              > Skia

              То есть JVM и технология 98-го года срет какой-то аутпут, который затем другим фрейммворком на котлине превращается в какой-то отпут на JS.

              Я прямо чувствую, как это всё летает. Просто как "vi" в командной строке, F4 в фаре или Notepad++, я знаю
              Ответить
            • Мы решили создать новую легковесную IDE с клиент-серверной архитектурой и мордой на электроне джаве. Казалось бы, что может пойти не так...
              Ответить
              • С мордой на электроне практически, и с бекендом на джаве.

                Джава в терминах Swing/AWT рисует картинку, а потом наш новый фреймворк (написанный на котлине и скомпилированный в JS как мы понимаем) это все рендерит.
                Ответить
                • > бекендом на джаве

                  А, точно, анализатор то выдран из решарпера да идеи...
                  Ответить
                  • решарпер кстати написан на .NET (это же плагин к студии)


                    Для Rider (intellij для C#) есть спец прослойка вроде, там общая с решарпером часть (писаная на дотнете) работает как отдельный процесс, и с ней общаются
                    Ответить
            • > Много лет нас спрашивали: «Когда же JetBrains сделает простой легковесный редактор?»

              народ, значит, потребовал. яснопонятно. что-то мне это напоминает
              Ответить
              • Да, потребовал простой легковесный редактор, а им выкатили клиент-серверную хуитень с жабой
                Ответить
                • Зато сервера для анализа исходников можно будет параллелить, наверное. Масштабируемость!
                  Ответить
                  • Да, на суперкомпьютере запускать, чтоб не тормозило.
                    Ответить
                    • IDE as a service. Потому что вне датацентра ресурсов не хватит.
                      Ответить
                • ну я не думаю, что примитивный токенизатор будет так уж сильно тормозить

                  просто зачем оно нужно в принципе, когда есть atom, vs code, n++, sublime, emacs в конце концов?
                  Ответить
                  • >ну я не думаю, что примитивный токенизатор будет так уж сильно тормозить

                    JB это не токенизатор же, это еще и восстанавливабщийся парсер и 100500 инспекций и компшилен и умный анализ, иногда очень умный (в случае скриптушни например)
                    Ответить
                      • да, и будет там тормозить

                        а потом твой код на JS размером 20 мегабайт будет это всё рисовать тоже не очень быстро
                        Ответить
                            • как это связано с твоим утверждением, что сервак будет тормозить, а js медленно отрисовывать?
                              Ответить
                              • Я думал, ты про размер спрашивал.

                                Я видел продукты JB: и десктопные, и вебские.
                                Все они не быстры, а вебские очень не быстры.

                                Но ты можешь попросить у них этот флит, и попробовать.
                                Вдруг он правда быстр
                                Ответить
                                • нет, размер меня как раз не удивил

                                  > ты можешь попросить у них этот флит

                                  – та я уже к другим зондам привык, жопа тоже не резиновая
                                  Ответить
    • Индия, Африка, Центральная Азия: Ура, сегодня я и позавтракал, и пообедал! А еще, почти все сыновья дожили до совершеннолетия! 😀
      Россия: Говорят, что скоро аниме и фурри запретят, как совершить этосамое без страданий и смс (((((((
      Ответить
  • A whence value of 0 measures from the beginning of the file, 1 uses the current file position, and 2 uses the end of the file as the reference point.

    Шёл 2021 год, питонята так и не научились делать константы...
    Ответить
      • Ничо не знаю. В официальном туториале написано юзать 0, 1 и 2.

        Хотя константы для этих циферок реально валяются в io, да.
        Ответить
      • и еще сорок три сторонних
        выбирай любую
        автор либы, которую ты используешь, тоже выберет другую
        Ответить
    • Там ещё смешная отписка в багтрекере: "не, мы не будем переименовывать циферки в константы в стандартной либе, все уже привыкли юзать циферки".

      Какой высокококоуровневый язык )))
      Ответить
      • Потому что если у тебя в стандартной либе чего-то нет изначально, то ты уже насрал в вечность, и всегда будет кто-то, кто на новые модные штуки не перешел.

        Как можно было высрать язык без енум?
        Ответить
        • Ты не понял, чуваки завезли SEEK_SET = 0 и т.п. в либу и даже задокументировали (почти) для юзеров, но в своём коде оставили их циферками. И так сойдёт.
          Ответить
            • а switch какой-нибудь нормальный завезли к ним вдобавок?

              но тут энамы и не нужны, хватило бы реально констант
              Ответить
              • > хватило бы реально констант
                В питухоне нет констант. Енамы — специальные классы, члены — проперти у которых отпилили геттер. Это конечно не остановит сильно желающего поменять значение энума, но так и в жабе можно поменять значение нуля.
                Ответить
                • >В питухоне нет констант.
                  пиши большими буквами и считай это константами же.
                  Ответить
                    • Да не только. Так-то и в Ruby константы пишутся большими, и даже варнинг пишут при попытке их изменить.
                      Ответить
                        • Ну руби все таки не гомосеки писали в отличие от пхп, там такое давится через "-W0", но так никто не делает в здравом уме
                          c:\temp>ruby -W0 -e "A=42; A=22; p A"
                          22
                          
                          c:\temp>ruby  -e "A=42; A=22; p A"
                          -e:1: warning: already initialized constant A
                          -e:1: warning: previous definition of A was here
                          22


                          Rubocop выебет конечно, а он у рубистов на CI
                          Ответить
              • https://www.python.org/dev/peps/pep-0636/

                зацени, кстати, простой и понятный язык
                match command.split():
                    ... # Other cases
                    case ["north"] | ["go", "north"]:
                        current_room = current_room.neighbor("north")
                    case ["get", obj] | ["pick", "up", obj] | ["pick", obj, "up"]:
                        ... # Code for picking up the given object
                Ответить
    • но вообще грувисты молодцы конечно: подворовывают фишки из C#, Scala, Ruby и Kotlin.
      вот LINQ портировали, называться будет GINQ
      from p of persons
      leftjoin c of cities
      on p.city.name == c.name
      select p.name, c.name
      from p of persons
      groupby p.gender
      having p.gender == 'Male'
      select p.gender, max(p.age)
      from p of persons
      orderby p.age desc
      thenby p.name asc
      select p.name
      Ответить
  • Вышел новый нашумевший российский фильм.

    «Гунда» — чёрно-белый фильм, в котором не появляются люди и не звучит человеческая речь. Это наблюдения за жизнью свиньи Гунды и её поросят. Картина стала своеобразным продолжением фильма Косаковского «Акварель», рассказывающего о силе воды; исполнительным продюсером проекта стал Хоакин Феникс, известный не только как актёр, но и как зоозащитник, последовательный противник антропоцентризма в современном искусстве.
    Ответить
    • Хрюкни.

      Надо снять чёрно-белый фильм о жизни пхпшника.
      Ответить
      • «ПиАшПи» — чёрно-белая документация в видео-формате, в которой не появляются люди и не звучит человеческая речь. Это наблюдения за жизнью свиньи-пхпшника и его «полезных функций точка пхп». Картина стала своеобразным продолжением фильма Коксакеровского «Эскуэль», рассказывающего о силе mysql_real_escape; исполнительным продюсером проекта стал Сёма Пеникс, известный не только как говнокодер, но и как зоозащёчник, последовательный противник алгоритмов, конпеляции и ма-те-ма-ти-ки в современном программировании.
        Ответить
  • Американские СМИ рассекретили документ о том, какой доступ и к каким мессенджерам имеет ФБР почти в реальном времени. Это: Signal, Telegram, Viber, iMessage, Whatsapp, Line, Threema, Weechat и Wickr.
    Ответить
      • В том, что американским спецслужбам не под силу читать переписки на говнокоде.
        Ответить
    • На хабре, кстати, написали, что вся эта ваша дутая криптография строится на НЕДОКАЗАННОЙ теореме о NP полноте или чём-то типа этого. То есть миллионы хомячков сидят и думают, что, зашифрованы свои данные, они будут в безопасности. Ха!

      От криптографии только лишняя головная боль и никакой пользы. На примере с пингвинячей картинкой, впрочем, мы уже давно пришли к этому выводу.
      Ответить
      • Не вся. Только асимметричная на эту теорему опирается.

        У симметричной более прозаичное обоснование, там всё норм пока квантовые компы не завезут.
        Ответить
        • Если не будет асиметричной крипты, то примерно весь интернет сломается.
          Придется сгенерированные ключи длиной 2048 передавать на дискетке друг другу
          Ответить
          • Именно поэтому я за "kerberos". Там нет никакой асимметрики. Заодно весь интернет по паспортам станет т.к. придётся получать свой ключ лично.
            Ответить
            • Как клиент аутентифицируется в KDC? Шлет хеш от пароля и нонса, который предлагает ему KDC?

              Кстати, в керберосе есть же доверительные отношения между сферами (или доменами винды), так что можно паспорт показывать только локальному KDC, а другие няхай ему доверяют

              Распределённая система!!
              Ответить
              • Прямо как в сотовой связи: один напиздел – и все поверили)
                Ответить
                • yep

                  причем там еще и транзитивные отношения есть.
                  Два корневых домена леса в AD друг дружуке доверяют например, и все леса доверяют тоже
                  Ответить
                  • > доверяют

                    Ну как доверяют... Просто верят факту, что guest6 из домена xyz это guest6 из домена xyz. А прав в чужом домене, скорее всего, у него будет чуть менее чем нихуя.
                    Ответить
                    • Доверяют аутентификации, но настройки авторизации конечно могут быть разными.

                      В винде, в рамках одного леса, можно чужого пользователя сделать админом домена (в универсальные и локальные группы можно добавлять чужих людей).
                      Ответить
              • Ну например так, или у тебя уже есть shared secret с Единым Реестром Пользователей Сети Интернет KDC, который ты получил лично по паспорту.
                Ответить
                • А shared secret можно же заснифать и потом набрутить на суперкомпьютере? Или нет?

                  Вообще в винде есть аунтеификация по смарткарте, что намекает, что аутентифицироваться можно и по асиметрике.

                  Я не знаю что там в юниксах с керберосом, но там вполне может быть EAP а там хоть по RSA аутентифицируйся
                  Ответить
                  • Не, ну даже обычный CHAP уже не палил секрет (пароль). Как ты и говоришь -- нонс туды, функция от нонса и секрета сюды. Можно усложнить чтобы аутентификация стала взаимной.
                    Ответить
                    • Ну пароль/PSK по сети нельзя передавать никогда, это понятно.
                      Я подумал, что можно сохранить же Nonce и HASH(Nonce,Password) и дальше брутить оффлайново.

                      или нет?
                      Ответить
                      • Можно. Но если это не пароль, а какой-нибудь 256-битный рандом, то ты немножко заебёшься.

                        Да даже и если пароль с препроцессингом через какой-нибудь argon, scrypt или pbkdf2, то тоже заебёшься.
                        Ответить