Всем привет. Я по долгу службы занимаюсь разработкой для Samsung SmartTV. В силу того, что на хабре мало статей на эту тему, я решил это исправить. Кому интересна пошаговая инструкция как сделать свой пинг-понг на «умный телик» с распознованием жестов — милости прошу под кат.
User
In-app purchasing или внутренние платежи в приложениях для Android
7 min
57KО чем это вообще?
С версией приложения Android Market 2.3.0 для разработчиков приложений для платформы Android открылась возможность предоставлять пользователям платежи внутри самих приложений. Теперь можно продавать уровни и артефакты, видео, музыку, плагины и прочее, пользуясь лишь встроенными средствами платформы. Давайте увидим, как это можно сделать.
Что нам понадобится?
Как обычно, любимая IDE, Android SDK и пример приложения.
Так же будет полезным представлять себе, что такое Service, BroadcastReceiver и, конечно, Activity.
Так же нам понадобится разрешение в файле манифеста —
<uses-permission android:name="com.android.vending.BILLING"/>
, без него ничего не заработает.Как это в принципе работает?
+36
iPhone разработка: Интегрируем In-App Purchases
8 min
88KIn-App Purchases — это простой и удобный механизм для организации продаж своих приложений или дополнительных фич непосредственно из своего приложения. In-App Purchases легко встраивается и открывает для Вас новый канал продаж. Взаимодействие с App Store осуществляется с помощью StoreKit.framework, который поставляется вместе с SDK, начиная с версии 3.0.
+37
HighLoad 2012
14 min
37KНа днях в Москве прошла «конференция разработчиков высоконагруженных систем» HighLoad++, участником которой мне посчастливилось стать. Ниже я хочу кратко пройтись по докладам, которые посетил в рамках конференции, выделив в них интересные на мой взгляд моменты.
Сразу предупрежу, что какие-то вещи я мог понять неправильно, какие-то переврать. Если для вас это важно — не читайте этот пост, а приходите на следующую конференцию лично!
Сразу предупрежу, что какие-то вещи я мог понять неправильно, какие-то переврать. Если для вас это важно — не читайте этот пост, а приходите на следующую конференцию лично!
+64
Великий исход IT & Media-народа в Чианг Май
3 min
16K
Некоторые старички Хабра до сих пор помнят мой пост «Хотите ли вы коворкинг в Тайланде?». За 3 года в Чиангмае произошли большие и интересные перемены: здесь появилась критическая масса инициативных русских ИТ-специалистов, которые жаждут перемен.
Недавно в Чиангмае русскими был организован CNX Business Club — общественная организация, бескорыстно помогающая специалистам в области IT & Media обосноваться в городе, претендующем на звание одного из IT-центров Юго-Восточной Азии. Расскажу поподробнее, чем привлекателен город.
+76
CSS/JS библиотека в стиле Metro, совместимая с Twitter Bootstrap
1 min
27KНе так давно я писал на хабре о Bootmetro — дизайне Twitter Bootstrap в стиле Windows 8. Эта разработка хороша идеей, но на практике все работает очень коряво. К счастью, есть качественно сделанный аналог от Ace Subido — CSS3 Microsoft Metro Buttons.

По сути это набор стилей для кнопок и форм, который можно использовать вместе с Twitter Bootstrap.

По сути это набор стилей для кнопок и форм, который можно использовать вместе с Twitter Bootstrap.
+43
Построение систем доставки видео на основе HTTP Dynamic Streaming от Adobe и OpenSource
8 min
21KВ рамках проекта для одного из наших заказчиков в очередной раз встала задача построить систему конвертации/ хранения/ доставки видео в интернет. Типичная такая задача создания своего маленького (или не очень маленького) “Тьюба” только с профессиональным, а не UGC-контентом.
С момента создания первых “Тьюбов” технологии видео в интернете прошли некоторый путь развития, позволяют сейчас делать намного больше, да и требования к современному видео-сайту стали несколько иными.
Наиболее интересными трендами последнего времени, на наш взгляд, являются:
С момента создания первых “Тьюбов” технологии видео в интернете прошли некоторый путь развития, позволяют сейчас делать намного больше, да и требования к современному видео-сайту стали несколько иными.
Наиболее интересными трендами последнего времени, на наш взгляд, являются:
- возможность смотреть один видео-сайт с разных устройств,
- технология адаптивного HTTP стриминга
+51
Итоги конкурса по тестовому заданию для программистов от ZeptoLab. Новое тестовое задание
11 min
40KДолгожданные итоги конкурса сил Android и iOS developer-ов на место в Dream-Team команде ZeptoLab, наконец, подведены. За эти полгода мы что обещали – сделали: подросли в 2 раза и концептуально оформили нашу обитель:

Как это было

Как это было
+17
Google выпускает J2ObjC, open-source конвертер кода Java в Objective-C для iOS-приложений
1 min
32KGoogle представили выпуск open-source проекта J2Objc, собственный конвертер из исходного кода на Java в Objective-C для приложений на iPhone/iPad.


+78
Приглашения на закрытые зарубежные трекеры обучающей тематики (Часть III)
2 min
17K
«Live as if you were to die tomorrow. Learn as if you were to live forever». ― Mahatma Gandhi.
«Живи так, как будто ты умрёшь завтра. Учись так, как будто ты будешь жить вечно». ― Махатма Ганди.
Итак, на календаре 1 сентября. А это значит, что во всех уголках стран СНГ молодые люди скоро пойдут грызть всем известный гранит науки. И чтобы им легче и продуктивней грызлось, я предлагаю продолжить хорошую традицию (раз, два) по распространению доступа к качественному учебному материалу, который находится на закрытых трекерах обучающей тематики. Лично мне этот материал помогает развиваться по своей специальности за пределами стен вуза или работы. И я уже с уверенностью могу сказать, что это уже не раз сыграло решающую роль в моей жизни.
В честь Дня знаний я, в который раз, организую праздничную раздачу инвайтов на зарубежные трекеры. А также приглашаю подключиться к данной акции хабрапользователей с инвайтами. Представление о трекерах вы можете получить из статьи — Обзор e-Learning трекеров или Век живи — век учись! и ее второй части. Материалы на всех трекерах большей частью на английском.
Кому интересно — добро пожаловать под кат.
+31
Обзор инструментов для визуального сравнения и разрешения конфликтов слияния
6 min
144KНа хабре уже было много статей о распределенных системах управления версиями (DVCS), их сравнений, а также сравнений GUI-клиентов для них. Также были обсуждения плагинов к IDE для работы с git и mercurial. Но практически не было информации об инструментах визуального сравнения и разрешения конфликтов слияния.

Недавно я «перескочил» с mercurial (который до сих пор считаю более удобным и логичным) на git, потому что, подавляющее большинство проектов, которые мне интересны, используют git и хостятся на github. В связи с этим, встал вопрос о пересмотре арсенала инструментов, в частности вопрос выбора инструмента визуального сравнения и слияния (diff and merge). Дабы восполнить недостаток информации на хабре, я решил написать этот мини-обзор. Как говориться — по горячим следам.
Под катом Вы также найдете примеры настроек Git для использования с DiffMerge и WinMerge под Windows. Думаю многим сэкономит время.

Недавно я «перескочил» с mercurial (который до сих пор считаю более удобным и логичным) на git, потому что, подавляющее большинство проектов, которые мне интересны, используют git и хостятся на github. В связи с этим, встал вопрос о пересмотре арсенала инструментов, в частности вопрос выбора инструмента визуального сравнения и слияния (diff and merge). Дабы восполнить недостаток информации на хабре, я решил написать этот мини-обзор. Как говориться — по горячим следам.
Под катом Вы также найдете примеры настроек Git для использования с DiffMerge и WinMerge под Windows. Думаю многим сэкономит время.
+39
HelloWorld под iOS с jailbreak
3 min
8.6KИнформации на русском языке о разработке под джеилбрэйкнутую iOS не так уж и много, так что надеюсь эта информация кому-нибудь пригодится.
+8
Велосипеды на Javascript и jQuery
4 min
77KTutorial
В очередной раз открыв код коллег и ужаснувшись, я решил написать эту статью. Надеюсь для кого-нибудь это будет полезным, заодно и мне будет проще новичкам объяснять что у них в коде не так, просто кинув ссылку на эту статью.
Безусловно количество таких вещей очень и очень велико, поэтому в статье ограничусь лишь некоторыми.
Безусловно количество таких вещей очень и очень велико, поэтому в статье ограничусь лишь некоторыми.
+234
Встречайте бесплатный и свободный шрифт «Ораниенбаум»
1 min
31KДизайнер-шрифтовик Иван Гладких, более известный как Джованни Лемонад (Jovanny Lemonad), вчера (1 августа 2012 года) объявил о выходе нового шрифта «Ораниенбаум», являющегося акцидентною антиквою необыкновенно красивых начертаний, что особенно проявляется в криволинейных элементах букв (в лапках, хвостиках и др.):
![[скриншот Oranienbaum]](https://habrastorage.org/storage2/c31/523/cc6/c31523cc66e32b27f55de456149f71ae.png)
![[скриншот Oranienbaum]](https://habrastorage.org/storage2/c31/523/cc6/c31523cc66e32b27f55de456149f71ae.png)
+69
Консоль для маководов: Beyond the GUI
6 min
221KTutorial
Доброго дня, уважаемые хабравчане-маководы!
Сегодня я расскажу как увеличить эффективность работы в Mac OS X за счёт использования консоли.
Думаю, ни для кого не секрет, что Mac OS является Unix-based системой, но переработанной почти до неузнаваемости. Даже консоль засунули куда подальше — не сразу и найдёшь. И вся система нацелена на использование GUI, при дефолтных настройках даже переключение между кнопками по Tab не работает — без мыши никуда. И тем не менее, Мак — это не только окошки, не только док и лаунчер. Мак это ещё и вся мощь shell скриптов и консоли!
Если Вы пришли из мира M$, то для начала неплохо бы поучить общие команды shell'а, например, по вот этому учебному пособию. Как минимум, нужно усвоить команды перехода по каталогам и способы запуска программ и скриптов.
Если Вы пришли в мир Mac OS из мира Linux'а и FreeBSD, то, скорее всего, знаете как минимум основы shell-скриптинга. Но и для вас в статье может оказаться кое-что интересное, ведь в маке есть уникальные консольные команды, которые так же полезно знать.
Вот о некоторых особенностях маковской консоли далее и пойдёт речь.
Сегодня я расскажу как увеличить эффективность работы в Mac OS X за счёт использования консоли.

Лирическое отступление
Думаю, ни для кого не секрет, что Mac OS является Unix-based системой, но переработанной почти до неузнаваемости. Даже консоль засунули куда подальше — не сразу и найдёшь. И вся система нацелена на использование GUI, при дефолтных настройках даже переключение между кнопками по Tab не работает — без мыши никуда. И тем не менее, Мак — это не только окошки, не только док и лаунчер. Мак это ещё и вся мощь shell скриптов и консоли!
Если Вы пришли из мира M$, то для начала неплохо бы поучить общие команды shell'а, например, по вот этому учебному пособию. Как минимум, нужно усвоить команды перехода по каталогам и способы запуска программ и скриптов.
Если Вы пришли в мир Mac OS из мира Linux'а и FreeBSD, то, скорее всего, знаете как минимум основы shell-скриптинга. Но и для вас в статье может оказаться кое-что интересное, ведь в маке есть уникальные консольные команды, которые так же полезно знать.
Вот о некоторых особенностях маковской консоли далее и пойдёт речь.
+78
Как создать простую Tower Defense игру на Unity3D, часть первая
16 min
128KTutorial
Здравствуйте! Давно уже хотел опубликовать эту статью, да не успевал выделить время. Заранее хотел бы предупредить, что статья рассчитана на не шибко знающего Unity3D пользователя, потому в тексте будет обилие пояснений.
Часть вторая
Всем заинтересовавшимся — добро пожаловать под кат!
Часть вторая
Всем заинтересовавшимся — добро пожаловать под кат!
+65
Принцип цикады и почему он важен для веб-дизайнеров
6 min
236KTranslation

Однако, в зависимости от вида, каждые 7, 11, 13 или 17 лет периодические цикады одновременно массово вылезают на свет и превращаются в шумных летающих тварей, спариваются и вскоре умирают.
Хотя наши странные цикады весело уходят в иной мир, возникает очевидный вопрос: это просто случайность, или числа 7, 11, 13 и 17 какие-то особенные?
+668
Восстановление расфокусированных и смазанных изображений. Практика
10 min
358KНе так давно я опубликовал на хабре первую часть статьи по восстановлению расфокусированных и смазанных изображений, где описывалась теоретическая часть. Эта тема, судя по комментариям, вызвала немало интереса и я решил продолжить это направление и показать вам какие же проблемы появляются при практической реализации казалось бы простых формул.
В дополнение к этому я написал демонстрационную программу, в которой реализованы основные алгоритмы по устранению расфокусировки и смаза. Программа выложена на GitHub вместе с исходниками и дистрибутивами.
Ниже показан результат обработки реального размытого изображения (не с синтетическим размытием). Исходное изображение было получено камерой Canon 500D с объективом EF 85mm/1.8. Фокусировка была выставлена вручную, чтобы получить размытие. Как видно, текст совершенно не читается, лишь угадывается диалоговое окно Windows 7.

И вот результат обработки:

Практически весь текст читается достаточно хорошо, хотя и появились некоторые характерные искажения.
Под катом подробное описание проблем деконволюции, способов их решения, а также множество примеров и сравнений. Осторожно, много картинок!
В дополнение к этому я написал демонстрационную программу, в которой реализованы основные алгоритмы по устранению расфокусировки и смаза. Программа выложена на GitHub вместе с исходниками и дистрибутивами.
Ниже показан результат обработки реального размытого изображения (не с синтетическим размытием). Исходное изображение было получено камерой Canon 500D с объективом EF 85mm/1.8. Фокусировка была выставлена вручную, чтобы получить размытие. Как видно, текст совершенно не читается, лишь угадывается диалоговое окно Windows 7.

И вот результат обработки:

Практически весь текст читается достаточно хорошо, хотя и появились некоторые характерные искажения.
Под катом подробное описание проблем деконволюции, способов их решения, а также множество примеров и сравнений. Осторожно, много картинок!
+453
Как распознать кракозябры?
1 min
433KВ комментариях к предыдущему посту про иероглифы сказали, что хорошо бы иметь такую же блок-схему для кракозябр.
Итак, вуаля!

За источник информации была взята статья из вики. В блок-схеме «UTF-16 → CP 866» означает, что исходная кодировка была «UTF-16», а распозналась она как «CP 866».
Как всегда — кликабельно. Исходник в .docx: здесь.
Итак, вуаля!

За источник информации была взята статья из вики. В блок-схеме «UTF-16 → CP 866» означает, что исходная кодировка была «UTF-16», а распозналась она как «CP 866».
Как всегда — кликабельно. Исходник в .docx: здесь.
+407
Я не знаю ООП
12 min
554KЯ не умею программировать на объектно-ориентированных языках. Не научился. После 5 лет промышленного программирования на Java я всё ещё не знаю, как создать хорошую систему в объектно-ориентированном стиле. Просто не понимаю.
Я пытался научиться, честно. Я изучал паттерны, читал код open source проектов, пытался строить в голове стройные концепции, но так и не понял принципы создания качественных объектно-ориентированных программ. Возможно кто-то другой их понял, но не я.
И вот несколько вещей, которые вызывают у меня непонимание.
Я пытался научиться, честно. Я изучал паттерны, читал код open source проектов, пытался строить в голове стройные концепции, но так и не понял принципы создания качественных объектно-ориентированных программ. Возможно кто-то другой их понял, но не я.
И вот несколько вещей, которые вызывают у меня непонимание.
+206
Information
- Rating
- Does not participate
- Registered
- Activity