Ctrl + ↑ Позднее

Всю осень, зиму и половину весны я учился в Школе стажёров Бюро Горбунова. Последние три месяца я пытался осознать, что из этого вынес и как она на меня повлияла.

Многие мои знакомые дизайнеры и продукт-менеджеры спрашивают, стоит ли им идти в школу Бюро. Честно говоря, не знаю. Я опишу здесь только свои впечатления. Так совпало, что сегодня был последний день очередного набора. Надеюсь, пост всё равно будет полезен будущим абитуриентам и тем, кто получит приглашение на первую ступень, но пока не решил, идти учиться или нет.

О самом процессе я подробно писать не буду. Всё проходит именно так, как написано на страничке школы. Ещё о нём хорошо написали мои «одноклассники» Михаил Озорнин и Аркадий Чугунов.

Я хочу подробнее рассказать о пользе от школы. Вообще, в Бюро очень любят понятие пользы. «В начале работы над продуктом нужно выделить его полезное действие», «полезное действие нужно максимизировать» — это то, о чём постоянно говорят преподаватели школы.

Я ощутил громадную пользу. Я разработчик, а не дизайнер. Но мне всегда нравился дизайн, и я старался быть в теме, читал книги и блоги. Не могу сказать, что я получаю массу удовольствия от программирования, но мне нравится делать полезные и работающие продукты. Просто меня тянет в сторону мобильной сферы, и я умею писать код. Главный кайф в моей работе — это возможность создавать приложения, которыми пользуются люди. Полезный разработчик — не тот, который знает десять языков и сорок технологий, а тот, кто способен с нуля запустить качественный продукт.

Раньше я думал, что нужен какой-то особый талант, чтобы заниматься дизайном. Но Артём Горбунов считает, что дизайну можно научить. Ну и я поверил. Благодаря школе я теперь могу сам создавать продукты. Я уже запускал несколько мелких проектов, а сейчас в маленькой команде работаю над серьёзным приложением.

После школы мне стало легче отличить хороший дизайн от плохого. Раньше я смотрел на приложение и думал: «что-то здесь не так». Теперь я вижу, где именно огрехи, где вёрстка не такая, где текст слабоват, где синтаксис элементов хромает. И самое клёвое — ты понимаешь, как в несколько простых шагов можно всё улучшить.

Ещё школа многие вещи в голове расставляет по порядку. Это касается не только дизайна. Школа охватывает набор областей — переговоры, управление, редактуру, право, — которые только на первый взгляд не имеют отношения к дизайну. Но в процессе обучения ты начинаешь видеть, как сильно одно влияет на другое. Это прям наслаждение врубиться, как контрольные точки на проекте способствует сдаче работающего продукта в срок или что написание текста для сайта нельзя отрывать от дизайна.

Учиться в школе тяжело. Если вы думаете, что попадёте на первую ступень и будете просто лекции просматривать, то школа не для вас. Каждую неделю нужно давать результат. Провалил дедлайн несколько раз — до свидания. Принцип «расти или уходи» в действии. Жёстко, да. На второй ступени ещё жёстче — за неделю надо сделать два полноценных задания, причём для себя можно запланировать несколько итераций и обсудить промежуточные результаты с преподавателем. На выходные оставить не получится — выходные для отдыха. Настоящая гонка.

Благодаря такому ритму понимаешь, что планировать нужно не впритык. Что если остаётся два часа до дедлайна, а у тебя интернет отвалился или не пришло вдохновение — виноват только ты. Здесь же понимаешь, чем в первую очередь можно пожертвовать, если не успеваешь. Количеством фич можно, а вот качеством нельзя. И временем нельзя — дедлайн не сдвигается. А если дедлайн двигать — так продукт и не запустишь.

Школа учит принципу «сделать ≠ делать». Главное — результат. А результат — он в мире клиента. Не сдал — значит, не сделал. Плохо сделать тоже не прокатит. А хорошо сделать можно, только если правильно понял задачу. Не стоит начинать делать, пока не разобрался. Разобраться — ответственность исполнителя, то есть твоя.

На второй ступени уже реально понимаешь, что не можешь простить себе халтуры. Пара плохих оценок в начале — и всё, отпадает соблазн отправить первый же получившийся результат. Работаешь, пока видишь слабые места и есть силы.

На третью ступень я не попал. Подозреваю, главный её урок в том, что картинки — фуфло. Самое сложное — согласовать, реализовать и запустить. То есть мало сделать дизайн продукта и учесть тысячу комментариев арт-директора — надо ещё найти разработчика. А в итоге нужно запустить реальный продукт для реальных людей. Мне кажется, у ребят там было полное месиво в течение двух месяцев.

Пока учишься в школе, не пропадает чувство, что на тебя без перерыва льют поток знаний. Иногда кажется, куда же ещё? А оно всё продолжается. То крутые советы, то показательные примеры, то ещё какие-то приёмы. И из-за этого хочешь прогрессировать. Возникает просто огромная жажда быть лучше. И одновременно понимаешь, что всегда есть, к чему стремиться.

P. S. У Бюро свои взгляды на дизайн и на работу в целом. Они могут не совпадать с вашими. Если будете их нарушать, добьётесь только плохих оценок. Поэтому если вы с чем-то в корне не согласны из кодекса, лучше в школу не поступать.

Вчера обновился до iOS 8.3 и заметил, что одно из моих приложений стало ужасно тормозить при скроллинге UICollectionView. Лэйаут там наподобие CoverFlow, в ячейках используется Auto Layout, но на iOS 8.2 скроллинг работал быстро.

Запустил профайлер. Оказалось, что в самом тяжёлом стэке вызовов целых 20% времени съедает метод [UICollectionReusableView _preferredLayoutAttributesFittingAttributes:]:

Начал искать, были ли у кого похожие проблемы, и наткнулся на обсуждение в Гитхабе. У них тоже тормозил скроллинг, причём на более ранних версиях iOS, и кто-то предложил добавить такой код в дочерний класс UICollectionViewCell:

- (UICollectionViewLayoutAttributes *)preferredLayoutAttributesFittingAttributes:(UICollectionViewLayoutAttributes *)layoutAttributes {
    return layoutAttributes;
}

Вставил этот код в свою ячейку, и скроллинг снова заработал быстро. Полез смотреть в документацию. Про метод preferredLayoutAttributesFittingAttributes: написано:

The default implementation of this method adjusts the size values to accommodate changes made by a self-sizing cell.

Но мне не нужен был self-sizing. Стал искать дальше, почему начал вызываться метод, пересчитывающий атрибуты лэйаута. В UICollectionViewFlowLayout.h нашёл поле estimatedItemSize:

// defaults to CGSizeZero - setting a non-zero size enables cells 
// that self-size via -preferredLayoutAttributesFittingAttributes:
@property (nonatomic) CGSize estimatedItemSize NS_AVAILABLE_IOS(8_0);

Проверил — estimatedItemSize у меня действительно равен нулю, но preferredLayoutAttributesFittingAttributes: всё равно дёргается, причём реализация по умолчанию чаще всего возвращает атрибуты, отличающиеся на несколько десятых от переданных в аргументе.

Получается, что в iOS 8.3 ребята из Apple изменили логику self-sizing для ячеек UICollectionView. В любом случае, согласно документации, этот метод не должен вызываться. Если вдруг у вас тоже начал тормозить скроллинг, попробуйте этот фикс :-)

17 января 2015, 16:39

Неделя без машины

На прошлых выходных из-за снегопада мне пришлось оставить машину за Волгой, в 140 км от Самары. Всю рабочую неделю моими главными средствами передвижения были метро и ноги. Вот несколько случайных мыслей и наблюдений по этому поводу:

  • метро — нормальный способ передвижения по Самаре, но его адово мало для города с миллионом жителей;
  • в метро мало пассажиров, по крайней мере, в 10—11 и 20—21, но я бы не сказал, что «самарское метро возит воздух»;
  • до «Алабинской» поезда пока не ходят, хотя я надеялся, потому что она ближе к моему дому;
  • после Москвы кажется, что составы еле едут, а девятиминутные интервалы — вечность;
  • на машине я трачу около 35 минут в день на дорогу на работу и обратно, а на метро и пешком получается 80, и эта разница чувствуется — будто меньше часов в сутках;
  • метро лучше, чем остальной общественный транспорт;
  • маршрутки — зло;
  • чтобы хоть как-то почистить тротуары, Самаре понадобилось три дня, а некоторые популярные участки не чистили вообще (вдоль Авроры);
  • ездить общественным транспортом дёшево;
  • думать о чём-то легче, когда идёшь пешком или едешь на транспорте, чем когда за рулём;
  • вспоминаются первые курсы, шарф, шапка и наушники в ушах, и по настроению идёт музыка пятилетней давности;
  • один раз на Гагарина пристал гопник и отстал сам через несколько секунд;
  • с машиной проще заехать в магазин после работы и сходить на теннис или в зал.

Зимой в Самаре на работу лучше ездить на машине. Возможно, летом мысли были бы другими.

cover white

Великобритания — настоящая футбольная страна. И не только потому что футбол придумали здесь. Мало в каких частях мира ощущается такая же любовь к футболу. Пожалуй, только в Германии и Каталонии я встречал что-то похожее.

Британцы обожают футбол. Почти любой человек — футбольный болельщик. Покупаешь симку в день матча, и продавец сразу спрашивает: «А вы идёте сегодня на футбол? За кого болеете?» Экскурсовод по вискикурне рассказывает про финал шотландского кубка и родной «Абердин», который впервые за долгие годы выиграл трофей.

Матчи с привлекательной вывеской можно посмотреть в любом пабе. В день игры между «МЮ» и «Баварией» мы оказались в Оксфорде и пошли смотреть в паб, который нам посоветовал оксфордский выпускник. За 15 минут до начала было пусто, но к стартовому свистку паб заполнился англичанами и немцами — студентами и преподавателями вперемешку. Забавно было наблюдать, как они вместе пьют, подкалывают друг друга и бурно обсуждают футбол.

Расписание трансляций в эдинбургском пабе

* * *

В 2014 году я своими глазами увидел девять британских футбольных стадионов. На одном удалось посмотреть футбол, на трёх — купить шарфики друзьям. Рядом с другими получилось только погулять.

Лондон

Мой самый любимый стадион — «Стэмфорд Бридж». Тут я два раза смотрел домашние игры «Челси».

Футбол в Англии — это не только спорт. Это ещё и огромный развлекательный бизнес. Когда Абрамович купил «Челси», у клуба были большие долги. В течение нескольких сезонов клуб работал в минус. Но сегодня «Челси» уже вышел на самоокупаемость — и не в последнюю очередь благодаря грамотному маркетингу. Каждый болельщик ежегодно приносит тысячи фунтов в бюджет клуба — билетами, платными ТВ-подписками, майками и даже экскурсиями на стадион. Вот и на «Стэмфорд Бридж» можно взять экскурсию. Вам покажут музей «Челси» и дадут посидеть в кресле Моуринью. Потом вас проведут по раздевалкам игроков и скамейкам запасных.

В домашней раздевалке «Челси»

В конце экскурсии вы окажетесь на пустой фанатской трибуне «Шед Энд».

Раньше здесь были стоячие места для самых ярых фанов. Но потом трибуну перестроили, и сегодня от настоящего «Шед Энда» осталась только стена.

Следующий лондонский клуб — «Арсенал». В начале двухтысячных они громили всю Англию, играя на домашней арене «Хайбери». Стадион был маленьким — всего 38 000 мест, и команда решила построить арену повместительнее. В 2006 «Арсенал» переехал на 60-тысячный «Эмирэйтс» и с тех пор ни разу не становился чемпионом.

Чтобы посмотреть на оба стадиона «канониров», надо поехать на север Лондона и выйти на станции Арсенал. Поднимаемся из метро и сразу видим, куда идти.

Понимаем, куда попали.

Очень тихий район. Всё тесно и аккуратно застроено невысокими домами. Даже как-то и не ожидаешь, что вот уже справа в нескольких метрах перед тобой «Хайбери».

Сегодня от «Хайбери» остались только стены западной и восточной трибун. Внутри теперь жилой район со сквером, и просто так туда не войдёшь. Обратите внимание, что через узенькую дорогу от стадиона начинаются жилые дома — в Англии такое часто.

Заворачиваем в соседний квартал и видим «Эмирэйтс» в паре минут ходьбы. Вот это я понимаю — преемственность.

Мне очень нравится «Эмирэйтс» — красивый и современный стадион. И дух «Арсенала» хорошо чувствуется.

Главная звезда и лучший бомбардир клуба — Тьерри Анри.

Как и на «Олд Траффорде», площадь перед стадионом вымощена кирпичами с именами игроков, но для самых крутых — мемориальные скамеечки.

Самый знаменитый стадион Англии — «Уэмбли». Здесь играет сборная и проводятся легендарные концерты. Мы проезжали мимо ночью и поставили галочку (так же, как со Стоунхенджем).

И ещё один лондонский стадион — Олимпийский. Я приехал в Олимпийский парк и увидел, как его реконструируют — через два сезона сюда переедет «Вест Хэм» со своего «Аптон Парка».

Слева чаша олимпийского огня

А теперь стадионы за пределами Лондона.

Манчестер

Об «Олд Траффорде» и матче «МЮ» я уже писал подробно весной. Потрясающая атмосфера, лучший мегастор, больше всего болельщиков. Да и первое живое впечатление от английской премьер-лиги я получил именно тут.

Ливерпуль

Ливерпуль — самый настоящий футбольный центр Англии. Премьер-лигу представляют две сильные команды: «Ливерпуль» и «Эвертон». «Ливерпуль» — самая успешная английская команда в Европе, они выигрывали Лигу Чемпионов пять раз. Сам я этот клуб не люблю, и оказалось, что от «Энфилда» я не сфотографировал ничего, кроме ворот.

«Энфилд» производит удручающее впечатление: тут скудный мегастор, и райончик вокруг невесёлый — напоминает Балтимор из сериала «Прослушка». На улицах висят знаки, предупреждающие о частых угонах машин.

Но футбол и своих героев здесь очень любят. Считается, что у «Ливерпуля» самые преданные болельщики в Англии.

«Эвертон» играет на «Гудисон Парке».

Очень похоже на район «Хайбери»: стадион, а через дорогу — жилые дома. Только сам стадион выглядит поскучнее.

Бирмингем

Бирмингем показался мне самым невзрачным городом Англии. В соседнем городке на стадионе «Хоторнс» играет «Вест Бромвич» — также ничем не примечательный клуб.

* * *

Девять — это уже приличная коллекция. Буду пополнять её в этом посте.

Ctrl + ↓ Ранее