• Как устроен Sporth — ЯП для музыкальных live-сессий

      Один из предыдущих материалов мы посвятили OpenMusic — инструменту для написания музыки на ООП. Мы также говорили о языках программирования, заточенных под создание аудиокомпозиций.

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

      Читать дальше →
      • +17
      • 3.8k
      • 5
    • Монада «Reader» через async/await в C#

      • Translation


      В моей предыдущей статье я описал, как реализовать паттерн "Монада Maybe" с помощью операторов async / await. В этот раз я расскажу, как реализовать другой популярный шаблон проектирования "Монада Reader", используя те же приемы.


      Этот шаблон позволяет неявно передать некий контекст в иерархию вызовов функции без использования параметров или полей классов, и его можно рассматривать как еще один способ реализации внедрения зависимости (Dependency Injection). Например:

      Читать дальше →
    • Математическое расследование, как подделывали выборы губернатора в Приморье 16 сентября 2018 года

        Во втором туре выборов губернатора Приморского края 16 сентября 2018 года встречались действующий и.о. губернатора Андрей Тарасенко и занявший второе место в первом туре коммунист Андрей Ищенко. В ходе подсчета голосов на сайте ЦИК РФ отображалась информационная панель с растущим числом обработанных протоколов и голосов за кандидатов.

        Публикация подробных данных по участкам на официальном сайте ЦИК www.izbirkom.ru замерла после ввода 1484 (95.74%) протоколов и не возобновлялась до самого конца. Поэтому когда в трансляции лидер голосования вдруг поменялся с Ищенко на Тарасенко, было неясно, как именно это могло произойти. В СМИ просто писали «после обработки 99,03% протоколов лидер сменился».

        Однако, располагая промежуточными суммарными данными из информационной панели, с помощью простой математики и программирования можно подробно установить, что именно происходило с протоколами в ночь после выборов. Используем Python, Colab от Google и Z3 theorem prover от Microsoft Research. Ну и добьём всё обычной дедукцией.


        И что же там можно расследовать?
      • Взаимодействие решений Cisco в ГосСОПКОЙ и ФинЦЕРТом

          Прошлая заметка про нашу платформу поиска угроз Cisco Threat Response привела к тому, что я получил несколько вопросов о том, как интегрировать CTR с государственными сервисами ГосСОПКА и ФинЦЕРТ? И поэтому я решил написал еще одну небольшую заметку и показать, как можно выжать максимум пользы из индикаторов компрометации, отправляемых вам ФСБ и ЦБ. На самом деле ничего сверхестественного и сложного в такой интеграции нет — наши регуляторы используют машинночитаемые и стандартизованные во всем мире форматы индикаторов компрометации (я боюсь представить, что будет, если хеши для вредоносных семплов будут рассылаться по стандарту ГОСТ Р 34.11-2012, а не MD5/SHA1/SHA256), но пока не предоставляют API для автоматизации работы с ними. В любом случае их не так сложно использовать в Cisco Threat Response. Чтобы не скриншотить эту процедуру, а показать ее в динамике, я записал небольшое видео, которое демонстрирует на реальном примере с атакой на уязвимый протокол RDP как просто организовать взаимодействие ГосСОПКА с решениями Cisco по безопасности.
          Читать дальше →
        • Чего не ждать от 802.11ax?

          • Translation
          Еще не утвержденный 802.11ax («Следующее поколение Wi-Fi») уже достаточно популярен для того, чтобы плохой маркетинг начал туманить разум потенциальным клиентам. Спецификация планируется к утверждению только в Декабре 2018, но уже можно купить точки!

          Самое время написать разоблачительный уточняющий пост. Пока я собирался с мыслями, другой авторитетный товарищ – Devin Akin (если вы занимаетесь профессионально WLAN – следите за ним обязательно) сделал это за меня, да так что мне осталось только пересказать его отличную статью и добавить пару комментариев. Учтите, это не перевод – а пересказ!
          Читать дальше →
        • Про антенны для самых маленьких

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



            Если вы радиоинженер, опытный радиолюбитель-связист или просто хорошо знаете физику, то вам нижеследующее читать строго не рекомендуется во избежание негативных последствий для вашего психического здоровья. Вас предупреждали.
            Читать дальше →
          • Тренинг Cisco 200-125 CCNA v3.0. Сертифицированный сетевой специалист Cisco (ССNA). День 1. Основы сети

            • Translation
            • Tutorial
            Данный 46-дневный видеокурс актуализирован по состоянию на 2018 год и содержит 49 видеоуроков продолжительностью от 17 до 65 минут.



            Добро пожаловать, я ваш преподаватель Имран Рафаи, сегодня мы начнём нашу серию лекций с темы «Основы сети». Этот видеокурс идеально подходит не только тем, кто собирается сдавать экзамены на сертифицированного сетевого специалиста Cisco, но и тем, кто интересуется сетями или хочет начать карьеру в области сетей. Сертификат CCNA очень ценная вещь, и я призываю всех, кто стремится к совершенству в этой области, получить этот сертификат, потому что он имеет большое значение для оценки вашего профессионализма. Прежде чем продолжить, я попрошу вас сосредоточиться на первых 3-х днях обучения, потому что в эти дни я буду освещать фундаментальные понятия, которые станут основой вашей сетевой карьеры и пригодятся вам, может быть, даже через 20 лет.
            Читать дальше →
          • DIY автономный дрон с управлением через интернет. Часть 2 про ПО

              Это продолжение повествования об автономном дроне. В первой части говорилось про hardware, в этой речь пойдет про software. Для начала небольшой ликбез про взаимодействие оператора с коптером. Вот типичная схема у большинства самосборных дронов:

              image

              А вот схема у продвинутых дронов:

              image
              Читать дальше →
            • ФСИН против законов физики или пчелы против меда

                Федеральная служба исполнения наказаний (ФСИН) планирует внести в законодательство изменения, согласно которым на территории исправительных учреждений будет невозможно пользоваться мобильной связью, рассказал «Интерфаксу» заместитель директора ФСИН Валерий Бояринев.

                image

                Читать дальше →
              • GPS-файрвол для ЦОД — зачем он нужен и как работает

                  Данные GPS нужны не только навигаторам для построения маршрутов, но и дата-центрам для синхронизации времени. Эту особенность используют хакеры, когда проводят атаки на ИТ-инфраструктуру. Объясним, в чем суть подобных атак и как от них защищает GPS-файрвол.

                  Читать дальше →
                • Почему Wi-Fi не будет работать, как планировалось, и зачем знать, каким телефоном пользуется сотрудник



                    Привет!

                    Поговорим о том, что реально влияет на скорость передачи данных в современных беспроводных сетях, развенчаем пару мифов и ответим, пора ли поменять свой старенький роутер на сверкающего рогатого пришельца с MU-MIMO на борту.

                    Для разминки — небольшая задачка. Представьте себе беспроводную сеть Wi-Fi, состоящую из точки доступа (AP) и двух одинаковых клиентских устройств (STA1 и STA2).

                    Читаем надписи на коробках:
                    AP: 1733,3 Мбит/c
                    STA1, STA2: 866,7 Мбит/c

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

                    Я работаю HR-менеджером уже более 8 лет. Мне стало интересно, как видят идеальное собеседование ИТ-специалисты, с которыми провожу Skype или личные встречи. Так я пообщалась с разработчиками, тимлидами и собствеником ИТ-проекта.

                    Я хотела понять:

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

                    Посмотрим, что из этого получилось.
                    Читать дальше →
                  • Собеседование на junior позицию. Антипатерны собеседующих

                    Добрый день хабраюзеры! Не так давно я начал искать работу на позицию junior разработчика. Даже благодаря моему скромному резюме мне удалось побывать на не малом количестве собеседований за сравнительно малый промежуток времени. Из каждого собеседовании я выносил для себя что-то новое, где-то были мои проколы, но гораздо интереснее было замечать фэйлы меня собеседующих. Собственно о таких проколах я и хотел бы рассказать.
                    Читать дальше →
                  • Научите меня проводить собеседования

                      Так получилось, что за многолетнюю карьеру в IT я провел более 200 собеседований, нанял и вырастил большое количество профессионалов от инженеров по тестированию до архитекторов и менеджеров. Мне часто приходится давать советы по проведению собеседований своим сотрудникам, поэтому я решил обобщить свой опыт и заметки. В результате родилась статья, которую вы читаете.

                      В ней нет золотого грааля, как нужно нанимать лучших сотрудников, только здравый подход к проведению собеседований. Скорее всего статья будет полезна тем, кто только начинает собеседовать людей. Однако, принесет пользу и остальным, чтобы посмотреть со стороны на свой подход к проведению собеседований.
                      Читать дальше →
                    • В баню с IT

                        – Жора, что ты опять заладил? Какая муха тебя укусила? На что тебе дались эти it-технологии?

                        – Чего ты взъелся, Серег? Мне правда интересно.

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

                        – Да ходил я, в том-то и дело. И опять вот думаю, думаю, думаю…

                        – О чем думаешь?

                        – Да, знаешь… Меня не покидает ощущение, будто я что-то упускаю в жизни, в бизнесе. Все ведь внедряют it-технологии, я один в стороне… Как тебе объяснить, не знаю….
                        Читать дальше →
                      • Про рынок ИТ в России по-честному

                          В последние несколько лет мои переживания по поводу российского рынка ИТ только усиливались. Все началось с кризиса рубля 2014 года (а может, и раньше), и с тех пор меня не покидает ощущение, что многие российские компании, особенно провинциальные, завязали себе глаза, заткнули ватой уши и все еще пытаются сделать вид, что ничего не происходит. Я много общался с разными компаниями, с HR, с разработчиками, и составил список неутешительных тезисов о том, что представляет собой как программистский рынок, так и культура разработки в целом, ведь это вещи взаимосвязанные. По моим субъективным оценкам, эти тезисы справедливы для ~60% российских компаний, хотя, казалось бы, те другие 40% компаний, которые мы знаем и любим, должны были заставить задуматься. Но я очень подозреваю, что это эти 60% просто надеются на русский “авось”, и подвергаются так называемой willful blindness, а иногда и намеренно мутят воду. Итак, по-честному, что же происходит?

                          Дисклеймер 1. Ни ссылок, ни имен, ни пруфов не будет. Как известно, в Интернете можно найти подтверждение или опровержение любому тезису, поэтому не вижу большого в том смысла, покуда это не диссертация, а мнение. Моя цель — предоставить другую точку зрения, основанную на личностном опыте веры на личном опыте.

                          Дисклеймер 2. В статье приводится собирательный образ. Вряд ли стоит ожидать, что есть стопроцентное совпадение хотя бы с одной компанией. Те или иные черты могут встречаться там или здесь; важно не то, что есть какие-то конкретные компании с этими проблемами. Важно то, что сами по себе проблемы существуют, и о них надо говорить.
                          Читать дальше →
                        • Cisco ASA: пропатчена критическая уязвимость межсетевых экранов

                            В конце января компания Cisco сообщила о критической уязвимости CVE-2018-0101 в межсетевых экранах Cisco ASA. Она позволяла злоумышленникам удаленно выполнять вредоносный код, проводить DDoS-атаки и перезагружать систему.

                            На сегодняшний день уязвимость «закрыта».

                            Мы решили разобраться в ситуации и подробнее взглянуть на вектор атаки.

                            Читать дальше →
                          • Maximum Transmission Unit (MTU). Мифы и рифы

                              Maximum transmission unit (MTU) это максимальный объём данных, который может быть передан протоколом за одну итерацию. К примеру, Ethernet MTU равняется 1500, что означает, что максимальный объём данных, переносимый Ethernet фреймом не может превышать 1500 байт (без учёта Ethernet заголовка и FCS — Рис. 1).

                              image
                              Рис. 1

                              Давайте пробежимся с MTU по уровням OSI:
                              Читать дальше →
                            • Всё, что вы хотели знать о Ethernet фреймах, но боялись спросить, и не зря

                                Статья получилась довольно объёмная, рассмотренные темы — форматы Ethenet фреймов, границы размеров L3 Payload, эволюция размеров Ethernet заголовков, Jumbo Frame, Baby-Giant, и много чего задето вскользь. Что-то вы уже встречали в обзорной литературе по сетям передачи данных, но со многим, однозначно, не сталкивались, если глубоко не занимались изысканиями.

                                Начнём с рассмотрения форматов заголовков Ethernet фреймов в очереди их появления на свет.

                                Форматы Ehternet фреймов.


                                1) Ethernet II



                                Рис. 1
                                Читать дальше →
                              • Сети для самых маленьких. Часть нулевая. Планирование

                                • Tutorial
                                Это первая статья из серии «Сети для самых маленьких». Мы с товарищем thegluck долго думали с чего начать: маршрутизация, VLAN'ы, настройка оборудования.
                                В итоге решили начать с вещи фундаментальной и, можно сказать, самой важной: планирование. Поскольку цикл рассчитан на совсем новичков, то и пройдём весь путь от начала до конца.

                                Предполагается, что вы, как минимум читали о эталонной модели OSI (то же на англ.), о стеке протоколов TCP/IP (англ.), знаете о типах существующих VLAN’ов (эту статью я настоятельно рекомендую к прочтению), о наиболее популярном сейчас port-based VLAN и о IP адресах (более подробно). Мы понимаем, что для новичков «OSI» и «TCP/IP» — это страшные слова. Но не переживайте, не для того, чтобы запугать вас, мы их используем. Это то, с чем вам придётся встречаться каждый день, поэтому в течение этого цикла мы постараемся раскрыть их смысл и отношение к реальности.

                                Схема сети

                                Начнём с постановки задачи. Есть некая фирма, занимающаяся, допустим, производством лифтов, идущих только вверх, и потому называется ООО «Лифт ми ап». Расположены они в старом здании на Арбате, и сгнившие провода, воткнутые в пожжёные и прожжёные коммутаторы времён 10Base-T не ожидают подключения новых серверов по гигабитным карточкам. Итак у них катастрофическая потребность в сетевой инфраструктуре и денег куры не клюют, что даёт вам возможность безграничного выбора. Это чудесный сон любого инженера. А вы вчера выдержали собеседование и в сложной борьбе по праву получили должность сетевого администратора. И теперь вы в ней первый и единственный в своём роде. Поздравляем! Что дальше?
                                Читать дальше →