Рубрики
Без рубрики

Сохраняйте спокойствие и начинайте кодировать: Как бороться с тревогой при кодировании

Звучит ли для вас программирование как напряженная работа? Люди считают, что этого не должно быть, поскольку, похоже, все, что делают программисты, – это сидят перед экраном и печатают. Тем не менее, оказывается, тревога кодирования реальна. С пометкой новички, java, программирование, обучение.

Звучит ли для вас программирование как напряженная работа? Люди считают, что этого не должно быть, поскольку, похоже, все, что делают программисты, – это сидят перед экраном и печатают. Здесь нет ситуаций, связанных с жизнью или смертью, нет огромной ответственности по сравнению с медициной, банковским делом или бухгалтерией. С технической точки зрения, разработка программного обеспечения должна быть одной из самых спокойных работ в мире.

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

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

Почему Учащиеся, Изучающие Программирование, Испытывают Стресс?

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

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

4 Совета, как Научиться Программированию Без Стресса

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

Совет №1. Выберите основной язык программирования

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

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

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

Java лидирует по количеству объявлений о вакансиях

По данным Indeed, крупнейшего агрегатора вакансий в мире, Java, Python и Javascript являются ведущими языками программирования по количеству вакансий.

Java преподается хорошо

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

Если вы хотите использовать учебные материалы для обучения, переход на Java – разумный выбор, поскольку 10 лучших степеней CS в стране выбирают язык для вводного курса (Python лидирует по небольшим цифрам, с 13 доступными программами).

Разработчикам Java хорошо платят

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

Совет №2. Планируйте свое образование

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

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

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

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

  • Базовый синтаксис Java
  • Основные концепции ООП
  • Коллекции и структуры данных
  • Базы данных
  • Параллелизм и многопоточность
  • JVM и управление памятью
  • Владение экосистемой Java

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

Концепции синтаксиса Java :

  • Переменные
  • Типы данных
  • Операторы If-else
  • Петли
  • Операторы Continuous и Break

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

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

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

Совет №3. Собирайте нужные ресурсы

Необходимость применять знания, полученные при обучении в реальных условиях, является основной причиной беспокойства среди студентов, занимающихся развитием. Пользователь форума Freecodecamp прекрасно резюмировал это беспокойство:

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

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

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

Книги и учебные пособия — 20% всех ресурсов, в основном для ссылок

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

Вот мои любимые книги и учебные пособия по Java:

Книги :

  • Head First Java — увлекательное, удобное для начинающих чтение, которое даст вам быстрое представление о том, как используется язык и его базовая структура.
  • Эффективная Java — единственная в своем роде книга для опытных программистов, которые хотят максимально использовать набор инструментов языка.
  • Java Puzzlers — честное руководство по подводным камням и проблемам Java. Чтение этой книги сэкономит вам часы на борьбе с угрозами после развертывания.

Учебные пособия :

  • Java Code Geeks — хорошо структурированный список сообщений, связанных с Java, который легко использовать для ссылок при работе над новыми проектами.
  • Java Oracle Tutorials — официальные руководства Oracle являются справочными ресурсами большинства разработчиков (включая меня).
  • Programming Creek — еще одна интуитивно понятная и простая в использовании обучающая база данных Java – эта определенно заслуживает того, чтобы быть в вашем списке избранных.

Онлайн—курсы — более глубокий взгляд на язык, сочетание теории и практики – 30% всех ресурсов

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

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

Вот мои любимые курсы Java :

Платформы, основанные на практике — 50% всех ресурсов

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

Я настоятельно рекомендую студентам не торопиться и исследовать практические игры и платформы, которые помогут вам стать лучше на любом выбранном вами языке программирования. Вот мои любимые приложения для Java:

  • Codegym — мощная практическая платформа для того, чтобы стать опытным Java-программистом. Есть более 1200 практических заданий в сочетании с короткими лекциями, которые помогут вам освежить теорию, лежащую в основе каждой проблемы. Codegym охватывает все аспекты языка — ядро Java, Коллекции, Многопоточность, Сервисы и JSP, даже обработку баз данных и SQL.
  • HackerRank – простая в использовании и хорошо структурированная платформа с практическими проблемами Java. Если вы хотите сравнить себя с другими изучающими программирование, это подходящее место, чтобы соревноваться друг с другом, выполняя небольшие задания. Есть задачи разного уровня сложности — они помогут как начинающим, так и продвинутым разработчикам.
  • Codewars – это управляемый сообществом практический ресурс Java, где разработчики создают проблемы и практические задачи друг для друга. Помимо Java, платформа поддерживает JS, C, C++ и многие другие языки.

Совет №4. Присоединяйтесь к сообществам

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

Чтобы убедиться, что вы не усваиваете проблемы и не расстраиваетесь из-за незначительных неудач, обратитесь за помощью к коллегам. Лично я большой поклонник Reddit, Freedcodecamp и Stack Overflow, но вы должны найти то, что работает для вас.

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

Reddit :

  • r/код вместе
  • r/Информатика
  • r/ежедневный программист
  • r/compsci
  • r/java
  • r/learnpython
  • r/машинное обучение

Другие платформы :

  • Форум Freecodecamp
  • StackOverflow
  • GitHub
  • Форум по программированию на PHP
  • Форумы JavaScript
  • Форумы JavaScript

Вывод

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

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

Впервые опубликовано на Levelup Отключен .

Оригинал: “https://dev.to/selawsky/keep-calm-and-start-coding-how-to-fight-coding-anxiety-pek”