Обновить
-8
0

Пользователь

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

На входе аудио, на выходе — саммари. Собираем локальный транскрибатор из бесплатного софта

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

Однажды я устал расшифровывать аудио пачкой инструментов в духе «Балерино-Капучино и Бобрито-Бандито» и решил собрать свой пайплайн.

В статье расскажу, как я подключил ИИ к обработке голосовых записей буквально за вечер. Мне нужно было загружать запись голоса в нейросетку и на выходе получать выжимку с итогами встречи — саммари/фоллоу‑апами/«минутками». Я хотел от софта безопасности данных, локального запуска и минимума вложений (в идеале 0 затрат). Я системный аналитик, поэтому не был готов писать приложение целиком.

По моей инструкции вы сможете сделать подобный конвейер своими силами даже без навыков кодинга.

Читать далее

«Семь навыков высокоэффективных людей». Книга за 15 минут

Время на прочтение14 мин
Охват и читатели140K


Мы публикуем основные идеи из книги №1 по личной эффективности и самосовершенствованию. Книге, которая является must read для каждого уважающего себя менеджера. Книге, по которой проходят тесты сотрудники крупнейших организаций, в том числе и в нашей стране.
Но стоит сказать, что сама по себе книга написана в американском стиле, очень водянисто. Читать ее достаточно сложно, ввиду присутствия большого количества наукообразных терминов, типа «парадигма», «детерминизм», «синергия». Поэтому мы решили, что формат краткого изложения будет наиболее оптимальным, чтобы понять, стоит ли читать эту книгу полностью. А для тех, кто ее не смог осилить, наше саммари станет отличной мотивацией завершить прочтение книги.
Итак…
Читать дальше →

YRGB 2024 — конкурс по созданию игр для ZX Spectrum

Время на прочтение6 мин
Охват и читатели4K

Жизнь отечественных геймеров в конце 80-х — начале 90-х годов была очень непростой. Из советских электронных развлечений были разве что клоны Pong вроде «Видеоспорта», карманные электронные игры типа «Ну, погоди!» (тоже клоны, но уже серии Game & Watch от Nintendo), несколько десятков советских компьютеров с довольно ограниченным набором софта да несколько сотен (!) клонов британского компьютера ZX Spectrum.

И сегодня я хочу рассказать вам о YRGB — международном конкурсе по разработке ретро‑игр, который Яндекс проводит с 2019 года. Участникам необходимо разработать самостоятельную игру, свободную от авторских прав, для платформ ZX Spectrum 48K/128K. Так что если вы когда‑нибудь делали игры или хотите попробовать, но опасаетесь масштаба современных платформ, этот пост для вас.

> START

Теплый ламповый текстовый интерфейс. Просто о простом

Время на прочтение5 мин
Охват и читатели63K
Периодически просматривая топики на хабре, постоянно ловлю себя на мысли, что ещё чуть-чуть и какой-нибудь нейроинтерфейс в ноутбуке станет реальностью. В работе постоянно натыкаюсь на то, что современные люди не очень понимают и любят простую командную строку. А читать мануалы им тем более лень.
Но в моей практике часто случается так, что нужна небольшая утилита, выполняющая одну или две функции. А где именно она будет выполняться — неизвестно. Это может быть Windows, это может быть исключительно терминальный линукс, загрузочная медия — что угодно. Я не программист, но иногда бывает нужно облегчить жизнь себе или другим. И желательно как можно более наглядно. Сначала я пробовал делать просто консольные утилиты. Собственно, с этого, наверное, начинают все. Но очень быстро оказалось, что средствами printf/sprintf/puts и прочими (а пишу я на С) не очень удобно форматировать текст, выводить какую-то информацию. Окно с постоянным «скроллингом» выглядит не очень красиво, и если информации много — абсолютно нечитаемо. Тогда я вспомнил про ncurses.

Читать дальше →

Как оптимизировать аккумуляторную батарею

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели6.5K

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

Представьте, что работаете инженером в компании по производству электромобилей, и ваш начальник обращается к вам со следующими словами: «Джереми, у нас проблема! (и да, зовут вас Джереми). Всё эти чёртовы батареи! В машине их слишком много, и это выходит для нас очень накладно. Но при этом мы хотим, чтобы клиенты могли спокойно проехать 400 миль на одном заряде».

Что вы в этой ситуации сделаете? Как вы оптимизируете батареи? Это же чёрный магический ящик, не так ли? Не так. Используйте симуляцию.
Читать дальше →

Организация распределённого хранения файлов с помощью git-annex

Время на прочтение14 мин
Охват и читатели13K

Разберем способ удобного хранения 35 000 файлов домашней коллекции, которая используется на 3 ПК и 2 телефонах с использованием git-annex.

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

Читать далее

Реверс-инжиниринг программ DOS как в старом добром 1990-м

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели9.6K
На видео выше я записал наглядную реализацию процесса, описанного в разделе «Сборка и установка».

Эта статья посвящена запуску SoftICE, популярного отладчика для DOS и Windows, в эмулированной среде MS-DOS, а также обходу недостатка Bochs, эмулятора IA-32 (x86) PC.
Весь процесс выполнялся из-под Linux. Не знаю, получится ли проделать то же самое в MacOS, не говоря уже о Windows.
Читать дальше →

IMSProg — программатор для CH341a в Linux

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели28K

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

Читать далее

Мапперы на Famicom, NES, Денди: откуда взялись и зачем нужны (часть 2/2)

Уровень сложностиСредний
Время на прочтение24 мин
Охват и читатели12K

Продолжаем обстоятельный разговор про «мапперы» — устройства управления расширенной памятью на игровых консолях Famicom, NES и Денди. Во второй части статьи рассмотрим особенности нескольких основных видов мапперов и их влияние на содержание игр, сложности программирования, а также ситуацию с мапперами на других платформах.
Читать дальше →

IR remote control, а без микроконтроллеров можно? Да не вопрос

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели17K
image
Сколько логических микросхем понадобится для того, чтобы получить полноценный ИК пульт дистанционного управления? Наверняка вам даже в голову не приходил этот вопрос! А в моем воспаленном сознании однажды такой вопрос возник.

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

Если вы тоже считаете, что немного схемотехники после новогодних праздников вам не повредит, тогда добро пожаловать под кат.
Читать дальше →

«Галоп пикселя — часть шестая» — Анимация персонажей. Бег

Уровень сложностиСредний
Время на прочтение48 мин
Охват и читатели18K


«Галоп пикселя», часть I — базовые понятия, этапы взросления, прикладные упражнения (линк)
«Галоп пикселя», часть II — перспектива, цвет, анатомия и прикладные упражнения (линк)
«Галоп пикселя», часть III — Анимация (линк)
«Галоп пикселя», часть IV — Анимация света и тени (линк)
«Галоп пикселя», часть V — Анимация персонажей. Ходьба (линк)
«Галоп пикселя», часть VI — Анимация персонажей. Бег (линк)

Доброго времени суток, Хабр. Мы продолжаем цикл «Галоп Пикселя». И хотя паузы между главами этой саги достигли практически четырехлетнего перерыва — я рад (надеюсь и вы тоже) продолжить двигаться вперёд. Миля за милей, дорога за дорогой, в этой вечной былине о пиксель-арте. Пространном повествовании о пикселях, их жизни, способе их создания, приёмах и уловках в работе с ними.

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

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


Лопатить пиксели

В Java 21 собираются реализовать сопоставление с образцом – так, глядишь, я снова на этот язык перейду

Время на прочтение23 мин
Охват и читатели19K

Преуведомление

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

Выпуск Java 21 состоялся 19 сентября 2023 года. В этой версии поддерживаются паттерны записи в switch-блоках и выражениях. Такой синтаксис выглядит монументально (как минимум, по меркам Java). Это водораздел, после которого мы вправе говорить, что в Java полноценно поддерживаются паттерны функционального программирования, подобно тому, как это сделано в Kotlin, Rust или C#. Вот и первый пункт, который пробуждает во мне зависть (я Kotlin-разработчик).

Читать далее

Битва за производительность: SparseMap vs GenerationsMap

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели5.9K

Есть такая занимательная структура данных, описанная в статье Russ Cox — sparse map.


Она используется, например, в недрах компилятора Go. А ещё в некоторых пакетах его стандартной библиотеки.


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


Читать дальше →

SectorC: компилятор Си в пределах 512 байт

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели23K

SectorC (github) – это компилятор Си, написанный на ассемблере x86-16 и умещающийся в загрузочный сектор 512 байт машины x86. Он поддерживает достаточно обширную функциональность Си для создания реальных и интересных программ, являясь при этом, пожалуй, самым миниатюрным компилятором Си из когда-либо написанных.
Читать дальше →

И снова про VGA

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели41K

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

Читать далее

Достаточно одной К155ЛА3

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

Продолжая тему легендарных микросхем, нельзя обойти вниманием замечательнейшую микросхему 7400, также известную на постсоветском пространстве, как К155ЛА3.

Давным-давно, когда деревья были большими, а я ещё учился в старших классах, на меня снизошло откровение от старших товарищей, что практически любое цифровое устройство можно собрать только на микросхемах К155ЛА3. Утверждение может показаться спорным, но ничто не мешает нам его проверить.

И поможет нам в этой проверке другое откровение: «Инверсия конъюнкции есть дизъюнкция инверсий». Заодно и разберёмся, что есть «конъюнкция», что есть «дизъюнкция», и причём здесь «инверсия».
И это совсем несложно

KVM: Что такое Kernel-based Virtual Machine?

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

Начнем с простого вопроса:

Что означает QEMU/KVM или QEMU-KVM?

Можно ответить - это QEMU + KVM или qemu-system, запущенный с kvm в качестве ускорителя. Но в какой-то степени это еще и анахронизм, так как с появлением KVM его разработчики для интеграции с QEMU поддерживали отдельный форк qemu-kvm, но начиная с QEMU версии 1.3 (декабрь 2012) все основные изменения из qemu-kvm были перенесены в главную ветку QEMU, а qemu-kvm объявлен устаревшим.

В разных дистрибутивах до сих пор еще можно встретить исполняемый файл qemu-kvm или просто kvm, но это лишь обертки над qemu-system:

exec qemu-system-x86_64 -enable-kvm "$@"

или симлинки:

/usr/bin/kvm -> qemu-system-x86_64

А в самом qemu существует проверка:

Читать далее

Происхождение и эволюция аллокатора памяти в С

Время на прочтение11 мин
Охват и читатели26K

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

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

Читать далее

Домашняя приточная вентиляция малыми средствами

Время на прочтение14 мин
Охват и читатели115K

Последнюю пару лет я живу с приточной вентиляцией в городской квартире — и очень рад этому факту.

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

Коротко о главном:
• наружное расположение компонентов ради минимального уровня шума;
• минимум ручного труда в изготовлении и монтаже;
• общий ценник существенно ниже 50 тысяч рублей (ниже 30 тысяч — на момент изготовления два года назад).

И важное. Если вы — адепт систем рекуперации, долгих инженерных расчётов и полугода проектирования, эта статья не для вас. Я — адепт золотой середины между «я сделяль» и «я задолбался».

Читать далее

Сумачечая производительность LINQ в .Net7

Время на прочтение3 мин
Охват и читатели16K

Исторически так сложилось, что LINQ взыскал "сомнительную" репутацию за его скромную производительность. LINQ медленный, аллоцирует память, сложно читается, поэтому обычно его используют как инструмент запросов к БД и то, зачастую сложные запросы легче написать на SQL. Даже на собеседованиях джунов просят не использовать LINQ в алгоритмах.

Однако в .NET 7 всё будет по-другому...

Подробней...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность