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

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

Стоит ли пытаться научиться программировать?

Чему вы не научитесь с программированием

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

Вы не научитесь:

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

Более важные вещи для изучения

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

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

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

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

1. Узнайте о личных финансах

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

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

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

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

Поскольку этот контент может повлиять на ваши финансы, я прошу вас отнестись к нему с недоверием.

http://monevator.com/category/book-reviews/ На странице Monevator, посвященной отзывам о книгах, есть то, что вам нужно, и я предлагаю Умное инвестирование Тима Хейла. Monevator сам по себе является хорошим сайтом для начинающих.

2. Получите водительские права

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

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

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

В течение жизни вам понадобятся водительские права. Получить один.

3. Читайте научно-популярные книги, которые вы можете понять

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

Благодаря расположению этих символов Unicode вы сможете получить знания, которые люди получали гораздо более сложными способами, такими как исследования (иногда «чушь собачья»: держите ухо востро).

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

Зайдите в Интернет, выберите интересную книгу или сходите в библиотеку.

4. Присоединяйтесь к встречам в вашей области или хобби

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

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

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

Meetup.com — отличный сайт для поиска встреч в вашем районе.

5. Управляйте своей жизнью на микроуровне

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

Некоторые вещи я микроконтролирую сам:

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

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

6. Узнайте, как добиться успеха на собеседовании

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

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

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

Узнайте, как кодировать.

Все еще здесь? Сделал большую часть этого? Тогда… иди учись программировать. Это в основном бесплатно!

Вот некоторые ресурсы, на которые я с удовольствием вас направлю:

  • https://www.codecademy.com/ (бесплатно), самый распространенный сайт для изучения основ разработки. Это не так глубоко, как хотелось бы, но это хороший способ дать толчок вашему программированию.
  • Stanford’s CS101 https://lagunita.stanford.edu/courses/Engineering/CS101/Summer2014/about (бесплатно), потому что очень важно также формально понимать, что вы кодируете. Доступны несколько других курсов Стэнфорда.
  • https://www.coursera.org/ (платный), самый популярный сайт онлайн-курсов. Это не даст вам большей отдачи от вложенных средств, чем бесплатные варианты, 5 но, скорее всего, вы будете учиться быстрее с более качественным контентом.
  • @tamagnofabio (бесплатно), не стесняйтесь беспокоить меня, если вам нужен конкретный материал или есть вопросы. Я занимаюсь программированием уже десять лет, поэтому я обязан знать, что вы можете искать!

Подпишитесь на меня на Medium или в моем аккаунте в Твиттере @tamagnofabio.