Приложение Маяки Эстонии

Коничива, уважаемый!

За время вашего отсутствия мы тут вон чего понаписали:

24 Апреля

Пебблотроллинг продолжается

Сегодня (вроде как) выходят часы от Apple. Господа из Pebble просто не могли не потроллить:

Ранее они выпустили хорошую инфографику на эту тему. Что же до бесплатных часов для разработчиков, их начнут рассылать с 3 мая, причём все расходы, включая, таможенные бeрёт на себя Pebble. Ещё раз спасибо!

18 Марта

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

Вчера я лишь вскользь упомянул Pebble Time. Да, это интересный гаждет, но сказать о нём пока мало чего можно, сейчас куда интереснее сам анонс, сбор средств и прочая активность. Несмотря на то, что Pebble - компания богатая, они "вернулись к истокам" и собирали деньги на новые часы на Kickstarter`е. Напомню, что их первые часы долго были там рекордсменом, собрав более 10 миллионов вместо запрашиваемых 500 тысяч. Для Pebble Time запрашивались те же 500 тысяч и... они были собраны за 17 минут. На текущий момент собрано почти 19 миллионов и сбор продолжится ещё 9 дней. Да, кредит доверия у компании и её кампании колоссальный.

Ещё интереснее сложились взаимоотношения у Pebble с Apple, тоже анонсировавшей смарт-часы. О самих "яблочасах" было известно давно, но более подробные спецификации были оглашены лишь 9 марта. Среди прочего, было рассказано о золотой версии, стоимостью в 10000 долларов (во многих источниках первоначальная цена была указана в 17000, либо опечатка, либо часы быстро "подешевели"). Цена была бы вменяемой для ювелирного изделия или нормальных механических часов, но для гаджета с весьма средней начинкой, которая устареет уже к концу текущего года - нет. Сразу же начался троллинг, в котором отметилась и Pebble. Кстати, там же в комментариях было подсчитано, что даже с учётом цены самих часов в 1000, если перевести оставшуюся сумму в золото заявленной пробы, получится около 400 грамм... Вот и получается "слегка тряхнул рукой, часы слетели, размазали по асфальту воробья". Кульминацией эппловского анонса стал рост финансирования Pebble Time.

17 Марта

... и ещё немного о Pebble. Собственно, с тех пор, как я полтора месяца назад выпустил пятое обновление своего циферблата, работы над ним завершились. Всё работает, всех устраивает, чего ещё ковыряться?

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

Также пару недель назад наткнулся на этот материал. Воспроизвёл те шаги, что советовал автор и в итоге сейчас мой циферблат ежедневно скачивают более 150 раз, а общее количество загрузок составляет 2500. С тех пор, как началась реклама моего циферблата, я получил всего лишь два мэйла от пользователей, что меня очень радует. Отсутствие жалоб от населения - лучшая награда, сами понимаете. В первом из них было предложение, а во втором - жалоба, мол, погода не работает. Собственно не работала погода и у меня, так что я на 100% был уверен, что это неполадки со стороны сервиса openweathermap, от которого циферблат получает данные. Из-за поездки а Хаапсалу, проверить наверняка я смог это лишь в субботу вечером. И вот теперь представьте: я полный суши и пива захожу на сайт CloudPebble и мне выскакивает такое...

Не делая резких движений, я дважды перечитал текст, а затем заполнил форму по ссылке. Слабо веруя в такую халяву, я пошёл искать информацию в интернете. Никаких официальных анонсов, только тема на reddit, созданная такими же счастливчиками, как я, и небольшая статья, написанная по этой теме. Как показывает обсуждение и мой собственный пример, часы скорее выдаются рандомно, а не за реальную активность. Чтож, спасибо больше компании Pebble за такую беспрецедентную акцию!

23 Января

По просьбам трудящихся

Циферблатные хроники. Как достаточно быстро выяснилось, предыдущая версия моего циферблата имела одну серьёзную недоработку: при полном отключении standby-экрана, погода обновлялась раз в секунду, что адски быстро сажало батарею телефона и "наедало" большой траффик. Сам тужился пару дней, но ничего нормально работающего не породил. В итоге решение нашёл tmnhy, за что ему огромное спасибо. Таким образом часы обновились до версии 1.03

Получил пару просьб от пользователей, которые планирую реализовать на следующей неделе:

  • реализовать отображение температуры, как по Цельсию, так и по Фаренгейту
  • сделать версию циферблата на датском (переводы графики и страницы настроек уже подготовил, дело за малым)
20 Января

Часовщик XXI века

Расскажу, как обстоят дела с моим циферблатом для Pebble, которому я посвятил немало времени в последние три недели. Итак, с момента релиза (22 дня назад) он был скачан более 600 раз, сам циферблат я обновлял дважды и дважды страницу настроек. Кроме того, по итогам разработки я написал статью на Хабр, где в комментариях получил пару дельных советов.

Теперь подробнее и с деталями. Первый же отзыв, полученный через пару часов после релиза сообщал мне, что... я перепутал AM и PM в 12-часовой версии. Я быстренько пофиксил это дело, выпустив версию 1.01. Потом было много разных экспериментов (например, использование графики с прозрачным фоном). Кроме того, мне порекомендовали статью по оптимизации из которой я использовал пару примеров. Как ни странно, код стал компактнее, но вот количество потребляемой памяти возросло, а не наоборот.

Версия 1.02 была выпущена вчера. В ней полностью переработан механизм отключения standby-экрана. Собственно, в примере с которого я брал код на C, такой опции не было, там была возможность отключения автоматического возврата к standby-экрану. У себя же я изменил её описание на странице настроек, но не изменил суть. Вчера эта недоработка была исправлена.

Теперь о странице настроек. С ней всё проще, так как я могу обновлять её в любой момент, независимо от циферблата. На момент релиза для корректного отображения погоды пользователю надо было где-то найти ID своего города openweathermap.org и ввести его в настройках. Мне самому эта система не нравилась, вдобавок пару раз пользователи меня спрашивали где им взять этот ID. Однозначно это надо было менять. Оптимальным вариантом мне показалось поле ввода, предлагающее варианты в зависимости от вводимого текста (как в поисковике Джуджла). Я попробовал несколько скриптов для этого и остановился на jQuery-Autocomplete. Понравилось, что он не тащит с собой ничего лишнего (как, например, популярный Select2). Также я поместил весь список городов в базу данных. Тут выяснилось два интересных момента: 1) в разных странах существовали города с одинаковыми названиями и 2) у некоторых городов (по всей видимости достаточно крупных) было по несколько ID, привязанных к разным координатам. Для решения первой проблемы надо было добавить обозначение страны. Максимально компактным и наглядным решением мне показались флаги перед названием города. Чтобы свести к минимуму количество запросов к серверу (количество которых и так возросло из-за динамического списка), я целенаправленно искал флаги-спрайты и нашёл отличный вариант. Единственное, что я изменил - это сжал изображение флагов через TinyPNG. Что из этого получилось, можно посмотреть здесь.

Со второй проблемой было сложнее. Не хотелось отпугивать пользователей какими-то лишними опциями или координатами. В итоге я просто "отсёк" все лишние варианты через GROUP BY в SQL-запросе. Да, решение компромиссное и имеет свои минусы. Например, если в одной стране есть два города с одинаковым названием, то будет показан только один из них. Тем не менее, ничего лучше я пока не придумал.

Планы на будущее? Ну с нынешним циферблатом уже мало чего можно сделать. Единственное, что ещё хочется реализовать - определение местоположения по GPS и поиск города исходя из этого. А ещё есть идея другого циферблата, гораздо более простого.

Цитировать
в комментарии