Pull to refresh
34
0.1
ionicman @ionicman

User

Send message

Пишем драйвер для USB девайса. Pipe 0: что такое usb?

Reading time3 min
Views24K
Случилось так, что пришлось мне писать с нуля драйвер для usb дисплея под windows. Имея возможность — расскажу о деталях столь занимательного процесса.
image

USB – это simple

Несмотря на то, что написание драйверов считается достаточно трудным, в сравнении с прикладным программированием – и в этом низкоуровневом мире программисты не были обделены вниманием, большим шагом в упрощении создания драйверов стала разработка шины usb.
Итак, почему же шина usb так удобна, и что скрывает за собой слово Universal в расшифровке аббревиатуры.
Читать дальше →

Генерируем QR-код на PHP

Reading time2 min
Views82K

QR-code, уже давно распространен повсеместно, во всех сферах человеческой жизни. Вроде такая популярная вещь, а нормальной библиотеки (Open Source) на PHP — нет. Товарища deltalab, очень напрягла эта проблема и он решил переписать имеющиеся в наличии С библиотеки ibqrencode от Kentaro Fukuchi, на более привычный ему язык PHP.
Читать дальше →

Обеспечение качества программного продукта

Reading time4 min
Views11K
Дисциплина «Метрология программного обеспечения» входит в учебный план подготовки дипломированных специалистов по направлению 654600 — «Информатика и вычислительная техника» по специальности 220400 — «Программное обеспечение вычислительной техники и автоматизированных систем». Дисциплина изучает проблемы оценки метрических характеристик качества ПО на этапах от разработки спецификаций до завершения отладки и тестирования программного продукта. В курсе рассматриваются критерии, характеристики и метрики качества ПО; особый упор делается на характеристики корректности, надежности и сложности программ. Изучаются формальные модели и методы оценки как статических, так и динамических характеристик качества ПО, позволяющие на различных стадиях разработки выявлять просчеты и дефекты программного изделия. Рассматриваются инструментальные средства поддержки и автоматизации измерения характеристик ПО.
Далее по тексту будет находится краткий обзор инструментов с помощью которых можно анализировать различные характиристики в приложениях созданных на PHP. Данный материал появился на свет в результате некоторых экспериментов в области непрерывной интеграции, и должен был являться частью статьи про непрерывную интеграцию (спойлерить пока не буду, боюсь сглазить) все в том же РНР, но я решил все-таки выделить его в самостоятельный обзор, так как возможно, в последующих статьях я буду ссылаться на него, а так же надеюсь узнать об аналогичных инструментах еще не попавших мне на глаза. Некоторые инструменты уже были рассмотрены достаточно подробно, но тем не менее полного списка всех доступных еще не было.
Читать дальше →

Введение в разработку USB периферии

Reading time4 min
Views50K
Последние полгода я участвую в разработке первого в своей жизни USB-устройства и прикладного ПО к нему, и сейчас хочу поделиться своим пониманием того, как там всё работает: микроконтроллер, драйвер, прикладное ПО. Также затрону вопрос о выборе идентификаторов VID/PID. Список полезных ссылок для желающих более подробно разобраться в теме прилагается.
Читать дальше →

Пишем игры для Windows Phone

Reading time8 min
Views3.7K

Не так давно публике была представлена платформа Windows Phone. Платформа очень интересная в плане разработки, т.к. присутствует поддержка .Net Framework, мультизадачность и XNA Framework, причем отличия у XNA от десктопной версии минимальны.

Вначале ложка дегтя: выяснилось, что пока на Windows Phone не будет полноценной поддержки собственных шейдеров, но обещается ряд предустановленных с широкими возможностями настройками. Что-ж, не будем огорчаться, всему свое время.
Для работы нам понадобится Windows Phone Developer Tools
Читать дальше →

К вопросу о кроссбраузерных Data URI

Reading time8 min
Views9.9K
В погоне за оптимизацией сайтов захотел уменьшить количество запросов, не в ущерб размерам оптимизированных файлов.
Цель — передавать в одном файле изображения разных форматов, с разными настройками оптимизации.
Как средство, выбрал data uri и gzip'нутый css файл. Однако IE с data uri работают из рук вон плохо. Но в них есть mhtml. Существовавшая реализация не отвечала моим требованиям, т.к. приходилось 1 файл передавать два раза — раз для IE, в mhtml, и второй для всех остальных, в data uri. В поисках решения наткнулся на статью bolk'а, где описывалось решение для формата jpeg и некоторые теоретические выкладки для gif и png. После почти трехнедельного раскуривания манов мне удалось реализовать решение для gif и png и автоматизировать процесс для всех трех форматов.
ознакомиться

Хабраэффект глазами сервера или почему не стоит апачем раздавать статику

Reading time3 min
Views3.3K
В статье я расскажу впечатления от хабраэффекта наблюдаемом на личном сервере.



В ней не будет ничего нового для тех, кто давно занимается вебом, а особенно для администраторов решавших вопросы защиты от DDOS.
Просто небольшая заметка о том, как я наблюдал хабраэффект.
Читать дальше →

Redis — продвинутое key-value хранилище. Опыт применения в нагруженных проектах

Reading time2 min
Views7.8K
Мы уже пол года успешно используем Redis в своих highload проектах. За это время было выработано много удачных решений на Redis для задач, с которыми сталкиваются разработчики большинства крупных проектов. Примерами этих решений я и хотел бы поделиться на предстоящей DEVCONF, чтобы на практике показать возможности, преимущества и слабые стороны Redis.
Содержание доклада...

Русский перевод ролика про Аккордеон

Reading time1 min
Views700


(пиратка)

И наши 15 секунд славы (Стив Джобс рассказывает про аккордеон и все смеются):



Сообщество называется «Я пиарюсь», поэтому пропиарюсь: есть русская версия аккордеона для айфона.

Скачать Мини-Аккордеон (Русская версия)
itunes.apple.com/ru/app/id366140754?mt=8

Accordéon (для айпада)
itunes.apple.com/us/app/accordeon/id364741802?mt=8

Статический анализ Си++ кода и новый стандарт языка C++0x

Reading time18 min
Views6K
Аннотация
Введение
1. auto
2. decltype
3. Ссылка на временный объект (R-value reference)
4. Правые угловые скобки
5. Лямбда-функции (Lambdas)
6. Suffix return type syntax
7. static_assert
8. nullptr
9. Новые стандартные классы
10. Новые направления в развитии статических анализаторов кода
Заключение
Библиографический список

Аннотация


В статье рассмотрены новые возможности языка Си++, описанные в стандарте C++0x и поддержанные в Visual Studio 2010. На примере PVS-Studio рассмотрено, как изменения языка отразятся на инструментах статического анализа кода.
Читать дальше →

Логорама (лучший короткометражный анимационный фильм)

Reading time1 min
Views5.7K
Недавно прошла 82-я церемония вручения всем известной премии «Оскар». Все удостоившиеся наград фильмы вы, скорее всего, уже видели. А короткометражный мультфильм «Логорама» говорит вам о чем-нибудь? Мне ни о чем не говорил, пока не рассказал друг.

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

Маркировки пост

Reading time5 min
Views67K
Как правило, если моделям устройств производитель не дает уникальных имен, то в их маркировке можно найти какую-либо закономерность.

image

Сегодня расскажу пару слов о имяобразовании некоторых устройств от компания ASUS, в частности – нетбуков и ноутбуков.
Читать дальше →

Числа Фибоначчи и золотое сечение

Reading time1 min
Views4.2K
На Хабре я уже писал про числа Фибоначчи и золотое сечение. Но не смог удержаться, чтобы не выложить новое видео с новыми примерами этого чуда во многих областях нашей жизни.

Какие бывают META теги и зачем они нужны

Reading time7 min
Views267K

META-теги


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

META-теги имеют два возможных атрибута


— <META HTTP-EQUIV="имя" CONTENT="содержимое">
— <META NAME="имя" CONTENT="содержимое">
META-теги должны находиться в заголовке HTML-документа между <HEAD> и </HEAD> (особенно это важно для документов, использующих фреймы).

Стандартом HTML 4.01 значения и имена мета-тегов НЕ оговариваются, поэтому мы будем рассматривать те значения, которые уже устоялись в интернете и используются чаще других.
подробнее о META тегах

mod_rewrite: Просмотр списка правил только один раз

Reading time1 min
Views6.8K
С mod_rewrite есть одна проблема, об которую набиты уже наверное 15 миллионов шишек: он просматривает список правил снова и снова, пока URL удается хоть как-то изменить.

Очень часто получаеются и бесконечные циклы(например добавление расширения — оно добавляется снова и снова, если специально регэкспом не ограничить), над которыми с непривычки приходится поломать голову. Все надежды на модификатор [L] тщетны — он лишь сразу запускает следующую иттерацию обработки. Да и без бесконечного цикла лишние иттерации скорости работы не добавляют :-)

Хочу поделится достаточно простым и универсальным средством борьбы с такой особенностью, который обнаружил только-что :-)

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

ASA: заморочки трансляции сетевых адресов. Часть 1. Динамические трансляции

Reading time7 min
Views23K
Трансляция сетевых адресов (Network Address Translation, NAT) — это подмена какого-либо адреса или порта в пакете. Она, как правило, требуется на границе между сетью компании и провайдером Интернет. Однако, это далеко не единственная задача. Рассмотрим несколько типичных задач и способы решения при помощи межсетевого экрана ASA.

Для начала определимся с терминами. Как вы уже знаете, на ASA при помощи сравнения уровней безопасности интерфейса-источника и интерфейса-назначения легко определяется направление «наружу» и «внутрь» межсетевого экрана (ситуацию с одинаковыми уровнями безопасности рассмотрим отдельно).
Обычно разделяют внутреннюю (inside) и внешнюю (outside) трансляции. Внутренняя трансляция подменяет адрес источника при выходе «наружу» межсетевого экрана, а внешняя трансляция подменяет адрес источника при проходе «внутрь» МЭ.
Читать дальше →

Море волнуется раз ..., или Капча 4D

Reading time2 min
Views4.1K
Как то я уже писал топик про каптчу 3D
Дай карму! :)
А вчера решил слегка переделать, добавить рюшечек и еще одно измерение.
Долго сказка пишется, да быстро дело делается, рушил сделал и вот наваял гиперкуб Капчу 4D.
А посмотреть что получилось можно здесь

Склад бесплатных иконок

Reading time1 min
Views164K
Прошелся по закладкам и образовалась такая толстенькая подборочка ресурсов с бесплатными и качественными иконками, с которой спешу поделиться с тобой %username%!

Iconfinder


image


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

Знай откуда пришел пользователь

Reading time2 min
Views18K
Когда вы открываете свой проект вы начинаете писать о нем везде, в том числе и на хабре.

Сервисы статистики типа Google Analytics дадут вам общую оценку трафика, а именно сколько посетителей пришло с какого ресурса. Можно настроить цели(goals) и отследить регистрации или покупки, но этого часто бывает недостаточно.

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

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

Information

Rating
6,129-th
Registered
Activity