Как начать творческое кодирование

Автор: John Stephens
Дата создания: 28 Январь 2021
Дата обновления: 17 Май 2024
Anonim
Программируйте мозг пока Вы спите
Видео: Программируйте мозг пока Вы спите

Содержание

Креативный код - это весело, но сложно взломать. Если вы посмотрите на сумасшедший эксперимент WebGL или сайт со сложными переходами CSS, легко почувствовать, что только джедай-программист может совершить такие инженерные подвиги.

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

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

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


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

Внутренняя работа

Логотип заключается в том, что это не просто один холст HTML, а на самом деле несколько холстов, каждое из которых выполняет определенную работу:

  • Нижний колонтитул, который нарисовал треугольник / безумное цветовое решение внизу страницы.
  • Логотип, нижний колонтитул которого заключался в маску логотипа.
  • Значок, увеличивающий размер логотипа до 16x16.

Чтобы получить оригинальную метку так, как мне было нужно, я начал с векторной версии и запустил ее с помощью инструмента Draw Script, который преобразовал векторные фигуры в JavaScript для использования в теге canvas>.

Цвета являются результатом плагина Flat Surface Shader, созданного Мэтью Вагерфилдом и Тобиасом Шнайдером. В моей технике нет никакого волшебства: я использовал «Просмотр исходного кода» на их сайте, чтобы скопировать и вставить их эффект, а затем начал менять числа, пока не получил то, что мне понравилось.


Плагин Shader не поддерживал динамическое изменение цветов, поэтому я обнаружил другую библиотеку, Tinycolor, и использовал ее в сочетании с Tween, чтобы переключаться между цветами. В качестве дополнительного бонуса я мог менять цвета на все, что хотел! В будущих версиях портфолио логотип будет автоматически меняться, отражая цвета клиентов или проектов.

Формулировки проблемы

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

Я работаю в сотрудничестве с множеством блестящих людей, и в этом случае мой друг Джаррод Риддл помогал в создании бренда. Джаррод прислал мне текстовое сообщение с анимированным GIF-изображением идеи, о которой он думал - в основном цветные фигуры, плавающие вокруг и врезающиеся друг в друга.

Оттуда я делал это шаг за шагом. Разбил в голове вот так:


  • Мне нужен способ рисовать динамически. Это означает, что мне нужно использовать тег canvas>.
  • Точнее, мне нужно нарисовать внутри моего логотипа, как маску. Мне нужно научиться маскировать на холсте.
  • Мне нужно придумать, как сделать так, чтобы это выглядело круто.

Другими словами, когда я начинал, у меня было три постановки задачи, и третья была очень-очень далекая. Первые два были намного более достижимыми, поэтому я начал создавать небольшие прототипы, используя Google в качестве руководства. Я попробовал библиотеки, такие как CreateJS и KineticJS, нарисовав вращающийся зеленый квадрат как своего рода «Hello World». Я также пробовал рисовать на холсте без какой-либо библиотеки, просто для сравнения.

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

Как только я справился с первыми двумя проблемами (с большой помощью Google!), Третья постановка проблемы распалась дальше:

  • Мне нужно выяснить, как создать множество форм, которые взаимодействуют друг с другом.
  • Мне нужно иметь возможность менять цвета фигур.

А потом, когда я начал приближаться к законченному эффекту:

  • Было бы здорово увидеть обновление значка? Я думаю...

Если вы хотите увидеть в действии некоторые из созданных мной прототипов, я написал гораздо более подробную техническую статью в Arbitrary Blog.

Инструментальное строительство

Логотип на сайте выглядит довольно четко, но как насчет значков социальных сетей или других маркетинговых материалов? Для этого я создал Генератор произвольных логотипов, инструмент, который позволяет мне создавать анимированные варианты GIF и PNG.

Самое приятное в генераторе логотипов - это то, что он позволяет мне перемещаться вперед и назад во времени. Эта функция позволяет мне выбрать именно тот кадр, который, по моему мнению, лучше всего подходит для данного момента. Я взял выходной файл GIF и сделал лентикулярные отпечатки с помощью Gifpop! - отличный маленький подарок для клиентов и партнеров. Для обоев и презентаций я создал более крупный вариант - Генератор произвольного фона. Эта версия удаляет логотип и просто фокусируется на эффекте.

Выводы

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

Синтаксис не делает хорошего разработчика - делает процесс. Один из приемов состоит в том, чтобы запомнить, что в первую очередь такого крутого в Интернете, - это пересечение дизайна и интерактивности.

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

Слова: Джейми Косой

Джейми Косой - основатель @ArbitraryCo и бывший директор по технологиям в Big Spaceship.

Свежие публикации
В After Effects добавлено 8 новых функций
Читать

В After Effects добавлено 8 новых функций

Adobe уже давно придает большое значение тому факту, что ее инструменты для работы с видео используются на высших уровнях теле- и киноиндустрии. И просто чтобы забить точку, он будет использовать пред...
Лучшие складные телефоны
Читать

Лучшие складные телефоны

До недавнего времени было невозможно сделать лучшие складные телефоны. Мы не говорим о раскладушках, которыми вы пользовались до того, как смартфоны стали обычным явлением. Телефоны в этом списке - эт...
Присоединяйтесь к собственным событиям с PhoneGap
Читать

Присоединяйтесь к собственным событиям с PhoneGap

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