Я не умный, я просто сидел над этим дольше вас

в 9:38, , рубрики: перевод, Программирование, Проектирование и рефакторинг, разработка, Совершенный код

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

Я обучался компьютерным наукам и могу программировать на нескольких языках, так почему же, когда люди говорят мне, что я классный разработчик, у меня ощущение, что они неправы? Обычно я отвечаю что-то вроде:

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


Забавно что те, кто говорят мне, что я хорош, обычно не разработчики. Это напоминает мне историю Джули Чжо «Синдром самозванца», которая, в действительности, перекликается со мной. Она пишет о времени, когда она изучала программирование, и все в ее классе обсуждали, сколько времени у них заняло домашнее задание. Большинство говорили несколько часов максимум, а затем Джули написала, сколько времени это заняло у нее:

«Двадцать часов. Вот сколько времени это заняло у меня. Я не сильна в этом. Неужели я и правда одна из вас?»

Это было в точности, как это было у меня. Я на удивление плох в математике, и программирование никогда не давалось мне с легкостью, в сравнении с однокурсниками — я весь год постоянно занимался без намека на личную жизнь и мучился даже с написанием «Привет мир» и system.out.println() (очень базовыми вещами на Java), не говоря уже о дополнительных заданиях. Я думал, что я покончил с математикой в старших классах и что программирование представляет собой рисование фигур на экране (а не набор текста в черно-белом терминале!)

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

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

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

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

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

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

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

От переводчика

Это мой первый перевод,- не судите строго, и, пожалуйста, пишите об ошибках в личку!

Автор: spendlively

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js