← Academy Blog

Как менялось мое понимание учебы со временем

Translated into:

Привет всем учащимся :) Я Катя, mobile developer в Binary Studio, училась в зимней академии в 21-22 году. В этой статье хочу рассказать о том, насколько же неправильное у меня было понимание учебы в начале моего обучения программированию и что полезного я вынесла для себя спустя это время.

Ошибки с которыми я столкнулась и чему меня они научили

Не стоит учить все и сразу

Я попробовала много разных направлений прежде чем понять, чем действительно хочу заниматься и первой моей ошибкой было то, что это все происходило одновременно (в том числе и благодаря университету). На парах я учила Python с базами данных, C#, JS и еще самостоятельно изучала Java. Привело это все к тому, что у меня образовалась каша в голове из разных языков программирования и я очень плохо осваивала весь материал, делала кучу ошибок и не могла запомнить базовых вещей. Из этого я сделала для себя вывод, что лучше выбрать что-то одно для начала, а потом уже пробовать другие направления, чтобы ничего не путалось в голове.

Устаревшая информация

В интернете я видела очень много советов, что нужно читать книги по программированию. И, к сожалению, это было моей следующей большой ошибкой… В тот момент своей жизни я учила веб и решила попробовать книги. Погуглила самые популярные книги по вебу и потратив внушительную сумму (люблю бумажные варианты), купила книги, которым было уже минимум 4-6 лет… (До сих пор не понимаю почему тогда они были в топе) И когда я прочитала эти книги, я поняла, что спустя столько времени изменилось буквально ВСЕ и те знания которые я приобрела, оказались уже совсем устаревшими, а технологии давным давно умерли. Теперь, если я выбираю книгу, для меня важно, чтобы она была совсем свежая. Если я и покупаю книгу, то по той теме, которая базовая для большинства направлений, например, алгоритмы и структуры данных, так как они практически везде одинаковые и это будет полезное знание основ. Книги по фреймворкам я стараюсь не читать, обхожусь видео и документацией) Что касается курсов и видео, то я выбираю варианты с регулярными обновлениями, или совсем новые.

Не нужно иметь суперпамять

Раньше мне часто было грустно, так как я думала, что быть хорошим программистом = помнить как писать любой код и держать в голове все. Я даже конспекты вела, чтобы лучше запоминать, но у меня не сильно получалось и временами я думала, что возможно писать код это не мое… И придя в академию, я сталкиваюсь с огромным количеством нового для меня материала и есть всего 3-4 дня на выполнения дз. Домашки были очень разнообразные, начиная от верстки страниц сайта, заканчивая написанием приложения на Kotlin. Естественно времени на конспекты уже не остается и запоминание большого количества кода тоже вызывает огромные сложности. Также большим стрессом для меня было дз по Flutter. На тот момент я практически ничего про него не знала, никогда на нем не писала и впервые увидела Dart, а мне нужно было написать приложение за 4 дня. Я подумала, что это конец, но спустя большое количество часов чтения документации, просмотра лекций и попыток все это реализовать мне все таки удалось выполнить это дз, так еще и получить максимальный балл. Этот момент был одним из переломных, так как я поняла, что необязательно все знать, важно уметь разбираться с новым материалом, научиться уделять время документации и не боятся того, чего ты не знаешь (как показывает практика, что на работе, что в учебе, приходится постоянно сталкиваться с тем, что чего-то не знаешь или не умеешь и разбираться на ходу)

Откладывание практики на потом

Я уделяла очень много времени, чтобы разобраться в теории, примерах кода на курсах и прочтению литературы, но не написанию кода. Я была уверена, что прежде чем начать писать программу, нужно уже уметь что-то. Но академия показала мне, что я совершенно неправа. Пройдя этап домашек и мини-проекта, я поняла, что чем больше я писала кода, тем больше я начинала разбираться и понимать. Для меня было очень сложным разобраться в бэке на мини-проекте, так как я его очень плохо знаю. Так же были и другие конструкции и структура кода, и я вообще не понимала как можно самостоятельно такое написать. Но когда я приступила к выполнению задач и переписала непонятные мне части по нескольку раз, я уже начала разбираться как там все работает и больше для меня не было непоняток. Я осознала, что практике нужно уделять гораздо больше времени, чем теории (я уделяла примерно 80% времени теории и 20% практике, а в итоге эти проценты поменялись друг с другом местами). Благодаря такому количеству практики, спустя 3 месяца академии я получила больше знаний, чем за годы самостоятельной учебы.

У программистов нет большого количества общения

Слышала очень много мифов о том, что программисты сидят 24/7 за компьютером и только пишут код, так что тем, кто не любит общение с людьми эта профессия покажется идеальной. Спешу расстроить таких людей). Когда я попала на финальный проект, для меня было большим удивлением, насколько много нужно общаться. Каждый день ежедневные звонки, много общения с командой, будь-то на тему задачи или ревью кода друг друга. И самым страшным для меня было демо каждую пятницу)). Я всегда боялась выступлений на публику и презентаций своей работы. Спустя 1.5 месяца я была очень рада, что столкнулась с этим открытием именно в академии (а не на первой работе) и смогла побороть свои страхи.

Если подытожить все пункты, то я сделала для себя такие выводы:

  • При изучении новой технологии стоит выбирать что-то одно, а не пытаться учить все сразу
  • Учиться нужно только по свежим книгам, курсам, видео и документации
  • Важно развить навык постоянно разбираться с новым материалом
  • Стоит развивать софт скилы на уровне с хард скилами
  • Наилучшее соотношение теории и практики 20:80

Дополнительные советы

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

Много раз до академии я задавалась вопросом: “Я учусь сама, без ментора, как вообще узнать что-то новое, о чем самому сложно догадаться?” Спонтанно, когда я гуглила вопрос, который меня интересовал, я наткнулась на сайт со статьями и блогами Medium. Теперь мне каждый день приходит рассылка по React/React Native и очень часто я там сталкиваюсь с тем, о чем никогда раньше не задумывалась. Это очень помогает мне узнавать что-то новое, развиваться дальше и совершенствовать написание кода.

Заключение

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