2010-02-15

WM7: Teenager's phone

Можно ли сделать интерфейс хуже, чем в Windows Mobile 6.5? Можно! Встречайте версию 7! Теперь и телефоны имеют тот же ужасный Zune интерфейс. Хуже, чем в Zune я не видел и даже не представляю, как ещё можно сделать хуже. А потому я уже давно не делаю интерфейсов.

Чем Zune такой ужасный? Во первых, по логике, его интерфейс - просто меню. Но сделано оно так, что запутываешься сразу. Где я нахожусь, что сейчас работает, куда выйти, где громкость, где время, где wifi, сколько осталось батареи, непонятно. На экране очень мало информации. Всего одна-две строчки, огромным шрифтом и те всё время приезжают-уезжают, непонятно зачем. Я такие интерфейсы называю ковырять "через замочную скважину". Почему не показать всё сразу, все пункты меню, подсветить, что сейчас работает, и т.д.

Во вторых, это совсем новая система! Переписана с нуля. Ура!!! Все ваши программы выкидываем, привычки игнорируем, никакой совместимости со старым миром. И не позволим никакому HTC исправить наш супер-интерфейс. Я даже не знаю, будет ли возможность поставить какие-то сторонние программы. Многозадачности и той пока не обещано. В принципе, пока совсем ничего путного не обещано. Я предлагаю рекламную компанию "There is no app for that!".

Но зато "Я" как центр мира, вокруг друзья, статусы, музыка, всякие XBox-live и всё остальное, явный, я бы сказал, tenager-стиль. Надо сделать розовый вариант и продавать в Target-е.

Короче, мой рейтинг современных телефонов: iPhone - симпатично, но слишком дорого и закрыто; Android - симпатично, хочется, но жалко пять сотен и 60 баксов в месяц; Maemo - глючно и мало приложений; WM6.5 - не хочется стилусом ковырять; а WM7 - даром бы не взял, даже с бесплатным планом. Нет, херня полная, совсем не верю, народу понравится, повторит финансовый успех Zune.

mobilecrunch: First Impressions: Windows Mobile 7, now known as Windows Phone

2010-02-10

я-журналко

Недавно анонсированный iPad - устройство для ленивого листания пальцем электронных иллюстрированных журналов. Ебука для "блондинок".

В принципе, давно жду чего-то подобного. Сценариев использования несколько, каждый может быть заменен отдельным устройством, но одно на всё было бы удобнее.

Итак, мои сценарии:

  • сесть в кресло и браузить web, а так же взять с собой в кафе, автобус, на работу
  • коммуникации, почта, chat, skype, желательно с видео, индикация светодиодом вызова
  • чтение e-book, просмотр документов
  • удобное чтение rss каналов, с возможностью чтения offline
  • просмотр карт используя встроенный GPS, навигация
  • просмотр видео, как минимум с DVD разрешением
  • просмотр и загрузка фотографий с фотоаппарата

    Требования и пожелания:

  • легкое, с хорошей батареей на несколько часов чтения в полёте
  • доступ в интернет через WiFi hotspots и(или) через 3G
  • удобное управление пальцем и набор программ расчитанный на такое управление
  • никакой выдвижной/откидной клавиатуры с кнопками, но возможность подключить usb или bluetooth keyboard
  • универсальный слот для карточек
  • WiFi/BlueTooth/GPS; размер приемлемый для чтения, т.е. экран 10-11 inch, желательно в пропорции 16:9, желательно 1280x720
  • хочу ARM+GPU и *никс внутри

    Ноутбук, даже таблет, уже неудобен. Он тяжёлый, с короткой батареей, с неудобной системой. Мой Nokia N800 ближе, но он слишком маленький для комфортного чтения. iPad слишком закрыт, и не содержит камеры/GPS/многозадачности, он лишь иллюстрирует тенденцию. Буду ждать удобной таблетки на android.

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

    Вывод: давно пора разобраться, как писать для Аndroid и iPhone. А для начала надо на них посмотреть живьём.

  • 2010-02-02

    Code Recycling

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

    Известно, что читать код дороже, чем писать. Написать новый код можно быстро, если хорошо понятно, что он должен делать, рефакторить старый, незнакомый код сложно и дорого. Свой код совершенно понятен, чужой полон неприятных сюрпризов. Переписав, получаешь хорошее знание тонкостей и понятную codebase, которую можно развивать дальше. Конечно, надо хорошо знать, что делаешь, и быть готовым к тому, что что-то окажется сломано. Это должно компенсироваться некоторыми новыми возможностями. Не надо менять шило на мыло. Шило надо менять на электродрель.

    Технологии со временем развиваются и стиль программирования меняется. Меняются языки, рантаймы, библиотеки. Старый сишно-фортрановский код с кучей статических переменных в начале программы заменяется динамическими структурами, свалка функций - классами и интерфейсами, а 'goto err' - исключениями. Переписав в новом стиле получишь значительно более понятный и управляемый код, что есть самое важное качество живого кода.

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