🌎 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 и упирающихся в систему типов.
🌎 Learning LangChain: Building AI and LLM Applications with LangChain and LangGraph (2026)
❔ Чему вы научитесь:
🔵 собирать цепочки вызовов модели и подключать разных провайдеров через общий интерфейс;
🔵 строить RAG: загрузка документов, разбиение, эмбеддинги, векторный поиск;
🔵 описывать инструменты и организовывать их вызов моделью;
🔵 управлять памятью диалога и состоянием между шагами;
🔵 строить графы состояний в LangGraph для агентов с ветвлением и циклами;
🔵 отлаживать и оценивать поведение цепочек, ловить зацикливание.
"Learning LangChain" — акцент на LangGraph как на способе задать агенту явную структуру вместо непредсказуемого цикла «модель решает сама». Рассчитана на Python-разработчиков, знакомых с API языковых моделей. Главная оговорка — темп изменений: LangChain ломает совместимость между версиями чаще большинства библиотек, поэтому переносимы принципы, а не конкретные импорты.
🌎 A Common-Sense Guide to Data Structures and Algorithms in JavaScript, Volume 1. Jay Wengrow (2024)
❔ Чему вы научитесь:
🔵 оценивать сложность алгоритмов через большое O без формального аппарата;
🔵 понимать, чем отличаются по стоимости массивы, хеш-таблицы и связные списки;
🔵 применять стеки и очереди к прикладным задачам;
🔵 писать рекурсивные решения и превращать их в эффективные;
🔵 разбираться в сортировках и их поведении на разных данных;
🔵 ускорять реальный код, заменяя структуру данных на подходящую.
"A Common-Sense Guide to Data Structures and Algorithms" — алгоритмы объясняются без математической строгости, простым языком и на бытовых аналогиях; код в этом издании на JavaScript. Рассчитана на разработчиков-практиков без CS-образования, которых отпугивают академические учебники. Это первый том — деревья, графы и динамическое программирование остаются на следующую часть.
🌎 Mastering Efficient Memory Management in C++: Unlock the Secrets of Expert-Level Skills (2024)
❔ Чему вы научитесь:
🔵 разбираться в моделях владения и применять умные указатели по назначению;
🔵 использовать RAII и move-семантику для исключения лишних копирований;
🔵 писать собственные аллокаторы и пулы памяти под конкретную нагрузку;
🔵 понимать выравнивание, локальность данных и влияние кеша на производительность;
🔵 находить утечки и повреждения памяти через санитайзеры и профилировщики;
🔵 работать с памятью в многопоточном коде без гонок и ложного разделения.
"Mastering Efficient Memory Management in C++" — узкоспециальная книга об одной, но определяющей стороне языка: производительность в C++ упирается в работу с памятью чаще, чем в алгоритмы. Порог входа высокий — нужен опыт современного C++.
🌎 Building Intelligent Applications with Spring AI: Develop Practical Java Solutions with Generative AI, Multimodal Models, and Agents (2026)
❔ Чему вы научитесь:
🔵 подключать языковые модели к Spring-приложению через единую абстракцию Spring AI;
🔵 менять провайдера модели без переписывания прикладного кода;
🔵 строить RAG: векторные хранилища, эмбеддинги, извлечение контекста;
🔵 описывать инструменты и давать модели вызывать методы приложения;
🔵 работать с мультимодальными сценариями — изображения, аудио, структурированный вывод;
🔵 собирать агентные цепочки и контролировать их поведение.
"Building Intelligent Applications with Spring AI" — книга встраивает ИИ в привычный корпоративный стек: те же бины, конфигурация и тестирование, что и в обычном Spring-проекте. Рассчитана на Java-разработчиков с опытом Spring Boot; знания ML не требуются. Содержание конкретно этого издания я не проверял, а сам Spring AI — молодой проект, чьё API ещё меняется между версиями.