?

Log in

myJournal [entries|archive|friends|userinfo]
Roman Busyghin

[ website | My Website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Semiprivate API for Windows Phone 7 [Mar. 2nd, 2010|03:47 pm]
Roman Busyghin
[Tags|, ]

Интересный документ про разработку под готовящуюся к выходу Windows Phone 7. В частности, меня заинтересовал следующий абзац:

"In addition to the standard Windows Phone Application Platform that will be publicly available to all developers, partner applications will have access to an extended set of managed APIs and a limited set of native APIs," reads one leaked Microsoft document. "The extended managed APIs are meant to support extending the phone experience with functionality that is specific to a phone or network. This set of APIs supports functionality such as camera mode extensibility. Access to native APIs is limited to a defined subset that is driven by partner needs, and adherence to that subset will verified during application submission." Microsoft adds the requirements of OEMs and mobile operators "necessitate the exposure of added functionality."

Microsoft делает получастный API к Windows Phone 7, который будет доступен партнёрам за отдельную денежку. Почему бы не открыть всё наружу? Зачем ограничивать развитие сторонних программ для платформы? Microsoft, блин, такой Microsoft.

UPD: Хороший анализ о текущем положении дел Windows Phone 7 от Грубера показывает ещё фактов, что Microsoft по-прежнему ставит себе палки в колёса при запуске новой платформы. Жёсткий мазохизм какой-то с их стороны. iPhone + Android точно сожрут эту платформу.

Link1 comment|Leave a comment

Suddenly: Prague [Nov. 18th, 2009|10:27 am]
Roman Busyghin
[Tags|]

В начале декабря будем в Праге на четыре дня. Предложения? :-)
Link3 comments|Leave a comment

Commonplace: Avoid Long Parameter Lists [Nov. 11th, 2009|01:31 am]
Roman Busyghin
[Tags|, , ]

На Google Developer Day '09 увидел замечательный слайд, который гласит следующие вещи:

Avoid Long Parameter Lists
  • Three or fewer parameters is ideal
    • More and users will have to refer to docs
  • Long lists of identically typed params harmful
    • Programmers transpose parameters by mistake
    • Programs still compile, run, but misbehave!
  • Techniques for shortening parameter lists
    • Break up method
    • Create helper class to hold parameters
    • Builder Pattern

Помнится мы долго дискутировали с grundik, soleynikov и dendromutant как передавать пачку параметров в методы PHP-шного фреймворка для автоматизированного тестирования Plesk API RPC. Если бы кто тогда ткнул в что-то подобное, то спора бы и не было. Да и сейчас этот слайд тоже пригодился, я как раз не знаю как организовать некоторые вещи в своём коде. Слайд хорошо прочищает мозг. Хочется почаще встречаться с такими полезными советами по организации кода/архитектуры и вообще best practices. Может кто поделиться чем-то похожим?

Link8 comments|Leave a comment

JUG.ru event: iPhone day [Sep. 17th, 2009|02:23 pm]
Roman Busyghin
[Tags|]

Третьего октября в Великом Новгороде будет проходить встреча JUG.ru под названием iPhone day. Я буду выступать на ней с докладом «iPhone OS Networking».

Темы остальных докладов:

  1. Александр Бабаев, Михаил Богорад, Проектирование интерфейсов для iPhone.
  2. Денис Бызов, SPB Brain Evolution for iPhone.
  3. Денис Бызов, Работа с видео на iPhone.

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

Место проведения: НовГУ, ул. Большая Санкт-Петербургская, 41, ауд. 1303. Посмотреть на Яндекс.Картах.

LinkLeave a comment

S.T.A.L.K.E.R.: Call of Pripyat [Sep. 6th, 2009|06:34 pm]
Roman Busyghin
[Tags|]

Ух ты, оказывается этой осенью выходит S.T.A.L.K.E.R.: Зов Припяти. Судя по превью предварительной версии, третья часть игры обещает быть не хуже, чем оригинальный S.T.A.L.K.E.R. Ну и хочется надеяться, что она не будет такой прожорливой до ресурсов.

Самое интересное, что буквально за пару часов читал интервью с PR-щиком из Valve, где он говорил о важности учитывания мнений фанатов игры. Сравнивая список изменений Зова Припяти, видно, что ребята стараются включать самые популярные запрашиваемые фичи. Правильным путём идут. Хочется надеяться :-)
LinkLeave a comment

Time psychology perception [Aug. 24th, 2009|01:15 am]
Roman Busyghin
[Tags|]

Когда я проходил собеседование в Яндекс, Тимсон мне задал тогда интересный вопрос на моё восприятие времени: «Если веб-страница загружается 1,5 секунды, то это много? А если 1,4 секунды?» Я тогда тупил и пытался ответить что-то умное. Ничего хорошего у меня из этого не вышло, но не в этом суть. После собеседования Тимсон рассказал мне про три временных константы человеко-машинного взаимодействия:

  • 0,1 с — константа воспринимаемого времени обработки (система реагирует мгновенно)
  • 1 с — константа незамедлительного времени отклика (пользователь успевает заметить некоторое замедление, но работа системы всё равно оценивается как быстрая)
  • 10 с — константа времени элементарной задачи (максимальное время работы системы, которое пользователь готов ждать)
С тех пор, как я работаю нагрузочным тестировщиком, у меня часто возникали задачи оценки времени работы и на них как-то удавалось ответить с помощью опыта и этих трёх величин. Но эти константы ничего не говорят о сравнении двух временных величин. Скажем, если пришёл разработчик и сказал, что он улучшил свой алгоритм сортировки данных. Мы с ним провели нагрузочные тесты и выяснили, что алгоритм уменьшил своё время работы с 2 секунд до 1,8 секунд (числа взяты от фонаря). Это хороший результат? Заметят ли пользователи эту оптимизацию? Оказывается, что ответ на этот вопрос есть в книге «Проектируем время. Психология восприятия времени в программном обеспечении». Когда я прочитал анонс о выходе русскоязычного перевода этой книги, я загорелся идеей прочитать её, просто потому что я считал, что эта книга будет из серии «Дизайн привычных вещей» Нормана. Но оказывается, что в ней есть и ответ на вопрос про сравнение двух временных величин (правило 20%).

В общем, как мне кажется, эта книга — отличный кандидат на стол специалиста по нагрузке :-)

Link6 comments|Leave a comment

What's new in Dashcode [Aug. 11th, 2009|03:19 pm]
Roman Busyghin
[Tags|, , ]

Смотрю WWDC '09 iPhone Track Video Collection, восторгаюсь тем, что сделали в новой версии Dashcode (она будет доступна начиная с Snow Leopard). Две ключевые фичи, которые внедряются в этой версии — это Bindings и Data Model.

Вкратце про Data Model: можно указать любой XML или JS фид как источник и Dashcode автоматически построит по нему модель данных. При этом не нужно будет писать никакой код для парсинга этого фида, а только лишь указать откуда брать данные.

А bindings позволяет связывать эту Data Model с интерфейсом приложения. То есть, элемент element1 из фида будет отображаться в этом месте вьюхи, element2 — в этом. Привязываем мышкой и получаем профит. Технология очень похожа на Cocoa Bindings, где тоже можно связывать различные свойства модели с интерфейсом без какого-либо написания кода.

Наряду с этими двумя мегафичами также можно легко настроить Offline Storage средствами HTML5, покрутить различные ручки CSS3-трансформаций объектов, сверстать две версии интерфейса приложения — мобильную и десктопную. В общем, супер. Отличная версия намечается. С нетерпением жду от Apple тесной интеграции Dashcode с Cappuccino и возможности писать веб-приложения уровня десктопа с такой же лёгкостью.

LinkLeave a comment

Smart aggregation [Aug. 11th, 2009|02:54 pm]
Roman Busyghin
[Tags|, , ]

Я, как и многие читающие меня, пользуюсь RSS-аггрегатором для чтения различных новостей (или фидов) с множества ресурсов. Текущая моя читалка — это Google Reader. У меня в ней до чёрта фидов, каждый из которых пишет интересные вещи. Но часто получается так, что они пишут об одном, но ссылаясь друг на друга, либо копируя текст друг у друга. Всё бы ничего, но очередное возвращение из отпуска вызывает желание отметить всё как прочитанное, не смотря на то, что там могут быть интересные вещи. Это ужасно.

Конечно, сейчас есть ресурсы типа Digg, Techmeme, Reddit, где показываются популярные статьи. Но даже они не гарантируют того, что интересующий меня контент появится там.

Конечно, есть Friendfeed, в котором почитать можно всё, что полайкают или откомментят твои френды (я намеренно использую терми «френды», а не «друзья», чтобы хоть как-то показать разницу между этими словами). Даже Google Reader недавно ввёл лайки у себя. Но для меня этот рецепт также не работает, потому что область пересечения моих интересов не совпадает полностью с моими френдами.

Я давно мечтаю о том, чтобы сделали автоматическую размечалку новостей на подобии Яндекс.Новостей, которая умеет достаточно хорошо извлекать новостные факты из потока и группировать их для удобства чтения. Натравить бы этот алгоритм на мои фиды (причём, важно иметь извлечение фактов не только из русскоязычного потока, но и англоязычного). Но, кажется, что мои мечты потихоньку начинают сбываться и мы движемся к светлому будущему автоматизации выделения фактов из потока фидов. Зарубежные коллеги сваяли Fever. Инструмент, который позволяет группировать похожие новости из RSS-потоков. Причём, чем больше об этом пишут, тем «горячее» становится новость. Также можно менять период, по которому строить выборку по фактам (не нужно мучаться всякий раз после отпуска). Жаль только то, что Fever стоит 30 $ и требует standalone-установки где-нибудь у себя на хостинге. И демо-аккаунта никакого нет, чтобы поиграться и понять вменяемость этой штуки. Жаль. Но выглядит очень оптимистично.

LinkLeave a comment

A thin build [Jun. 14th, 2009|12:55 am]
Roman Busyghin
[Tags|, , ]

Нифигашечки, iPhone SDK 3.0 GM для Snow Leopard весит всего 404 метра. Кажется, что такого сокращения они добились за счёт выкидывания из поставки всех 2.x API.

UPD: и XCode внутри нету, только SDK
Link2 comments|Leave a comment

Blogging policy [Jun. 14th, 2009|12:23 am]
Roman Busyghin
[Tags|, ]

Совсем перестал писать сюда, лытдыбры переехали на Ярушку, какие-то «умные» мысли стали сохраняться локально (потому что кажется, что это неинтересно окружающим), а про работу стал писать на работе.

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

Желание бросить писать совсем нет, потому что потом интересно перечитывать то, что было написано. Этой зимой вот перечитывал свой ЖЖ с самого основания. Интересное чтиво, знаете ли :-)

Расфрендил некотрых людей. Читать, к сожалению, стало совсем неинтересно. Вообще, факт дружения в соцсетях или блогоплатформах сейчас какой-то неправильно названный (да, об этом много говорили, я просто вспоминаю об этом). Нужно говорить не френд, а человек, которого интересно читать. Тогда факт удаления из ленты чтения будет подсознательно восприниматься гораздо легче.
Link9 comments|Leave a comment

navigation
[ viewing | most recent entries ]
[ go | earlier ]