Suddenly: Prague
littleboy
nskboy
В начале декабря будем в Праге на четыре дня. Предложения? :-)
Метки:

Commonplace: Avoid Long Parameter Lists
littleboy
nskboy

На 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

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

Метки: , ,

JUG.ru event: iPhone day
littleboy
nskboy

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

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

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

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

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

Метки:

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

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

Time psychology perception
littleboy
nskboy

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

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

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

Метки:

What's new in Dashcode
littleboy
nskboy

Смотрю 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 и возможности писать веб-приложения уровня десктопа с такой же лёгкостью.

Метки: , ,

Smart aggregation
littleboy
nskboy

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

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

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

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

Метки: , ,

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

UPD: и XCode внутри нету, только SDK

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

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

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

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

Third party iPhone applications
littleboy
nskboy
Постепенно для меня прошла iPhone лихорадка, когда это все было в новинку и клево было поиграться. Прошло время, когда интересно было покупать дополнительный софт и «расширять» функциональность своего телефона. Сейчас я четко понимаю, что из дополнительного останется только два-три приложения. Хотя наверняка с появлением Push Notifications появится что-то такое ещё, что заставит обратить на это внимание. Оставшуюся часть софта я запускаю пару раз в месяц.

Да, я не автомобилист и не житель города, в котором гугловые карты плохи до безобразия. Да, я не играю на iPhone, но в свободное время слушаю музыку/смотрю видео или читаю интернет. Это все есть в iPhone уже, ставить ничего дополнительно не надо. Записать мысли можно встроенным софтом, а благодаря новой прошивке их потом можно будет легко залить на стационарный компьютер. А благодаря landscape mode везде это делать будет гораздо удобнее.

Не хватает только хорошей программки со схемой метро разных городов. Но это уже тема совсем другой истории ;-)
Метки: ,

Ideal recreation
littleboy
nskboy
Единственная штука, по которой скучаю с универа — это каникулы. Когда можно было в общаге ничего не делать потому что надо, а заниматься только тем, что интересно. Спать до обеда, играть до красных глаз, читать интересную документацию на интересные вещи, отдыхать от шума и гама в общаге. Рай для отшельника. Сейчас тоже хочется взять такие каникулы до конца лета, полежать, поплевать в потолок и позаниматься чем-то интересным.
Метки: ,

There's an app for that too
littleboy
nskboy

Запустили ещё один проект в рамках Яндекс.НаноЯндекс.Пробки Лайт. Прошу любить и жаловать. Вопросы и комментарии можно оставлять тут, в корпоративном блоге Яндекса или на страничке приложения в Яндекс.Нано.

Иконка Яндекс.Пробки Лайт

Метки: , ,

Chernobyl: A detailed explanation
littleboy
nskboy
РИАН сделали совершенно замечательную флэшовую штуку, подробно рассказывающую про аварию на ЧАЭС.

Метки: , , ,

Spotted in Computerra
littleboy
nskboy
Отметился в оффлайновой Компьютерре #17 (781) в статье про перспективы разработки под iPhone.
Метки: , , ,

Apocalyptica @ B1: A short story
littleboy
nskboy
А вы знаете, концерт Apocalyptica прошёл офигенски. Не могу ничего конкретного сказать по поводу звука, так как концерт в Горбушке/МХАТе не слышал. Сетлист выдался вполне динамичный, каверы на Metallica просто отлично шли. Ну и Hall of The Mountain King под концовку мероприятия был просто прекрасен.
Метки: , ,

Moblin for my eeePC
littleboy
nskboy
В общем, для своего eeePC 901 решил остановиться на Moblin как на более подходящем для меня решении. Критерии, по которым выбиралось:
  • высокая скорость загрузки/выхода из слипа
  • приятный вид (не нужно настраивать всякие сглаживания и прочее)

Предыдущие рассмотренные решения в лице Arch Linux, Ubuntu, Debian, EeeBuntu были отброшены из-за того, не устраивали по прыдущим пунктам. Заодно списáлся с чуваком из Intel, начал контрибутить им в багзиллу.
Метки: ,

Friday stuff
littleboy
nskboy
[info]grundik, тебе понравится это баянистое видео ;-) Отличный кавер на Nightwish.



via [info]hayate_
Метки: ,

YFIClient's transition
littleboy
nskboy
Да, приложение «Яндекс.Фотки для iPhone/iPod touch» переехало в аккаунт Яндекса в App Store. Подробнее об этом в клубе пользователей приложения.
Метки:

Hard time for Apple Developer sites
littleboy
nskboy
Ух, у Apple снова тяжёлый момент. Постоянно схватываю 5xx ошибки на разработческих ресурсах. Сейчас вот получил HTTP 500 на Developer Forums. Заодно узнал, что у них Apache Tomcat/6.0.18 + PostgreSQL работает (плюс ещё куча всякой фигни в Java стэктрейсе, включая SQL запросы в базу). Самое прикольное то, что их брендинг настолько крут, что даже странички сообщений об ошибке оформлены в правильных цветах.
Метки: , , ,

Nothing to do at holidays…
littleboy
nskboy
Вот кто как проводит праздники, а я за два вечера наколбасил простую читалку для Твиттера при помощи MGTwitterEngine. Вот уж правду говорят: Бешеной собаке сто семь вёрст — не крюк.
Метки: ,