Свою первую SIEM-систему я внедрял в 1998-99-х годах (сам термин Gartner ввел только в 2005 году), и тогда от этого класса продуктов ожидать многого было сложно: они собирали события безопасности от систем обнаружения вторжения и сканеров уязвимостей и коррелировали их, снижая тем самым число ложных срабатываний и позволяя специалистам по ИБ фокусироваться именно на том, что имело значение для организации с точки зрения реальных киберугроз. Прошло 25 лет, и что мы видим сейчас? Насколько изменился рынок средств управления событиями безопасности и как он будет развиваться в ближайшем будущем? Я попробовал немного пофантазировать, посмотреть не столько на российский рынок SIEM-систем, сколько выйти за его пределы и оглядеться в целом на рынке средств анализа данных ИБ, в том числе и зарубежных. В итоге я сформулировал некоторые направления развития, которые могут стать реальностью в обозримом будущем.
Все потоки
Новости
Задача «Получить значение у N url из списка» с собеседования на Go
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w780/getpro/habr/upload_files/281/46c/ae3/28146cae3e07198c42506ba4f1fb79cf.jpeg)
На данный момент нахожусь в активном поиске нового проекта, поэтому активно хожу на собеседования.
Решил поделиться своими мыслями о решении задачи, которую (как мне кажется) часто дают на собеседованиях.
Задача
Написать функцию, которая принимает несколько url адресов, а отдает сумму адресов и ошибку, если что-то пошло не так.
Интересно обсудить варианты решения?
QA инженер и дизайн
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/eee/90a/c16/eee90ac169cac0b001a7b0a6d91af15a.png)
Современные технологии меняют жизнь человечества, предлагая огромное количество различных возможностей. Появляется всё больше и больше разнообразных платформ и устройств, с помощью которых можно легко выполнять различные действия. Разработчики предлагают широкий ассортимент различных приложений. В связи с этим остро встаёт вопрос с качеством продукта. Ведь даже приложение обладающее огромной функциональностью, но содержащее множество ошибок и имеющее неудобный интерфейс, не будет пользоваться популярностью.
Обеспечение качества программного обеспечения направлено на улучшение рабочих процессов и повышение эффективности, позволяя компаниям завоевать доверие клиентов и повысить свой авторитет. Как результат большую роль начинает играть QA инженер. Это человек, который несёт ответственность за качество конечного продукта, улучшая и тестируя его на протяжении всего процесса разработки. Будучи частью команды, QA-инженеры участвуют в процессе разработки продукта с самого начала. Они не только тестируют, выявляют риски, но и отвечает за то, чтобы пользователю было "хорошо". QA должен сопереживать потребителю, а именно чтобы приложение было отзывчивым, интуитивно понятным и удобным в использовании.
Да, за внешний вид отвечает дизайнер и это его зона ответственности. Но данное утверждение верно отчасти. Во-первых, все мы люди и можем ошибаться, поэтому в современных командах приняты политики открытости. При этом любая потенциальная проблема может быть замечена и устранена. Во-вторых, дизайн должен подтверждаться исследованиями, а самое главное — являться результатом тесного сотрудничества с командой разработки и тестирования. Это означает принимать во внимание все возможные точки зрения.
Делаю игрулю на Playdate на чистом C. Глава 2
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/8a1/222/394/8a12223945ff4e62ab609a66b3b17ee2.png)
Я пишу игру на игровую консоль Playdate на чистом C. Игра в жанре "выживальщик" наподобие Vampire Survivors. Так как в чистом C отсутствуют многие современные объектно-ориентированные удобства мне приходится по-всякому изворачиваться чтобы адаптировать свои идеи в код. В этих заметках ты узнаешь из первых уст как создаётся игруля с нуля от идеи до публикации.
В прошлой главе я описал сеттинг, показал видео с тем что получилось после первой итерации (оно продублировано ниже), а также детально рассказал как я реализовал в коде свой динамический массив с нуля, потому что ничего подобного ни сишка, ни Playdate SDK мне не предоставляют из коробки. Если ты не читал прошлую главу, то лучше начать с неё.
Истории
Что такое (был) Сезон Бета в Roborace?
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/b24/a8e/039/b24a8e0396a8901121599f7129e6dd8c.png)
Уже больше года назад некогда прогремевший проект автономных гонок «Roborace» был заморожен в силу финансовых обстоятельств, не успев завершить свой Сезон Бета. В то время как соревнующиеся команды программистов выходили на впечатляющий прогресс. Давайте разберёмся, что это было.
Lingua Franca — Машинный перевод с учётом именованных сущностей для вопросно-ответных систем
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/21e/899/428/21e8994282fd4cd205e1b7f50e1bad38.png)
Машинный перевод может улучшить существующие вопросно‑ответные системы (англ. Question Answering — QA), которые имеют ограниченные языковые возможности, позволяя им поддерживать несколько языков. Однако у машинного перевода есть один основной недостаток: часто такие системы не справляются с переводом именованных сущностей, которые нельзя перевести дословно. Например, немецкое название фильма «The Pope Must Die» переводится как «Ein Papst zum Küssen», что дословно означает «Папа для поцелуев». На Русском языке название фильма звучит так: «Папа должен похудеть». Поскольку правильность именованных сущностей критична для вопросно‑ответных систем, необходимо как можно лучше обеспечить правильность их перевода. В данной статье я представляю наш метод машинного перевода, учитывающий именованные сущности, под названием «Lingua Franca». Он использует графы знаний для использования хранящейся там символьной информации с целью обеспечения правильности перевода именованных сущностей. И да, это работает!
HaLow: дальнобойный Wi-Fi, который работает на расстоянии в несколько километров
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w780/getpro/habr/upload_files/2c2/057/bb6/2c2057bb6a39a0df32cb8ef154c2e4f4.jpg)
Беспроводные технологии продолжают развиваться, и на днях в сети появилась информация о новом рекорде в отношении Wi-Fi HaLow, также известного как IEEE 802.11ah. Его удалось поставить компании Morse Micro, которая обеспечила стабильную связь на расстоянии примерно 3 км от источника. Подробности о рекорде и самом стандарте — под катом.
Как создать Мету, которая затянет играть сутками
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/6ae/6f7/554/6ae6f7554c28b7e6c5f6c3672b17cf8b.png)
Пошагово, с чек-листом и примерами из игр. Для конкретики беру популярный в прошлом году жанр VS-Like, при этом знания из статьи применимы к играм любых жанров.
Метапрогрессия — это система механик, изменяющая процесс игры определёнными способами. Она ложится поверх кор-лупа, изменяя или улучшая кор-геймплей. МП дополняет Кор, создаёт ощущение прогрессии между забегами, улучшает игровой опыт, открывает новые механики. Это та менюшка, где можно повысить количество здоровья герою.
Автоматическое Обновление Версии Прошивки
В программировании микроконтроллеров новые сборки появляются каждый день.
Какие-то сборки уходят в релиз, а какие-то в циркулируют на разных электронных платах внутри предприятия.
Как отличать прошивки между собой? Как понять, какая прошивка новее, а какая старее?
Проблема в том, что вручную обновлять номер версии прошивки очень утомительно.
В тексте представлен механизм автоматического увеличения версии прошивки
Как перевести деньги в Россию из Казахстана в феврале 2024 года
Как перевести деньги в Россию из Казахстана в феврале 2024 года
Аналитика возможностей денежных переводов из Казахстана в Россию в начале 2024 года, на фоне санкций.
Хабрабои
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w780/getpro/habr/upload_files/608/631/785/608631785c972f47e1ea94c14372be5c.jpg)
Не поймите меня не правильно, меня самого триггерят рекламные публикации или кейсы успешного успеха. По моему для этого есть VC, Spark и сотоварищи.
Я с уважением отношусь к техническому «прошлому» площадки, и всем специалистам внесшим свой вклад в силу бренда Хабры. Но давайте таки признаем, что прошлому, ведь сегодня площадка предлагает развивать такие темы как «Дизайн» «Маркетинг» «Управление персоналом» и т.д. в которых по определению «низкий технический уровень», а последнее точно «не соответствует тематике Хабра».
Яндекс, Банк России и Louis Vuitton: 7 компаний, которые неожиданно для всех выпустили успешные мобильные игры
На рынке мобильных игр неожиданность часто становится ключом к успеху и популярности. Особенно когда за тайтлами стоит компания, которая до этого никогда не выпускала подобные проекты. В посте — несколько примеров брендов, сумевших привнести нечто новое в индустрию и выпустить успешные мобильные игры неожиданно для всех.
Загадка про черепашку или архаизация шагает по стране (про тестирование импортозаместительных продуктов – 5)
Ползут три черепашки.
Первая говорит, что перед ней никого нет, а сзади неё — две черепашки.
Вторая говорит, что впереди неё — одна черепашка, и сзади ещё одна.
И третья тоже говорит, что впереди неё одна, и сзади одна.
Как такое может быть? И при чем тут архаизация и импортозамещение ?
Для лиги лени: у автора наблюдается локальное повышение температуры, вплоть до обугливания.
Ближайшие события
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/48c/817/f0b/48c817f0b52e6b603845a694cb2cd251.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/486/601/dae/486601dae7e28e969cdc7949dd0580bb.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/bff/eaa/744/bffeaa744665804c304752df1a0639b5.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/895/8d5/70b/8958d570bcc730faa638b433f465e3ef.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/d21/edd/073/d21edd073c3e62303a42978c56a6d5f5.jpg)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/731/826/12e/73182612edd74ce040cf3b28b5d68da7.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/f53/f54/b2f/f53f54b2f7678f06644c36b44ff870cd.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/fd7/506/1c8/fd75061c8f63653d924168e0ee3662c8.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/7f6/48b/575/7f648b5757150cf2deb76df91eeb0b0f.jpg)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/675/0ee/f16/6750eef16faccb6a05a4e23d4467b93b.jpg)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/849/5ba/6c0/8495ba6c0395a49ca999ba71073fa605.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/4ab/bff/fd2/4abbfffd208d3b4d5cd61c402d7ec3de.jpg)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/6f0/5ed/6c3/6f05ed6c3d7ec44efc35aa16efafc859.jpg)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/aa4/e0e/f99/aa4e0ef990e286dc3cec513c7a7f2e58.jpg)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/d1e/a22/4cd/d1ea224cd82ae67817b7cac7f7fc052c.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/d6e/1b0/4c8/d6e1b04c878148e37a547e03a37c18ee.png)
![](https://webcf.waybackmachine.org/web/20240206214446/https://habrastorage.org/getpro/habr/upload_files/2a5/b6d/6fc/2a5b6d6fc13caf3dabce9c8ab833e282.png)
Книга «Основы компиляции: инкрементный подход»
![image](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/webt/nz/uk/rq/nzukrqefnmjnmxlm45y822-igay.jpeg)
Компиляторы традиционно считаются одной из самых трудных для понимания и изучения тем. Обычно в книгах каждая глава посвящена отдельному проходу компилятора. Но такая структура не позволяет раскрыть, как языковые средства влияют на решения, принимаемые при проектировании компилятора.
Вместо этого в «Основах компиляции» выбран инкрементный подход: компилятор совершенствуется последовательно, и читатель может написать весь код самостоятельно. Книга помогает создать собственный компилятор для небольшого, но достаточно мощного языка программирования, постепенно, шаг за шагом вводя все более сложные языковые средства.
Джереми Сик объясняет важнейшие концепции, алгоритмы и структуры данных, лежащие в основе современных компиляторов, и закладывает основу для изучения более сложных тем. Это краткое, но доступное руководство уже давно используют студенты и профессионалы.
Когда «as never» — единственное, что работает
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w780/getpro/habr/upload_files/4c5/2c2/d07/4c52c2d07c8741c293665c2991a86742.jpg)
as never
, очень редко требуется в TypeScript. Давайте рассмотрим пример, где это необходимо.
Представим, что мы хотим отформатировать некоторый ввод на основе его typeof
. Сначала мы создадим объект formatters
, который сопоставит typeof
с функцией форматирования:
Как за 1 минуту придумать название, логотип или рекламный слоган для приложения, даже если у вас не очень с фантазией
Может показаться, что для креативных идей нужно иметь бурную фантазию и нестандартно мыслить. Всё это, конечно, не будет лишним, но далеко не самое важное.
Телефония «дёшево и сердито»
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/92e/798/f31/92e798f316433a0c2ef59f620f0b68e3.png)
Бывают ситуации, когда нужна очень недорогая и несложная телефония, например, для связи между 2-3 точками: позвонить из магазина на склад, из основного помещения в подвал и прочее. Приобретение и установка АТС в таких случаях бывает избыточна, часто и довольно затратно и люди ищут решения попроще и подешевле. Разберем несколько рабочих вариантов для таких случаев. Может быть, они общеизвестны, однако по работе часто получаю такие вопросы.
Связь между двумя телефонами по схеме «точка-точка»
Самый простой вариант – связать напрямую два ip-телефона. Для того, чтобы все получилось, необходимо соблюдение всего лишь двух условий:
• ip-телефон(ы) (либо FXS-шлюзы) должен поддерживать режим работы без регистрации. Эта особенность обычно обозначена в описании устройства или можно самому выяснить в документации.
• оба устройства (ip-телефоны/шлюзы) должны находиться в одной сети или каким-либо другим образом «видеть» друг друга по ip-сети.
Как знать все чего не знаешь или что такое R&D Department
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/786/160/c7d/786160c7d0d582de0274d07356ac0c28.png)
R&D или отдел Research and Development — это специальный отдел в компании который отвечает из слова Research, за то:
Python для gambling'a. Часть 1 — Сбор данных
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w1560/getpro/habr/upload_files/def/975/df0/def975df01ca35580c2fbba761bd2210.png)
Предисловие
Простой python-cкрипт для парсинга спортивной статистики по баскетболу с популярного сайта
Как пожаловаться на любой сайт в интернете
![](https://webcf.waybackmachine.org/web/20240206214446im_/https://habrastorage.org/r/w780/getpro/habr/upload_files/929/b44/818/929b4481871b1e328237301fe2d00830.jpg)
В наше время цифровизации интернет проник во все сферы нашей жизни. Если посмотреть в отчете в телефоне сколько времени я провел в нем... кажется большая часть жизни проходит онлайн. Как по мне это печально, но я себя оправдываю тем, что моя работа связана с интернетом. (вы также?)
Каждый день, как и в обычной жизни, в интернете мы пересекаемся с десятками или сотнями людей, сайтов, программ...
И тут мы сталкиваемся с онлайн угрозами (я не о "я вычислю тебя по IP "):