«Должны ли дизайнеры уметь писать код» — как известно, это одна из самых любимых тем для обсуждения в IT-сообществе. Сегодня мы предлагаем вам перевод поста Allie Vogel, в котором она рассказывает о личном опыте и о том, почему, с ее точки зрения, время и силы, затраченные на изучение кода, того стоят.
Дизайн продуктов глазами технаря
Четыре месяца назад я оставила свою легкую и хорошо оплачиваемую работу в филиале LinkedIn в Сан-Франциско, чтобы научиться кодить.
Я всегда стремилась к развитию как дизайнер, и вдруг осознала, что понятия не имею как делаются веб-продукты. Обучение программированию стало логичным следующим шагом на пути к достижению этой цели.
Начиная интенсивный учебный курс, я не знала, в чем разница между логикой программирования и разметкой, а уж между клиентской частью и кодом серверной части (или что вообще значат эти понятия) – и подавно.
Думаю, очевидно, что процесс обучения был болезненным.
Теперь, когда я прохожу собеседования на должность дизайнера продуктов, то понимаю, что мое решение освоить код несомненно было верным. Теперь когда передо мной встает сложная дизанйерская задача, я вовсю пользуюсь программерской премудростью, чтобы разобраться в проблеме. Вот несколько основных уроков, которые я вынесла из своего опыта:
Стремитесь к простоте
Процесс разработки заключается в написании аккуратных, понятных и функциональных программ, которые могут выполнять набор микрозадач. В целом, проблемы, которые вы пытаетесь решить, масштабны.
Раньше, приступая к работе над дизайн-проектом, я чувствовала себя слегка ошеломленной неопределенностью того, что проектирую. А вот процесс разработки научил меня разбивать каждую проблему на микро-фрагменты, которые выполняются как отдельные функции.
Теперь принимаясь за решение проблемы, связанной с дизайном, я рассматриваю её как сложную составную целостность, которую может быть постепенно, шаг за шагом, разбить на мелкие фрагменты.
Совет: В процессе создания вайрфреймов думайте о каждом элементе как о компоненте. Я стала походить к дизайну с позиции разработчика, рассматривая каждый компонент как строительный блок для будущего приложения.
Концепция отзывчивого редизайна сайта для Kiva. Принимая дизайнерские решения, мы с коллегой смотрели на проект глазами разработчиков.
Учитесь учиться
Раньше, когда я сталкивалась с вопросом, на который не могла ответить с уверенностью, или когда меня просили использовать технологию, с которой я не была знакома, то немедленно впадала в панику.
Занимаясь разработкой, я пришла к пониманию, что человеческий
Хотите программировать для iOS? Выучить PHP? Создать чат-бот? Скорее всего кто-то уже написал о своем опыте либо опубликовал код для компонента или элемент дизайна, которыми можно воспользоваться. Разбейте задачу на фрагменты, чтобы стало яснее, что нужно сделать, и начните свои изыскания.
Развивайте эмпатию
Если вы не осваивали информатику или технические специальности, такие как инженерия или математика, обучение основам кода поможет заполнить многие пробелы.
Оно научит вас отделять важное от неважного и поможет мыслить с позиции разработчика при работе над дизайном продукта.
«Важнее всего, чтобы дизайнеры и разработчики развивали в себе эмпатию по отношению друг к другу. Обе стороны должны понимать суть процесса и эффективно работать вместе». — Райан Скотт, Главный дизайнер, DoorDash
Адаптируйте дизайн под технологию, которую используете
Вам не придется часто спрашивать себя: «Возможно ли это?». Изучение свойств различных языков и веб-фреймворков поможет вам составить представление о возможностях и ограничениях в пределах вашей сферы деятельности.
Даже если у вас есть сомнения, реально ли реализовать ту или иную интеракцию, чутье разработчика поможет вам разобраться. Когда я впервые познакомилась с расширенным CSS и JavaScript, меня накрыла волна вдохновения: я поняла, что в моем распоряжении теперь целая библиотека интеракций.
«Понимание тех ограничений, которые накладывает разработка, позволяет мне находить эффективные дизайнерские решения» — Эллиот Дал, Дизйнер продуктов в Pivotal Labs.
Совет: Не ленитесь заниматься самообразованимем. У каждого языка есть своя официальная документация. Опираясь на нее, Stack Overflow и поиск в Google, вы без проблем сумеете очертить область возможного, прежде чем отдавать свой дизайн команде разработчиков.
Улучшайте коммуникацию
Осваивая код, вы учитесь думать как разработчик. Это умение, в свою очередь, помогает вам наладить надежную коммуникацию. Знания разработчика дадут вам возможность формировать более целостный пользовательский опыт и формулировать свои идеи таким образом, что люди с техническим складом ума будут их ценить.
Приняв участие в бесчисленных хакатонах и поработав во множестве команд, я пришла к выводу, что от креативности есть толк только в том случае, когда ей сопутствует умение заразить своим видением других посредством эффективной артикуляции идей. Разработка помогла мне войти в эту зону.
Разработка может доводить до бешенства. Пока вы не преодолеете этот барьер. После этого она дарит чувство неограниченных возможностей.
Теперь я больше не ненавижу писать код. Мне это даже доставляет удовольствие. Но то, как я воевала с ним, чуть ли не долбясь головой об стенку и вырывая волосы, оставило такой глубокий след, что я всегда буду с горячим сочувствием относиться к разработчикам, которые работают со мной бок о бок.
Благодаря этому опыту я поняла, что мне не нужно быть разработчиком, чтобы мыслить как разработчик. Если вы можете специализироваться на создании улетных дизайнов, но при этом обладаете навыками общения для работы с коллегами-технарями, вы можете вывести свои проекты на новый уровень и стать отличным дизайнером цифровых продуктов.
Автор: Everyday Tools