Три месяца назад я начал делать NextDNS-clone для Европы. Рекурсивный DNS с фильтрацией рекламы, трекеров и malware. Первый день: открываю Unbound, читаю man, всё понятно. К вечеру понимаю, что не подходит. Через неделю пишу свой резолвер на Go и вспоминаю поговорку про человека, который решил…
Самой важной частью шахматной программы, которая вносит основной вклад в силу игры, является направленный перебор. А самой главной частью направленного перебора являются отсечения и сокращения наиболее неперспективных ходов. Отбрасывая наименее важные ветви, программа…
Запутались в многоэтажных SQL‑запросах? Обобщённые табличные выражения (CTE) — тот инструмент, который превращает лапшу из JOIN и подзапросов в читаемый, модульный код. Разберем на реальных примерах из FinTech и e‑commerce, как разбивать сложную логику на цепочку простых шагов, использовать CTE в UPDATE/DELETE, строить рекурсии для иерархий и избегать ловушек оптимизатора в PostgreSQL. Разобраться с CTE
Стек: prisma-generator-express + prisma-guard: генерация CRUD-роутера, валидация ввода, ограничение формы запроса и изоляция тенантов. Подход я для себя называю shape-as-boundary: форма запроса становится исполняемой границей доступа.В примерах ниже - сайт аренды/продажи недвижимости. Реальный проект был другим, кадровой платформой, но я перевожу примеры на недвижимость, чтобы не добавлять лишний контекст. Читать далее
Наверное многие из вас помнят шахматные состязания людей против компьютеров, которые проводились еще относительно недавно. Обычная картина для того времени - на сцене, за шахматным столом, под светом софитов и вспышками фотокамер в своих креслах расположились два человека.…
Постоянно работая с нейросетями, мы попадаем в ловушку иллюзии компетентности и рискуем столкнуться с постепенной атрофией критического мышления. Разбираемся, чем опасен когнитивный долг и почему для работы с LLM нам теперь необходима специальная «когнитивная гимнастика». Читать далее
История искусственного интеллекта (ИИ) удивительная эпопея, которая длится 70 лет. Мы знаем каким ИИ был тогда и видим каким он стал сейчас. Но что было в промежутке? Расскажем об этом в ретроспективной подборке ИИ из 90-х и 2000-х. Читать далее
Продолжаем знакомство со списками в Rust. Перепишем код, избавившись от типа Link и заменив его на Option. Сделаем наш список обобщённым. И добавим в него несколько полезных методов.По дороге разберёмся с временем жизни и типажом Copy. Читать далее
Всем привет! Меня зовут Артур Поляков, я инженер по тестированию в отделе мобильной разработки в компании iSpring. Наша команда работает над iSpring LMS — мобильным приложением для дистанционного обучения сотрудников.В этой статье я поделюсь опытом автоматизации ручных проверок регресса в iOS-приложении. Хотя материалов об автотестах для iOS на Хабре достаточно, наш подход обладает уникальными особенностями, о которых я подробно расскажу дальше. Читать далее
Компания замерла в оцепенении. Никто не понимает, что происходит. Всё изменилось так быстро, что мы не успели отреагировать. Да и не умеем – реагировал всегда он. Быстро, эффективно, хоть и не без шума и помпы.Всё делал с шумом. Когда он говорил – было слышно из любого конца офиса. А