Обновить

Все потоки

Сначала показывать
Порог рейтинга

DNS-сервер не отвечает: что делать владельцу сайта

Когда пользователи не могут открыть сайт из-за DNS-ошибки, первый импульс — искать проблему у себя. Но причина часто на стороне владельца: истек домен, сбились NS-записи после смены хостинга или DNS-серверы провайдера легли под DDoS-атаками.

В новой статье собрали диагностику для обеих сторон — и для пользователя, и для администратора сайта: как быстро локализовать проблему, проверить NS-записи и DNS через nslookup и ping, и что делать, если дело все-таки в хостере.

Подробности — в блоге Рег.облака.

Теги:
+1
Комментарии0

РБПО по ГОСТ Р 56939—2024: вебинар №03 из 30 – Формирование и предъявление требований безопасности к программному обеспечению

Компания ООО "ПВС" совместно с учебным центром "Маском" провела цикл вебинаров, посвящённых разработке безопасного программного обеспечения (РБПО). Совместно с приглашёнными экспертами различных компаний мы рассмотрели 25 процессов, приведённых в ГОСТ Р 56939—2024.

Предлагаем сегодня вашему вниманию вебинар цикла, посвящённый процессу, описанному в разделе 5.3. – "Формирование и предъявление требований безопасности к программному обеспечению". Слайды.

Цели третьего процесса по ГОСТ Р 56939—2024 (п. 5.3.1.1):

Обеспечение безопасности ПО посредством предъявления к нему требований и управления требованиями в процессе изменения (разработки) ПО.

Общее количество вебинаров — 30: каждому из 25 процессов ГОСТа посвящено по одному вебинару и 5 записано дополнительно на смежные темы. Запись всех вебинаров и подборка дополнительной информации доступна по ссылке: ГОСТ56939.РФ.

Теги:
0
Комментарии0

25 бесплатных уроков недели: от Python и C# до архитектуры, ИБ и Highload

13 апреля, понедельник:

14 апреля, вторник:

15 апреля, среда:

16 апреля, четверг:

Еще больше бесплатных уроков от преподавателей курсов можно посмотреть в календаре мероприятий.

Теги:
+5
Комментарии0

НАСА показало осмотр астронавтами миссии «Артемиды II» своего космического корабля «Орион» — который они назвали Integrity — в палубном отсеке эсминца ВМС США USS John P. Murtha после приводнения. В НАСА опубликовали в открытом доступе подборку фотографий доставки спускаемой капсулы на корабль, включая её состояние после полёта на Луну.

Теги:
+1
Комментарии1

Микрофоны ДЭМШ-1А, которыми оснащался скафандр первого космонавта Юрия Гагарина, были разработаны на тульском предприятии «Октава» (позже Особое конструкторское бюро «Октава»). Речь идет о дифференциальном электромагнитном малогабаритном шумостойком микрофоне ДЭМШ-1А. Именно эта модель, а точнее два таких микрофона — основной и резервный — были встроены в скафандр «СК-1» первого космонавта. Они являлись частью гарнитуры шлема и работали в составе бортовой аппаратуры связи «Заря». 

Юрий Гагарин с Сергеем Королёвым перед полетом. В шлеме скафандра виден встроенный микрофон ДЭМШ-1А. Кадр снят 12 апреля 1961 года. Фото: Минобороны РФ
Юрий Гагарин с Сергеем Королёвым перед полетом. В шлеме скафандра виден встроенный микрофон ДЭМШ-1А. Кадр снят 12 апреля 1961 года. Фото: Минобороны РФ
Теги:
+4
Комментарии2

Группировка в сводной таблице

Часто возникает задача сгруппировать исторические данные по неделям, месяцам, кварталам или годам. Иногда для решения этой задачи создают дополнительный столбец (например, Месяц) и строят по нему сводную таблицу.

Есть более простой способ сгруппировать данные, но его нет в настройках сводной таблицы, поэтому многие пользователи даже не догадываются о нём:

1️⃣ Построить сводную таблицу по столбцу с датами.

2️⃣ Нажать на любую дату и выбрать в контекстом меню желаемый тип группировки.

➡️ Поиграться: https://docs.google.com/spreadsheets/d/1tNG4K8IwSuAa8cenJDm0b7IXvkHfRo7uF86sHIvtGKo/copy

Теги:
0
Комментарии0

Почему KYC воспринимается как препятствие, а не как защита

KYC это одна из самых раздражающих частей любого финтех- или криптосервиса.

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

С точки зрения пользователя это выглядит просто: «Я хочу сделать операцию, почему вы тормозите процесс?»

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

И в какой-то момент вопрос уже не в удобстве. Вопрос в выживании.

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

Чаще всего пользователь сталкивается с KYC тогда, когда уже психологически считает операцию почти завершённой. Он выбрал сумму, дошёл до нужного шага, настроился на результат и только потом внезапно получает требование загрузить документы. В этот момент это воспринимается не как мера безопасности, а как подмена условий в последний момент.

Отсюда и главный конфликт: сервис считает, что защищает процесс, а пользователь считает, что его просто остановили на финише.

На практике раздражает не только сам факт проверки, а четыре вещи.

Первая – внезапность. Если KYC появляется слишком поздно, это почти всегда вызывает негатив.

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

Третья – ощущение недоверия. Особенно если интерфейс подаёт проверку сухо, без нормального объяснения.

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

Именно поэтому один и тот же KYC может восприниматься по-разному в разных сервисах. Где-то пользователь проходит его спокойно, а где-то уходит с раздражением ещё до завершения.

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

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

Поэтому KYC сегодня – это уже не только юридическая или антифрод-задача. Это ещё и продуктовая задача. Сервису недостаточно просто «включить проверку». Ему нужно встроить её так, чтобы она не ломала доверие быстрее, чем защищала бы бизнес.

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

Теги:
+3
Комментарии4

Искусство программирования в одном шаге от запрета

Искусство программирования и связанные материалы
Искусство программирования и связанные материалы

В апреле 2026г. минюст добавил Стэнфордский университет в список нежелательных организаций. Это затронуло Искусство программирования заслуженного профессора Д.Э. Кнута (TAoCP). Обложка книг любезно приглашает узнать информацию о будущих томах, с web-ссылкой на нежелательную организацию, ведь профессор ведёт раздел на сервере своего университета. Такие ссылки теперь имеют юридические последствия.

По результатам проверки достоверно установлено, что ЯГПУ им. К.Д. Ушинского, являясь единоличным пользователем на своём официальном сайте https://yspu.org/, осуществлял хранение и распространение информационных материалов, издаваемых организациями <данные изъяты>, а также то, что указанные ссылки и ресурсы находились в свободном доступе для прочтения и скачивания неограниченным кругом людей из числа других интернет-пользователей до 19.09.2025 года.

Нарушение запретов, установленных Федеральным законом от 28.12.2012 № 272-ФЗ «О мерах воздействия на лиц, причастных к нарушениям основополагающих прав и свобод человека, прав и свобод граждан Российской Федерации», если эти действия не содержат уголовно наказуемого деяния, образует состав административного правонарушения, предусмотренного статьёй 20.33 КоАП РФ.

Искусство программирования (The Art of Computer Programming, TAoCP), — это живой проект. Проект написания книги был начат автором в 1962 году. Первый том был издан в 1968 году, а самый свежий выпуск 7 к тому 4 в 2025м году. Профессор делает всё возможное, чтобы долго жить, и задумано 7 томов, но как видно по коллекции на фото, том 4 пошёл множиться по буквенным подтомам.

К некоторым томам выходят выпуски. По идее, каждый выпуск рано или поздно должен войти в том. Выпуски 0-4 к тому 4 образовали собой том 4А. Выпуски 5 и 6 образовали собой том 4Б/4B, вышел на английском в 2023, на русский не переведён. Будущий том 4В/4C, как ожидается, будет состоять из выпусков 7-9 к тому 4, из них издан только выпуск 7, в начале 2025 года, так что том 4В / 4C готов условно на одну треть. А ещё ожидается том 4Г/4D, и это может быть не последний четвёртый том.

Искусство программирования применяет два способа описания алгоритмов: на естественном языке и на ассемблере, чем выделяется на фоне многих других книг. В других книгах по алгоритмам либо псевдокод, либо высокоуровневый язык программирования. А в других книгах по Ассемблеру могут долго углубляться в программирование, допустим, EGA/VGA, его регистров, или регистров для настройки защищённого режима, но алгоритмически эти книги не выдающееся чтиво. Ассемблер в TAoCP выдуманный, не соответствующий 1:1 реальной машине, но такой коллективный портрет реальных процессоров.

За всю историю TAoCP архитектур было две, MIX и MMIX. Архитектурно в старом MIX 4000 MIX-слов оперативной памяти, а каждое MIX-слово состоит из одного бита знака и пяти MIX-байтов, итого шесть сущностей. Каждый MIX-байт должен быть в состоянии представить значения от 0 до 63, при этом допускаются не двоичные архитектуры. Канонические воплощения MIX-байта это шесть битов или два десятичных разряда. Дополнительным упражнением предлагается спроектировать троичную архитектуру. Переносимые программы для MIX должны быть готовы к любому воплощению. Если вдруг захочется ставить эксперименты с троичной архитектурой, старый MIX является, наверное, самой большой коллекцией троичных программ. Новый MMIX, тем временем, 64-битный, и байты в нём 8-битные. Всё довольно привычно, но разве что Big Endian за прошедшие 27 лет перестали делать.

Домашняя страница MMIX была передана в Мюнхенскую высшую школу прикладных наук, на неё ссылаться ещё можно.

MMIX пытались воплощать и в железе, пока только FPGA. Автор считает довольно прискорбным, что там для графики фреймбуффер. Лучше бы ускорение, как на Амиге или СЕГЕ, получится фэнтезийная ретроконсоль, на которой алгоритмисты встречаются с демосценой.

Профессор Дональд Эрвин Кнут является иностранным членом РАН.

Теги:
+22
Комментарии0

Коротко подведу итоги последних обсуждений по вопросам уязвимости средств обхода, как я их понимаю .

Преамбула: Многие популярные средства обхода блокировок открывают порт на localhost, на котором отвечает SOCKS-прокси. Трафик, идущий через этот прокси, отправляется в туннель, который завершается на удалённом сервере, где Интернет не столь ограничен. Для удобства использования уже этот прокси заворачивается в сетевой TUN-интерфейс, что позволяет пускать через него трафик приложений, которые с прокси работать не умеют/не хотят.

Проблема: Как правило, этот SOCKS-прокси не требует авторизации. А потому любое приложение, знающее о существовании открытого порта или TUN-интерфейса, может отправить запрос через него на подконтрольный создателям приложения сервер, и тем самым выяснить, куда именно ведёт обходной туннель. При этом выяснить наличие порта можно простым перебором (localhost обычно быстр), а список сетевых интерфейсов приложение может запросить без особых прав.

Последствия: Это позволяет РКН в перспективе полностью автоматизировать поиск и блокировку индивидуальных средств обхода блокировок, при этом не обрубая зарубежный трафик полностью. С недавних пор все российские ИТ-компании обязаны этому содействовать, блокируя пользователей с обнаруженным туннелем и/или донося на этих пользователей РКН. Любое российское приложение может оказаться стукачом.

Пути решения на Android:

  • Раздельная маршрутизация по сетевым адресам (например, ru - напрямую, не ru - в туннель) - скорее вредна, чем полезна. Приложение может сделать два запроса к "своим" серверам, один из которых находится за рубежом, получить от них ответы с адресом отправителя, и сравнить. Адреса разные = есть туннель.

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

  • Shelter, Knox и тому подобные песочницы - не слишком помогают. Они скроют часто проверяемый флаг TRANSPORT_VPN, но не защитят от перебора портов в поисках SOCKS. Проверяется утилитами вроде RKNHardening.

  • Включить авторизацию на SOCKS-прокси и ограничить доступ к TUN интерфейсу - пока доступно не везде. Сейчас добавление этой фичи в приложения для обхода обсуждается. Некоторые уже поддерживают. Это не помешает злонамеренному приложению увидеть, что прокси есть - но не позволит узнать адрес сервера. Также без ограничения доступа к TUN пароль на прокси не поможет.

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

  • Различные устройства - неудобный и дорогой, но надёжный способ. Одно устройство только для российских приложений, без следа средств обхода, подключается в Сети только через мобильный интернет. Второе - для всего остального. Но не стоит забывать про проблемы вебсайтов (см. ниже).

Что делать с сайтами?

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

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

Теги:
+3
Комментарии6

10 апреля астронавты полёта «Артемида-2» успешно приземлились у побережья Калифорнии, завершив первую за полвека (после «Аполлона-17» 1972 года) пилотируемую экспедицию НАСА к Луне. Миссия длительностью в 9 дней 1 час 32 минуты началась 1 апреля, когда ракета SLS взмыла со стартовой площадки 39B на мысе Канаверал. Корабль «Орион» дважды облетел Землю, экипаж отработал ручное сближение с верхней ступенью ICPS на высокой околоземной орбите и лишь затем ушёл к Луне. В ходе облёта Луны оттестированы многочисленные системы жизнеобеспечения, связи, навигации, радиационной защиты, аварийные процедуры и ручное управление, что очень поможет для последующих пилотируемых полётов программы «Артемида».

Впрочем, в социальных сетях внимания больше уделялось визуальной хронике полёта. Среди прочего каждый из четырёх астронавтов получил по iPhone 17 Pro Max, которые НАСА допустило только как фотокамеры, то есть без доступа в Интернет и даже без Bluetooth. Понятно, что смартфоны традиционную аппаратуру не заменяли: на борту было суммарно 32 устройства с объективами — 15 стационарно установленных, 17 ручных. Тем не менее именно на iPhone 17 нащёлкали несколько наиболее уютных и человечных кадров, где астронавты разглядывают в иллюминатор нашу голубую планету.

Снимки НАСА публиковать начало 3 апреля, ещё один пакет фотографий выпустили 7 числа. В числе прочего там были фотки именно с этих iPhonе 17 Pro Max экипажа. Любопытно, что сама Apple на факт снимков поначалу отреагировала молчанием. Лишь 10 апреля, строго после момента мягкого приводнения капсулы «Ориона» в водах Тихого океана, только когда жизни экипажа уже ничего не угрожало, топ-менеджеры компании отметились твитами в микроблогах.

Тим Кук черкнул короткое поздравление с благодарностью за отличные снимки космоса и нашей планеты. Твит главы Apple составлен с каким-то невообразимым мастерством — в нём никак не упоминаются ни лунная программа «Артемида» с будущей высадкой на естественный спутник Земли, ни корабль, ни даже реальные цели полёта. По твиту Кука можно составить впечатление, будто астронавты летали в космос исключительно ради фоток на смартфон. Старший вице-президент Apple по маркетингу Грег Джозвяк выразился более изящно и поблагодарил НАСА за использование смартфонов компании.

Теги:
+4
Комментарии0

Как научиться печатать вслепую за час.

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

Способ обучения состоит из трех шагов.

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

ЙЦУ КЕНГуру ШЩаЗ ХЪ

ФЫВА ПРО ЛоДЖЭя

мЯЧ СМИТ ЬБьЮ,

в которых нужно пропускать строчные буквы.

Для запоминания английской раскладки запомните три последовательности

Q WERTY U I OP!

AS DFGHiJKL

ZXCVBNM,.

Второй шаг. Располагаем кисти так, чтобы указательные пальцы опирались на клавиши с бугорками - А и О. Печатаем на ощупь в течении получаса. Если у вас нет своего текста, можно воспользоваться Гонками на клавиатуре https://www.google.com/search?q=гонки+на+клавиатуре. При этом если расположение буквы уже запомнилось, то нажимаем ее правильным пальцем. Если расположение клавиши не запомнилось, то, не глядя на клавиатуру, ощупываем слева на право клавиши в нужном ряду, пока не найдем искомую букву. Например, для нажатия буквы Т ощупываем мизинцем левой руки букву Я, безымянным - букву Ч, средним - С, указательным левой - М, указательным левой руки - букву И, указательным правой руки - букву Т.

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

По необходимости повторяем предыдущие шаги.

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

Теги:
+6
Комментарии17

Логистическая регрессия на MNIST (0 vs 1) на PHP: простой пример

Если вам хочется не просто читать про машинное обучение, а попробовать сами – вот хороший учебный кейс.

Разбираем классическую задачу: бинарная классификация цифр (0 vs 1) на датасете MNIST (12 666 обучающих и 2 116 тестовых примеров) с помощью логистической регрессии, обученной через gradient descent. Всего 5 эпох – но результат всё равно шокирующе высокий. :)

Что тут интересного:

  • можно наглядно посмотреть, как модель работает с изображениями (в виде векторов)

  • становится понятно, где линейные модели начинают "ломаться"

  • можно посмотреть код чистой реализации на PHP и самому покопаться в коде
    – точность: 99.91%

  • и сравнить с более практичным вариантом на RubixML
    – точность: 99.95%

Это хороший переход от теории к практике: без заумных вещей, с понятной математикой и кодом.

Разбор:
https://apphp.gitbook.io/ai-for-php-developers/chast-iii.-klassifikaciya-i-veroyatnosti/logisticheskaya-regressiya/prakticheskie-keisy/mnist-binarnaya-klassifikaciya-otlichaem-0-ot-1

Примеры:
https://aiwithphp.org/books/ai-for-php-developers/examples/part-3/logistic-regression/case-0/mnist-0-1

Теги:
+1
Комментарии0

Есть одна довольно очевидная, но при этом полезная мысль: как научить агента самообучаться и становиться лучше. А, ну и чтобы еще веса моделей не трогать 😁

Мемчик
Мемчик

Большинство агентных систем сегодня неизменяемые в одном конкретном смысле: скилл/правило написано один раз, и либо работает, либо нет. Если что-то грохнулось - иди правь сам или явно проси об этом агента (но сделает ли он лучше еще вопрос). Потом руками пробуешь еще раз, забиваешь и больше не используешь этот скилл. Это, так скажем, "архитектурное решение" явно не подходит.

Попался скилл - Memento-Skills, который должен как раз решать такие проблемы. Система определяет какой скилл подвел, разбирает причину, переписывает код или промпт скилла и сохраняет результат обратно в библиотеку. Все это, естественное, без дообучения модели - в основе цикл Read → Execute → Reflect → Write.

Важный момент про эту библиотеку скиллов: она не просто растет, а остается управляемой. Стартует система с пяти базовых атомарных скиллов - и самостоятельно расширяет набор по мере работы: на бенчмарке GAIA выросла до 41 скилла, на экспертном HLE до 235. При этом результат на GAIA: 80% успешных задач против 50% у статичной RAG-библиотеки. Что на показывает, что эти скиллы живые, а не заморожены.

Есть встроенные скиллы для файлов, PDF, веб-поиска, изображений. Код открытый, github.com/Memento-Teams/Memento-Skills. Из интересного еще то, что проект ориентирован на опенсорс LLM-стек - Kimi, Moonshot, MiniMax, GLM, Zhipu и др.

Надеюсь тебе понравилось. Лучшая благодарность — это твоя подписка на мой Telegram-канал 😊

Теги:
0
Комментарии0

Ближайшие события

Представлен сервис DeathByClawd, который показывает, заменит ли ИИ конкретный продукт или сервис уже сейчас. Достаточно ввести название — получаете «Death Score» от 0 до 100. Чем выше балл, тем легче нейросеть сделает то же самое.

Теги:
+1
Комментарии0

РБПО по ГОСТ Р 56939—2024: вебинар №02 из 30 – Обучение сотрудников

Компания ООО "ПВС" совместно с учебным центром "Маском" провела цикл вебинаров, посвящённых разработке безопасного программного обеспечения (РБПО). Совместно с приглашёнными экспертами различных компаний мы рассмотрели 25 процессов, приведённых в ГОСТ Р 56939—2024.

Предлагаем вашему вниманию сегодня вебинар цикла, посвящённый процессу, описанному в разделе 5.2. – "Обучение сотрудников". Слайды.

Общее количество вебинаров — 30: каждому из 25 процессов ГОСТа посвящено по одному вебинару и 5 записано дополнительно на смежные темы. Я буду публиковать по два вебинара в неделю, чтобы было время знакомиться с ними.

Запись всех вебинаров и подборка дополнительной информации доступна по ссылке: ГОСТ56939.РФ.

Поскольку рассматриваем процесс обучения, хочется напомнить, что учебный центр "Маском" предлагает ряд курсов по тематике РБПО:

  1. М БРПО-Спец. Специалист по процессам разработки безопасного программного обеспечения. 200 часов / 20 дней.

  2. М БРПО-01. Внедрение процессов разработки безопасного программного обеспечения в организации (для руководителей и ответственных). 40 часов/4 дня.

  3. М БРПО-02. Внедрение процессов разработки безопасного программного обеспечения для специалистов по информационной безопасности. 50 часов/5 дней.

  4. М БРПО-03. Сертификационные испытания с учётом требований по разработке безопасного программного обеспечения для экспертов органов по сертификации (испытательных лабораторий) различных систем сертификации средств защиты информации. 140 часов/14 дней.

  5. М БРПО-04. Формирование практических навыков по разработке безопасного программного обеспечения для разработчиков и программистов. 140 часов/14 дней.

  6. М БРПО-05. Методология подготовки предприятия к сертификации процессов безопасной разработки программного обеспечения средств защиты информации в соответствии с требованиями ФСТЭК России. 30 часов/3 дня.

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

  • Вебинары – это теория. На курсах вы получите практические навыки, знакомясь с продуктами лидеров рынка РФ по РБПО.

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

  • Официальный документ об обучении требуется для экспертов органов/лабораторий в системах сертификации ФСТЭК России и Минобороны России.

  • Программа М БРПО-Спец "Специалист по процессам разработки безопасного ПО" (200 часов/20 дней) официально согласована с ФСТЭК России.

  • Человеческий фактор. Не все сотрудники достаточно мотивированы самостоятельно глубоко изучить тему РБПО. Курсы станут поводом выделить на это время.

P.S. В конце не могу не упомянуть про курс "ПВС СТАТ" – Статический анализ программного обеспечения в соответствии с требованиями ГОСТ Р 71207–2024 с применением PVS-Studio. 30 часов/3 дня.

Теги:
0
Комментарии1

Игра Resident Evil 9: Requiem перезагружает OLED-телевизоры — баг заметил один из игроков с LG C1. Оказалось, вспышка револьвера в игре настолько яркая, что дисплей умного ТВ просто не успевает обработать изображение. В итоге телевизор уходит в рестарт.

Теги:
+4
Комментарии0

7 вещей, которые нужно проверить перед любым крипто-переводом

Криптопереводы давно стали обычной частью цифровых финансов. Но, в отличие от банковских приложений, здесь одна ошибка может стоить не комиссии, а всей суммы. Проблема в том, что деньги часто теряются не из-за взломов, не из-за блокчейна и не из-за “скама”, а из-за вполне бытовых вещей: не ту сеть выбрали, не заметили важное поле, поспешили, не сверили адрес. Вот что действительно стоит проверить перед отправкой.

Первое — сеть. Один и тот же актив может существовать в нескольких сетях. Например, USDT можно отправить через ERC-20, TRC-20, BEP-20 и другие варианты. На экране это выглядит как тот же токен, но по факту это разные маршруты. Ошибка здесь — одна из самых дорогих.

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

Третье — актив и сеть должны совпадать одновременно. Многие проверяют только монету или только сеть, а ошибка обычно возникает именно в связке.

Четвёртое — комиссия и итоговая сумма. Особенно если перевод идёт “впритык”. Иногда пользователь уверен, что отправляет нужную сумму, а после комиссии оказывается ниже минимального порога.

Пятое — минимальная сумма зачисления. Во многих сервисах слишком маленький перевод может прийти в сеть, но не зачислиться автоматически. И человек просто сидит и ждёт, не понимая, что произошло.

Шестое — memo, tag или дополнительный идентификатор, если он нужен. Для некоторых активов одного адреса недостаточно. Если забыть это поле, перевод может пройти, но деньги не будут привязаны к аккаунту без ручной поддержки.

Седьмое — тестовый перевод. Самый скучный совет, но самый дешёвый способ не потерять крупную сумму. Если сервис новый, сеть новая или сумма чувствительная — сначала лучше отправить небольшую часть.

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

Теги:
+2
Комментарии2

Как я научил Telegram-бота помнить то, что LLM положено забывать

LLM по своей природе — без памяти. Каждый новый диалог с ChatGPT, Claude или DeepSeek начинается с чистого листа. Разработчики пытаются решать это костылём: запихивают в контекст последние N сообщений.

Но это не память. Это дорогое, конечное и очень прожорливое контекстное окно. Хранить всю историю — разоришься на токенах. Учить модель на лету — пока фантастика.

Поэтому я сделал по-другому.

Встречайте: настоящая долговременная память для Golem (В том виде, в каком она нужна кодинг-агенту)

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

Как это работает:

  • /remember текст — Golem сохраняет факт в SQLite

  • /recall — показывает все ваши заметки

  • /forget ID — удаляет ненужное

Заметки автоматически подгружаются в начало каждого запроса, работают в любой сессии и переживают перезапуски бота. Никакой магии — просто грамотная архитектура.

Реальные примеры из жизни:

Вы пишете: /remember Я работаю над проектом X на Django + PostgreSQL. Никогда не предлагай MongoDB.

Через неделю спрашиваете: «Как оптимизировать запросы?» — Golem сразу учитывает стек и не несёт чушь про NoSQL.

Или: /remember Голем, не отвечай на вопросы про погоду. Это тупо.

Теперь на «какая погода?» он спокойно посылает вас в Google и не жрёт токены.

Это сильно круче простого увеличения контекста: вы сами решаете, что важно, а что — мусор.

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

→ Подписывайся на основной канал «СИСТЕМА»

Там я показываю внутреннюю кухню разработки Golem, полные архитектурные разборы и то, что обычно не выношу на Хабр.

Где потрогать бота прямо сейчас: https://t.me/Golem666bot

Пробуйте, ломайте, кидайте в комментариях:

  • Какие факты вы бы хотели, чтобы бот помнил о вас?

  • Каких ещё фич не хватает идеальному AI-ассистенту?

Жду ваших кейсов и идей — лучшие разберём вместе с Golem.

Теги:
-9
Комментарии2

Статья #2: Сказ о том, как Dictionary дырявым стал, или Почему Пол «потерял» данные

Действующие лица:

  • Пол (МП): Год в индустрии, MacBook в наклейках, верит в магию фреймворков и то, что .NET сам всё порешает за его спиной.

  • Дядя Паша (ДП): 47 лет, архитектор старой закалки. Помнит времена, когда память выделяли дескрипторами, а за неэффективный алгоритм могли и из проекта попросить. Пьет Мальбек, смотрит на Пола как на жертву современного маркетинга.

Диалог

Пол: — Дядь Паш, ну это издевательство! .NET точно дырявый. У меня Dictionary<UserContext, string>, я туда записываю данные, а через секунду стучусь по точно такому же ключу — и KeyNotFoundException! Я дебажил три часа: поля в объекте идентичны, ID совпадает до бита. Где мои данные? Они что, протухли?

ДП: (медленно отрезает кусок эмпанады и смотрит на Пола с плохо скрываемой жалостью) — Эх, Пол... Жертва ты «быстрых курсов за 30 дней». Тебя там научили кнопки нажимать, а как шестеренки внутри хрустят — забыли. Ты мне скажи, соколик, как твой Dictionary поймет, что это один и тот же ключ, если ты ему каждый раз подсовываешь новый адрес в памяти?

Пол: — Ну как... Поля же одинаковые! UserId, TenantId. Разве он не внутрь объекта смотрит?

ДП: — Внутрь он посмотрит, когда ты его заставишь. А пока твой class UserContext — это ссылочный тип. Для рантайма твои два объекта — это как две одинаковые бутылки вина: этикетки одни, а пробки разные. Ты один объект в словарь положил, адрес его запомнил, а потом пришел с другим адресом. Для Dictionary это разные ключи. Он идет искать в другую «корзину» (bucket) и, естественно, находит там только дырку от бублика.

Пол: — И что теперь? Опять писать эту бесконечную портянку: Equals, GetHashCode, проверять на null, комбинировать поля? Это же прошлый век!

ДП: (прищуривается, делает глоток Мальбека) — Слушай сюда, инженер «счастливого будущего». В C# есть record. И это не просто «синтаксический сахар» для ленивых.

Запомни, Пол: Record — это архитектурный контракт на Value-based equality.

Когда ты пишешь public record UserContext(int Id), компилятор сам, за тебя, пишет правильный GetHashCode, который считается по значениям полей, а не по адресу. И Equals он пишет такой же. Для Dictionary два разных инстанса одного рекорда с одинаковыми данными будут одним и тем же ключом. Понимаешь? Одна строчка кода закрывает проблему, на которой вы жжете тысячи долларов облачного бюджета.

Пол: — Ладно, с «исчезновением» понятно. Но это же просто удобство, так? На производительность-то это как влияет?

ДП: (отставляет бокал и смотрит на Пола, как на человека, утверждающего, что старый фермерский пикап и болид Формулы-1 едут одинаково, потому что у обоих по четыре колеса)

— «Просто удобство»? Эх, Пол... Ты хоть раз заглядывал под капот? В реальном проекте, когда ты меняешь свой тяжелый класс на компактный record, скорость поиска в Dictionary взлетает в три раза. Минимум!

Пол: — В три раза?! Да ну, за счет чего? Это же тот же самый поиск в хэш-таблице!

ДП: — За счет инженерной точности. Компилятор генерирует для рекорда максимально эффективный код: без лишних кастов и с идеально подогнанным вычислением хэша. Твой рекорд залетает в пазы Dictionary как деталь от швейцарских часов, а твой класс — как ржавый болт, который нужно еще полчаса подпиливать напильником.

Пол: — Слушай, дядь Паш... Я ведь реально думал, что Dictionary — это просто. А тут — магия адресов, хэш-коллизии, контракты рекордов... Откуда ты всё это знаешь?

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

— Хочешь знать, где еще у тебя «дыры»? Я систему собрал. Там 15+ тысяч вопросов, которые вытрясут из тебя всю дурь и покажут, где ты реально профи, а где просто заголовки на Medium читал.

— Называется «Я хочу знать .NET». Ссылка у тебя есть — iwanttoknow.net. Пройдешь раздел по коллекциям без единого мата — налью тебе Мальбека. А пока — иди, переделывай.

Теги:
-12
Комментарии1

Папа, я не знаю, как играть дальше. По Chess'ноку.

Перелом в партии = ошибке в идеях, а не в одном ходе
Перелом в партии = ошибке в идеях, а не в одном ходе

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

И мне очень хотелось получить ответы на все эти вопросы. И я сделал аналитическо-тренажерный сервис по шахматам (недавно я об этом написал статью на Хабре). И получил ответы на все вопросы.

Но, знаете, оказалось, что у сына тоже есть вопросы:

Папа, я разыграл дебют, но я не знаю, как играть дальше. Как играть, папа?

Мой хороший знакомый, тренер по шахматам, Михаил, буквально на это сказал следующее:

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

Это прекрасный совет. Но, что мне сделать прямо сейчас, чтобы помочь сыну уже сегодня?

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

Я реализовал свою идею и она отлично зашла. Я даже не ожидал такого эффекта. Сын с интересом отнесся к новым цветным стрелочкам.

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

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

Если вы играете в шахматы, заходите в гости, это бесплатно. Для регистрации на LanChess запросите доступ (инвайт) на сайте lanchess.ru

Теги:
0
Комментарии0