Как разблокировать JavaScript.

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

Давайте сделаем паузу, чтобы обсудить причины, по которым я выбрал JavaScript в качестве языка программирования. Я решил, что в течение следующих 2-3 лет я хочу перейти от преподавания технологий к штатному программисту. Согласно отчетам Hacker Rank и Stack Overflow, опубликованным за последние два года, JavaScript является наиболее используемым языком программирования в мире. Это говорит мне о том, что работа будет доступна, когда я буду готов погрузиться в нее.

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

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

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

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

Что вам понадобится? Помните, я говорил, что это не будет бесплатно? Я был серьезен, но это может быть невероятно недорого по сравнению со временем, необходимым для проверки хороших бесплатных ресурсов. Это также значительно дешевле, чем обучение в колледже. Вероятно, вы можете получить все, что вам нужно, менее чем за 200 долларов.

Во-первых, я рекомендую вам купить Книгу о носороге Дэвида Фланигана. Издатель O’Reilly был признанным лидером на рынке книг по обучению технологиям до тех пор, пока такие вещи существовали, и когда я пишу о конкретной концепции, я буду писать по мере работы над книгой. У меня есть и Kindle, и бумажная копия, но я использую его как для чтения, так и для справки. Я нахожу чтение больших бумажных книг неприятным, и мне трудно использовать книги Kindle для справки.

Одно из заданий, которое я предлагаю вам на пути к обучению, — читать о JavaScript не менее 30 минут в день. Было бы лучше читать по часу в день, но и полчаса будут невероятно полезны, особенно если вы успеете сделать свое чтение перед сном. Чем больше способов вы переживаете информацию, тем больше вероятность того, что она прилипнет к вам. Эта идея лежит в основе всего обучения.

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

Во-вторых, я рекомендую вам использовать курсПолный курс JavaScript 2022: от нуля до эксперта! в качестве основного средства обучения. На момент написания этой статьи курс использовали почти 600 000 человек, он был просмотрен почти 130 000 раз и имеет 4,7 звезды из возможных 5 звезд. Хороший способ определить, стоит ли курс того, чтобы глядя на то, откуда он взялся, сколько людей его приняли и что они о нем думают. Я доверяю Udemy и никогда не слышал, чтобы они занимались какой-то фальшивой чепухой в обзорах.

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

  1. Имейте рядом с собой блокнот и что-нибудь, чтобы писать и делать заметки: это ключ к успеху. Вы должны записывать любую теоретическую информацию, которую вам дают, своими словами. Это очень поможет с удержанием. Печатать не так хорошо, а вообще не делать заметки ужасно. Мне нравится Rocketbook, потому что я могу вести цифровые записи своих заметок (я также думаю, что это супер круто!)
  2. Слишком много комментариев в коде: большую часть своей работы вы будете выполнять в VS Code (часть бесплатного программного обеспечения, которое будет объяснено в курсе). В своих программах у вас будет возможность комментировать (в следующей статье я расскажу, как комментировать в живом окружении, а пока не парьтесь). В JavaScript однострочный комментарий делается с двойной косой чертой -> "//", а многострочный комментарий использует косую черту и звездочку -> "/* */" все, что находится между двумя "*", игнорируется JavaScript. Ваша задача состоит в том, чтобы использовать систему комментариев для объяснения каждой новой введенной вами команды. Таким образом, вы будете видеть, слышать и записывать информацию в ходе курса, что повысит ее запоминание и усвоение.
  3. Программируйте вместе с лекциями. Пока вы смотрите видеолекции в курсе, ваша задача состоит в том, чтобы вводить те же самые вещи, что и преподаватель. Для достижения наилучших результатов не копируйте и не вставляйте, даже когда вы повторяете код. Эта практика начнет развивать вашу «мышечную память» для JavaScript, что будет иметь решающее значение, когда вы перейти от ученика к исполнителю.
  4. Попробуйте разобраться. Вы должны попытаться решить как задачи, встречающиеся на лекциях, так и задачи по кодированию в конце лекций. Независимо от того, решите ли вы проблемы самостоятельно или нет, вы получите ценный опыт работы с языком, пытаясь решить проблемы. Это также напрягает ваши «мускулы решения проблем», которые вам понадобятся как разработчику.
  5. Сохраняйте свою работу в облаке. Поскольку иногда я работаю над курсом дома, а иногда на работе, моя система настроена на сохранение моей работы в Dropbox. Это позволяет мне продолжить с того места, где я остановился, где бы я ни сидел, когда у меня есть время учиться.
  6. Играть: программировать — это весело! Если это не так, возможно, вам не подходит карьера программиста. Вам определенно следует потратить некоторое время на изучение различных способов решения проблем и поддаться своему любопытству. Самое лучшее в таком курсе, как этот, это то, что вы можете потратить на него столько времени, сколько захотите. Не стесняйтесь использовать часть этого времени, чтобы отвлечься от касательных, которые приходят вам в голову.

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

Следуя этому совету, вы будете не только работать над улучшением беглости JavaScript, но и практиковаться в решении проблем на нем. Оба эти пункта будут для вас ключевыми, когда вы решите стать работающим программистом.

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

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

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

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

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

В то же время это и есть ваше путешествие. Иди своим путем. Может быть, ты не можешь уделять этому столько времени, сколько я. Это нормально. Гораздо важнее каждый день делать что-то, что двигает мяч вперед, чем делать все подряд каждый день. Я начал это путешествие в декабре 2021 года, и моя способность уделять ему время несколько колебалась. Ваш тоже будет, и это нормально.

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

Майкл Томпсон — профессиональный преподаватель технологий, имеющий лицензию на преподавание K-12 в Нью-Гэмпшире. Когда он не изучает программирование, не преподает программирование и не спит, он проводит время, будучи мужем и отцом, в идеале где-нибудь в глуши. Вы можете найти больше его работ на сайтах TheRangerOfDarkhollow и SuperStarStem.