• А вот и девятое поколение Intel Core
    +3
    Спекулятивное исполнение — такой ящик Пандоры, который закрыть совсем (без полной переделки архитектуры и пайплайнинга) практически не реально (и уж тем паче не «с помощью патчей микрокода и программных обновлений»).
    Аппаратные же исправления как-то особенно «удаются» инженерам Интелей в последнее время.

    Поэтому вангую завтрашние заголовки «i9 is affected by meltdown/spectre V.xxx».

    Ну и выражения типа:
    Мощность новых процессоров, кроме того, позволит избежать сколько-нибудь заметного снижения их производительности в результате использования программных исправлений.
    это вообще нонсенс — сначала создаем «ILP, BP, суперскалярные конвейеры и иже с ними» (чтобы значит стало быстрее), а потом программно закрываем «дыры» и тут и там натягиваем ручник (делая наше чудо снова медленнее).

    Хотя про то что «стало быстрее» — то тоже спорно, как минимум для кого понятие «branch misprediction penalty» и связанные с ними накладные расходы — не пустой звук. Как и очередной приступ ненависти, после танцев с бубном вокруг, в попытках заставить связку CPU/compiler работать так, как того хочет программист/инженер (типа отключить к чертям BP на конкретном куске кода в принципе не позволяющем «нормальное» предсказание, например тупо на рандом-дата и подобном тому контексте).
  • Приходится выбирать, какой софт вам нужен: написанный вовремя или качественный
    0
    В принципе, софт можно написать либо вовремя, либо хорошо, но не то и другое одновременно

    Вообще-то можно и одновременно… ибо есть еще и третий фактор (в этом треугольнике) — цена вопроса.
    Конечно если сроки возможны в принципе (т.е. если вдевятером не нужно будет "родить" за месяц ©).

  • Хотел красивую железку. Получилось
    0
    А на кой черт он (модуль) нужен — тонкая крышка сверху (например из текстолита), сверлим дырку под потики, ну и провода на плату (там где тот модуль втыкается, гребёнкой или прямо запаять)…
  • Хотел красивую железку. Получилось
    0

    Мысль вроде бы здравая (там и обрабатывать МК не сильно нужно, просто брать сигнал с большим из двух сопротивлением, т.е. (xL > xR ? xL : xR) ну или в случае АЦП обратный), но…
    … или "крадёте" входы МК или "городить огород" с сумматорами (с компенсируемым делителем) и иже, да и получится как бы то, что называется и "из дерьма — конфетку"...


    Я не могу выходить за стандартный

    за стандартный что, простите?

  • Хотел красивую железку. Получилось
    0
    А печатные трудно найти путёвые (MRL>=100K), ну или я не встречал, покрайней мере из более менее бюджетных… (если вдруг встретите — поделитесь марк-ой, плз).
    Вырианты более 30$ за потик согласитесь не очень интересны… (особливо когда оно — «куча потенциометров»).
    Притом что на провод MRL~1M найти уже от 5$ (ну 10$) вполне реально.
  • Хотел красивую железку. Получилось
    0
    не смешите мои тапочки — эти потики (с RL в 25 килоциклов) захрипят в таком пульте за месяц-два (ну может полгода от силы).
  • Хотел красивую железку. Получилось
    +1
    Т.к. сегодня ничего вечного не делают, «гарантированно» хорошие будут с Rotational Life >= требуемого, если часто вертится то как минимум 1М циклов (цикл = поворот туды-сюды)…
    1М /  365 ~> 2700 * 2 ~ 5400 (поворотов ежедневно в течении 1 года)
    1М / 3650 ~>  270 * 2 ~  540 (поворотов ежедневно в течении 10-ти лет)
    
    Т.е. смотрим в даташит… Ну например у тех же Vishay, 534-е модели миллионники (см. www.vishay.com/docs/57065/533534.pdf)
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    закон и к нам относится

    Ну дак наверно и вероятно даже (в случае звонков, смс, данных на юзверя какой IP в какое время за ним закреплен и т.д.)… И это кстати например в тех же Европах (например в Германии) уже несколько лет с гаком так (только больше не от террористов, а в защиту интелектуальной собственности, чтоб значит торрентами не пользовались и всякий контент "нелегальный" не раздавали).


    Вы же мне выше про "провайдеры обязаны хранить, всё что прошло через них." расказывали… и про "хранить и перехватывать трафик пока нечем"!


    Согласитесь это не одно и тоже что "закон и к провайдерам относится"?

  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    1. как вы пришли от «организаторов распространения» информации (сообщений и т.д.) к «провайдерам» (почему у вас это они, а не собственно сервисы)?
    2. то что провайдер чисто физически не в состоянии расшифровать трафик (например по запросу прокуратуры) того же Телеграм или Ватсап и др., вам вероятно тоже не понятно?
    3. если вы про пункт 3 постановления… вы правда думаете что главные актеры из соц-сетей, месенджеров и т.д. не хранят сообщения? (и думается мне что реально дольше чем 6 месяцев).
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0

    Вот не надо слухи только на хабре разводить (читайте закон внимательно).


    провайдеры обязаны хранить, всё что прошло через них.

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


    хранить и перехватывать трафик пока нечем, т.к. комплексы, сертифицированные ФСБ отсутствуют.

    • про хранить см. выше; ну а следующее (отложенное в дальний угол с кучей поправок как минимум до 2023 года) подразумевает:
      Согласно проекту приказа Минкомсвязи, интернет-компании и сервисы (не провайдеры) должны хранить и предоставлять спецслужбам: псевдоним, дату рождения, адрес, фамилию, имя, отчество, паспортные данные, языки, которыми владеет пользователь, список его родственников, текст сообщений, аудио- и видеозаписи, адрес электронной почты, дату и время авторизации и выхода из информационного сервиса, наименование программы-клиента;
    • "перехватывать трафик" — это нонсенс, где вы то взяли вообще?!
    • обязательная сертификация средств кодирования (шифрования) требуется только при передаче сведений, составляющих государственную тайну, поэтому сертификации систем мгновенного обмена сообщениями (месенджеров), таких как Telegram, WhatsApp и прочих при передаче сведений не составляющих гос-тайну, не требуется.

    Смотрю в книгу, вижу ...

  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    … и да, rsync умеет в обе стороны (что не факт что здесь так можно было, но «writable» как бы намекает, да и судя по степени халатности/криворукости вполне себе могло иметь место).
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    Каким простите образом эти две поправки в Федеральный закон негативно влияют на IT-безопасность, и в частности имеют отношение к «дырке» в следствии «работы» человеческого фактора?
    Поясните вашу логику… Если вы про «хранение интернет-трафика», то сам трафик (читай данные) провайдерами не хранится (только мета-данные так сказать, кто — где — когда — через какой сервис и т.д.)
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    ну грифы бывают разные, но спасибо, добавлю кавычки…
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    +5
    не бэкапы, а по видимому сам сервис, что бэкапит…
  • UPDATED: Амплифицированные memcached DDoS-атаки на 500 Гбит/с прокатились по всей Европе
    0
    Вдогонку — брошу я пожалуй в вас статьей — Epic fail of the month: rsync как «вектор» на утянуть данные / Хабр.
    Надеюсь достаточно «экзотично» (как раз про то, ИМХО)…
  • Создатель Питона: я устал, я ухожу
    –4
    Хот ваших мыслей, и умника ниже, мне понятен…
    Вы не поняли мой: я прекрасно знаю для чего assert нужен, но только caller знает что в общей формуле должно проверяется, если результат F1 должен быть в общей формуле больше 20 например, то будет двойная проверка внутри F2 на 0 и в if на > 20.
    Результат же один — оппоненты придумывают оправдания и способы обхождения ограниченного синтаксиса…
  • Создатель Питона: я устал, я ухожу
    –2
    Не могу уловить ход ваших мыслей.

    "стало читабельнее"… булева алгебра по видимому для вас не читабельна. Отсюда и вывод.


    Если под лаконичностью вы понимаете сугубо размер кода

    Под лаконичностью я понимаю то же что и все люди (см. определение в словаре). Это стало менее лаконично. Точка.

  • Создатель Питона: я устал, я ухожу
    –2
    Тогда уж хоть `assert` какой-нибудь. Ответ прост — потому что разработчик решил так как решил, ну нельзя её вызывать для 0 и баста.
  • Создатель Питона: я устал, я ухожу
    –3
    Но да, я считаю что оно стало читабильнее.

    Ну-ну, а что нынче в универах перестали курс булевой алгебры преподовать?...


    И главное-то мой первый комментарий был ответом на "лаконичнее"...


    это так задумано, что функции F2 и G2 могут принимать как 1 аргумент, так и 2?

    А это вас удивляет, в языке как python… def F2(x, factor=1)

  • Создатель Питона: я устал, я ухожу
    –5

    Ни в каком (ну почти), просто когда F2(a) может внезапно делить внутри на a (что есть результат от F1), нужно вдруг делать в питоне a and F2(a) чтобы не словить исключения типа ZeroDivisionError.


    Но выворачивать всё на изнанку и плодить лишние сущности и проверки в угоду "строгому" синтаксису языка (и с потерей читабельности кстати) — это простите нонсенс.

  • Создатель Питона: я устал, я ухожу
    –3
    Много-много лаконичнее стало, гораздо меньше дубликатов, теперь это конечно много легче поддерживать и развивать, ибо совсем не говно-код…
    А главное стало так похоже на изначальное математическое-выражение.

    Т.к. в комментарии тяжело выразить все эмоции — это был сарказм если что.
  • Создатель Питона: я устал, я ухожу
    –1
    Если нужна имменно такая логика (и вам просто повезло что вы никогда такого не видели, хотя в математике, дата-мининге и.т.д и похуже вещи встречаются) — то это не ребус, а всё-таки код.
    Мой ответ был конкретно на «лаконичность» и «читаемость». Сделать именно такие вещи (хоть ребус, ходь код) более читаемымы и/или лаконичнымы (даже с введением новых сущьностей) не очень получается по видимому…
    Поэтому и контр-аргументы такие… вида «говнокод» и «ребус». Ну-ну…
  • Создатель Питона: я устал, я ухожу
    –3
    PEP 572 — типичный пример, как много людей забываются, когда начинаются разглагольствования о конкретных деталях синтаксиса… символах операторов, ключевых словах, удобочитаемости и прочих вкусностях.
    Столько эмоций вокруг деталей синтаксиса тупо не соизмеримы с эффектом от введения собственно этого оператора.

    Если у человека, после многия доказательства, аргументов и примеров… всего один контр-аргумент типа «говно-код», то вести с ним дискуссию на академическом уровне считаю ниже своего достоинства.
    Такой ответ вас устроит.
  • Создатель Питона: я устал, я ухожу
    –3
    ну что можно сказать, месье знает толк…
  • Создатель Питона: я устал, я ухожу
    0
    Вопрос не того как оно читаемо, а если оно именно с такой логикой нужно, как оно будет читаемо если по другому, но… Лаконичнее и проще — не будет. И да то просто один пример, есть и другие — см. выше примеры из раздела Syntax and Semantics.
  • Создатель Питона: я устал, я ухожу
    –6
    if (
            (
                ( 
                    (a := F1()) and (b := F2(a)) > 100 
                 or (a := F0()) and (b:= F3(a, 0)) > 100 
                )
                and ( (c := F2(a, b)) or (c := F3(a, b)) )  
                and ( res := F4(a, b, c) )
             or (
                    (a := G1()) > 100 and (b := G2(a)) 
                 or (a := G0()) > 100 and (b:= G3(a, 0)) 
                )
                and ( (c := G2(a, b)) or (c := G3(a, b)) )
                and ( res := G4(a, b, c) )
            )
            and
            (
                (res := F5(res, a, b, c)) > 1
             or (res := G5(res, a, b, c)) > 1
            )
        ):
            do_something_with(res) ...

    перепишите на "строгий" питон что-нибудь такое, и посмотрите потом как "лаконично" у вас получится.
    А я такие полуфункциональные конструкты и почище этого видел.
    При том не забываем, что тут на самом деле не a,b,c и Fx, Gx (как тут для наглядности), а длинные говорящие значения.


    Я часто не согласен с решениями Гвидо, но тут его полностью поддерживаю…
    Это как минимум просто удобно (и очень часто нехватало в питоне), спасает от дублирования кода и временных ненужных переменных, ну и тупо необходимая мера, если питон и дальше должен считаться близким к функциональным языком.


    позволит писать трудно понимаемые конструкции

    Это вот-это? Вы серьезно. Какой-нибудь трех-этажный взаимосвязанный декоратор (который даже его разработчик через пол-года не понимает) — это "позволяется", а оператор (оператор, Карл!) всё испортит видите ли… Абракадабру можно написать любыми конструктами в любом языке, это дело личной гигиены и дисциплины (и возможно попустительства ревьюверов, коммьюнити и т.д.). Но никак не отдельного оператора.


    недовольны, что не всем это нравится.

    Всем это простите кому? У вас есть статистика? Многим — возможно, но в моем окружении, это например "всем" поголовно нравится. И что?
    И потом, тут всё просто, не нравится — не используйте...

  • Двойка вам, или аудит со взломом
    0
    Поправка — «выводы читателей» -> «выводы ОДНОГО читателя»… (ни или некоторых)… Или вы на абсолют (в смысле идеального читателя) претендуете?

    Мог бы, но не буду — я такой какой есть, т. е. всё просто не нравится — не читайте.
  • Двойка вам, или аудит со взломом
    0
    То не претензия была, а мое видение ситуации (как она была).

    Но все же отвечу, потому что — статья написана художественным стилем, от моего лица, и мы в этой длинной ветке обсуждаем незначительный эпизод (по мнению автора), который был к тому же преднамеренно им сокращен.
  • Двойка вам, или аудит со взломом
    0
    Можно прекрасно сочетать ) особенно если тот опенсорс пользуется в работе, а то и является чуть не ядром рабочего стека…
    Берите спокойно, то все лучше чем он по всяким хабрам лазить будет
  • Принцип работы свёрточной нейронной сети. Просто о сложном
    0
    1. интерпретаторы уже лет десять с гаком так не работают, т.е. тупо code-body скомпилится jit-ом один раз, исполнение же его ничем не отличается от исполнения собственно кода функции. Но, в случае вызова функции добавляется обертка — поиск или маппинг её имя->указатель, проверка эпохи (что-то нужно перекомпилировать), передача аргументов в стек (или регистры если умеем), и возвращение значения/значений.
      Т.е. в целом даже в случае интерпретатора (а возможно ArsenAbakarov имел ввиду чистый компилятор), вызов функции часто медленнее чем исполнение того же кода, ибо без лишних накладных расходов).
      Вот вам к примеру питон с интерпретацией внутри (и временем исполнения без и с вызовом функции)…
      >>> import timeit
      >>> timeit.repeat("(a + b + c) - 1", setup="a = 1; b = 2; c = 3", repeat=3)
      [0.11377258186831796, 0.08951876673711467, 0.08850507679022712]
      >>> timeit.repeat("mysum(a, b, c) - 1", setup="a = 1; b = 2; c = 3;\
      ... mysum = lambda i,j,k: (i + j + k)", repeat=3)
      [0.1852146263911436, 0.14948333891504717, 0.15083834724907774]
    2. если же речь о компиляторах, то тут сложнее, но код даже часто специально дублируется, как в C/C++ при -O2 ... -Ofast, чтобы минимизировать издержки на вызов (не размывать кэш проца, и т.п. вкусности). И если скомпилировать с -Os, то будет как правило медленнее, хотя байт-код получится компактнее (и меньше).
    3. основная задача "функции" не для ускорения, т.е. да функции пишут не для этого.

    Так что ArsenAbakarov в целом прав — нонсенс.

  • Двойка вам, или аудит со взломом
    0

    Неправильный ответ, — админы нонче у банков как раз не свои, а "внешние" ибо дата-центры кругом, млин…
    А доступа ко всему нередко даже у контент-манагера высшего эшелона нет.


    Про "свой, проверенный" — улыбнуло. Разраб то часто не знает, чего там нужно обезличивать. А уж админ и подавно.


    Возвращаясь же к теме обезличивания, вы не зацикливайтесь на базе… (не базой единой) — вот для примера напишите скрипт обезличивания файлика транзакции (месяца за два-три, штук так мильен в день, каждый подписан приватным ключем, которого у вас нет и не будет, и для которого нужно чтоб все ссыли aka references работали).

  • Двойка вам, или аудит со взломом
    0

    Ну спасение, logout или hibernate (то когда нужно просто чтоб всё сохранить в рабочем виде, а не тест на всю ночь до exception в дебаггере)...


    И да, превлекает иногда :)
    Мне один знакомый рассказывал, как им с коллегами пришлось выключить комп отсутствующего соседа, потому что он "постоянно громко пикал".
    В последствии оказалось попыткой взлома, просто хакер "непутевый" попался и логировал чего-то там не-то бинарное не-то не в той кодировке в консоль (ну а оно ругалось на каждый чих "\7")...

  • Двойка вам, или аудит со взломом
    0
    А кто это всё делает, не имеет доступа к сегменту «прод» (или к «тест» пока не обезличен)?
    Чем он иначе тогда отличается от потенциального разраба, спрошу по другому, т.е. чем Вася лучше Пети, с точки зрения безопасника и revision dept?
  • Двойка вам, или аудит со взломом
    0
    Вот с последней фразой непонятно, зачем при экспорте?

    Потому что если разграничивать по нормальному (иначе зачем обезличивание нужно), то есть как минимум два сегмента "прод" и "тест" (и к проду у разраба в этом случае доступа нет). Если речь о бэкапах, то и они лежат тогда тоже в сегменте "прод", ну или точно не в сегменте "тест".


    но другие риски возникают, что скрипт не там и не то почистит.

    read-only access ко всему, кроме папки export.

  • Двойка вам, или аудит со взломом
    0

    Ну в принципе смысл правильный, не так категорично возможно, но все же…
    Просто это совершенно точно не firewall+antivir, которые защищают только лишь от того, от чего они защищают.


    разные программные и железные решения, не связанные между собой комплексно

    Если эти ваши решения покрывают все возможные* векторы атак, то и хорошо. У них было не так.
    * Естественно "все", с поправкой на — "с учетом соотношения риск-стоимость-возможность выполнять работу" (а то можно поназакрывать так, что люди побегут или тупо не смогут что-то сделать). Чем-то можно рискнуть (пренебречь) в угоду стоимости, чем-то из-за высокой сложности выполнения и/или рисков "положить" собственно работу (медленно, высокий риск "уронить" что-нибудь нужное, и т.д.). Но если риски оценены и все-то оправдано/обосновано (а не по неведению/лени/итд).

  • Двойка вам, или аудит со взломом
    0

    О, тест на внимательность пройден!
    Да нет, снять можно на самом деле (только не для remote session и не через GetDC, GetWindowDC и ко)…
    Однако и это вовсе не обязательно, просто мне было проще/быстрее (ибо готовый скрипт был).


    Можно например тупо найти окошко диалога (первый child внутри) и перебрать всех деток, отправив все caption (типа GetWindowText(hChildWnd))… среди них кроме "Allow Remote Control" и прочего, поверте мне обязательно найдете что-нибудь вида "123 456 789" и "1111".
    Хотя я вам их ControlID и так скажу 0x4E82 и 0x4E83…
    Да много-много чего можно.

  • Двойка вам, или аудит со взломом
    0
    Ваш вывод не верен, все было строго по делу, без лирики.
  • Двойка вам, или аудит со взломом
    0
    Но вы почему-то сделали далекоидущие выводы, не зная «что точно происходило там».
    Если упрощая кусок истории (как незначительный эпизод или по каким-либо другим причинам, например мало относится к основной теме статьи), автор сделал так как сделал, и чего-то не проглядывается, это вовсе не обязательно означает, что ваши фантазии будут соответствовать действительности.
    Это возможно значит ровно то, что автор не смог увести ваше внимание от этого (с его точки зрения, незначительного) момента, и дал тем самым повод цепляться к деталям. Минус ему-мне за это.
    Хотя в теории, для каждой статьи, любой (в меру своей испорченности) может найти повод зацепится за что-нибудь, мозолящее ему глаза.
  • Двойка вам, или аудит со взломом
    0
    Я не люблю пентест (о чем и написал в статье), пентест имеет смысл когда это массовое действо, т.е. типа bounty program — больше шансов что кому-то повезет (долбить вслепую на поиск теоретической уязвимости — очень неблагодарное занятие).
    И я не думал, что на русскоязычной площадке нужно развернуто про «тренироваться на кошках»…
  • Двойка вам, или аудит со взломом
    0
    Я пишу о том, что они всем отделом включили режим «обиженка», и соответственно «готовности опонента выслушивать» не особо наблюдалось.
    При том что я на самом деле, как уж и не пытался слова подобрать, чтобы ненароком не затронуть «честь и достоинство»…
    «Троечка» — это же описание итогового вывода, если хотите, для упрощения и чтобы статья не выросла в талмуд. А также по соображениям этического характера (опуская некоторые подробности, на публикацию которых я не получил разрешения).