Если бы вы спросили меня, кем я хочу быть, когда вырасту, я, вероятно, ответил бы примерно так:

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

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

Я вырос в 90-х, когда домашние компьютеры стали доступными для среднего класса, и я не могу сказать вам, сколько раз я и моя младшая сестра экспериментировали с нашим отцовским компьютером (IBM 486), и мне пришлось выполнить полную переустановку, потому что некоторых настроек мы изменили, что сделало его неузнаваемым. Однако благодаря этим бесстрашным экспериментам мы многому научились. То, что наши родители никогда не хотели бы узнать.

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

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

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

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

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

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

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

Этот дар полезен также в программировании, где интуитивное понимание абстрактных шаблонов и красота простых решений сложных проблем (я бы сказал) лежит в основе опытного программиста.

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

Может быть, теперь вы сможете ответить на этот вопрос «кем вы станете, когда вырастете» с тем же энтузиазмом, что и я в молодости:

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