Написание обоих позволило мне создать уникальный стиль.

Я программист насквозь.

До того, как я начал программировать, в детстве я хорошо владел языками. К 14 годам я овладел основами китайского языка (письменного и устного), одного китайского диалекта и английского языка. В зрелом возрасте я освоил японский язык (письменный и устный). В какой-то момент моим любимым способом общения было смешивание всех трех языков в разговоре. Мало кто из моих друзей понимал, о чем я говорю.

В колледже, не имея диплома по информатике, я сам поглощал книги по программированию. К тому времени, когда я закончил учебу, я писал на Perl, а сценарии - в Shell. После первых двух лет работы я освоил SQL и изучил объектно-ориентированное программирование на Java.

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

В коде есть красота, как в поэзии

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

  • Лирические стихи прекрасны как для запоминания, так и для чтения.
  • Поэзия сливается с моего языка и напоминает мне песню.
  • Лаконичное построение стихов напоминает мне геометрические формы современной архитектуры.

Стихотворение приятно читать, смотреть и вызывать эмоции.

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

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

Кусок кода прекрасен своей логикой, ритмом и простотой.

Написание кода - это тот же творческий процесс, что и написание стихов.

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

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

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

Для такого визуального человека, как я, изображение - это все.

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

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

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

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

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

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

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

В поэзии используются те же языковые конструкции, что и в коде.

Когда вы изучаете разные языки, вы начинаете замечать закономерности. Интуитивно я разработал для себя процесс, изучая разные языки.

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

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

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

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

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

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

Об авторе

Цзюнь Ву (Jun Wu) - автор контента по технологиям, искусственному интеллекту, науке о данных, психологии и воспитанию детей. Имеет опыт программирования и статистики. В свободное время она пишет стихи и ведет блоги на своем сайте для родителей: wellplayedchild.com

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