Как стать автором
Обновить
2
0
Iurii Ogiienko @JuriyOgijenko

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

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

Распознаем текст, используя расстояние Хэмминга

Время на прочтение6 мин
Количество просмотров39K
На данную статью меня натолкнула статья Alex’а Поветкина — «Распознавание образов методом потенциальных функций»

Итак, мы собираемся написать программу на Delphi (я использую версию 6), способную перевести символы с картинки в текст. Задача довольно популярная в интернете, и на каждый пост «Хочу реализовать распознавание символов!!! Помогите» самые частые ответы «почитай в интернете» либо «не берись, используй файнридер» и тому подобное.

Я, как и многие другие, начал с изучения основных алгоритмов. Конечно, такие монстры как FineReader тратят на алгоритмическую составляющую огромные деньги, и их секретов нам не узнать, но прочей информации было найдено приличное количество, чтобы понять основные методы. Но начнем издалека.
Читать дальше →

Rounded corners HTML+CSS+jQuery

Время на прочтение1 мин
Количество просмотров1.2K
Закругленные уголки опять волнуют хабравчан, за последние 24 часа наблюдал 2 интересных топика с различными способа закругления этих самых уголков. Решил показать то, чем пользуюсь сам.
Сразу хочу оговориться, что я не претендую на уникальность данного способа, но додумался до него сам.
image
Читать дальше →

Simplify.js — JavaScript-библиотека для упрощения ломаных линий

Время на прочтение2 мин
Количество просмотров10K
Рад представить вашему вниманию еще одну крохотную, но полезную open-source-утилиту своего авторства — Simplify.js.



Simplify.js — очень быстрая реализация упрощения ломаных линий на JavaScript. Изначально написав ее для Leaflet (библиотеки для интерактивных карт), после небольшого эксперимента по оптимизации захотелось выпустить ее в качестве отдельной библиотеки без зависимостей, которую можно использовать как в браузере, так и на серверных платформах, таких, как Node.js, и применять и для 2D, и для 3D-точек.

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

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

Какими будут контроллеры в PR2?

Время на прочтение7 мин
Количество просмотров648
Привет! Продолжаем следить за развитием фреймворка Symfony 2. В данном топике попытаемся проследить за дискуссией: каким будет механизм контроллеров в новом релизе Symfony 2 (PR2). Под катом 6 вариантов построения интерфейса контроллера модели MVC.
Читать дальше →

Новости проекта Sphinx, весна 2010

Время на прочтение2 мин
Количество просмотров998
Год 2010 получается довольно занятой в целом, весна случилась урожайная на конференции в частности. Поэтому писать в блог на Хабр регулярно получается плохо, но как минимум пачкой новостей и ссылок хочется поделиться (уже пора!). Краткая сводка —
  1. с начала года прошло 3 конференции (Confoo, MySQL UC, RIT++) с докладами про Сфинкс, доступны слайды;
  2. в течение месяца предстоит еще 2 (DORS/CLUC, DevConf), где запланированы доклады и (внимание, нечто новое) мастерклассы про все тот же Сфинкс;
  3. полтора месяца назад запустили (англоязычный) блог, пытаемся регулярно писать интересное туда, пока даже получается (сам очень удивляюсь);
  4. RT апдейты дозрели до публичного релиза настолько, что релиз задерживают не они; SVN версия местами крутится в продакшне, и даже почти что не падает (удивляюсь еще сильнее);
  5. самозародились плагины для WordPress, Zend Framework (не наши).
Подробности под катом!
Читать дальше →

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

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

Привязка модели данных к представлению на javascript

Время на прочтение7 мин
Количество просмотров3.1K
Я думаю многие пользуются DataBinding`ом в .NET, она же привязка данных. Она позволяет, при выделенной модели данных и независимом визуальном представлении, забыть о синхронизации данных с формой. Привязав один раз properties модели к элементам представления, мы избавляемся от десятков обработчиков onChange и подобных для изменения полей модели, а в случае изменения поля вне gui-интерфейса (например синхронизация модели с базой), мы не будем мешать уровни абстрации, чтобы обновить textBox.text. Давайте данные будут отдельно, gui отдельно. Плюс мы получаем наглядный, легко переносимый код на asp.net или даже на другой язык/платформу.

 databinding

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

Пишем наше первое приложение на python for s60

Время на прочтение9 мин
Количество просмотров3.9K
imageВ прошлом топике, я постарался разогреть ваш аппетит, показав на что способен python for s60. Сейчас же я вам покажу, насколько легко писать приложения. Мы пройдем весь путь, начиная от выбора и установки необходимого софта, до упаковки программы в sis пакет.

Оговорюсь сразу: в этой статье мы будем разбирать пример, работающий на symbian 9.4 (смартфоны с тачскрином), хотя вы без особого труда сможете переделать пример и под более ранние версии symbian. Кроме этого, рассказ будет вестись с учетом работы на windows. Пользователи других операционных систем, без проблем смогут подобрать необходимый софт под свою OS.

Кстати, у программы, которые мы разработаем в этом топике, есть аккаунт в twitter :)
Интересно? Читаем дальше

GMate — набор полезных расширений для gedit

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

Редактором по умолчанию в GNOME и, следовательно, Ubuntu является gedit. И в отличии от Блокнота в Windows он полезен :), однако выглядит он всё таки очень простым, даже после установки пакета gedit-plugins. Но на самом деле это довольно милый и хорошо расширяемый редактор, нужно просто добавить воды расширений.

GMate смотрит в сторону прекрасного TextMate из Mac OS X и содержит в себе подборку самых вкусных расширений, сниппетов, тем. Изначально, GMate создавался именно для Ruby-разработчиков, но пригодиться и для других разработчиков.

Если Вы любите GNOME и Ruby, то просто обязаны его поставить :).
Читать дальше →

Архитектура системы приема электронных платежей на сайте

Время на прочтение6 мин
Количество просмотров13K
Для многих проектов наступает момент, когда хочется, чтобы сайт приносил прибыль.
И не только в виде оплаты рекламных баннеров или контекстной рекламы, но и в виде денежек от своих посетителей.

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

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

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

Удобная сводка автомобильной информации

Время на прочтение1 мин
Количество просмотров701
Привет, друзья!
С тех пор как я приобрел автомобиль, я стал интересоваться околоавтомобильной жизнью,
посещать тематические ресурсы, следить за автоновостями. Словом, присоединился к общине :)
Тогда же я для себя отметил, что мне приходится получать автоинформацию из совершенно разных источников, которые было бы ну очень удобно объединить. Так возникла идея создания хорошего агрегатора автомобильной информации.
Читать дальше →

8 полезных регэкспов с наглядным разбором

Время на прочтение2 мин
Количество просмотров273K
О мощи и гибкости регулярных выражений написано много, и их использование давно уже является стандартом для различного рода операций над текстом. Пожалуй, чаще всего регэкспы работают при валидации вводимых данных — здесь им практически нет альтернативы, если не считать громоздкий циклический разбор с кучей неочевидных проверок. Начнём с самого простого:

1. Часть ЧПУ (человекопонятный URL)


По сути, слово с дефисами.

Паттерн: /^[a-z0-9-]+$/
short_url

Примеры посерьёзнее

pv — маленькая, но очень полезная утилита

Время на прочтение2 мин
Количество просмотров84K
Один мой друг сказал по поводу pv следующее «Я админю семь лет, мне нужна была эта тулза десятки раз, а я даже не знал что она существует». В размышлениях над тем как заполучить инвайт на Харбе, я набрал в поиске pv. И ничего не нашел.
Читать дальше →

Какова Ubuntu в сравнении с Mac OS X?

Время на прочтение15 мин
Количество просмотров57K
Совсем не обращая внимания на Windows, Марк Шаттлворт заявил, что OS X является операционной системой, которую необходимо опередить. Сейчас, после выхода Ubuntu 9.04, мы можем взглянуть, какова она в сравнении с OS X.

Разбирая историю соревнований между десктопным Linux и Windows, основатель Ubuntu Марк Шаттлворт недавно рассказал журналисту Брюсу Байфилду, что он видит Mac OS X той системой, которую необходимо опередить будущим релизам Ubuntu — в частности, в плане дружелюбности интерфейса и удобства для пользователя. Итак, вышла Ubuntu 9.04, и как она теперь смотрится в сравнении с последними разработками Apple?
Читать дальше →

4 способа как создать блоки одинаковой высоты

Время на прочтение5 мин
Количество просмотров231K
fourmethodsbanner
Раньше, когда все верстали с использованием таблиц, создать колонки одинаковой высоты было очень просто.  Достаточно создать таблицу, например, с 3мя колонками и все они автоматически будут иметь одинаковую высоту.  Но в блочной верстке не все так просто.
В этой статье я расскажу вам о некоторых способах создания колонок равной высоты и о совместимости этих методов с браузерами (включая IE6). Все эти способы описывают создание 3х колоночного макета.
Читать дальше →

TuxOnIce в *ubuntu 9.04

Время на прочтение3 мин
Количество просмотров4.7K
Что такое TuxOnIce? Это проект, ранее называвшийся suspend2, пытающийся сделать быстрый и стабильный hibernate для Linux.
Что такое hibernate? Если вы не знаете, что это, то hibernate = спящий режим (Win XP) = гибернация (гыгы) (Vista). Это запись содержимого физической памяти на жесткий диск и полное выключение компьютера, после которого можно запустить систему и продолжить работу.
Подробнее о Tux On Ice можно почитать на официальном сайте

В этой статье я хочу рассказать, как заставить работать TuxOnIce на популярном ныне дистрибутиве Ubuntu (с его модификациями, естественно).
Надо заметить, что из коробки в Убунте работает hibernate (просто suspend-to-disk), при том достаточно стабильно. Тут описано, как вместо него начать использовать более фичастый TuxOnIce, основной профит от которого — ускорение процесса и возможность наблюдения за происходящим.

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

Автогенерация CSS Sprites

Время на прочтение2 мин
Количество просмотров741
Свершилось. Долгие бессонные ночи не прошли даром и мысль, заявленная Вадимом aka pepelsbey, обрела более-менее физические очертания.

sprites.webo.in (сырая-сырая альфа-версия) — название, собственно, говорит само за себя. Вводим URL CSS-файла — на выходе получаем архив с минимизированным (никакой сортировки селекторов, просто базовая минимизация) CSS-файлом и набором свеженьких спрайтов. Здорово?
Читать дальше →

CUDA: Начало

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

Это первая публикация из цикла статей об использовании GPGPU и nVidia CUDA. Планирую писать не очень объемно, чтобы не слишком утомлять читателей, но достаточно часто.
Читать далее...

Знакомство с Ruby on Rails (часть 2)

Время на прочтение11 мин
Количество просмотров14K
В продолжении статьи ”Первое знакомство с Ruby on Rails” мы научимся работать с базой данных, и создадим каталог статей.
Узнаем как написать плагин, попробуем использовать AJAX и рассмотрим некоторые проблемы при развёртывании приложения на хостинге.

Начнем с базы данных.


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

Первое знакомство с Ruby on Rails

Время на прочтение7 мин
Количество просмотров13K
Ruby on Rails (в дальнейшем просто рельсы) это веб фреймворк, написанный на языке Ruby.
На хабре есть несколько статей о языке, думаю их будет полезно почитать, если возникнут затруднения – читайте википедию, лучшую книгу о языке – Programming Ruby, лучшую книгу о рельсах – Agile Development with Rails, и задавайте вопросы.

Начнем знакомство с установки Ruby и Rails.


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

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность