Friday, July 27, 2012

Simple Player 1.0


На прошлой неделе наконец выложил на Google Play своё первое приложение - Simple Player.
Простой музыкальный проигрыватель, навигация по трекам - согласно папкам с аудиофайлами. Абсолютно бесплатен.

Идея написать приложение возникла благодаря аудиокнигам, которые временами имеют кривые ID3-теги (исполнитель, название и т.д.) и потому слушать их стандартными плеерами очень неудобно.

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

Регистрация на Google Play заняла времени едва ли не больше, чем собственно разработка приложения – ждал 10 дней валидации документов и еще непонятно чего. Пока не начал слать приветы их техподдержке – дело с места не двинулось. Причиной, скорее всего, была неотлаженная работа платежной системы Google Checkout, которую пока никак нельзя обойти – все денежные переводы (и регистрационный взнос $25) делаются только через нее.

Tuesday, July 17, 2012

Брюс Эккель - Философия Java

Шлифуя свои знания по Java Core, недавно прочел (местами – пролистал) рекомендуемую многими книгу Брюса Эккеля «Философия Java» / Bruce Eckel - Thinking in Java. Объем материала большой, с монитора такое читать не хотелось, посему приобрел за $25 на книжном рынке наиболее актуальное, четвертое, издание, 2012 года.
Оригинальный текст был написан автором в 2005 году, и с тех пор успешно издается практически без изменений. Естественно, описана Java SE5. Не самая древняя версия, для глубокого понимания уровня Core вполне достаточно.

Мне очень понравилась первая половина книги – концепции ООП, их развитие и применение в Java. Именно здесь, пожалуй, и применим авторский «разговорный» жанр изложения.
А в целом материал вышел действительно философской. Как и труды Ницше, для понимания сути нужно перечитывать местами 2-3 раза. Отчасти это объясняется и тем, что здесь нет таблиц, а число диаграмм можно сосчитать на пальцах. 

Альтернативой этой книге может быть двухтомник Хорстмана – «Java 2. Библиотека профессионала».

UPDATE
Старшие товарищи подсказали, что купленное мной издание книги сильно урезано по сравнению с оригиналом - особенности "локализации" российского издателя. Некоторые главы и вовсе отсутствуют. 

Friday, July 13, 2012

Про стартапы

На Хабре опубликован перевод интереснейшей статьи Майкла Чёрча (Michael O.Church) с ёмким названием «Не тратьте своё время на дерьмовую работу в стартапе». Повествование о специфике работы в стартапе с точки зрения инженера с описанием некоторых финансовых/инвестиционных деталей. Имея опыт работы наёмным проджект-менеджером в производственном стартапе, полностью соглашаюсь с предложенной автором точкой зрения.

Переведенная статья на Habr: http://habrahabr.ru/post/147675/
Оригинальная статья на сайте автора: http://michaelochurch.wordpress.com/2012/07/08/dont-waste-your-time-in-crappy-startup-jobs/

Friday, July 6, 2012

В удивительной стране мы живем


Вот очередной фокус: 993,6 млн гривен на систему для записи и трансляции видео веб-камерами на парламентских выборах. Около 34 тысяч избирательных участков. На каждом по две веб-камеры.

Сделаем простые подсчеты:

- ДЛЯ КАЖДОГО УЧАТСКА:
ИТОГО ДЛЯ КАЖДОГО УЧАСТКА: 5250 грн.
ДЛЯ ВСЕХ УЧАСТКОВ: 34000 участков*5250 грн = 178,5 млн грн

Здесь наиболее сложный вопрос – передача видеопотока при низкой скорости интернета. Проблему можно решить путем трансляции на центральный пункт видеопотока в низком качестве, а локально на жесткий диск сохранять HD-видео. При необходимости – после выборов нужную запись несложно найти.



- ДЛЯ ЦЕНТРАЛЬНОГО ПУНКТА: задача обеспечения трансляции с такого количества веб-камер далеко нетривиальная, разработка программного обеспечения потребует немало сил. Потому считаем приблизительно и округляем в бОльшую сторону:
  • Разработка серверной стороны системы + веб-сервера (должно получиться что-то вроде упрощенного YouTube) = 19.5 млн гривен
  • Разработка клиентского ПО + установка образов на всех нетбуках = 0.5 млн гривен
  • Оборудование для дата-центра, коммуникационные услуги (здесь посчитать очень сложно, берем по максимуму, хотя ведь можно использовать и часть имеющихся ресурсов) = 80 млн грн
  • Обустройство офиса, офисная техника, комната для прессы = 10 млн грн
  • Аренда ресурсов для хранения всех видеозаписей в сжатом формате в течение года (тоже очень приблизительно) = 0.25 млн грн
ИТОГО ДЛЯ ЦЕНТРАЛЬНОГО ПУНКТА: 110.25 миллионов гривен.



- Дополнительные расходы:
  • Обучение сотрудников избирательных участков (брошюра + лекция), что может обойтись в 200 грн на каждый из 34000 участков = 6.8 млн грн.
  • Транспортировка техники к каждому участку, прикручивание веб-камер к потолку и прокладывание шнуров – вот это я не берусь оценивать, но прикинем что обойдется сие действие тоже в 200 грн на каждый из 34000 участков = 6.8 млн грн.

Подводим смету: 110.25 млн грн + 178,5 млн грн + 13.6 млн грн  = 302.35 млн гривен. И это по розничным ценам при самом грубом подсчете. Вывод: около 70% выделяемой суммы можно сэкономить.

А вспоминая выборы президента России в марте этого года с веб-камерами на 90% избирательных участков, возникают очень большие сомнения в необходимости этих веб-камер на выборах вообще :)

Sunday, July 1, 2012

Блог Insight IT


Очень познавательный блог Ивана Блинкова Insight IT об архитектуре больших высоконагруженных систем. Рассмотрены компоненты таких гигантов, как Facebook, Вконтакте, Stack Overflow и Instagram.
В последних своих постах автор развивает еще одну интересную тему – интерактивные сайты. Стиль изложения и глубина понимания Иваном предметной области приятно удивляют, выделяя его проект среди сотен похожих ресурсов.