Search
Write a publication
Pull to refresh
22
0
Lesha Lomalkin @lomalkin

Линуксоид и электронщик

Send message

Универсальные платформы это зло

Reading time6 min
Views21K
Перевод статьи «Core Frameworks Don’t Work (most of the time)» от Rudy Lacovara, в которой он критикует практику, когда компании создают собственные универсальные платформы для разработки ПО, на основе которых реализуют несколько совершенно не связанных проектов. На картинке изображен Борг из Стар Трека, это раса киборгов, которая ассимилирует все встречающиеся организмы в единый супер-организм.


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

Знакомьтесь, DMMR2

Reading time4 min
Views17K


Успешно завершив тестирование последней версии железа в прошедшее воскресенье, спешим поведать читателям о функциях и особенностях нашего долгожданного DMMR2 — диммера в форм-факторе микромодуля, встраиваемого в стандартный стенной проем (за выключатель), подключающегося к стандартной электропроводке (к разрыву одной линии 220V без каких-либо переделок), управляемого по стандартному Wi-Fi-каналу (уже имеющемуся в практически всех квартирах и домах этой страны).
Читать дальше →

Роскомнадзор шантажирует Роскомсвободу и не знает что такое «чёрный список»

Reading time2 min
Views94K
На Хабре уже прошла информация о рекурсивном документе от Роскомнадзора. История получила свое развитие.
В тви развернулся очень интересный диалог между представителями Роскомнадзора (roscomnadzor, mksenzov), СМИ и общественности.
В ходе которого выявилось ряд интересных моментов.
Во-первых, подтвердилось мое предположение, что п.5.4 готовящегося Роскомнадзором межведомственного приказа был специально добавлен для ограждения госорганов от общественных мониторингов их деятельности.
Подробнее о сути данного пункта я изложил на ресурсе «РосКомСвободы», приведу небольшую выдержку и наглядную схему.
Читать дальше →

Pocketsphinx. Распознавание речи и голосовое управление в Linux

Reading time11 min
Views126K
— Всё в порядке, Лёня?
Динамики отрегулированы на максимум, я морщусь, отвечаю:
— Да. Тише звук.
— Звук — тише, — соглашается «Виндоус-Хоум», — тише, тише…
— Хватит, Вика
С.Лукьяненко, «Лабиринт отражений»

Введение


В 1997-ом году Лукьяненко пророчил для десктопа сочетание CLI и голосового управления. Однако сейчас голосовое управление — достаточно узкая ниша.
Голосовое управление — взаимодействие с устройством при помощи звуковых команд. Не путайте это понятие с распознаванием речи. Для голосового управления достаточно, чтобы устройство реагировало на единственную нужную команду (ведь ваша собака не может работать машинисткой?). Распознавание речи — гораздо более глобальная проблема: в этом случае устройство должно преобразовывать в текстовый формат все слова, произнесенные вами. Как легко догадаться, распознавание речи на данный момент реализовано поверхностно относительно человеческих возможностей.
Функционал, рассмотренный в статье, может быть применен, к примеру, для организации модного сейчас «умного дома» или просто управления компьютером. Честно говоря, для описания управления компьютером хватило бы пары абзацев, но я попытаюсь показать вам основы работы с CMU Sphinx.
Кстати, процентов 70 описанного здесь подойдет и пользователям Windows.
Научим Linux слушаться?

«Луркоморье» приостанавливает работу

Reading time2 min
Views48K
image
Дмитрий Хомак (в центре). Фото: ТАСС

Сегодня создатель и текущий руководитель проекта «Луркоморье» (Lurkmore, Лурк) Дмитрий Хомак объявил о намерении приостановить работу сайта. Основная причина — конфликт с Роскомнадзором, а также внесение в список «иностранных агентов» фонда «Династия».

Планы по дальнейшей работе с «Луркоморье» Дмитрий Хомак опубликовал (в несколько эмоциональной форме) на своей странице в Facebook.
Читать дальше →

Работа с COM портом в web-проекте

Reading time4 min
Views52K

Пролог


Один из клиентов нашего web-проекта захотел использовать для поиска заказов в системе сканер штрихкодов. Но, к сожалению, полностью отказался от идеи работы с ними в режиме имитации клавиатуры — только эмуляция COM-порта.
Вариантов решения было не особенно много:
  • отдельное нативное приложение, которое бы отправляло запрос на наш сервер, а сервер бы отдавал команду в браузер
  • работа с COM портом непосредственно из браузера

К счастью, есть способ решения проблемы вторым путём.

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

Правим баг без исходных кодов

Reading time9 min
Views39K
image

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

Что ж, ближе к делу. Есть такая широко известная в узких кругах программа под названием «Govorilka». Как объясняет её автор, это ничто иное, как «программа для чтения текстов голосом». По сути, так оно и есть. При помощи неё было озвучено множество популярных и не очень видео, рапространившихся по всей сети. Программа имеет консольную версию под названием «Govorilka_cp», которую удобно вызывать из своих собственных приложений, что, собственно, я и сделал в одном из своих проектов.

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

Учитывая, что говорилка не обновлялась уже несколько лет, а сам автор оставил вот такое «послание» на своём сайте

image

, я понял, что надеяться мне не на кого, и решать проблему придётся самому.

Как протекал процесс, и что из этого вышло, читайте под катом (осторожно, много скриншотов).
Читать дальше →

Почему я купил ещё один биткоин

Reading time3 min
Views85K


Нечто удивительное происходит во всём мире.

Это не трудно уловить, но лишь немногие замечают это, потому что все заняты и потому что люди (в большинстве своём) имеют проблемы с обнаружением маленьких постепенных сдвигов. Эти два твита от «The Daily Beast» хорошо подводят итоги. Можете угадать, о чём речь?


Второй твит и продолжение

Инженерная культура, которую мы потеряли?

Reading time5 min
Views243K

Этот пост, наверно, правильно воспринимать как крик души, как попытку найти поддежку в профильном сообществе и окончательно не потерять веру в текущий уровень высшего инженерно-технического образования. То, что сейчас все крайне непросто в этой сфере, не говорит только ленивый, но я хочу постараться дать вам некую объективную информацию, а выводы… Выводы, думаю, все сделают сами. Кому интересно, прошу под кат.
Читать дальше →

Сражаясь с анонимностью

Reading time7 min
Views154K
Тема анонимности в Интернете является сейчас достаточно модной и интересной, и особенно теперь, когда новостные порталы пугают наc всякими там PRISM, правительственными инициативами и прочим. Большинство людей озабочены тем, как сохранить тайну своей личности в сети и поэтому все темы так или иначе посвящены ЗАЩИТЕ. Но иногда, раскрытие анонимности это не такое уж и плохое дело. Да-да, эта заметка — мой опыт борьбы с анонимностью своими силами, без помощи спец-служб…

image

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

Бесплатный учебник электроники, архитектуры компьютера и низкоуровневого программирования на русском языке

Reading time2 min
Views251K

Господа! Я рад сообщить, что наконец-то все желающие могут загрузить бесплатный учебник на более чем 1600 страниц, над переводом которого работало более полусотни человек из ведущих университетов, институтов и компаний России, Украины, США и Великобритании. Это был реально народный проект и пример международной кооперации.

Учебник Дэвида Харриса и Сары Харрис «Цифровая схемотехника и архитектура компьютера», второе издание, 2012, сводит вместе миры программного обеспечения и аппаратуры, являясь одновременно введением и в разработку микросхем, и в низкоуровневое программирование для студентов младших курсов. Этот учебник превосходит более ранний вводный учебник «Архитектура компьютера и проектирование компьютерных систем» от Дэвида Паттерсона и Джона Хеннесси, причем соавтор предыдущего учебника Дэвид Паттерсон сам рекомендовал учебник от Харрисов как более продвинутый. Следуя новому учебнику, студенты строят реализацию подмножества архитектуры MIPS, используя платы с ПЛИС / FPGA, после чего сравнивают эту реализацию с индустриальными микроконтроллерами Microchip PIC32. Таким образом вводится вместе схемотехника, языки описания аппаратуры Verilog и VHDL, архитектура компьютера, микроархитектура (организация процессорного конвейера) и программирование на ассемблере — в общем все, что находится между физикой и высокоуровневым программированием.

Как загрузить? К сожалению, не одним кликом. Сначало надо зарегистрироваться в пользовательском коммьюнити Imagination Technologies, потом зарегистрироваться в образовательных программах на том же сайте, после чего наконец скачать:
Читать дальше →

Мой интернет вещей: Гостевой замок

Reading time17 min
Views80K
Так сложились обстоятельства, что имеется у меня однокомнатная квартира, в которой я не живу, а сдавать ее «обычным способом» мне не интересно. Попробовал я ее сдать через сервис Airbnb, понравилось. И не то, что бы это выгоднее, но точно интереснее, процесс захватывает. Но я не об этом…

Было у меня пару раз ситуация, когда я не мог лично встретить гостя и вручить ему ключ. Обычно в таких ситуациях приходится придумывать различные способы, от закладывания ключа под коврик до передачи через консьержку. Мне же не хочется посвящать в свои дела посторонних и как-то не комильфо прятать ключ под ковриком.
Читать дальше →

Число Данбара и пользователи ВКонтакте

Reading time3 min
Views131K
Robin Dunbar with a Neaderthal skullНедавно я наткнулся на такую удивительную штуку как число Данбара.
История такова. 20 с лишним лет назад, когда выражение «британские учёные» ещё не было мемом, антрополог Робин Данбар, изучая данные по человекообразным обезьянам, обнаружил, что численность их стаи подчиняется определённому закону. Есть максимальное количество членов стаи. Если стая разрастается и её численность превышает порог, она разделяется на две. Причём для разных видов этот предельный размер получается разным.
Читать дальше →

Устройство на базе Ардуино вскрывает навесной замок за несколько секунд

Reading time2 min
Views38K


Неутомимый хакер Сэми Камкар опубликовал чертежи, схемы и список деталей, необходимых для создания системы автоматического открывания кодового замка Masterlock. Менее чем за $100 можно изготовить устройство, открывающее такой замок за несколько секунд.

Камкар увлекается различными аспектами безопасности. На его счету несколько интересных проектов. Например, наделавший 10 лет назад шуму червь для MySpace, работающий через XSS и AJAX, который позволил автору менее чем за сутки набрать миллион «друзей».

Также у него был интересный проект SkyJack – коптер, использующий Raspberry Pi для взлома и перехвата управления у других, оказавшихся поблизости коптеров. И довольно страшноватое «украшение» USBdriveby – USB-устройство на цепочке, которое после подключения к любому компьютеру превращает его в удалённо подконтрольный, и заметает все следы менее чем за 60 секунд (для этого используются эмуляция мыши, клавиатуры и несколько записанных в памяти программ).

Заинтересовавшись недавно схемой работы распространённого недорогого навесного замка Masterlock, Камкар узнал, что существует методика для уменьшения количества комбинаций, которые надо перебрать, чтобы открыть замок. Вместо теоретического количества в 64000 необходимо перебрать всего 100 штук. Хакер задумал изготовить устройство с мотором и контроллером, которое бы автоматически делало эту работу. Простейший шаговый мотор под управлением Ардуино взламывает такой замок менее чем за 5 минут.
Читать дальше →

SoC: поднимаем простой DMA на FPGA

Reading time14 min
Views55K


День добрый! В прошлой статье я описывал, как «поднять» с нуля SoC от Altera.
Мы остановились на том, что измерили пропускную способность между CPU и FPGA, когда копирование выполняется процессором.

В этом раз мы пойдем немного дальше и реализуем примитивный DMA в FPGA.
Кому интересно — добро пожаловать под кат.
Тут интересно

Чем заняться айтишнику в армии — руководство к действию

Reading time3 min
Views62K
Первая статья вызвала большой резонанс по всему рунету. Сейчас же я хочу немного рассказать про техническую сторону вопроса, а именно — о том, как начать разработку BomberMan в Excel. Исходного кода игры не будет в силу его отсутствия, а будут лишь отдельные пояснения принципов работы.

Методы, описанные в статье, не претендуют на истину в последней инстанции. Я описываю то, как это было сделано мной ТАМ, в местах отсутствия интернета и сильнейшего воздействия на психику.
Читать дальше →

Чем заняться айтишнику в армии или как я на VBA игры писал

Reading time3 min
Views184K
Прошло уже больше двух месяцев с момента моей демобилизации. Я уже освоился на свободе, пришло время рассказать интересную историю со службы. Служил я в разведке!.. По распределению попал в центр радиоперехвата. Работенка не пыльная, сидишь ночами в наушниках и слушаешь врага. Но речь пойдет не об этом.

У каждого оператора поста радиоперехвата (таковыми мы числились) был в распоряжении компьютер с подключенными к нему радио-приемными устройствами. На компьютере стоял спецсофт + Excel. Все остальное было заблочено. После N-ного дежурства я стал скучать… Зачесались руки.
Читать дальше →

MMU в картинках (часть 1)

Reading time11 min
Views81K
Хочу поговорить об устройстве управления памятью (Memory Management Unit, MMU). Как вы, разумеется, знаете, основной функцией MMU является аппаратная поддержка виртуальной памяти. Словарь по кибернетике под редакцией академика Глушкова говорит нам, что виртуальная память — это воображаемая память, выделяемая операционной системой для размещения пользовательской программы, ее рабочих полей и информационных массивов.

У систем с виртуальной памятью четыре основных свойства:
  1. Пользовательские процессы изолированы друг от друга и, умирая, не тянут за собой всю систему
  2. Пользовательские процессы изолированы от физической памяти, то есть знать не знают, сколько у вас на самом деле оперативки и по каким адресам она находится.
  3. Операционная система гораздо сложнее, чем в системах без виртуальной памяти
  4. Никогда нельзя знать заранее, сколько времени займет выполнение следующей команды процессора

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

К сожалению, по какой-то причине все вышеперечисленные товарищи недостаточно почтительно относятся к MMU, а их знакомство с виртуальной памятью обычно начинается и заканчивается изучением страничной организации памяти и буфера ассоциативной трансляции (Translation Lookaside Buffer, TLB). Самое интересное при этом остается за кадром.
Читать дальше →

Зачем на самом деле нужен мозг

Reading time10 min
Views52K
В продолжение предыдущего топика "Как на самом деле работает мозг". На написание данного поста меня побудила, с одной стороны, замечательная книга «Grooming, Gossip, and the Evolution of Language» Робина Данбара (Robin Dunbar), а с другой — очередная порция «полезных» и «умных» советов в GTD и других блогах.

Для затравки — небольшая логическая задачка. Дан набор карточек; на каждой из них на одной стороне написана буква, на другой — цифра.
На столе лежат четыре карточки: «А», «Д», «5» и «6». Вам говорят: если на карточке (из числа лежащих на столе) на одной стороне гласная, то на обороте — чётная цифра. Какие из карточек достаточно перевернуть, чтобы однозначно подтвердить или опровергнуть это утверждение?

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

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

Information

Rating
Does not participate
Works in
Date of birth
Registered
Activity