Как стать автором
Обновить
142
0
Виктор @TyVik

Full-stack developer

Отправить сообщение

Лучшие бесплатные ресурсы для изучения этичного хакинга и кибербезопасности

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 23K

Информационная безопасность (ИБ) или кибербезопасность – это одна из самых важных и актуальныхобластей современной науки и технологий. В условиях постоянного развития интернета, киберпреступности и глобальной информатизации, специалисты по информационной безопасности востребованы как никогда. 

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

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

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

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

Читать далее
Всего голосов 39: ↑38 и ↓1 +37
Комментарии 4

Трансформеры, группы преобразований и self-attention

Уровень сложности Сложный
Время на прочтение 10 мин
Количество просмотров 2.7K

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

Читать далее
Всего голосов 14: ↑14 и ↓0 +14
Комментарии 0

Самое понятное объяснение Специальной теории относительности

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 89K

Специальная теория относительности - удивительная теория, которая опровергла многие представления о мире, в которых человечество не сомневалось всю историю своего существования.

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

В этой статье я хочу наглядно показать, что все это проще, чем кажется на первый взгляд.

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

Читать далее
Всего голосов 377: ↑377 и ↓0 +377
Комментарии 387

Где изучать DevOps. Бесплатные курсы, книги и полезные материалы

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 24K

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

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

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

Для тех, кто стремится стать DevOps-инженером, важно освоить широкий спектр инструментов и методологий. Существует множество онлайн-курсов и ресурсов, которые помогут вам приобрести необходимые знания и навыки.

Эти источники позволяют выбрать наиболее подходящий подход к обучению и материалы для своего учебного процесса. Некоторые из них включают в себя курсы по Docker, Kubernetes, Ansible, Jenkins, Git и другим инструментам, необходимым для успешной работы в области DevOps.

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

В статье я собрал большой список курсов, книг, репозиториев и ресурсов, которые помогут вам стать DevOps-инженером🧑‍💻.

Читать далее
Всего голосов 31: ↑27 и ↓4 +23
Комментарии 3

Основные типы распределений вероятностей в примерах

Уровень сложности Средний
Время на прочтение 15 мин
Количество просмотров 8.6K

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

Читать далее
Всего голосов 51: ↑51 и ↓0 +51
Комментарии 10

Градиентный бустинг. Реализация с нуля на Python и разбор особенностей его модификаций (XGBoost, CatBoost, LightGBM)

Уровень сложности Сложный
Время на прочтение 28 мин
Количество просмотров 5.3K

На сегодняшний день градиентный бустинг (gradient boosting machine) является одним из основных production-решений при работе с табличными, неоднородными данными, поскольку обладает высокой производительностью и точностью, а если быть точнее, то его модификации, речь о которых пойдёт чуть позже.

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

Читать далее
Всего голосов 20: ↑20 и ↓0 +20
Комментарии 7

Стекинг и блендинг в ML. Ключевые особенности и реализация с нуля на Python

Уровень сложности Сложный
Время на прочтение 11 мин
Количество просмотров 3.1K

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

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

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 0

Кластеризация в ML: от теоретических основ популярных алгоритмов к их реализации с нуля на Python

Уровень сложности Сложный
Время на прочтение 34 мин
Количество просмотров 9.3K

Кластеризация — это набор методов без учителя для группировки данных по определённым критериям в так называемые кластеры, что позволяет выявлять сходства и различия между объектами, а также упрощать их анализ и визуализацию. Из-за частичного сходства в постановке задач с классификацией кластеризацию ещё называют unsupervised classification.

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

Читать далее
Всего голосов 36: ↑36 и ↓0 +36
Комментарии 2

Мобильные экранчики в ваших проектах: большой и понятный о гайд о различных дисплеях

Уровень сложности Средний
Время на прочтение 18 мин
Количество просмотров 20K
image


Пожалуй, немалая часть моих читателей так или иначе интересуется DIY-тематикой. И в различных самодельных девайсах порой есть необходимость вывести какую-либо информацию на дисплей, будь это текст, графики или даже какая-то анимация! Для разных задач существуют самые разные дисплеи и в сегодняшнем материале я хотел бы систематизировать и собрать подробнейший гайд об использовании дисплеев с нерабочих мобильных телефонов: какие бывают протоколы и шины данных, как читать схемы устройств и определять контроллеры дисплеев, какие дисплеи стандартизированы, а какие придётся реверсить самому и как быть с подсветкой. В практической части статьи мы подключим дисплей по протоколу MIPI DBI к RP2040 с использованием DMA. Интересно? Тогда добро пожаловать под кат!
Читать дальше →
Всего голосов 108: ↑106 и ↓2 +104
Комментарии 116

Packer: мультисборка, пост-процессоры и пользовательские плагины

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 1.3K

Привет, Хабр!

Packer — это open-source инструмент для создания идентичных машинных образов для множества платформ из одного исходного файла конфигурации. Т.е с пакером можно автоматизировать создание образов для Amazon EC2, VMware, Docker и т.д, используя единый процесс сборки.

Рассмотрим его возможности мультисборки, пост-процессоров и пользовательских плагинов.

Читать далее
Всего голосов 12: ↑9 и ↓3 +6
Комментарии 1

Когнитивные искажения, о которых стоит помнить

Время на прочтение 15 мин
Количество просмотров 73K

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

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

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

Читать далее
Всего голосов 95: ↑87 и ↓8 +79
Комментарии 34

Обзор инструментов для оценки безопасности кластера Kubernetes: kube-bench и kube-hunter

Время на прочтение 6 мин
Количество просмотров 9.2K

Популярность Kubernetes растет, порог входа снижается, но вопросам безопасности порой оказывают недостаточное внимание. В этой статье разберём работу двух Open Source-утилит для аудита безопасности кластера от известных экспертов этой области — Aqua Security.

Читать далее
Всего голосов 38: ↑38 и ↓0 +38
Комментарии 1

Как языковая модель предсказывает следующий токен (часть 1)

Время на прочтение 27 мин
Количество просмотров 6.2K

Я обучил небольшой (порядка 10 миллионов параметров) трансформер по превосходному туториалу Let’s build GPT: from scratch, in code, spelled out Андрея Карпати. После того, как он заработал, я захотел максимально глубоко понять, как он устроен внутри и как создаёт свои результаты.

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

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

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

Читать далее
Всего голосов 27: ↑27 и ↓0 +27
Комментарии 5

Шпаргалка для алгособеса 2 — графовые и строковые алгоритмы

Уровень сложности Средний
Время на прочтение 22 мин
Количество просмотров 17K

Привет, Хабр!

В наше неспокойное время, когда сфера AI стремительно движется вперёд, хочется немного стабильности и уверенности в завтрашнем дне. Как это связано с темой статьи?

Самым прямым образом — алгоритмы прокачивают умение системно мыслить, искать нестандартные пути решения; человека, у которого эти скиллы на высоте, вряд ли заменит ИИ. Так что, тратя бесценное время на алгоритмы, вы занимаетесь очень полезным делом, расслабьтесь и получайте удовольствие) В качестве бонуса к прокачиванию серого вещества вы получите сверхспособность пройти любой алгособес в FAANG и удовлетворить любые потребности пирамиды Маслоу — довольно приятно)

В этой статье мы разберём графовые алгоритмы типо DFS, Флойда–Уоршелла и строковые наподобие Ахо-Корасик.

Читать далее
Всего голосов 41: ↑39 и ↓2 +37
Комментарии 35

Прокачиваем вёрстку ARIA-атрибутами. Атрибут role

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 3.5K

В разговорах людей, интересующихся доступностью, часто можно услышать слово «Роль». Так, что это такое? Это специальная форма представления элемента для скринридера. Устанавливается она с помощью атрибута role. Сегодня поговорим о нем.


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


Давайте начнём!

Читать дальше →
Всего голосов 38: ↑37 и ↓1 +36
Комментарии 10

Теория химического строения. Ликбез. Часть 1

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 6K

Приветствую всех айтишников и технарей. Не беспокойтесь, серию про ЯМР я не бросил, и обязательно её закончу. Однако пися пиша готовя очередную статью, посвященную возможностям метода, я столкнулся с тем, что описать и объяснить эти самые возможности можно только человеку, который понимает как устроена молекула. Таких людей на Хабре (да и в целом по жизни) не так много, а мне хотелось бы адресовать свои посты относительно широкой аудитории. Ничего подобного, как ни странно, я на Хабре не нашел, поэтому деваться некуда, придется наваять про это отдельный пост.

Читать далее
Всего голосов 30: ↑30 и ↓0 +30
Комментарии 20

Обмани меня, если сможешь

Уровень сложности Простой
Время на прочтение 13 мин
Количество просмотров 9.4K

Первый игровой автомат Atari Pong, был выпущен в 1972 году. Это игра для двух игроков, основанная на настольном теннисе, где каждый игрок управляет ракеткой и должен отбить мяч на другую сторону. Если игрок промахивается, соперник набирает очки. Первый кто наберет 11 очков становится победителем. Kent Steven в своей книге "The Ultimate History of Video Games" (Вся история видеоигр) описывает, что проект был отдан инженеру Aлану Алькорну (Alan Alcorn), который до этого не занимался играми и игровыми автоматами. Учитывая, что в кармане основателя Atari было немногим больше 500$, и привлечь опытных разработчиков для работы над неизвестным проектом шансы были минимальные, то Нолан Бушелл представил это как выполнение контракта для General Electric.

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

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

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

Осторожно, много картинок
Всего голосов 26: ↑24 и ↓2 +22
Комментарии 15

Защита Home Assistant

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 9.2K

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

И все это дельные советы, ничего плохого в них нет, но хочется чего то большего.

Читать далее
Всего голосов 16: ↑12 и ↓4 +8
Комментарии 21

Гайд по сплит клавиатурам

Уровень сложности Простой
Время на прочтение 31 мин
Количество просмотров 8K

Этот гайд создан для тех, кто интересуется сплит клавиатурами, но еще не знаком с их особенностями и преимуществами или рассматривает переход на них. Главная цель гайда – предоставить всестороннюю информацию о сплит клавиатурах: от их истории и типов до подробного рассмотрения их конструкции, обучения слепой печати, изменения раскладки и так далее.

Мы стремимся сделать переход на сплит клавиатуру максимально плавным и безболезненным. Понимание того, как они устроены и как их можно адаптировать под свои нужды, снизит барьер входа и поможет преодолеть опасения перед переходом.

Читать далее
Всего голосов 33: ↑33 и ↓0 +33
Комментарии 22

Вперед в будущее: Wayland против X11

Уровень сложности Средний
Время на прочтение 38 мин
Количество просмотров 25K

Доброго времени суток, дорогие читатели! Сегодня я затрону одну интересную тему — графические дисплейные сервера и протоколы в Linux. В этой статье я расскажу вам о архитектуре X11 и Wayland, историю их создания и наконец-то сделаем вывод: Иксы на мороз, или вейланд на помойку?


Еще в далеком 2016 году вышла Fedora 25 с окружением GNOME 3.22 на базе дисплейного сервера Wayland. А в RHEL 10 выкинут X11 на мороз. Релиз RHEL 10 намечен на 2025 год, CentOS Stream 10 — на 2024 год. Для обеспечения работы приложений, требующих X11, будет использоваться XWayland. Таким образом, в 2029 году (к моменту окончания первого этапа поддержки RHEL 9) стоит ожидать появление первого аппаратного обеспечения, не поддерживающего X11.


И как я думаю — будущее за Wayland. Но пока X11 является стандартом. Давайте разберем это!


Читать дальше →
Всего голосов 98: ↑91 и ↓7 +84
Комментарии 115

Информация

В рейтинге
Не участвует
Откуда
Краснодар, Краснодарский край, Россия
Дата рождения
Зарегистрирован
Активность