🌎 Network Basics for Hackers: How Networks Work and How They Break. OccupyTheWeb (2023)
❔ Чему вы научитесь:
🔵 разбирать структуру пакетов и работу стека TCP/IP по слоям;
🔵 анализировать трафик в Wireshark и tcpdump, читать дампы осмысленно;
🔵 понимать работу ARP, DNS, DHCP и связанные с ними классы атак;
🔵 сканировать сеть через Nmap и интерпретировать результаты;
🔵 разбираться в особенностях Wi-Fi, Bluetooth и SCADA-протоколов;
🔵 видеть, где в протоколе заложено доверие, которым можно злоупотребить.
"Network Basics for Hackers" — сети объясняются через призму того, как они ломаются: сначала механика протокола, затем его слабое место. Порог входа низкий — базовые знания Linux желательны, сетевой подготовки не требуется. Практика допустима только на своём оборудовании, в лабораториях и в рамках согласованных работ: сканирование и перехват в чужой сети без разрешения — уголовно наказуемое деяние.
🌎 Introduction to Modern Statistics, 2nd edition. Mine Çetinkaya-Rundel, Johanna Hardin (2024)
❔ Чему вы научитесь:
🔵 проводить разведочный анализ и визуализировать данные осмысленно;
🔵 строить статистический вывод через рандомизацию и бутстрэп, а не только по формулам;
🔵 проверять гипотезы и интерпретировать p-значения корректно;
🔵 применять линейную и логистическую регрессию, включая множественную;
🔵 различать наблюдательные исследования и эксперименты, понимать границы выводов;
🔵 работать с данными в R и оформлять воспроизводимый анализ.
"Introduction to Modern Statistics" — современный вводный курс, где симуляционные методы идут раньше классических формул: логика вывода становится понятнее до знакомства с распределениями. Порог входа низкий, математической подготовки почти не требуется. Учебник распространяется бесплатно в открытом доступе вместе с наборами данных и упражнениями.
🌎 Game Development Patterns with Unreal Engine 5: Build maintainable and scalable systems with C++ and Blueprint (2023)
❔ Чему вы научитесь:
🔵 применять классические паттерны — синглтон, фабрика, наблюдатель, состояние — в контексте движка;
🔵 разделять ответственность между C++ и Blueprint, не смешивая логику;
🔵 использовать штатные механизмы UE5: делегаты, интерфейсы, компоненты, Gameplay Framework;
🔵 строить конечные автоматы для поведения персонажей и игровых состояний;
🔵 организовывать объектные пулы и управлять жизненным циклом акторов;
🔵 рефакторить разросшийся Blueprint-граф в поддерживаемую структуру.
"Game Development Patterns with Unreal Engine 5" — книга об архитектуре игрового кода: паттерны разбираются не абстрактно, а через средства самого движка. Рассчитана на разработчиков, уже сделавших пару прототипов в UE и упирающихся в неподдерживаемый код; нужны базовый C++ и знакомство с редактором. Практический результат — проект, который переживает добавление новых механик без переписывания половины систем.
🌎 The Design of Everyday Things. Donald Norman. Revised and Expanded Edition (2013)
❔ Чему вы научитесь:
🔵 разбираться в аффордансах и означающих — что объект позволяет и как он об этом сообщает;
🔵 использовать соответствие управления и результата (mapping) при проектировании интерфейсов;
🔵 выстраивать обратную связь, чтобы пользователь понимал состояние системы;
🔵 применять ограничения, физические и смысловые, для предотвращения ошибок;
🔵 разбирать ошибки на промахи и заблуждения и проектировать под каждый тип;
🔵 работать с концептуальной моделью — представлением пользователя об устройстве системы.
"The Design of Everyday Things" — базовый текст о юзабилити, разбирающий примеры на дверях, плитах и выключателях; принципы напрямую переносятся на программные интерфейсы. Специальной подготовки не требует. Главный тезис прямолинеен: если человек ошибается, виновата не его невнимательность, а конструкция. Расширенное издание 2013 года дополнено главами о дизайн-мышлении и цифровых продуктах.
Хочешь заговорить на английском, но не с кем практиковаться?
Появилась ИИ-девушка, с которой можно общаться голосовыми на любые темы, как с носителем. Она слушает твою речь, подробно исправляет ошибки и помогает говорить увереннее. Попробовать можно бесплатно.
❔ Чему вы научитесь:
🔵 работать с выводом типов и понимать, где компилятор справляется сам, а где нужна подсказка;
🔵 писать дженерики и ограничения без сваливания в any;
🔵 использовать условные и сопоставляемые типы, выводить части типа через infer;
🔵 строить сужение типов: type guards, дискриминируемые объединения, assertion-функции;
🔵 настраивать строгость компилятора и разбирать его ошибки, а не подавлять их;
🔵 типизировать сторонний код и писать декларации.
"Total TypeScript" — материал вырос из известного курса Мэтта Покока, построенного на упражнениях: сначала задача, потом разбор, а не последовательное изложение справочника. Рассчитана на разработчиков, уже пишущих на TypeScript и упирающихся в систему типов.