Все статьи | Блог студента

Новичок против JS. Мой топ ошибок в упражнениях

Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Новичок против JS. Мой топ ошибок в упражнениях главное изображение

Привет! Начнем с ошибок, которые относятся именно к языку программирования. Потом обсудим психологические закавыки, которые даже самого мотивированного студента превращают в истощенный комочек разочарований. Звучит заманчиво? Тогда поехали!

Ошибка 1. Работа с циклом

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

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

Ошибка 2. Опечатки в методах

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

Ошибка 3. Вызов метода

Меня как новичка смутило, что надо писать Массив.этоМассив(массив). Звучит как тост шизофреника, да? Ну да. А потом ты проходишь объекты и не понимаешь, как писать по-другому. Ну или так мне сказали. Эх, когда наступит этот момент блаженной профессиональной деформации?

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

enter image description here

Ошибка 4. Экспорт и импорт

Я застряла в гугле на полчаса, читая жалобы студентов Хекслета на экспорт. Оказалось, что больше всего проблем с экспортом по умолчанию. И у меня были. То тренажер Хекслета кусается, то оказывается что нельзя писать export default foo();

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

Ошибка 5. Незакрытая скобочка

С каким жаром я могу переписать код, переделать логику! И все для того чтобы выяснить, что проблема была в какой-нибудь скобочке. Ар-р-р! Прямо сейчас у меня забытая фигурная скобка в первом проекте. Ее призрак будит меня по ночам громом цепей.

Кроме скобочек у нас есть еще точки с запятой. Да...

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

enter image description here

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

Таракан 1. Сидеть за кодом до первой истерики

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

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

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

А если серьезно, то в Neuralink будет индикатор свежести мозгов? Хотя электрический разряд в конце каждого помидора тоже можно.

Таракан 2. Использовать только краткосрочную память

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

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

Поэтому я часто вспоминаю пословицу «Тише едешь — дальше будешь». Дозируйте потребление контента, иначе вам придется все переучивать по два-три раза.

Если вам интересно, как работает мозг во время учебы, советую “Думай как математик” Барбары Оакли.

Таракан 3. Применять теорию урока в упражнении

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

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

enter image description here

Таракан 4. Использовать только один вид фокуса

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

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

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

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

Я переключаю фокус с трудом. Попробовала вот Обсидиан, софт для конспекта с использованием ссылок (как на Википедии :)). Рассеянный фокус включается легко, достаточно перейти на вкладку диаграммы связей (mind map в простонародье).

enter image description here

Вот и все мои любимые грабли. Делитесь в комментариях своими, составим коллекцию!

Аватар пользователя Лада Голунова
Лада Голунова 03 сентября 2021
Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
19 января 8 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
19 января 8 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
19 января 8 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
19 января 8 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
19 января 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Новый
Создает веб-приложения со скоростью света
19 января 5 месяцев