Friday, October 31, 2008

Favicon трюк

Не знаю, планировалось это так, или получился побочный эффект, но iGoogle позволяет еще и запросить favicon для произвольного домена. Следующий URL возвращает изображение:

http://www.google.com/ig/c/favicons?domain=имя_домена

Например, для домена servletsuite.com: favicon

вот, что значит OpenSocial ;-)

Большая карта

Обновления в мешапе Большая карта - BigMap. В очередных обновлениях Google Maps API появилась поддержка обратного геокодинга - то есть получения адреса по координатам. И вот в мешапе BigMap можно посмотреть теперь, как такая опция может быть использована на практике. Просто кликните на карте для получения адреса текущей точки.

Service Delivery Platforms

SDP - Operators Guide. Бесплатный отчет для операторов от Moriana Group.

Thursday, October 30, 2008

GTV 2.0

Мешап GTV обновился в соответствии с дополнениями в YouTube API (см. материал о Google Developers Day 2008)

На одной странице можно увидеть ролики YouTube и новости Яндекс с привязкой к Москве. Иными словами, московские новости - YouTube + Яндекс. Телевидение, практически :)
Что нового:
- уточненный поиск для YouTube
- картинки из Panoramio
- обратный геокодинг. Просто кликните на карте для получения адреса

Посмотреть можно здесь.

Свечной заводик

Хорошее видео, объясняющее использование технологии Femtocell (своя маленькая базовая станция). 3G телефон используется в этом примере для доступа к домашним устройствам. Отсюда.

Wednesday, October 29, 2008

Google Developers Day 2008

Что нового:

1. Новая версия YouTube API. При этом в поиске теперь можно задавать координаты (давно ожидавшаяся опция!). То есть можно запросить видео из определенного региона. А вот API для аннотаций пока еще нет.

2. Лектор темнил, но судя по всему новая версия API для визуализации будет уже в ближайшие недели. Тут самый главный вопрос - источники данных. Пока, если не задавать данные непосредственно на стороне клиента, их можно читать только из Google spreadsheet. Видимо, здесь, наконец, продвинутся дальше.

3. Про Java на Google Apps пока ничего. По планам - следующее обновление в марте 2009. Что там будет - не сказали.

4. В целом - даже лучше, чем в прошлом году. Более технично.

5. Цель практических занятий осталась загадкой. Это просто программирование в помещении под присмотром Google :). Правда - с обедом.

P.S. кормили вкусно :-)

Медиа-серверы

Интересный материал от Comverse по практическому использованию JSR-309. JSR-309, на самом деле, довольно интересная инициатива. Это даже не просто API, а скорее подход к работе с медиа в телекоммуникационных приложениях. Как предоставить простой интерфейс разработчикам по чтению DTMF, проигрыванию медиа-данных и т.п. Причем использовать это можно и без SIP, для которого это изначально разрабатывалось.

Tuesday, October 28, 2008

Кодировка RSS

Одна из особенностей, например, XML парсеров в Java является проблема в работе с не UTF-8 кодировками. И здесь можно воспользоваться сервисом Feedburner: он автоматически перекодирует потоки в UTF-8. Например, вот исходный RSS поток в кодировке win-1251: http://rabota.mail.ru/vac_search_rss/. А это его feedburner-ский аналог: http://feeds.feedburner.com/mail/VSMc, который оказывается уже в кодировке UTF-8.

P.S. а уже UTF-8 RSS поток можно использовать, например, в MetroMap мэшапе. Вот работы от mail.ru на карте Google: Работа@Mail.Ru metro map

Load balancing

Серия матералов по балансировке нагрузки в Java веб-приложениях. Часть 1 посвящена балансировке нагрузки на уровне транспортных протоколов.

Часть 2 посвящена балансировке нагрузки на уровне приложений. Здесь отдельно рассмотрены вопросы балансировки нагрузки для Tomcat.

Упомянем в этой связи также следующие компоненты от Coldbeans software: сервлет Load balance позволяет распределть запросы между несколькими серверами. На уровне JSP приложений пользовательская библиотека Load balance позволяет динамически создавать ссылки для ресурсов, распределенных по нескольким серверам.

Monday, October 27, 2008

Reverse geocoding

Google maps API теперь поддерживает и обратный геокодинг (то есть по координатам находит адрес). Судя по описанию, работает там же, где и обычный геокодинг. Иными словами, в России должно работать. Вот таблица совместимости для Google Maps API

P.S. Хотя в Android SDK это было и раньше. Видимо, Google просто вынес в API, то, что было раньше реализовано.

Тики-так

Интересный продукт совместного творчества Alcatel и Lucent: TikiTag. Это использование NFC для связи объектов реального мира (предметов, попросту) с данными в сети. Например, товар в магазине обменивается данными с вашим телефоном и т.п. Есть открытый API для сторонних разработчиков.

Sunday, October 26, 2008

QR map

Обновлен мешап QR map. Позволяет создать QR код для фрагмента карты. И поделиться им с нуждающимися, используя email/twitter/facebook.
Основная модель использования QR кодов - размещение их на физических объектах. Так, что мобильный пользователь, например, сосканировав код, мог бы получить дополнительную информацию непосредственно на своем телефоне. С помощью QR map можно получить карту непосредственно на свой телефон. Например, расположения интересующего (рекламируемого) объекта, схему проезда и т.д.

Полный iPhone

Или полный Android - по выбору. HipLogic хочет перенести идеи виртуализации в мир мобильных телефонов. Так что можно будет писать полностью переносимые приложения для смартофонов. Кстати, сама компания создана бывшими разработчиками J2ME из Sun. Другой игрок на этом рынке - Virtuallogix

Saturday, October 25, 2008

48 часов

Rails Rumble - интересный эксперимент: всемирное соревнование ROR программистов. 48 часов на создание законченного веб-приложения. Все вместе написали более 200 000 строк кода. Результаты - здесь

Первое правило


Первое правило программиста

Friday, October 24, 2008

Ajax шаблоны

Типичные приемы в Ajax приложениях - учебный материал от IBM. Рассматривают такие шаблоны, как замена HTML фрагмента, работа с XML и JSON и др.
Кстати, Java разработчики могут найти все изложенное в Coldtags suite

Java на Google Apps

Google Apps Engine будет поддерживать Java. По крайней мере, так заявлено на Google Developers Day в Бангалоре. Может быть, на следующей неделе на аналогичном мероприятии в Москве можно будет выяснить детали.

Thursday, October 23, 2008

Рынок для Android

Google опубликовал детали работы с marketplace для Android. Бесплатные приложения можно будет загружать с 27.10.2008. При этом есть разовая оплата при регистрации - $25.00. После этого обещают на мучить разработчиков проверками приложений (как Apple с iPhone). А платные приложения можно будет распространять только в 1-м квартале 2009 года. Google обещает выплачивать разработчику 70% от дохода. На первые 50 приложений можно посмотреть здесь.

Инфоком 2008

На пресс-конференции, организованной газетой Ведомости, Н.C. Мардер отметил, что министерство будет выдавать лицензии виртуальным операторам. Это может быть положительным делом для развития сервисов, между прочим. Традиционно (так в мире, по крайней мере) виртуальные операторы более подвижны в этом плане. Хотя, как будет у нас, конечно, никто не знает ;-)
Также обещаны изменения в работе регулятора (лицензирование). В целом, все сказанное звучало весьма разумно.

Детали, видимо, будут и в подкасте Ведомостей

А так, выставка весьма тихая. И экспонентов мало, и посетители не горят желанием в этот Крокус ехать. А уж выехать оттуда вечером - это полная беда.

Из собственно разработчиков телекоммуникационных сервисов можно отметить, пожалуй, лишь Audiotele. Из других приложений - урезанный и руссифицированный Asterisk под именем Welltone

Arduino


Открытая программно-аппаратная платформа Arduino. Программируемый микроконтроллер, предназначенный, в первую очередь, для решения задач сбора информации от различных внешних объектов. Можно собрать самостоятельно по спецификациям (Creative Commons лицензия), а можно купить готовый (кстати, дистрибуторы есть и России). Все необходимое для работы программное обеспечение - бесплатно (GPL). Простой язык для программирования системы.

Wednesday, October 22, 2008

JavaScript для Java программистов

Интересный учебный материал от IBM - JavaScript для Java програмистов (на примере dojo)

Газета 2.0

Развитие Интернета естественным образом размывает базу подписчиков (читателей) для традиционных печатных изданий. Часть читателей просто переключается на электронную версию любимого издания. Собственный веб-портал издания может отнимать читателей у печатной версии. А что, если попробовать дополнить печатный вариант цифровыми данными? Вот об этом варианте интеграции данных и печатного текста и идет речь в нашем предложении.

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

Что мы предлагаем:

1. Аудио-файлы дополняют печатный текст
Доступ к аудио-данным можно организовать непосредственно из печатного текста. Электронные версии изданий публикуют достаточно много аудио информации. Почему бы не сделать эту информацию доступной и непосредственно читателям печатных версий? Имеется в виду не доступность аудио-материалов через мобильные версии сайтов (это и так уже есть), а доступ посредством обычного звонка к прослушиванию аудио-материалов. При этом информация о том, куда позвонить для прослушивания может быть опубликована прямо в тексте материала.

2. Обсуждение публикаций
Голосовые дискуссии для читателей печатных версий издания. Используя голосовые сообщения и мобильный телефон можно и оставлять свои суждения, и прослушивать другие записи. И это просто средства взаимодействия вокруг конкретной публикации. Не нужно никаких регистраций от читателя. Прямо в тексте публикации указано как оставить сообщение, как прослушать другие сообщения и т.д. Именно для данной публикации.
Заметим, что созданный при этом аудио-контент может быть доступен и через веб-сайты издания.

3. Доступ к другим медиа-файлам
Интеграция веб-портала и бумажной версии издания. Например, конкретная публикация предлагает читателю немедленно скачать себе на мобильный телефон фотографии, относящиеся к тексту, видео-ролик и т.д.

Материал предоставлен компанией AbavaNet в рамках подготовки к Инфоком - 2008

Tuesday, October 21, 2008

Пробки 2.0

Современные способы замера пробок. Приложение SugarTrip для Android. По сути - две кнопки, как на секундомере: запустить и остановить. Приложение запоминает координаты начальной точки (GPS телефона), а далее - используя координаты конечной точки и время измерения вычисляет скорость перемещания. Результаты автоматически публикуются на общем сервере. Если приложение наберет пользовательскую базу (попросту много пользователей будут таким образом отмечаться на сервере), то получится практическая картина "доступной" скорости передвижения.
А здесь - схожее по идее приложение для iPhone: RunKeeper.
А вообще, по смыслу, такой функционал должен быть встроен (если это еще не добавлено) в Dash.

Web 3.0 EU

Вопросы определения Web 3.0 решаются на уровне Евросоюза. Идея на самом деле здравая - делая что-то вместе можно повторить успех GSM (также ведь европейская разработка). То, что предлагается взять за основу также весьма разумно. В отличие от ранее выдвигавшихся определений Web 3.0 как семантического веба или интеграции гео-данных, здесь предлагают рассматривать все как непрерывную среду, основным моментом которой будут отсутствие разделения на мобильные/немобильные сервисы. Где-бы пользователь не находился - везде должен получить доступ к услуге.

Monday, October 20, 2008

Стенгазета 20.10.2008

Проблемы с доставкой SMS решены и функционирование сервиса Click to Mobile восстановлено в полном объеме.

Реальный трафик


Как обеспечивается трафик в мобильных сервисах (голосование). Отсюда

Яблоки не той системы

Проценты возврата iPhone покупателями по операторам в России:

МТС - 14%
Би - 9%
Мега - 11%

Отсюда. Странно, нереально высокие цифры. Это несчастный случай и российским операторам просто не повезло с партией, или в Apple реальные проблемы с производством?

Sunday, October 19, 2008

Неизвестный Google

Подборка из не столь широко известных приложений и инструментов от Google. Некоторыми продуктами из этого списка мы пользовались. Например:

Транcкодер. Позволяет получить на лету мобильную версию для произвольного сайта.
Mashup editor. Библиотека тегов для разработки mashup-приложений. Мы писали об этом продукте.

Saturday, October 18, 2008

PHP шаблоны

Обычно такие материалы публиковались для Java. А тут IBM DeveloperWorks взяла на себя труд собрать в одной статье шаблоны программирования для PHP. Примеры исходного кода для factory, singleton, observer.

P.S. хотя, кажется, все-таки самый распространенный шаблон программирования для PHP - это copy-paste для примеров, найденных с помощью Google. Благо для PHP недостатка в них (примерах) нет :)

Friday, October 17, 2008

Google таблицы

Пошаговый пример - импорт данных веб-сайта в Google Spreadsheet для последующей обработки. В данном примере - страница из Википедии.
Технически, все базируется на использовании функции ImportHtml(). Вот другой пример таблицы - импорт данных с сайта Из рук в руки: объявления о продаже Bentley. См. формулу в ячейке A1.

Приложения для социальных сетей

25 приложений для Facebook, которые профинансированы fbFund. Полезно почитать о темах, заинтересовавших как инвесторов, так и пользователей Facebook. Еще по теме см. здесь

Thursday, October 16, 2008

Cолнце


Солнце! Актуально, в связи с погодой. Отсюда

Yahoo Application Platform

YAP - Yahoo Application Platform. Yahoo копирует успех Facebook. Теперь разработчики смогут писать приложения для Yahoo!
Доступно PHP SDK и своя версия XML

Servlets 3.0

Обзор спецификации Java Servlets 3.0. Мы уже писали об асинхронной обработке. А другая интересная возможность - это динамическое подключение сервлетов (фильтров):

ServletContext sc = sce.getServletContext();

//Declare servlet and servlet mapping
sc.addServlet("myServlet", "Sample servlet", "samples.MyServlet", null, -1);
sc.addServletMapping("myServlet", new String[] {"/urlpattern/*"});

//Declare filter and filter mapping
sc.addFilter("myFilter", "Sample Filter", " samples.MyFilter", null);
sc.addFilterMapping("myFilter", new String[] {"/urlpattern/*"}, "myServlet",
DispatcherType.REQUEST, false);

Wednesday, October 15, 2008

1 (один) миллион долларов

$1 000 000 за идею нового программного продукта. Все, что требуется - 300 слов описания. Детали - здесь.

Отладка в JavaScript

Blackbird - возможно лучший logging для JavaScript. Реально, функция alert() для отладки больше не нужна. Open Source проект.
Для Java серверов мы использовали еще следующий асинхронный лог - JavaScript log servlet

Tuesday, October 14, 2008

Great idea

О нас пишут - Google Maps Mania о нашем мешапе MyWay

Говорящие SMS

Снова слышу по радио рекламу Говорящих писем от Билайн. Суть сервиса в записи голосовых сообщений для других абонентов. Абоненты адресуются по реальному номеру с префиксом #: звонок на #номер позволяет записать сообщение абоненту номер.
У нас есть уже довольно старый сервис - Голосовые SMS. Там используется IVR - можно позвонить и оставить голосовое сообщение другому абоненту мобильной сети (не обязательно того же самого оператора). Адресат получит SMS сообщение с номером телефона, перезвонив по которому (непосредственно из SMS) он может прослушать сообщение и записать ответ. При этом не нужно нигде регистрироваться, авторизоваться и т.д.

Так вот основное отличие от говорящих писем (писем Вслух и т.д.) состоит в том, что сервис изначально делался с ориентацией на веб-приложения. При отправке письма можно указывать не только мобильный номер адресата, но и цифровой код, который соответствует этому номеру. А этот самый код может быть получен для произвольного мобильного номера двумя способами: либо сам абонент позвонит один раз на тот же IVR и ему сообщат его код, либо - что интереснее - веб-приложение, используя открытый API, получит код для заданного номера. Идея состоит в том, что далее на произвольном веб-портале (в социальной сети и т.д.) можно указывать этот код как координаты для связи. Владельцу кода можно будет отправлять голосовые сообщения, не раскрывая при этом его реальный номер. И в любой момент времени можно прекратить взаимодействие, разорвав связь кода и реального номера.

Это еще один способ монетизации для тех же социальных сетей. Можно регистрировать для пользователей подобные коды, с помощью которых они смогут анонимно общаться, а сеть, соответственно, делить с оператором (агрегатором) оплату за трафик.
А вот модельный пример, где голосовые SMS использовались для системы мобильных объявлений - Объявления 2.0. При подаче объявления по SMS для автора автоматически регистрировался код, соответствующий его номеру. По этому коду можно связаться с автором объявления. При этом сам автор в любой момент мог прекратить это взаимодействие, просто удалив свой код (это также делается одним звонком). Сделано это было в виде мешапа, где для сохранения объявлений использовался открытый интерфейс Livejournal API.

Другой пример использования API - это система мобильных уведомлений. Там можно посылать голосовое сообщение сразу группе абонентов. Вот одна из моделей использования - тревожный сервис

Другие публикации по теме Voice SMS

Monday, October 13, 2008

Yahoo analytics

Yahoo открыл свою аналитическую платформу для Web: Yahoo analytics. Доступные отчеты выглядят довольно интересно. Google Analytics получил конкурента ...

Есть место?

Еще один проект от Abava.net, посвященный как раз интеграции сети в реальный мир, о важности которой мы недавно писали. Идея состоит в представлении открытого портала со свободными местами на парковках. Более чем актуальная проблема для Москвы, например. Портал, доступный в том числе и с мобильного телефона, показывает наличие свободных мест на парковке. Без привязки к оплате/резервированию и другим спорным для реализации моментам, а просто наличие свободных мест прямо сейчас. Стоит водителю сюда заезжать или нет. На самой парковке - это датчик как в метро: вошел/вышел. А текущая информация с привязкой к карте доступна для всеобщего обозрения. Так, чтобы планируя поездку можно было бы прикинуть, где встать, без необходимости последующего посещения штрафных стоянок.

Вот здесь есть презентация проекта автоматической парковки:

Sunday, October 12, 2008

Помер Максим?


Редактор Techcrunch опубликовал статью с констатацией смерти Web 2.0. Под этим автор самого популярного сайта о Web 2.0 понимает, в первую очередь, недоступность легкого получения денег на новый проект.
В более общем масштабе, представляется, что в новых условиях просто наличие большой пользовательской базы перестанет быть определяющим критерием. Без явных способов монетизации трафика, большое количество пользователей означает просто большие расходы на трафик. А продажа проекта в условиях финансового кризиса может откладываться и откладываться ...
Что будет следующей "большой идеей"? Мне кажется, что теперь таким кандидатом может быть соединение сети и реального (физического) мира. Все то, что началось, например, с QR кодов и подобных проектов. Все-таки, одна из основных вещей, привнесенных концепцией Web 2.0 - это открытые интерфейсы. И эти самые интерфейсы должны теперь сработать.

Абавазрение 12.10.2008

Некоторые интересные ссылки:

1. Как встроить Axis2 в свое J2EE приложение. Практическое добавление веб-сервисов к своему приложению.

2. Текстовые редакторы для веб-приложений.

3. Как оно падало. Графическая иллюстрация падения рынков в разное время. Получается, что сейчас еще ничего.

Saturday, October 11, 2008

WiFi кризис

Все, что мы думали о Golden Wifi - неверно. Под именем Билайн WiFi - это все еще хуже. Видимо кризис настиг пчелиную компанию, и там инженеров совсем не осталось. Сеть помирает как по таймеру - через каждые 15 минут на полчаса :(

Friday, October 10, 2008

Книжки

Пара книг по самым горячим вопросам современности :)

Hello Android
iPhone SDK development

Статические карты

Мы использовали в свои проектах статические карты Google. Например, мешап Мобильные карты позволяет получать карты в виде картинки, которая будет доступна на любом мобильном телефоне. Но при использовании в сети у статических карт (по крайней мере, в текущей реализации) есть и естественные ограничения. Они попросту статичны (в соотсветствии с названием :-). Маркеры есть, но, например, как разместить информационное окно? А вот практический материал, который рассказывает как разместить свой div поверх статической карты (например, добавить то же самое информационное окно). Основная проблема при этом - это как вычислить координаты маркера.

Thursday, October 09, 2008

Search Insights - кризиса нет

Google search insights - что искали в России за последние 7 дней. Игры, в контакте, однокласники - кризиса нет. На 10-м месте - слово Google. Но кризиса нет :) Если сделать такой запрос для Москвы, то появятся еще iPhone и Яндекс.

P.S. см. также Google алфавит

Асинхронный кэш

Шаблон работы с кэшем в веб-приложениях, предложенный разработчиками из Yahoo. Идея шаблона может быть проиллюстрирована следующим рисунком:



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

Социализм

Обзор инструментов для самостоятельного построения социальных сетей: Ning, SocialGO, Elg, WackWall

Wednesday, October 08, 2008

Mobile IM

Heysan - мобильный веб-клиент для IM (ICQ, Google talk etc.) Поскольку это веб-приложение, то не требуется никакой загрузки. В своем роде Meebo для мобильных устройств.

Java Wordpress

Open Source Java реализация Wordpress. А полезно это может быть не как замена Wordpress на хостинге, а как инструмент, который можно будет встраивать в свои Java приложения. Там, где нужно, например, пользователям предоставить блог-функционал.

Tuesday, October 07, 2008

Газета в блоге

Шаблон для Blogger, представляющий публикации в "газетном" варианте

Москвоведение

Простой мешап, показывающий картинки из Panoramio и статьи из Wikipedia для Москвы - Big Moscow. Используются новые возможности Google Maps API

Абавазрение 07.10.2008

Некоторые интересные и полезные ресурсы:

1. Оптимизация изображений. SmushIt - веб-сервис, который позволяет удалить лишнюю информацию из изображений. Такую же задачу, например, выполяет опция в PhotoShop 'save for web'. А тут в виде сервиса. Полезный ресурс, оптимизация изображений включается в обязательном порядке в методы клиентской оптимизации.

2. Пошаговый учебник - создание Adobe Air приложений

3. Очень полезный OpenSource (лицензия BSD) пакет - SoundManager. Работа со звуковыми файлами непосредственно из JavaScript.

4. JSON-HEAD. Серверная компонента для JSP (или Coldfusion), которая позволяет позволяет представить заголовки из HTTP HEAD запроса в виде JSON массива. Этот мудреный набор сокращений означает, на деле, что с помощью этой компоненты появляется простая возможность обрабатывать в собственном JavaScript коде информацию об удаленных ресурсах (доступен ли такой-то URL, какой контент и какого размера он возвращает, когда он был модифицирован).

Monday, October 06, 2008

Google Maps Mania - 12

Появились новые записи и пришло время выпустить очередное обновление для списка проектов (систем), выполненных на базе Google Maps. Символом * отмечены новые поступления со времени публикации предыдущей версии списка. Историю вопроса можно изучить здесь. Итак:

Информационные системы:

Авто-услуги
Агентство недвижимости Спб
Афиша
Все аптеки
Все банкоматы.ru
Вузы Екатеринбурга
Где этот дом
Донецк
Зеленоград

Карта кофемана
Карта цен на квартиры в Москве
Карта рыбака
Картакадабра
Квартиры в Москве
Квартиры в Пензе
Квартиры в Питере
Кинотеатры в Москве

Маршруты в Москве
Моя дорога *

МАКС 2007
Местная погода
Мурманск

Население и рекреационные ресурсы Ставропольского края
Недвижимость на карте
Новостройки в Сибири
Окрестности Екатеринбурга
Отели Египта
Омская область на карте

Пермь
Пермь на карте

пос. Правдинский
Пушкино

Погода на карте
Поиск попутчиков *
Посуточная аренда квартир

Путешествия
Путешествия с Google Maps
Путешествия и карты
Путешествия на карте
4 туриста
Туристические карты
Туристические блоги

Роддома Москвы и Санкт-Петербурга
Рестораны на карте Петербурга
Сеть распространения печатной продукции
Сноуборд

Храмы России
Православная архитектура - каталог

Cosmopolitan шоппинг
Фото-биеннале
Live Events
National Geographic Traveler

User generated content (geo tagging):

Geo links
Geo SMS

GPS треки
GPS Club

Free WiFi *

Футбольные поля

SAS.Планета
View and organize geographical data
WikiMapia
WiFi навигация
WiFi blog *

Инструменты:

Большая карта (Big map)
Geo traceroute
Google Msk TV
Metro map
Мобильные карты
Maps2lj - публикация карт в ЖЖ
Технические аспекты
Custom geo tagging
QR-коды для карт

Социальные сети:

Вокруг меня
За баранкой
Мир Тесен
Отдыхали.ru
Соседи-онлайн

Гаджеты и карты:

Аренда в Москве (ЖЖ собщество msk_arenda) *
Аренда квартир в Москве
Атлас Москвы
ЖЖ сообщество Встречи в метро *
ЖЖ сообщество Детские вещи
Вакансии бухгалтеров (HeadHunter.ru)
Вакансии программистов (работа.ru)
Вакансии программистов в Москве (HeadHunter.ru) *
Ветеринарные клиники в Москве
Видеокамеры ГАИ на карте Google Maps
Видеокамеры ГАИ
Веб-камеры в России
Веб-камеры в Москве

Работа в Москве (ЖЖ сообщество msk_job) *
ЖЖ комьюнити о квартирах (ЖЖ сообщество Zhilploshchad)
Сдам, сниму квартиру,комнату (ЖЖ Msk_kvartira)
Сдам, сниму, куплю, продам квартиру,комнату (ЖЖ сообщество Kvartira_msk)
Ищу соседей (ЖЖ сообщество msk_neighbors)
Сдам Квартиру (ЖЖ сообщество sdam_msk) *
ЖЖ сообщество Отдам даром
ЖЖ сообщество ru_metro
Коммерческая недвижимость в Москве

Цены на жилье
Маршруты Москвы (гаджет)
Москва, район Аэропорт
Мото-сайт: помощь в дороге
Новые рестораны

Пентхаусы в Москве *
Поджоги машин в Москве
Посадочные модули на Луне
Посадочные модули на Марсе
Походы по Ладоге на ялах
Перелетные птицы *
Публичные туалеты в Москве

Твой Тольятти *
Точечная застройка в Москве
Штрафные автостоянки в Москве

Черный список бензоколонок

Львы Петербурга
Совы и Девы в Спб

Кого-то пропустили? Что-то новое? Пишите, список будем обновлять.

UPD. последняя версия списка здесь - gmania

Sunday, October 05, 2008

Использование Comet в Ajax

Практическое использование Comet при Ajax запросах. Примеры относятся к Tomcat 6 и не требуют от клиентской части реализации Bayeux. Естественно, что это будет работать и на серверах приложений, использующих Tomcat 6 (WebSphere, например). Шаги следующие:

1. в файле server.xml меняется описание коннектора:

<Connector connectionTimeout="20000" port="8080"
protocol="org.apache.coyote.http11.Http11NioProtocol" redirectPort="8443"/>

(реализация Comet использует Nio)

2. Серверная компонента должна теперь реализовывать новый интерфейс и вместо монолитного метода doGet (или doPost) выполнить реализацию обработчика событий:


public class CometServlet extends HttpServlet implements CometProcessor {

public void event(CometEvent event) throws IOException, ServletException {
if(event.getEventType() == EventType.BEGIN) {
// fill in code handling here
}
// and continue handing other events
}
}

Схожий механизм поддерживает и Jetty, но там API другой. Собственно, спецификация Servlet 3.0 как раз и должна представить общий API.

Android: maps + GPS

Использование Google Maps и GPS на платформе Android - учебник

Saturday, October 04, 2008

Беда в Бангалоре

Длинная статья в ZDnet о том, как финансовый кризис затронул оутсорсеров в Бангалоре. В целом, если отбросить вводимые меры по экономии электричества и туалетной бумаги, то, конечно, повлиял в худшую сторону, но пока все-таки еще не очень сильно. Скорее, вернул некоторые вещи к их нормальному состоянию. Хотя худшее для них еще впереди ...

HP самиздат

Самостоятельное издание журналов. Сервис от HP - для издания журнала достаточно выгрузить PDF файл, все остальное (печать, подписка, дистрибуция) - за сервисом. Поскольку это глобально представленный в мире HP, то собираются поддерживать пользователей и в Европе.

Friday, October 03, 2008

Много картинков

Google Maps API теперь включает новые слои - Panoramio и Wikipedia. Последний слой есть и в локализованных вариантах.
Вот как это может выглядеть, например. Мешап GTV теперь показывает YouTube и Panoramio картинки для Москвы.

Нужно сказать, что с геокодоингом в Panoramio лучше дело обстоит.

Теперь можно

Apple отменила NDA для разработчиков iPhone приложений. А так ведь даже обсуждение программирования было формально невозможно. Между прочим, это явно положительное влияние Android

Встречи в метро

Очередной мэшап из MetroMap - Встречи в метро (источник: ЖЖ сообщество vstre4i_v_metro). Другие применения - см. здесь

Thursday, October 02, 2008

Массовые уведомления

Интересная (и явно востребованная, с связи с общей обстановкой) тема для мобильных приложений - массовые уведомления. Для чрезвычайных ситуаций, конечно, в первую очередь. А так используются и в управлении, маркетинге и т.п. Школе, например, нужно что-то разослать всем ученикам (или их родителям). Вот один из примеров Send Word Now. Компания, получившая недавно $14 млн. в качестве финансирования. Хороший обзор моделей применения сервисов уведомлений можно посмотреть здесь.

Ну и, конечно, упомянем наш сервис - Мобильные уведомления. Это - групповая рассылка голосовых сообщений. Голосовые SMS - это общение один на один, а мобильные уведомления позволяют разослать сообщение сразу группе абонентов. Одно из достоинств, которое является важным именно для систем оповещения, состоит в том, что получателю сообщений нигде не нужно регистрироваться.

Абавазрение 02.10.08

Некоторые интересные ссылки:

1. Java программирование для систем искусственного интеллекта. Книга - в свободном доступе.

2. Coldtags suite обновился до версии 3.50. Самая большая коллекция Java веб-компонент поддерживает теперь свыше 350 пользовательских тегов для JSP (и/или Coldfusion).

3. GeoNames - открытая гео-информационная база. Есть открытый API (REST), информация по России - присутствует. Есть даже поддержка RDF (см. примеры здесь)

4. Другой мир - портал Микрософт по архитектуре программного обеспечения: Patterns & Practices

Wednesday, October 01, 2008

Машина времени

Поиск Google, каким он был в 2001 году

На сайте и на бумаге

Smoney описал ситуацию с веб-сайтами бумажной прессы. Cо словами о том, что бумажные издания будут учиться представлять себя в сети. И вот-вот это сделают. Но пока еще не сделали. При этом все описывается с точки зрения SEO трюков, которые журналисты должны будут применить, чтобы опубликовать свои тексты. А о каких-то действительно интересных моментах - ничего нет.
Например, совершенно свободная тема - конвергенция контента. Чтобы, например, в печатном издании использовать цифровой контент. А не только наоборот - о чем и так все пишут.

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

В реальности же, по-моему, все пресс-сайты больше озабочены расстановкой взаимных ссылок c ресурсами для взрослых чем реальными сервисами.

Кэширование: memcached vs. terracotta

Сравнение двух широко используемых систем кэширования: memcached и terracotta. Основные выводы:

Memcached не является распределенной хэш таблицей. Каждый сервер - автономен и ничего не знает о других. Все алгоритмы распределения данных - целиком ответственность клиента. Terracotta же поддерживает кластерный кэш.

Типичная схема обновления данных при использовании memcached состоит в записи данных в базу и запуске после этого асинхронного процесса (возможно - из триггера БД) для обновления кэша. Вот, например, как Facebook это делает. Terracotta исповедует противоположный подход - обновление кэша сначала и запуск асинхронного процесса для обновления БД после этого (прозрачно для разработчика).

В целом, простое правило для примененеия может выглядеть так: если доступ к кэшируемым данным нужен только для чтения - можно использовать memcached. Его настройка и установка проще, к слову. Если кэш обновляется - то Terracotta. Так что продукты, на самом деле, могут дополнять друг друга.

Будильник



и другие креативные идеи отсюда