Найти в Дзене
Всё и о всём

14 отличных способов научиться программировать

Оглавление
Фото : Нитинаи Сангунсри / EyeEm ( Getty Images )
Фото : Нитинаи Сангунсри / EyeEm ( Getty Images )

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

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

Спросите себя: почему вы хотите научиться программировать?

Скриншот : Матрица/HBO Max
Скриншот : Матрица/HBO Max

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

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

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

Выберите правильный язык программирования

Графика : Shutterstock ( Шаттерсток )
Графика : Shutterstock ( Шаттерсток )

Как только вы поймете, почему вы хотите программировать, вам будет легче определить, какой язык программирования вам следует использовать. Хотя не существует единого «лучшего» языка программирования для изучения, некоторые языки более удобны для пользователя, чем другие. HTML и CSS считаются самыми простыми точками входа в мир кодирования, но они действительно полезны только для разработки базовых веб-сайтов.

Для более интерактивных веб-сайтов, использующих платежные системы или базы данных, вам необходимо знать Javascript, PHP, SQL и Python, чтобы заставить все компоненты петь. Разработчики мобильных приложений используют Swift или C для создания приложений для iOS и Java или Kotlin для приложений для Android. Разработчики видеоигр обратятся к Unity или даже к C#, чтобы воплотить свои игровые идеи в жизнь.

Все еще не можете определиться с языком программирования для начинающих? Большинство профессионалов рекомендуют изучать Python, C# или JavaScript, поскольку они предлагают самую широкую полезность и гибкость карьеры. Чтобы помочь вам принять решение, ознакомьтесь с этой замечательной инфографикой , в которой сравниваются несколько популярных языков программирования.

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

Попробуйте онлайн-курсы

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

Если вы не против попрактиковаться в одиночку, ознакомьтесь с The Odin Project , бесплатным вариантом, который объединяет некоторые из лучших материалов с открытым исходным кодом для превращения новичка в программиста.

Хотите больше индивидуального коучинга и подготовки к карьере, не посещая полноценный буткемп? Попробуйте подписаться на курсы сертификации по модели подписки от Udacity или Treehouse , где у вас есть возможность обратиться за помощью к репетитору, вместо того, чтобы мучиться с ошибками или вопросами кодирования в одиночку. Вы не можете добиться большего успеха, чем курсы программирования за 19 долларов от Udemy (даже меньше, когда есть распродажа) — даже студенты дневного учебного лагеря и студенты, изучающие информатику, подписываются на эти занятия, чтобы дополнить свое обучение.

Независимо от того, сколько курсов вы прошли, многим новичкам все еще трудно применить свои относительно базовые знания. С этой целью многие рекомендуют бесплатный курс «Практический JavaScript» от Watch and Code , который вращается вокруг одного проекта, который вы постоянно повторяете.

Сосредоточьтесь на изучении вычислительного мышления

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

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

Я не могу рекомендовать Harvard CS50x Introduction to Computer Science достаточно. Вы можете пройти курс бесплатно через edX и получить сертификат, выполнив все задания, или вы можете пойти в своем собственном темпе и посмотреть все лекции, размещенные на Youtube . Вы можете создать свою собственную программу по информатике на уровне колледжа, используя этот выбор из пятнадцати онлайн-курсов (многие из которых также перечислены в нашей серии Lifehacker U ).

Почитать книгу

Фото : Windyboy ( Shutterstock )
Фото : Windyboy ( Shutterstock )

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

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

Будучи программистом-самоучкой, вы также можете извлечь пользу из книг, которые предлагают более широкие советы по профессии. Вы улучшите свое мышление и привычки, черты, которые вы сможете применить к любому языку, который решите выучить. 900-страничная книга Стива МакКоннелла « Завершенный код: практическое руководство по созданию программного обеспечения» (2-е издание) считается исчерпывающим руководством по передовым методам с подкрепленными данными рекомендациями по всем вопросам, от разработки проекта до отладки кода.

Следствием этого бегемота является «Чистый код: руководство по Agile Software Craftsmanship » «дяди Боба» Роберта Мартина. Мартин считает, что код должен быть написан эффективно, чтобы его можно было легко тестировать и масштабировать, поэтому многие современные команды разработчиков должны прочитать эту книгу.

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

Ознакомьтесь с некоторыми интерактивными учебниками или играми по программированию

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

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

Игры с программированием также являются интересным способом окунуться в программирование. Если у вас есть час, чтобы убить, вы можете попробовать простые игры Hour of Code . Кроме того, во многих школах уже используется Minecraft: Educational Edition для обучения детей основам программирования с помощью блоков кодирования и даже JavaScript. (Вы можете скачать эту версию Minecraft бесплатно, если у вас есть учетная запись Office 365 для образования.)

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

Посмотрите видео о кодировании

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

Я рекомендую проверить CS Dojo , TheNetNinja и канал Гарварда CS50 на YouTube. Если у вас нет времени на поиск идеального видео или канала по кодированию, вы также можете просмотреть обширную видеотеку LinkedIn Learning, где есть проверенные и профессионально выглядящие учебные пособия. В то время как плата за подписку на сервис в размере 30 долларов США в месяц не является чем-то особенным, вы можете просматривать неограниченное количество контента и тем, что делает LinkedIn Learning более выгодным предложением, чем другие онлайн-классы по запросу, которые имеют раздражающие ограничения.

Практика с личными проектами

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

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

Празднуйте маленькие победы

Фото : Cultura Motion ( Shutterstock )
Фото : Cultura Motion ( Shutterstock )

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

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

Ищите все всплывающие вопросы в интернете

Это наш лучший совет по кодированию: если вы не можете понять, почему ваш код неисправен, вы всегда можете поискать решения в Интернете. В конце концов, вы, вероятно, не первый, кто совершает ошибку, и кто-то в Интернете наверняка уже нашел решение вашей проблемы. Просто «скопируйте и вставьте» свое сообщение об ошибке в Google (или в предпочитаемую вами поисковую систему), добавьте пару кавычек вокруг всей фразы, чтобы вы не просто искали ключевые слова, а затем нажмите «Ввод». Надеюсь, этот маленький трюк приведет вас к правильному ответу.

Если у вас все еще есть проблемы, вы всегда можете опубликовать свой вопрос на форумах разработчиков, таких как Stack Overflow , сабреддит Reddit по программированию или GitHub . Никогда не помешает позвонить другу или незнакомцу в Интернете.