Pull to refresh
0
Михаил @Kakysha

User

Send message

Решение судоку с помощью веб-камеры в реальном времени

Reading time12 min
Views60K

Предисловие




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

Программа написана с помощью низкоуровневого языка C++, потому что я действительно хотел понять, как же это все работает изнутри. Если вы тоже хотите начать изучение компьютерного зрения, то для этого пригодиться библиотека OpenCV. На CodeProject вы сможете найти несколько уроков по ней. Изображение с веб-камеры получается с помощью исходного кода Вадима Горбатенко (AviCap CodeProject).
Читать дальше →
Total votes 363: ↑360 and ↓3+357
Comments67

Как я заработал $200K на рынке образовательных приложений iOS

Reading time12 min
Views23K
Данную статью хочу приурочить к одновременно выходу второй версии моего приложения Word Wizard и взятию новой отметки в $200 000 в Apple AppStore. Далее я постараюсь поделиться своим опытом и мыслями об образовательном рынке, а также рассказать свою историю успеха. Надеюсь что эта информация будет полезна многим независимым разработчикам. Для тех же кто создает образовательные продукты на платформе iOS моя статья даст возможность оценить рынок приложений в этой сфере.



Собственно начну с продаж и рейтинга, а затем расскажу подробнее про мой личный опыт.
Итак, поехали ...
Total votes 227: ↑202 and ↓25+177
Comments64

RedBeanPHP — еще одна ORM библиотека

Reading time3 min
Views32K
RedBeanPHP logo
На хабре нашел пару упоминаний про эту ORM, да и то давно и в комментариях. Недавно обнаружил, что вышла уже вторая версия. Желающим — вот ссылка на загрузку (GitHub) и на документацию
Цель этой статьи — кратко познакомить читателей с этой ORM-библиотекой.
RedBeanPHP — еще одна ORM-библиотека. Основное ее отличие от коллег, типа Propel или Doctrine, в отсутствии необходимости ручного конфигурирования объектов. Т.е. никаких xml, yml или ini-файлов. RedBenPHP на лету создает таблицы, поля и индексы. Любой объект можно связать с другим. Из БД поддерживаются MySQL, SQLite и Postgres.
Читать дальше →
Total votes 60: ↑55 and ↓5+50
Comments33

Пример ≈двукратного ускорения загрузки шрифта для заголовков из Google Web Fonts, осуществляемого выборкою оптимальной версии его

Reading time6 min
Views16K
[иллюстрация-скриншот]Если на сайт вики-энциклопедии «Циклопедия» забредёт пользователь компьютера, оснащённого современным программным обеспечением Корпорации Microsoft, то тогда взгляд его прежде всего окажется привлечён шрифтом заголовков первого и второго уровня («Циклопедия», «Культура», «Общество», «Наука и техника», «Природа и человек», «Быт»): такой шрифт нынче не часто встречается во Всемирной Паутине (это вы можете без труда смекнуть и самостоятельно, когда сравните фрагмент скриншота, мною справа для того приложенный, с собственным вашим опытом).

Но этот шрифт, господа, да станет всем нам примером того, как не следует оформлять наши заголовки. А угадаете ли, почему это так? Да потому, что шрифт этот — Candara (и это нетрудно увидать воочию: достаточно прибегнуть к расширению «Context Font» или вглядеться в нынешний вики-код заглавной страницы Циклопедии и её подшаблона «Раздел»). Некоторые из нас ужé знают или хотя бы догадываются (а другим достаточно взглянуть в Википедию, чтобы узнать) о том, что Candara — это шрифт эксклюзивный, который встречается только в сравнительно недавних продуктах Корпорации Microsoft, таких как последние Windows (Vista, Windows 7) и Office 2007, да ещё раздаётся в составе Microsoft Powerpoint Viewer 2007 и Microsoft Office Compatibility Pack (в том числе для более ранних систем — для Windows XP, для Windows 2000). Если же на такой сайт забредёт читатель с Линуксом, или Маком, или Андроидом, или Айфоном, или Айпадом — то тогда, сами понимаете, «Кандару» взять ему будет неоткуда — и вид заголовка поневоле станет далеко отличаться от желаемого.

А ведь можно обеспечить единообразное отображение заголовка во всех системах и браузерах; для этого достаточно попросту отгрузить всем читателям один и тот же шрифт. Шрифт можно раздавать с собственного же сайта (добавив продуманные правила @font-face в свой CSS), а можно воспользоваться услугами внешнего хостинга шрифтов — например, услугами коллекции свободных и бесплатных шрифтов «Google Web Fonts», чей красивый новый интерфейс обсуждали на Хабрахабре в конце июня. О ней-то и поговорим под хабракатом.

Что следует сказать по поводу употребления Google Web Fonts при оформлении заголовков?

Читать дальше →
Total votes 99: ↑68 and ↓31+37
Comments76

UniFi — корпоративный Wi-Fi с контроллером, доступный каждому. Первое впечатление

Reading time5 min
Views228K
Здравствуйте, дорогие жители Сети.
Спешу поделиться с вами своими впечатлениями о новом продукте для корпоративного сегмента — UniFi от компании Ubiquiti (Юбиквити). Если кто не в курсе — коротко о Ubiquiti я рассказал в предыдущем посте, поэтому сразу к делу.
Несмотря на всеобщее проникновение Wi-Fi в нашу жизнь, рынок корпоративного Wi-Fi до сих пор контролировали буквально пара-тройка производителей. Их системы стоят многие десятки тысяч долларов, причем значительную часть стоимости составляет именно контроллер — мощный и умный. Ubiquiti со свойственной им бесцеремонностью вломилась на этот рынок, предложив систему с ценой в $199. Это цена точки доступа с контроллером. То есть теперь любая организация может позволить себе нормальный корпоративный Wi-Fi. Прежде чем рассказать о том что это такое — UniFi, сделаю небольшое лирическое отступление и расскажу чем же отличается домашний Wi-Fi от офисного.
Читать дальше →
Total votes 34: ↑33 and ↓1+32
Comments31

Рейтрейсер на JavaScript

Reading time8 min
Views21K
TitleImage

Знаете ли вы что такое рейтрейсер? Это программа которая рисует трёхмерную сцену на экране так, как её бы увидели вы. Конечно, не совсем так, но некоторые рейтрейсеры умеют рисовать очень правдоподобные картинки, например как в "Аватаре".

Идея рейтрейсера очень простая и в этой статье я раcскажу как устроен этот алгоритм и даже напишу его на JavaScript. Картинки и пример прилагаются.

Читать дальше →
Total votes 249: ↑247 and ↓2+245
Comments102

Управление устройствами на 220в через LPT порт (полный цикл создания)

Reading time7 min
Views101K

Предыстория


После прочтения статьи на Хабре об управлении лампой через интернет, появилась идея управлять освещением дома с компьютера, а так как у меня уже настроено управление компьютером с сотового телефона, то это значит, что и светом можно будет управлять с того же телефона. После демонстрации статьи одному из моих коллег по работе, он сказал, что ему это как раз и нужно. Так как он часто за фильмами, которые смотрит на компьютере, засыпает. Компьютер через некоторое время после окончания фильма тоже засыпает и отключает монитор, а вот свет в комнате остается включённым. Т.е. было решено, что вещь это полезная, и я начал собирать информацию и детали для этого чуда.
Остальная информация под habracut (осторожно много картинок — трафик).
Читать дальше →
Total votes 154: ↑148 and ↓6+142
Comments91

Face Detection на джаве — это просто!

Reading time1 min
Views28K
Спешу поделиться с вами своею радостью :) Столкнулся я тут недавно с задачкой — нужно было определить местонахождения лиц на картинке.

Зачем это нужно — другой вопрос: мне, лично, понадобилось для создания модели распределения внимания по картинке, а кому-то, может быть, нужно для того, чтобы людей как в фейсбуке автоматически на групповой фотографии выделять.

Алгоритмы, в принципе, неплохо известны. Одним из лучших является алгоритм Viola & Jones, но поиск готовых имплементаций результатов не принёс. Было расстроился, но обратил внимание на замечательную нативную библиотеку — OpenCV. Библиотека ценна не только реализацией основных алгоритмов компьютерного зрения, но тем, что встречается решительно на всех платформах.

И что же вы думаете? Одним из первых в гугле выпадает вот такой замечательный проект JNI интерфейса к OpenCV!

Несколько минут закачки, десяток минут чтения документации с установкою программы, и ещё десяток — написание теста. А потом, и вот этими четырьмя строчками, просто берём и распознаём на картинке лица!

OpenCV cv = new OpenCV();
cv.loadImage("test.jpg", 300, 400);
cv.cascade("haarcascade_frontalface_default.xml");
Rectangle bounds[] = cv.detect();

Читать дальше →
Total votes 71: ↑68 and ↓3+65
Comments76

Silverlight + Augmented reality + Shaders

Reading time6 min
Views3K
Привет всем.

Я люблю работать с Silverlight, и вот недавно натолкнулся на Дополненную реальность с использованием Silverlight. Про неё и на Хабре уже писали, и в блогах довольно много написано, но я всё же немного повторюсь. Сама идея дополненной реальности интересна, но я хотел использовать её как-то необычно. И вот недавно руки дошли до изучения пиксельных шейдеров. Стало интересно попробовать соединить это вместе.

Если интересно, что из этого получилось, то Добро пожаловать под кат:
Читать дальше →
Total votes 52: ↑37 and ↓15+22
Comments14

Основы Linux от основателя Gentoo. Часть 1 (1/4): BASH, основы навигации

Reading time6 min
Views245K

Предисловие


Об этом руководстве


Добро пожаловать в первую из четырех частей обучающего руководства по основам Linux, разработанного чтобы подготовить вас к сдаче экзамена Linux Professional Institute 101. В нем вы познакомитесь с bash (стандартной оболочкой командного интерпретатора в Linux), узнаете о большинстве возможностей таких стандартных команд Linux, как ls, cp и mv, разберетесь в инодах, жестких и символьных ссылках, и многом другом. К концу этого руководства у вас сформируется некий фундамент знаний, и вы будете готовы к изучению основ администрирования Linux. К концу всего курса (8 частей), у вас будет достаточно навыков, чтобы стать системным администратором Linux и пройти сертификацию LPIC Level 1 от Linux Professional Institute, если конечно захотите.



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


Читать дальше →
Total votes 150: ↑130 and ↓20+110
Comments50

PixelBuzz.tv — экспериментируем с пикселями

Reading time1 min
Views787


Современное кино и телепередачи — это сплошные многомиллионные бюджеты, скандалы, знаменитости и сумасшедшие спецэффекты. В PixelBuzz.tv все наоборот. В нашем распоряжении — 8 цветов, 4 кадра и ограниченный набор пикселов. Каждый может стать режиссером и сделать свой пиксельный ролик, отправив его в общий канал. Все ролики перемешиваются и в случайном порядке отдаются зрителям.
Читать дальше →
Total votes 154: ↑141 and ↓13+128
Comments226

Ajenti — полгода спустя

Reading time2 min
Views11K
Казалось бы, не так давно я представлял Хабру свой проект.
Откликнулось много людей, некоторые пришли и оставили свой след в исходниках и истории коммитов, некоторые исчезли, кто-то все еще с нами.
Я хочу выразить всем им свою благодарность, потому что без них у меня вряд ли что-нибудь получилось.
А сегодня я наконец выпускаю альфа-версию проекта.

Под катом вас ждет много интересного, а сейчас дохабракатный мотивационный скриншот:

image
Читать дальше →
Total votes 250: ↑244 and ↓6+238
Comments165

Дешевые SMS для интересных проектов и хороших людей

Reading time1 min
Views2.3K
Представляю вашему вниманию сервис для отправки SMS через HTTP/HTTPS API.

LittleSMS.ru

Для кого предназначен сервис?

  • Интернет-магазинам (уведомление о новом заказе).
  • Небольшим проектам с системой уведомлений по SMS.
  • Сисадминам (уведомления о состоянии сервисов, оборудования и т.п.).
  • Вам? Напишите, обсудим.
Читать дальше →
Total votes 123: ↑104 and ↓19+85
Comments119

Создание расширения для Google Chrome

Reading time8 min
Views118K
Тема создания расширений достаточно хорошо раскрыта в сети, есть множество статей, документации на эту тему. Но я не нашел ни одного ресурса, который бы описал процесс создания расширения от начала до конца. Я собираюсь исправить эту ситуацию, и рассказать о том как создать расширение, как хранить, читать настройки, как добавить поддержку нескольких языков.

Для работы с расширениями вам понадобится переключить канал обновлений на Dev или Beta.
Читать дальше →
Total votes 98: ↑93 and ↓5+88
Comments28

Советы по отладке в Visual Studio 2010

Reading time8 min
Views73K
Это двадцать шестая публикация в серии публикаций о VS 2010 и .NET 4.

Сегодняшняя публикация рассматривает некоторые полезные советы по отладке которые вы можете применять в Visual Studio. Мой друг Скот Кэйт (Scott Cate) (который опубликовал в блоге дюжину великолепных советов и трюков по VS) недавно обратил мое внимание на несколько хороших советов о которых не знает много разработчиков использующих Visual Studio (даже при том, что многие из них работают с ней уже давно с более ранних версий).
Читать дальше →
Total votes 70: ↑56 and ↓14+42
Comments31

Улучшаем формы с jqTransform

Reading time1 min
Views5.8K
Если у вас не хватает времени привести в порядок формы на вашем сайте, в помощь придет небольшой плагин jqTransform.
Подключите его и скормите форму. На выходе получится визуально более приятная форма с подсветкой полей в фокусе.
Читать дальше →
Total votes 56: ↑29 and ↓27+2
Comments48

Генерирование изображений-заглушек

Reading time3 min
Views56K
Сегодня мне кинули ссылку на прикольный сервис для быстрого генерирования изображений-заглушек. Может пригодиться для html-верстки. На мой взгляд, это удобно тем, кто и так использует заглушки — экономит время при вёрстке, т.к. сами заглушки уже готовы. Можно цвета/размеры подбирать, меняя только числа/буквы в коде, не отвлекаясь на сам файл картинки — и сразу видеть эффект. И сами размеры видеть написанными, если нужно, чтоб к коду не возвращаться для проверки. Или вместо размеров можно текст добавить, чтоб всегда знать, для чего эта заглушка (типа «Бан(н)ер» или там «Лого», или «Фотография»).

На сервисе не нужна регистрация — и вообще на сайт можно не заходить, чтобы его использовать. Пишете сразу у себя в коде, например:
<img src="http://placehold.it/350x50" />
и получаете:


Update. Благодаря усилиям k0rv1n, найден вариант этого сервиса, только лучше :)
Во-первых, там поддерживается кириллица. Во-вторых, там даны ссылки на исходники для разных языков.
Автор dummyimage.com — тот же Russell Heimlich, что и у placehold.it. У placehold.it есть ещё один автор, но будем считать, что он делал дизайн (дизайн там правда круче, но видимо как раз из-за понтового шрифта Unicode и не выходил).

Примеры (см. под хабракатом) я поменял с placehold.it на dummyimage.com, раз уж он функциональнее…
Ещё насколько примеров под катом
Total votes 287: ↑276 and ↓11+265
Comments119

Двухколоночная верстка текста

Reading time2 min
Views8.1K
Result
Данный топик — это не изложение азов на тему «Как сделать на своей странице две колонки с использованием div'ов и css». Передо мной стояла задача разбить монолитный текст на две колонки, подобно тому, как это делает MS Word. Стандартного тэга в css для этого не существует, поэтому пришлось немного потанцевать с бубном для решения поставленной задачи.
Ширина колонки с текстом очень сильно влияет на простоту восприятия информации пользователем. И поэтому, учитывая нынешнюю популярность широкоформатных мониторов, разбивка текста на колонки существенно увеличивает его «читабельность».
Читать дальше →
Total votes 148: ↑92 and ↓56+36
Comments89

Удача и провал в AppStore

Reading time4 min
Views3.6K
На волне повышенного внимания к мобильному софту, и в частности к App Store, мы тоже решили попробовать свои силы в этой хаотичной, на первый взгляд, массе. iPhone есть, MacBook есть, остается только выбрать что написать. Требования простые: это должно быть просто, это не должно занять много времени и это должно быть дешево. И еще очень хотелось написать такое, что и самим пригодится. Но все пошло не совсем так, как мы предполагали.
Под катом описание того, как мы все делали, рекламировали и что в итоге получилось.
Total votes 161: ↑148 and ↓13+135
Comments133

По ту сторону браузера: Как подключить прием платежей

Reading time4 min
Views33K
Привет!

Лето — жарко и писать про бухгалтерию совсем не хочется. Поэтому мы решили начать серию статьей, описывающих работу нашего SAAS сервиса изнутри. Напишем как о чисто технических вещах (процессинг платежей, безопасность, техподдержа), так и о том как мы выросли от перспективного стартапа к самоокупающемуся бизнесу — о деньгах, о людях, о проблемах любого молодого бизнеса и путях их преодоления. Если интересно что-то еще — пишите в комментариях или в личку.

Процессинг платежей


Итак, в какой-то момент вы понимаете что хотите начать принимать от пользователя денежку за свои услуги и начинаете думать как бы вам это лучше сделать. Ниже я опишу системы, с которыми мы начинали работать и на чем в итоге остановились. Все приведенное в статье является только нашим опытом, ни в коем случае не реклама и отражает только наше мнение. Возможно, где-то нам просто не повезло, а где-то наоборот способствовала удача.
Читать дальше →
Total votes 90: ↑84 and ↓6+78
Comments125

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity