Дэвид Уильямис. Фото с StackOverflow

Последний релиз Paddy 2 и открытое письмо автора плагина

Саша Окунев
/designer

--

В нём Дэвид Уильямис рассказывает о проблемах, с которыми столкнулся в разработке одного из популярнейших плагинов, а также о причинах завершения проекта.

Скачать Paddy 2 Beta

Совместим с версией Sketch 51.3. Гитхаб

Эта версия реализует экспериментальную поддержку вложенных символов.

О плагине Paddy 1 я писал на Скетч-дизайнере

Источник

Во-первых, хочу поблагодарить каждого за поддержку Пэдди. С тех пор как я запустил первую версию в феврале 2017, много людей написало мне тёплые слова. Мне жаль, что в последнее время не удавалось выходить на связь.

Почему не было апдейтов уже пару месяцев?

В августе-сентябре у меня был отпуск и я не взял с собой ноут. Это было прекрасно. Если быть честным, я немного сгорел и нуждался в отдыхе. Когда вернулся, я посмотрел бета-версию Скетча. Это офигенный апдейт и командой Скетча проделана большая работа. Тем не менее, к сожалению, он много чего ломает в Paddy 2. Не чуть-чуть, а прям дофига. Меня это обескуражило и лишило всякого желания продолжать.

Я не мог ответить на все письма и баг-репорты за последние пару недель, за что я очень извиняюсь.

Что будет дальше?

После того как я потратил много часов на то чтобы починить Paddy 2 для Sketch 52, я пришёл к выводу, что это нереально. Это особенно жалко, потому что в последнее время я добился неплохого прогресса в поддержке вложенных символов.

Я выпустил финальный релиз Paddy 2, который работает на версиях ниже Sketch 52. Он содержит экспериментальную поддержку вложенных символов, которую так ждали многие люди. Тем не менее, я не планирую чинить его для Sketch 52+. Это отличный рабочий прототип, и я надеюсь, он станет вдохновляющим для команды Скетча.

Резюмируя работу над Paddy

После сотен часов работы над Paddy я принял это тяжёлое решение по следующим причинам:

  1. Очень затратно по времени
    Сейчас у меня есть фултайм-работа на позиции продукт-дизайнера. Кроме того, я трачу на дорогу 3 часа в день. Дома меня ждёт любящая жена, которой тоже нужно моё внимание. Честно говоря, время, которое я тратил на поддержку Paddy было колоссальным и не позволяло мне заниматься чем-либо ещё.
  2. Больше не использую Paddy сам, потому что перешёл на Фигму
    Изначально я создал его потому что он был мне очень нужен в ежедневной работе. Я не мог поверить, что его не сделали до меня. То, что другие люди нашли его полезным, было бонусом. Тем не менее, пару месяцев назад я перешёл на Фигму. Сложно поддерживать ПО, которое сам больше не используешь.
  3. Ремонтопригодность
    Я знал, что Paddy 2 будет амбициозным проектом, но я откусил кусок, который был больше, чем я мог прожевать. К сожалению, такие большие апдейты как Sketch 52 ведут к несовместимости Paddy, который был написан для старых версий. Это приводит к дублированию кода, чтобы плагин работал в каждой версии, и в каждой версии он работает своим уникальным способом. Такую архитектуру очень долго реализовывать и тяжело тестировать.
  4. Сложность
    Плагин вроде Paddy 2 глубоко интегрирован в жизненный цикл приложения, и он зависит от сложных процессов под капотом. Чтобы такие вещи нормально работали, их должна писать и поддерживать сама команда Скетча.

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

Paddy 2 должен работать по крайней мере на версиях до Sketch 42.

Возможные вопросы

Позвольте мне ответить на несколько наиболее частых вопросов, которые мне задают.

Поможет ли финансовая поддержка?

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

Я построил свою дизайн-систему с использованием Paddy, и что теперь делать?

Я рад это слышать, и это одна из причин почему я любил делать и использовать свой плагин. Пэдди был надстройкой над возможностями Скетча и его отсутствие ничего не должно поломать, просто перестанет работать автоматическое выравнивание. Я понимаю, что это большой облом, но это не блокирует работу.

Могу ли я внести вклад в код Paddy, чтобы переписать его?

Если у вас есть такое желание, это было бы здорово. К сожалению, он написан на Cocoa Framework и Objective C, так что это будет задача не из лёгких. Кроме того, мой код написан ужасно и не документирован. Для всех желающих посмотреть код я открою исходники в скором будущем.

Paddy 1 уже выложен в открытый доступ и его код будет легче понять, так что пуляйте реквесты туда.

Можешь ли ты повлиять на команду Скетча, чтобы они сделали авторесайзинг нативным?

Было бы круто, если бы Скетч работал над этим. Я готов помочь, если у них будут вопросы. Давайте продолжим просить эти функции, пока они их не внедрят. Они уже работают над этим (прим. переводчика).

Печально завершать проект, но для меня это ещё и большое облегчение. Если будут вопросы, задавайте их здесь. Фоловьте меня в Твиттере davidwilliames.

Спасибо!

Ответ Але Муньоза из команды Скетча:

Привет, Девид!

Сегодня действительно печальный день.

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

Твоя работа вдохновила нас исследовать эту область. Мы надеемся, что сможем пройти по твоим стопам и собираемся внедрить нативное решение этой проблемы в ближайшем будущем.

--

--

Саша Окунев
/designer

Дизайн-лид в Kaspi.kz. Автор проекта /designer.