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


OpenCV: Распознавание номерных знаков

Декабрь 3rd, 2011 by Сергей Тамкович

Распознать номер на машине – тривиальная задача для библиотеки OpenCV. C помощью двух замечательных библиотек (Qt и OpenCV) – набросал программку за пару дней для распознавания номеров на авто. Осталось прикрутить лазерный дальномер, и можно выходить на улицу – выписывать штрафы :)


indent – форматирование Си файлов

Ноябрь 1st, 2011 by Сергей Тамкович

Я люблю порядок и аккуратность – даже когда дело доходит до программирования. Некоторые люди, с умыслом или по незнанию используют секретные методики, снижающие читабельность их кода до нуля. Пару лет назад, взял себе за правило, перед тем как ковырять чужие исходники – прогнать их через замечательную утилиту indent. Разумеется речь идёт о коде частных лиц [...]


OpenCV 2 Computer Vision Application Programming Cookbook

Сентябрь 16th, 2011 by Сергей Тамкович

Книжка OpenCV 2 Computer Vision Application Programming Cookbook изданная индусско-английским издательством packt publishing посвящена кросс-платформенной библиотеке OpenCV. Packt Publishing это конечно не O’Reilly, но книжки издаёт весьма добротные. Не стала исключением и эта. Cookbook – это поваренная книга. Обычно, в таких книгах отсутствуют пространные теоретизирования и объёмные лирические отступления. Как говорится – straight to business. [...]


MinGW + QT + Eclipse

Июль 2nd, 2011 by Сергей Тамкович

Периодически возникает необходимость написать программу для Windows. Обычно для этих целей я использую редактор Vim для Windows и интерпретатор Perl от ActiveState. Всё меняется если необходимо приложение с графическим интерфейсом да ещё и легко переносимое. Дистрибутив Perl и набор необходимых модулей – не самый удобный довесок к вашей программе. В бытность мою студентом, мы, с [...]


Типичные комментарии к коду на С++, выставляемому на ревью

Июнь 7th, 2011 by rius

При разработке ПО командой программистов как правило используется одна из систем контроля версий. Для того, чтобы внести свои изменения в репозиторий, члену команды нужно получить одобрение нескольких авторитетных разработчиков. Они могут подсказать более эффективный вариант или подсказать неочевидные побочные эффекты вашего варианта кода. Часто к первой ревизии изменений разработчик получает комментарии, которые он должен учесть [...]


Анализ core-dump многопоточного приложения с помощью GDB

Март 21st, 2011 by rius

Недавно по работе мне пришлось анализировать core-dump, сброшенный httpd. Поиск нужных команд для gdb занял некоторое время. Для того, чтобы съэкономить время другим, напишу о своем опыте. Итак, мы открыли с помощью GDB core-dump: gdb /path/to/binary –core /path/to/core_file Httpd – многопоточное приложение. Если сделать backtrace для основного потока, скорее всего ничего страшного не увидишь — [...]


Как писать неподдерживаемый код, застрахуй свою работу :)

Февраль 20th, 2011 by Сергей Тамкович

Несколько лет назад, знакомый прислал ссылку на очень смешную статью – How To Write Unmaintainable Code, Ensure a job for life ;-) Статья превзошла все мои ожидания и вот на протяжении нескольких лет я с удовольствием перечитываю её снова и снова. В статье рассматриваются приёмы программирования на языке Си, цель которых состоит в том, что [...]


Kamailio: загружаем много данных с помощью db_mysql

Октябрь 20th, 2010 by Сергей Тамкович

В Kamailio/OpenSIPS, как в любом взрослом проекте, имеется некоторое количество «прокладочных» интерфейсов. Задача этих интерфейсов – унификация. Например, с помощью mem/mem.h унифицирована работа с памятью. Интерфейс предоставляет набор вызовов pkg_malloc/pkg_free для работы с обычной памятью и shm_malloc/shm_free для работы с разделяемой памятью. Благодаря унификации работы с памятью – Kamailio портирован на множество различных платформ. Другим [...]


Kamailio. Функции child_init(rank) и mod_init()

Август 25th, 2010 by Сергей Тамкович

Каждый IP телефонист рано или поздно приходит к мысли, а не написать ли мне свой модуль для Asterisk, ну что бы делал всё что мне нужно быстро и без 2х страниц диалплана? Когда модуль для Asterisk написан, возникает желание написать модуль и для SIP-proxy, например для Kamailio. Программировать под Kamailio, на мой взгляд, несколько сложнее [...]


Мнение о Google V8

Март 11th, 2010 by Сергей Тамкович

Google V8 это высокопроизводительный JavaScript движок распространяемый под лицензией BSD. С недавних пор, компания Google активно продвигает V8, предлагая сторонним разработчикам включать V8 в свои проекты. Изучая вопрос подключения V8 к Asterisk, наткнулся на статью Игоря Сысоева (автора великолепного веб сервера nginx): … Поскольку V8 разрабатывается в первую очередь для Chrome, то это наложило на [...]


Следующая страница →