TL;DRИгры от Zachtronics:TIS-100EXAPUNKSSHENZHEN I/OПро создание процессора от логических элементов и до написания кода на ассемблере:браузерная бесплатная nandgame.comболее продвинутая Turing completeЕсли Вам нравится какая-то игра из перечисленных - наверно, и остальные тоже подойдут. В каждую из них я наиграл по 30+ часов, получил кучу удовольствия и научился чему-то новому.Первые три игры - от одного и того же человека и парохода издателя Zachtronics, (Zach Barth), и в чём-то похожи друг на…
ДИСКЛЕЙМЕР: Статья написана автором блога на основе интервью с сооснователем производства микрофонов П.БаздыревымВ Советском Союзе делали громкоговорители, в которых в 1941-м объявили начало Великой Отечественной. В 1961-м в отечественный микрофон Гагарин сказал: «Поехали!». Одним из ведущих разработчиков того самого завода был Владимир Селезнев – теперь наш главный инженер-конструктор. Наши микрофоны – это американский дизайн и маркетинг (справа), русский менеджмент (по центру) и продолжение с…
Привет! Меня зовут Кирилл Егоров, я технический лидер двух юнитов Авито: «Запчасти» и «Строительство и ремонт». В этой статье рассказываю о том, как мы определяем, к каким автомобилям подходят запчасти из объявлений, как нам с помощью Golang удается перебрать миллиарды вариантов и какие трудности пришлось решить при реализации этого решения.Задача юнита «Запчасти» — помочь пользователю легко и быстро найти детали, которые подойдут его авто. В приложение встроен раздел «Гараж» — туда можно добав…
Как правило, в Go для безопасного доступа к общим данным используются мьютексы. Да, каналы тоже можно приспособить для изменения общих данных, так как они потокобезопасны, но это усложняет и замедляет логику. Но в этой статье мы поговорим о другом. Современные процессоры имеют поддержку атомарных операций, что позволяет на основе них организовывать работу с общими данными до нескольких раз быстрее, чем с помощью общепринятых вариантов. Так как мьютексы реализованы на основе ОС, каналы сделан…
Однажды мы решили, что грамотных инженеров эффективнее всего растить самим. Так 3 года назад родился Route 256 — курсы Ozon для разработчиков и тестировщиков уровней junior и middle. Во время курса ведущие специалисты Ozon погружают в индустрию e-com, знакомят с актуальным стеком и бизнес-задачами. Самые успешные выпускники получают оффер в команду Ozon. В статье расскажем, почему для отбора мы используем алгоритмы, и покажем разбор задач с контеста. Почему проект использует алгоритмические з…
Opencv предоставляет широкие возможности по обработке изображений и работе с нейросетями. В данной статье мы напишем сервис, который позволит извлекать из изображений ряд параметров человека: пол, возраст, эмоции, а также местонахождение лица на фотографии. Получение данных характеристик бывает полезно для автоматического анализа видео и фото. Например, на конференции мы можем определить средний возраст участников, процентное соотношение мужчин и женщин, а также реакцию на конкретный доклад. Дл…
Привет, друзья! В этой серии статей мы продолжаем разбирать структуры данных и алгоритмы, представленные в этом замечательном репозитории. Это третья часть серии. Первая часть Вторая часть Сегодня мы будем говорить о таких структурах данных, как деревья. В этой статье мы рассмотрим двоичное дерево поиска, АВЛ-дерево и красно-черное дерево. Код, представленный в этой и других статьях серии, можно найти в этом репозитории. Интересно? Тогда прошу под кат. Дерево Википедия YouTube Yandex Дере…
На эту статью меня сподвигла переписка в комментах с коллегой @iliazeus и его вопрос, как в @teqfw/di код может зависеть от интерфейса, а не от его имплементации. В своём ответе я попытался провести параллели с героем Джейсона Стэйтэма из фильма "Перевозчик" - с Фрэнком Мартином. У Фрэнка было три правила (условия контракта) и любой, кто удовлетворял этим правилам (и имел достаточно денег), мог нанять Фрэнка в качестве первозчика.Фрэнка Мартина детали не интересуют.Ниже я продемонстриру…
A general fine-tuning kit geared toward Stable Diffusion 2.1, Stable Diffusion 3, DeepFloyd, and SDXL.SimpleTuner 💹 ⚠️ Warning: The scripts in this repository have the potential to damage your training data. Always maintain backups before proceeding. SimpleTuner is a repository dedicated to a set of experimental scripts designed for training optimization. The project is geared towards simplicity, with a focus on making the code easy to read and understand. This codebase serves as a shared aca…