среда, 16 мая 2012 г.

Euro2012 app

Пару недель назад (после появления сотрясающих юанет видеороликов про избиение футбольных болельщиков "доблестными" работниками милиции) подумалось: каково же будет десяткам тысячам туристов, решившимся на непродолжительный срок променять свой уютный Евросоюз на суровую Украину.

Хорошо было бы им всем вручить приложение-путеводитель на базе карт, где они смогли бы указывать "горячие" точки =)
  • "тут продаются некачественные пирожки"
  • "в этой подворотне отжимают телефоны"
  • "на этом проходе на стадион особо неадекватные стюарды, не знающие английский"
  • "в этой квартире можно бюджетно переночевать, но опасайтесь смесителя в душевой"
  • и т.д.
А также заранее подготовить немного точек, особо актуальных для любителя футбола.
С бюджетом UEFA такое приложение можно было бы реализовать и бесплатно раздавать каждому купившему билет на Euro2012.

Судя по всему тема чемпионата Европы довольно актуальная. На недавнем Киевском марафоне Garage48 одним из проектов был нацеленный на сабжевую аудиторию "welcometokiev.com". Хотя вряд ли у него получится тягаться с лидером "Интересный Киев". А мартовский Forbes упоминает компанию SoftTechnics: руководитель оной Александр Борняков (Priest, многие мои экс-коллеги наверняка помнят его) возлагает большие надежды на массовое использование "Euro 2012: Travel Assistant". Пытался найти в appstore - не получилось.

P.S. А удивленные украинскими реалиями туристы скорее всего будут пользоваться уже привычным Foursquare. Смотрите на ваших смартфонах много новых добавленных точек с интересными комментами, только на Украине, только этим летом... 

понедельник, 14 мая 2012 г.

Silicon Valley. My first USA business trip

Культурный шок или "где вы берете такие гамбургеры?"


Силиконовая Долина - это одно большое село. Там вообще всё также что и у нас, только аккуратнее, чище, ухоженнее, автоматизированнее, доброжелательнее ...

Удивление начало закрадываться ещё на нашем континенте, во Франкфурте: после посадки никто не аплодировал, вообще. Тамошним аэропортом пугали заранее, но не так страшна масштабная инфраструктура, сколько наглядны указатели, обильно развешанные в ней (забегая вперед: бедные иностранцы, которые массово прилетят в июне в Борисполь, терминалу F ещё работать и работать над информативностью). Это был мой первый трансатлантический длительный перелет, хотя более подходящее название той дуги, которую описывал наш Airbus - транс-северно-ледовитый. Поразило наличие трех камер, изображениями с которых можно было любоваться все 11,5 часов: вперед, вниз и даже "в перспективе" (самолет, вид сверху).

Земля обетованная встретила хорошей погодой, полуднем по местному времени (в Киеве в это время стрелки часов неминуемо приближались к 23 часам) и даже wifi без ограничений.
Автоматизация в общественном транспорте зашкаливает: билеты на мини-метро (Bart) и электричку (CalTrain) можно купить только в автомате, принимающий чипованые кредитки, и мелкие долларовые купюры. Впрочем рядом обычно есть разменный автомат (20 => 5 * 4). В автобусе водитель купюры в руки не берёт, однако кредитку его чудо-агрегат не принимает.
На метро мы благополучно доехали до станции с чудесным названием Милбро, и также благополучно опоздали на электричку. Причина банальная: покупали билеты в автомате. В этом микрорайоне на подступах к Долине состоялось моё знакомство с традиционной американской кухней в местной забегаловке.
Местная кухня действительно необычна. Ни тебе салатиков, ни супов, ни разнообразных гарниров с мясными блюдами. В основном гамбургеры и сандвичи. В крайнем случае - отбивная с фри. Картошка фри - вообще как основное блюдо-гарнир, щедро досыпаемая по-умолчанию к любому гамбургеру. Размер обычного маленького по их меркам гамбургера... Видели биг-мак? Так вот такой же, только раза в 1.5-2 больше. При этом хлеб нигде не подают, салфетки тоже не жалуют. А главное - стоимость. Завтрак на троих у нас обычно обходился в $40, ужин - от $50 до $60. Повторюсь: огромные порции, дешевле чем у нас - разницу ЗП наверное не стоит упоминать?
Несмотря на то что CalTrain ехал довольно таки резво, трансфер до места назначения (Lawrence) затянулся, было очень много остановок, среди которых особо привлекали внимание Sunnyvale, Palo Alto, Stanford.

Google Maps - ну почему в твоих картах нету масштабной линейки (в отличии от того же Яндекса)? Оптимистично оценив расстояние до гостиницы в Санта-Кларе как "несколько кварталов на восток, пару кварталов на север" мы столкнулись с суровой действительностью характера местной застройки - тем что называется "одноэтажная Америка".
Мне стал ясен смысл фразы "средний американец рождается, живёт и умирает в машине". Без собственного средства передвижения чувствуешь себя там человеком второго сорта. Общественный транспорт ходит редко, людей там очень мало (кстати в автобусах все надписи продублированы: на английском, испанском и китайском транслите). Какой-нибудь украинский застройщик наверное упал бы там в обморок от вида "неэффективного использования  земли". В тоже самое время дороги - очень широкие, перед светофорами - по 5 полос в одну сторону. И это даже не interstate road. Очень много больших мощных и спортивных машин, их утробное рычание слышно на любом светофоре. Но никто не гоняет, никто не спешит проскочить на розовый сигнал светофора. Напротив, отношение водителей к пешеходам - ошарашивает: неоднократно перед нами сдавали назад на пару метров машины, заехавшие на полметра на зебру! Начав переходить дорогу, можно не сомневаться в том, что любая машина будет стоять и ждать 5-10 секунд, пока ты дойдешь до нее и пропустит тебя. Также чувствуется взаимное уважение водителей - на светофоре между ними такая дистанция, что влезет еще парочка небольших машин.
Гостиница наша была с интересным названием "Avatar". Поселились втроем в один номер с двумя широкими кроватями =) Прогулялись по окрестностям, нашли офис Yahoo, закрывающийся через 10 минут парк аттракционов, место проведения конференции. Но нигде не было ни одного (продуктового) магазина: эх, где же вы ларьки с чипсами для оголодавших программистов? В конце концов нашли оплот культурной жизни Санта-Клары: кинотеатр, старбакс, пиццерия и пара магазинов. К сожалению это было воскресенье, вечер, а также католическая Пасха. Миссия по покупке бутылки воды была провалена... если бы не Foursquare. Он подсказал что за чекин в нашем отеле предлагается вода или вино. Первая материальная выгода от сервиса!


Цель визита

Следующий день был посвящен шоппингу: Apple Store, Disney Store - обязательные пункты нашей программы. Два новых айпада и умеющий поддержать разговор айфон - таков был наш скромный улов. В магазине игрушек было намного сложнее: на стендах "Cars" хотелось купить всё и сразу (думаю Полина поддержала бы мой порыв =). Напротив Apple Store был Microsoft Store (совпадение?), в него я так и не успел зайти, хотя было интересно.
Возможно Долина не показатель, но толстых "типичных" американцев - встретилось всего несколько человек. А ещё удивило что красивые девушки - в основном азиатки (хотя я не расовый специалист и это могли быть метиски, мулатки).
Возвращаясь к местным расстояниям, приведу вот такое число: "25 тысяч" - именно столько насчитал шагомер в день нашей наибольшей пешеходной активности (справедливости ради отмечу, что считал он по киевскому времени, и в отчётные сутки попал отрезок пути до гостиницы и "прогулка" следующего дня).


Настоящая цель визита

Конференция Percona Live 2012 заслуживает отдельного поста. Без погружения в детали могу отметить несколько моментов:
  • Задорнов был не прав, умные американцы есть, и их много, а их скопление в конференц-холлах гостиницы Hyatt - просто зашкаливало
  • не было засилья apple-зависимой молодежи (и хотя я на всех сессиях сидел с айпадом, записывая ключевые моменты в Evernote - себя я не включаю в эту группу =)
  • очень много 40-50-летних слушателей (с ноутбуками без надкушенных яблок, ага)
На конференции всё было пропитано духом благодарности Oracle, за то что продолжает развивать mysql в нужном для коммьюнити направлении, хотя их представителей среди докладчиков не было (но наверняка шпионы пробрались).

На докладе Петра Зайцева (CEO Percona) я задал вопрос, и своим акцентом привлек внимание. В тот же день он к нам подошёл, интересовался кто мы и что мы делаем. ZeoBIT и MacKeeper ему естественно ни о чём не сказали. А московский акцент то от него никуда не делся =)


Удивительные и странные аборигены

В нашей гостинице был бассейн, но в нем почему-то никто кроме нас не плавал,
возможно потому что мы всегда приходили в то время, когда он официально уже не работал, после 10 вечера. Каждый из нас даже купил себе плавки. А в один из вечеров мы даже сидели там в сильную грозу, как раз ту, которая подарила миру фотку с San-Francisco Golden Gate, в который одновременно попадает несколько молний.

Ещё было очень необычно ощущать чрезмерную вежливость местных жителей: обращение на "сэр" и вопросы "How are you?" Я испытывал легкий дискомфорт, когда отвечал "fine, thanks" или даже просто молчал в ответ.

В тоже самое время не могу не отметить твердолобость и халатность некоторых людей (насчёт таких Задорнов точно был прав). В обоих случаях отличился персонал нашей гостиницы (я им даже накомментил в отместку на Foursquare). Заказав себе FitBit девайс на Амазоне, я сразу же посетил рецепшн с просьбой приписать мою фамилию к фамилии, на которую был оформлен наш номер. Девушка вроде даже куда-то записала и заверила что всё будет ок. Каково же было  мое удивление через пару дней, когда я узнал что мой вожделенный девайс приехал, но не найдя меня среди жильцов, персонал отправил посылку обратно =( Второй прокол вышел с трансфером к электричке, при аналогичных обстоятельствах. Накануне мы заказали поездку  на гостиничном шатле, но водитель-мексиканец наотрез отказывался везти, говоря что нас у него "не записано". Про купленые за 5 баксов батарейки, с которыми фотоаппарат даже не включался - я умолчу.
Вышеупомянутый Fitbit обошлся бы мне в $90 (бесплатная доставка в течении 2х дней), при заказе на Украину - $133, а местные дельцы и вовсе - за $250 продают. В двух Disney Store не было ни одной AppMates (игрушечных машинок, которые нужно возить по айпаду), говорили что все раскупили. Уже приехав в Киев, нашёл их Ebay и огорчился:  "Item location: Santa Clara, CA, United States", они были совсем рядом =)
А ещё нам повезло на спортивные события. 12 апреля играла местная хоккейная команда Сан-Хосе (удивление: это же Калифорния, тут тоже в хоккей играют?), а мы пришли в ирландский паб прямо посреди матча, и сидели среди болельщиков. Паб был совсем рядом с нашей гостиницей, но то ли он очень хороший и известный, то ли других в Санта-Кларе совсем нет - но в этом пабе за соседними столиками собралась вся Percona праздновать завершение своей конференции. А 13 апреля мы ехали на электричке в Сан-Франциско в окружении бейсбольных болельщиков, собирающихся на какой-то матч. Возможно по этому поводу (а может там так всегда) - на улицах было очень много полицейских машин.
Очень впечатлило отношение к людям. В автобусах есть пандус, который может поднять и погрузить инвалида в коляске: мы лично видели как водитель автобуса потратил минуты 4, ожидая пока disabled person доедет до остановки, пока он погрузится, а потом встал со своего места и помогал ему пристегнуть коляску специальными ремнями. Шок. 
Также очень необычно по нашим меркам повел себя охранник на станции метро (которое работает по принципу: купил билет, отметился на станции начала пути, сдал билет на конечной станции). При покупке билетов на пути в аэропорт автомат нас обвел вокруг пальца и не счарджил нужную сумму, что и выяснилось на выходе. Этот товарищ взял наши билеты, отвел к автомату (уже за турникетом), а выяснив что у нас нет мелких купюр, побежал к автомату-разменнику.

Cisco city


Сложилось впечатление что по холмистости Сан-Франциско похолмистее Киева. Особо это ощущалось во время поездки на местном трамвайчике-фуникулере с незамысловатым названием "Cable Car". Вагончики двигаются по маршруту, прицепляясь к тросу, проложенному под дорогой. Музей имени этого вида транспорта был по совместительству также главной и единственной подстанцией приведения всех маршрутных тросов в движение. В музее мы узнали что в начале прошлого века (1906 год) почти весь город был разрушен: сначала мощное землетрясение, а потом пожар. Водопровод был уничтожен - тушить нечем, уцелел только 1 пожарный гидрант, ему потом памятник поставили.
Во всех музеях, которые мы посетили (Intel в Санта-Кларе и Cable Car в Сан-Франциско), вход был бесплатным. Специально не экономили, так получалось. 
Времени у нас было мало, но до океана с видом на Голден Гейт мы добрались. Я помочил ноги в океане (хотя технически это был залив), увидел титульный мост, Алькатрас, морских котиков на 39-м пирсе, накупил сувениров - можно было возвращаться домой с чистой совестью.

P.S. Больше слайдов - на Picasa.

вторник, 24 апреля 2012 г.

Последние перлы Полины

Дочка в последнее время успела выдать несколько перлов.


Заливаю фотки с фотоаппарата на комп, подходит Полина и видит себя на одной маленькой превью: О, папа, ты фотку в твиттер выкладываешь?


Полина открывает холодильник, достаёт сыр бри (тот что с плесенью), откусывает и говорит: "Папа, сыр испортился", и несёт выбрасывать =)


Полина: Я - принцесса, спящая красавица.
Я: Тогда тебе придется долго спать. А принц у тебя есть?
Полина: Нет ещё. Подрасту - появится...


В первые несколько дней моей командировки она говорила: "Мама, хорошо что папа уехал!"
Но потом передумала и ждала меня с нетерпением. Ещё бы: я ей столько подарков по скайпу показал.
Однако это не помешало ей в первый же после возвращения день, на вопрос "кого ты любишь?" упомянуть меня только на 7м месте,  сразу же после кота её бабушки =)

пятница, 3 февраля 2012 г.

#Twitter, #tags, #ifttt and a general idea of a service


            I have an idea. I'm thinking about a service which will inform you about any kind of events, results and news you are interested in. Aren’t you boring by looking for the game results of your favorite football clubs every Saturday? How about checking currency exchange rates and stock quotes every morning? How often are you searching for new episodes of some lovely movie series? Yes, its all annoying, especially if you have many different interests. I want to get all of them "in time" without additional notifications and extra effort. In this paper I'll describe my thoughts how such service should look and how it could be easily implemented by Twitter and about similar but different solutions from "ifttt".

            First of all, information should be delivered to you by itself. It should be pushed to you by the most useful channel. It could be email, tweet, facebook message, or sms. Imagine that  you are opening a configuration page on this service, adding a new "event trap", choosing the category Sport => Racing => Formula1, checking desired check boxes, for example, GP Qualification Top10, GP Race Top10, Standings after race etc, and then saving this configuration. Also you could setup regular events and specify the period of notifications: weekly, every working day, each second Friday etc. But i see an insurmountable problems for this service implementation. There are categorization of possible events and details extraction about triggered event.

            We are living in a very socialized and informational society in despite of home country. You can find appropriate data sources like rss, Twitter or Facebook accounts on official sites for many of your interest subjects. But you also will have problems with them, because along with required events & results you'll get a lot of news, reposts and other collateral informational trash. How to deal with it? I could propose a solution only for Twitter. If Twitter will invent tags for tweet and allow a following user by those tags (not whole flow as it now), this will let to follow @House_MD only by "New Episode", @LiverpoolFC only by "Match Result", @CouchDB only by "Release", @Google only by "UI redesign".

            A few months ago “ifttt” was launched. The full name of this service is "If This Then That". It lets you to configure triggers from predefined list, and setup actions also from predefined list. For example I'm using it to inform by twitter about each my post at blog. I was even able to setup a trigger which sends me Liverpool game results from the official site feed, but for some reason it doesn’t always work. Although it’s a very nice service but it works only via API of other services, so its not so flexible.

            I want to be always pushed with information that I need. I hope if I have such a desire that other people also could want it. Its one of the best practices to launch some useful service, when you make it for yourself but also thinking about other people’s needs. Ifttt startup proves that a niche of automatic information delivery exists. I suppose Google or Yandex could make this service easily. Otherwise we should ask Twitter to make tags for this purpose. Does anyone linked with influential employees at Twitter? =)

среда, 25 января 2012 г.

Openspace. IMHO

   Недавно на ДОУ возникла (в который раз) дискуссия про openspace-организацию офиса, вернее про его влияние на эффективность работы программиста. Демарко в "Peopleware" распекал в том числе и openspace, резюмируя: "если для того, чтобы нормально поработать, вы приходите на работу очень рано, когда ещё никого нет, либо остаётесь допоздна, когда уже никого нет, либо ищете укромное место чтобы уединиться - с рабочим окружением у вас большие проблемы". И якобы по результатам исследований openspace снижает производительность программистов на 15-20%.

   С другой стороны в довольно зрелых и успешных софтварных компаниях - программисты сидят в таких же отдельных "кубиклах" в больших просторных помещениях. Возможно помимо максимальной производительности отдельного взятого "сферического девелопера в вакууме" есть другие критерии?

  Помимо банальной экономической причины "в openspace больше влезет =)" есть ещё разделение на команды (тимы). А тимы, что в продуктовой, что в аутсорсинговой компаниях, имеют свойство расти, сокращаться, трансформироваться - а стенки спроектированного (или выбранного) офиса особо не попереставляешь, куда легче двигать столы с перегородками.

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

   7-8 лет назад такую точку зрения высказывал менеджер нашего отдела, ратующий за то, чтобы все веб девелоперы сидели вместе, в одной большой комнате. Теперь некую специфическую пользу openspace понимаю и я. Тем более если проекты, над которыми работают отдельные команды, не оторваны друг от друга, как это возможно в аутсорсе с разными клиентами-заказчиками.

  Конечно, помещение, где работает 200+ человек, никаким микроклиматом и совместной работой не оправдаешь, даже 50 — перебор. 20-30 в самый раз.

P.S. У нас в KoloGlobal сейчас в одной комнате сидит 21 человек, площадь комнаты 104 кв.м. Openspace, да =)

Плохая карма

Был у нас на днях интересный кандидат:
с двух работ его сократили, на других двух - не платили ЗП.
Видимо карма такая...

С таким "везением" вспомнился совет из "Менеджера Мафии":
"У вас на столе лежит большая пачка резюме соискателей.
Смело выбрасывайте половину резюме в мусорную корзину - вам же не нужны неудачники" =)

четверг, 8 декабря 2011 г.

Что может быть общего между Nokia и MongoDB

Казалось бы - что может быть между ними общего? Первый - телефон, а второй - так вообще нереляционная БД. Но сегодня они у меня потрясающе одновременно поломались, в 17:50 (я по еррор логу и по логу общения с женой сверил =)

Раньше я думал, что кирпичами могут только Айфоны и Андроиды становиться, да и то - после неумелого вмешательства. Оказывается смартфон от Nokia тоже способен на такую подлость. Всего то навсего, по пути за чаем нужно было что-то в интернете посмотреть - а он заребутился, потом ещё раз при загрузке и всё... кирпич =)

Гораздо интересней получилось с MongoDB. Её курсоры решили массово поотваливаться как раз в тот момент, когда трансатлантический борт с нашим веб-архитектором и главным (его ещё  можно назвать единственным) админом отрывался от взлетной полосы Мюнхенского аэропорта. Впереди у них был 13 часовой перелёт в Сан-Франциско. Они отправились, внимание, на MongoDB конференцию =) Это уже второй случай, заставляющий меня думать о том, что у серверов нашего админа есть какие-то мысли и чувства, они его любят =) В прошлый раз мы долго готовились к переносу парочки развесистых продукт сайтов со stand-alone сервера на кластер. Перенесли, всё прекрасно заработало, но на следующее утро сервер затосковал по отобранным сайтам и ушёл в небытие, и не хотел грузится в течении 3-4 часов.

...

Дома никак не мог заставить телефон ожить. А узнав что гарантия на него кончилась более полугода назад - в сердцах разобрал его, посдувал пыль, поудивлялся какое оно всё теперь маленькое и собрал обратно. Но похоже китайцы на уроках труда собирают телефоны более тщательно чем я: после моей сборки зазоры, как бы лучше сказать... появились =) Чувствую что скоро ещё одна телефоноеденица в моём лице отойдёт от Nokia к HTC или Sumsung.

Продолжение истории с MongoDB тоже интереснее. Мне на всякий случай оставили везде рута. На мои вопросы - а что делать в случае чего - админ отвечал "всё будет хорошо" =)
Всё действительно было неплохо: после небольшой паники, гугления и чтения документации (а тем временем меня уже и наш QA робко спрашивал - почему 500 ошибок много, и office admin передавал жалобы, и кастомер суппорт стучался, в надежде меня "уведомить") достал рута и принялся по очереди рестартовать инстансы. Не помогло, попробовал ещё пару вариантов рестарта, тоже не помогло, с удовлетворением отметил про себя работу арбитра: кто-то из реплика сета быстро и незаметно становился мастером. Вспомнил про второй набор MongoDB серверов, семантически отделенный от основного, порестартовал и их. Порестартовал также nginx, начиная понимать что с БД то всё в порядке, проблема (как и неоднократно уже происходило) с драйвером под php. Отключил использование слейва, отключил чуть-чуть функциональности. Помогло. Обратил наконец внимание на чат жены, которая меня уже давно призывала к ответу, когда же я собираюсь выходить и что она меня уже ждёт =)