Как стать автором
Поиск
Написать публикацию
Обновить
14
0.1
Дмитрий Земсков @SADKO

Overqualified

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

Распознавание номеров: от А до 9

Время на прочтение9 мин
Количество просмотров171K
Уже пару раз на Хабре возникали дискуссии на тему того, как сейчас работает распознавание номеров. Но статьи, где были бы показаны разные подходы к распознаванию номеров, на Хабре пока не было. Так что здесь попробуем разобраться, как все это работает. А потом, если статья вызовет интерес, продолжим и выложим работающую модель, которую можно будет поисследовать.

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

Транзакционная память: история и развитие

Время на прочтение14 мин
Количество просмотров48K

Определение


Параллельное программирование сложно. При использовании систем с общей памятью не обойтись без синхронизации доступа параллельных процессов/потоков к общему ресурсу (памяти). Для этого используются:
  • блокировки (mutex);
  • алгоритмы без блокировки (lockless, lock-free);
  • транзакционная память.


Транзакционная память — технология синхронизации конкурентных потоков. Она упрощает параллельное программирование, выделяя группы инструкций в атомарные транзакции. Конкурентные потоки работают параллельно1, пока не начинают модифицировать один и тот же участок памяти. К примеру, операции добавления узлов в красно-чёрное дерево (анимация в заголовке) способны работать параллельно в нескольких потоках.
Скрытый текст
/* Move item from one list to another */
int move(list *from, list *to) {
    __transaction_atomic {
        node *n = pop(from);
        push(to, n);
    }
}

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

Создание робота балансера на arduino

Время на прочтение7 мин
Количество просмотров80K
Мне давно не давало покоя желание рассчитать какой-нибудь достаточно сложный механизм и воплотить его жизнь.
Выбор пал на задачу об обратном маятнике. Итог на видео:


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

24-битные I2C датчики давления HP203B и HP206C от Hope Microelectronics

Время на прочтение8 мин
Количество просмотров57K
История началась, когда одна китайская компания по имени Hoperf прислала мне их новые датчики давления, на пробу. В статье описаны основные характеристики сенсоров, фичи, тесты ну и самое главное их результаты в виде графиков и словесных описаний к ним. В конце статьи выложены драйвера для этих датчиков, максимально абстрагированы от аппаратной части.

image

С лева на право: HP206C, HP203B и BMP085 от Bosch для сравнения (в тестах также участвует).
Много картинок..

Алгоритмы обработки видео на процессоре TI DM368, продолжение…

Время на прочтение6 мин
Количество просмотров7.2K
В первой части статьи мы рассмотрели аппаратные блоки, составляющие видеопроцессор TI DM368, a сейчас переходим к обзору наших алгоритмов и коду.



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

Песочница дополненной реальности

Время на прочтение1 мин
Количество просмотров41K


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

Этот проект создан командой специалистов по геологии и визуализации. Система построна на основе камеры Microsoft Kinect, работающей в связке с топографическим ПО и 3D-проектором. Немало времени ушло у авторов, чтобы научить своё детище быстро и точно реагировать на действия детей.
Читать дальше →

Строим motion simulator из палок и синей изоленты

Время на прочтение5 мин
Количество просмотров144K


Обычно первый комментарий к статье про какую-то неведомую технологию выглядит так: «Вы бы перед тем как углубляться сначала рассказали что это и зачем нужно». Итак, сия чуднАя периферия призвана при игре в автомобильные симуляторы имитировать воздействие перегрузок на игрока. В данном случае это обеспечивается наклоном кресла по двум осям, следовательно получился симулятор движения с двумя степенями свободы.
Возьмем в руки напильник и попробуем запилить?

Ratchet 2.0 — самый красивый HTML5-фреймворк теперь дружит и с iOS, и с Android

Время на прочтение2 мин
Количество просмотров68K


Ratchet — так называется HTML5-фреймворк для быстрого прототипирования мобильных приложений, который 1,5 года назад создали те же парни, которые когда-то выпустили Bootstrap.

Инструмент позволяет быстро создать красивый интерфейс мобильного приложения — и дает вам красивые стили и замечательные иконки, согласованные с гайдлайном в зависимости от платформы. Можно сделать прототип, а можно завернуть в PhoneGap и без особых усилий получить сравнимый с нативным интерфейс приложения в продакшене.
Фреймворк очень прост в использовании и прекрасно документирован.

Я являюсь поклонником Ratchet с момента выхода первой версии. Тогда он был доступен только под iOS.
Не так давно вышла вторая версия, которая наряду с iOS поддерживает Android. Ура-ура!
(правда, обратной совместимости с первой версией нет)

Кому интересно про новые возможности Ratchet 2.0 — прошу под кат!
Читать дальше →

Диковинный аналитический зверь Axiom

Время на прочтение10 мин
Количество просмотров12K

Введение


При работе с требованиями возможно применение различных методов их организации: от метода полного хаоса, до интеграции требований с программным кодом (статья Пять уровней зрелости требований). Постепенно улучшая работу с требованиями, обычно, в процесс начинают внедрять различные новые методологии и инструменты. Одним из классов инструментов, призванных упростить работу с требованиями, являются специально обученные «зверьки»: Системы Управления Требованиями (СУТ). Основными возможностями таких систем являются:

  • Создание более простой, чем целый документ, единицы управления проектом (требование). Прочитать и подтвердить одно требование намного проще, чем согласовывать целое Техническое задание.
  • Указание связей между требованиями. Такая возможность позволяет отслеживать изменения в связанных требованиях. Т.е. если что-то изменилось, то далее система может выделять все элементы, связанные с измененным, как подозреваемые на изменение.
  • Выбор представления набора взаимосвязанных требований. При большом количестве требований иногда необходимо представить всю картину их взаимосвязи. Кому-то удобнее просмотреть эту информацию в виде таблицы (матрицы трассировки), кому-то в виде иерархического дерева, кому-то в виде сетевых графиков (статья Системы управления требованиями: что и зачем?).


Среди данных программ есть известные «Монстро-звери», такие как: IBM Rational DOORS, Borland Caliber, Polarion Requirements и др. с большим количеством функциональных возможностей. Такие системы, как правило, являются хорошо зарекомендовавшими себя, но дорогостоящими. Однако среди данного перечня есть маленькие, бесплатные, малоизвестные, но очень полезные «зверьки» типа Axiom.

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

Программирование на MegaBloks

Время на прочтение2 мин
Количество просмотров27K
image

Работая с детьми, понимаешь что программирование, конструирование и прочий STEM можно спокойно начинать с 3 лет. Для этого не потребуется никакого оборудование — детское воображение заменит любой супер-гипер-интерактивный девайс. Главное, желание родителей работать с ребёнком.

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

Вспомнить всё: нейропрограммирование для дошкольников

Время на прочтение2 мин
Количество просмотров41K


Для ребёнка, внимание к собственной памяти также важно как и для взрослого человека. Фокус в том, как показать человеку, который ещё не умеет толком считать до 5, что у него есть такая вещь как память и что она делает.

Поделюсь собственным опытом, который некоторые знакомые назвали опасными экспериментами с детской психикой. Что ж, в этом и есть фишка родительства — ты можешь экспериментировать с детской психикой, тем более, это в любом случае происходит.

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

Системы типа DoubleClick позволяют идентифицировать до 90% пользователей

Время на прочтение1 мин
Количество просмотров48K


Еще в декабре прошлого года появились документы, которые раскрывали некоторые особенности работы специалистов злополучного агентства NSA. Оказалось, что работники этого агентства могли без особых проблем отслеживать пользователей Сети, используя куки системы DoubleClick.

Сейчас появилась публикация от команды специалистов Принстона, где утверждается, что для отслеживания пользователей даже не нужны возможности NSA. К примеру, команда специалистов Принстона смогла идентифицировать до 90% пользователей, отслеживая трафик систем типа гугловской DoubleClick.

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

Поддельные аудиофильские операционные усилители — OPA627

Время на прочтение2 мин
Количество просмотров122K
Покупая всякую всячину на ebay, я совершенно случайно наткнулся на OPA627. Это довольно старый, популярный и качественный операционный усилитель, который иногда используют в усилителях аудиофилы (и не только). Однако меня смутила цена — у производителя (Texas Instruments / Burr Brown) они по 16-80$ (в зависимости от исполнения), а на ebay их продавали по 2.7$, включая доставку.

Сразу ясно, что там что-то не то, но интересно было узнать, что именно. Заказал 1шт, а для сравнения — OPA627 в металлическом корпусе за 5$, явно откуда-то выпаянную. Результаты сравнения внутренностей — под катом.
Читать дальше →

Микрокомпьютер Module MB 77.07 — русский ответ Raspberry Pi

Время на прочтение10 мин
Количество просмотров112K


Читая новости о запрете на поставку электронной компонентной базы из США для отдельных производителей в РФ, мы решили рассказать об одноплатном микрокомпьютере Module МВ 77.07, который был разработан в российском научно-техническом центре «Модуль» на базе одного из наиболее производительных российских процессоров архитектуры ARM. Также мы рассмотрим установку Linux-дистрибутива Debian на этот микрокомпьютер.
Читать дальше →

Использование проявщика RAWTherapee в прикладных задачах фотолюбителя

Время на прочтение8 мин
Количество просмотров62K

В предыдущих статьях я поднимал тему о возможности эффективного использования связки RAWTherapee + GIMP в практике фотолюбителя, не желающего связываться со взломанными продуктами или переплачивать за отчасти ненужную функциональность Adobe Photoshop. Применение RAWTherapee во многих случаях предпочтительнее, чем использование встроенной утилиты Adobe Camera Raw, и во всех известных мне случаях обеспечивает более быстрый и как минимум не менее качественный результат, чем поставляемые с камерами конвертеры. (Исключением является здесь, пожалуй, Olympus Viewer, чудовищно медленный, но зато способный в полной мере дать пользователю прочувствовать знаменитую «магию фирменных цветов Olympus». О том, как этого достигнуть с использованием RAWTherapee, будет сказано чуть ниже.)
Читать дальше →

StarCraft дизассемблировали и запустили на ARM

Время на прочтение1 мин
Количество просмотров63K


Один из участников проекта OpenPandora провёл реверс-инжиниринг игры StarCraft и портировал её на ARM-платформу. Ему удалось сделать это, несмотря на отсутствие исходного кода в открытом доступе.

В репозитории выложен перекомпилированный бинарник, для установки которого на игровую приставку «Пандора» нужно еще скопировать несколько файлов с ПК-версии игры.
Читать дальше →

Как я случайно отрыл для себя безлимитный(!) интернет на usb модеме от мтс, за минимальную плату

Время на прочтение2 мин
Количество просмотров243K

Хвастовство


На данный момент, я свободно пользуюсь всеми прелестями полностью безлимитного интернета на скорости ~1-9 Мбит/с (зависит от загруженности сервера) за 300 рублей в месяц, чего не мог позволить себе, буквально неделю назад.
Теперь не только моя «симкарта» довольна от затрат на интернет, а наконец то и конечный пользователь этого интернета, т.е. я. Справедливость торжествует, но думаю скоро прикроют лавочку.
Читать дальше →

«Всем привет в этом чате» — мой любимый ответ на массовую рассылку

Время на прочтение3 мин
Количество просмотров125K
Примерно раз в месяц приходят письма с несколькими сотнями получателей. За праздники их вообще собралась целая стопка. Чаще всего — это поздравления с праздниками или «прощальные письма» менеджеров рекламных агентств. Общий смысл: «Здравствуйте друзья, я ухожу на новое место работы, вот Вася, он за меня».

Единственный прогар – люди просто сливают всю свою базу клиентов. Ну, конечно, в прощальных письмах это может быть и намеренным, но…

В общем, я всегда нажимаю на «Ответить всем» и пишу вот так:

image

И дальше начинается веселье.
Читать дальше →

DDOS любого сайта с помощью Google Spreadsheet

Время на прочтение3 мин
Количество просмотров254K
Google использует своего «паука» FeedFetcher для кэширования любого контента в Google Spreadsheet, вставленного через формулу =image(«link»).

Например, если в одну из клеток таблицы вставить формулу
=image("http://example.com/image.jpg")
Google отправит паука FeedFetcher скачать эту картинку и закэшировать для дальнейшего отображения в таблице.

Однако если добавлять случайный параметр к URL картинки, FeedFetcher будет скачивать её каждый раз заново. Скажем, для примера, на сайте жертвы есть PDF-файл размером в 10 МБ. Вставка подобного списка в таблицу приведет к тому, что паук Google скачает один и тот же файл 1000 раз!
=image("http://targetname/file.pdf?r=1")
=image("http://targetname/file.pdf?r=2")
=image("http://targetname/file.pdf?r=3")
=image("http://targetname/file.pdf?r=4")
...
=image("http://targetname/file.pdf?r=1000")

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

Атакующему даже необязательно иметь быстрый канал. Поскольку в формуле используется ссылка на PDF-файл (т.е. не на картинку, которую можно было бы отобразить в таблице), в ответ от сервера Google атакующий получает только N/A. Это позволяет довольно просто многократно усилить атаку [Аналог DNS и NTP Amplification – прим. переводчика], что представляет серьезную угрозу.



С использованием одного ноутбука с несколькими открытыми вкладками, просто копируя-вставляя списки ссылок на файлы по 10 МБ, паук Google может скачивать этот файл со скоростью более 700 Мбит/c. В моем случае, это продолжалось в течение 30-45 минут, до тех пор, пока я не вырубил сервер. Если я все правильно подсчитал, за 45 минут ушло примерно 240GB трафика.
Читать дальше →

Использование DSP звуковой платы SB Live! на пользу радиолюбителей (KX Driver's) — Часть [1/2]

Время на прочтение24 мин
Количество просмотров91K

Эксперименты по обработке звука аппаратными средствами SB Live и их возможное применение для работы в эфире. Заметка включает в себя инструкцию по применению альтернативных драйверов KX-Project, примеры применения и выводы по возможности реального применения. Период написания статьи 2006-2007 год, размещена была на страничке ныне уже не существующей коллективной радиостанции (RK3MXH). Авторство мое.

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

Под катом очень много текста и рисунков.
Читать дальше →

Информация

В рейтинге
6 053-й
Откуда
Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность