Жизнь на учебном курсе по программированию

В настоящее время я зарегистрирован в чикагском филиале Coding Dojo, учебном лагере для разработчиков полного цикла. Вот мой взгляд на курсы для начинающих, которые, я надеюсь, помогут другим потенциальным студентам принять осознанное решение о том, где изучать программирование.
Примечание. Поскольку я в настоящее время зарегистрирован в чикагском филиале Coding Dojo, мои наблюдения почти полностью основаны на этом опыте и могут не точно отражать другие программы.
Сколько часов вы тратите?
Правильно, вы должны тратить на кодирование не менее 12 часов в день без долгих перерывов. Если вы похожи на большинство людей, у вас, вероятно, не хватает опыта разработки программного обеспечения, и для того, чтобы получить необходимые навыки за 14 недель программы (продолжительность программы может быть разной), вам нужно будет есть, спать, и дыши, код. Кроме того, хотя вам определенно следует взять выходной день или около того в выходные, когда вы не смотрите на экран или не касаетесь клавиатуры, вам следует выделить не менее 6–12 часов на работу в выходные. Это позволит вам не отставать и возможно немного впереди.
Имейте в виду, что этот ритм не является добровольным. Bootcamps ожидают, что вы будете так усердно работать. Их учебная программа, планы уроков и задания предполагают, что у вас есть такой график и рабочая этика. Если вы будете заниматься минимум, то есть менее 12 часов в день, вы отстанете.
Отставание:
О, парень! Это не то место, где вы хотите быть! Если вы отстаете от своей когорты, вам будет сложно понять лекции, вы можете пропустить ключевые концепции, и вас могут попросить пропустить определенные задания, чтобы наверстать упущенное, что еще больше снизит ваш опыт и знакомство с предметом. Хорошая вещь в учебных лагерях (по крайней мере, в Coding Dojo) заключается в том, что, поскольку они обучают нескольким стекам, вы можете перейти к другому набору технологий, не испытывая слишком негативного влияния на ваше непонимание другого стека. Таким образом, вы получаете шанс каждый месяц получать почти все с чистого листа.
Социальная жизнь:
Жизнь на учебном курсе по программированию непроста. Этот выбор далек от традиционного опыта колледжа, когда предполагается, что часть опыта колледжа включает в себя другие занятия, помимо учебных достижений. Хотя заводить друзей в учебном лагере приветствуется, не думайте, что у вас будет время встретиться с кем-либо за его пределами. Фактически, во время подготовки я сказал своим друзьям и социальным группам, чтобы они не связывались со мной в ближайшие несколько месяцев. Мой телефон весь день молчит, и я проверяю его буквально только по дороге домой. Визиты к врачу лучше делать до или после. Каникулы - глупая затея. Вы здесь, чтобы работать, поэтому оставьте все, что вас отвлекает, за дверью. Когда вы закончите, через несколько коротких месяцев, у вас будет возможность снова пообщаться, а также вы обретете новый мощный навык. Кроме того, подумайте обо всех крутых историях, которые вам придется рассказать о своей новой безумной трудовой этике.
Еще один замечательный аспект учебного курса по кодированию - это то, как он пытается смоделировать ваш опыт обучения в учебном лагере по образцу реальной команды разработчиков. Во время проектных периодов вы будете работать в команде, что может быть круто, но наверняка станет жизненно важным опытом для обучения. Вы назначите менеджера команды из числа ваших коллег, надеюсь, этот менеджер будет превосходным и поможет направить ваш проект в правильное направление и выполнение (возможно, этим менеджером даже можете быть вы!). Возможно, ваш менеджер не обладает необходимой дальновидностью, чтобы управлять командой разработчиков. Работа с управленческими недостатками также даст вам отличную практику для развития в реальной жизни.
Работа в команде может быть взрывом! Проведите весь день, пытаясь справиться со сложным материалом с невероятной скоростью, это поможет вам сблизиться со своими сверстниками. Это отличный опыт, и у вас обязательно появятся отличные друзья.
Уравновешивание образа жизни и преодоление давления:
Хотя я обсуждал, как сильно вы должны заставлять себя, я должен также упомянуть, что вы не должны выходить за свои личные пределы (по крайней мере, не слишком далеко; очевидно, вы должны подталкивать себя к своим зона комфорта, только не до вашего предела). Если вы сгорите на второй неделе, вы потратите впустую свое время и деньги, а это никому не нужно.
Чрезвычайно важно следить за тем, чтобы вы оставались здоровыми. Помните, что высшие функциональные возможности вашего мозга напрямую связаны с вашим физическим, эмоциональным и психологическим благополучием. Если вы недостаточно спите, постоянно переедаете закуски, пьете большое количество энергетических напитков или кофе, или испытываете стресс из-за общей интенсивности программы, это только замедлит вас еще больше и потенциально может привести к более серьезным проблемам. . Поэтому убедитесь, что вы хорошо спите, тренируетесь несколько раз в неделю и правильно питаетесь.
Время от времени (ключевая фраза: время от времени не каждый день) побалуйте себя! Сходи выпить на выходных. Съешьте плитку прекрасного шоколада, сходите на спа-процедуры или посетите русскую баню. Цель учебного лагеря не в том, чтобы наказать себя, и если вы ненавидите мысль о пробуждении утром, что ж, что-то не так. Сделайте так, чтобы каждое утро приходить в школу было увлекательно. Спрячьте свой любимый кофе в школе и используйте его как фактор мотивации. Подружитесь со своими товарищами по когорте и постарайтесь улучшить свою игру в пинг-понг, пока однажды вы не станете лучшим игроком в Додзё ...
Хотя из-за завтрашнего экзамена легко беспокоиться и нервничать, пока вы еще не знаете, какой путь пройти, и хотя это звучит неуместно, вам следует расслабиться! Из-за продвинутого темпа программ вы часто можете не «прорваться» в своем понимании до последней минуты. Я знаю, что по обоим экзаменам на пояс (на данном этапе программы) у меня был прорыв только в ночь перед экзаменом. Беспокойство о своей успеваемости и способностях по сравнению с другими в вашей когорте и любая другая потенциальная проблема только замедлит ваш мыслительный процесс и сделает вас несчастным.
Чтобы выжить, вам нужно стать ниндзя с совершенным внутренним спокойствием и позитивным взглядом на все трудности и проблемы. Только не забудьте немного расслабиться!
Краткосрочная перспектива - это долгая перспектива:
Лучше ли учебные курсы для начинающих, чем традиционные образовательные программы по разработке программного обеспечения?
Если вы спросите ветерана отрасли его совета относительно наиболее важных навыков или качества, необходимых для того, чтобы стать лучшим разработчиком, я готов поспорить, что большинство из них скажет что-то вроде: «Лучший способ для разработчиков улучшить свои навыки - это время и практика ».
Из моего опыта попыток выучить различные языки и навыки за очень короткий промежуток времени, теоретическое понимание того, что тяжелая работа - это то, что позволяет людям развивать этот новый навык и способность буквально заставлять себя проводить более 12 часов в день, это то, что разделяет тех, кто может стать разработчиком в течение 3,5+ месяцев, и тех, кто не может. Тот простой факт, что вашему мозгу нужно время, чтобы обдумать новые концепции, необходимо разработать новые пути и ассоциации для этого совершенно нового метода мышления и выражения, требует, чтобы вы как можно скорее проводили как можно больше времени в мире программного обеспечения, пока вы мечтаете в коде. Итак, учебные курсы являются отличным образовательным вариантом по той причине, что они выводят вас на рабочее место, где вы сможете погрузиться в реалистичные и практические приложения для разработки программного обеспечения. Хотя в колледже вы можете получать интересные и ценные знания, на этот процесс у вас уйдут годы, после чего вам потребуется совершить переход от академической среды к развитию реальной жизни. Каждый должен совершить этот скачок, просто выпускники начального лагеря делают этот скачок быстрее и, таким образом, имеют на годы больше практического опыта. Делает ли это плохих разработчиков с высшим образованием? Я так не думаю. Я просто думаю, что если вы хотите расти как разработчик, увеличивая при этом свою отдачу, и если лучший способ улучшить свои навыки - это применить свои навыки в реальной жизни, мне кажется, что обучения достаточно, чтобы начать, а затем приступить к работе. хорошая идея. Я люблю узнавать новую информацию; Для меня это одновременно и хобби, и образ жизни. Однако, если вы изучаете что-то как профессию, а не как обычное хобби, изучайте это таким образом, который позволит вам как можно скорее начать практиковаться в использовании этого навыка. Жизнь слишком коротка, чтобы сидеть сложа руки и ждать совершенства.
Учебный курс по компьютерным наукам и программированию:
Итак, разве у буткемпов нет фатальной слабости? Они не преподают информатику, скорее, они преподают компьютерное программирование. Это означает, что выпускники учебного лагеря имеют лишь поверхностное представление о том, что они на самом деле делают, верно? Они могут знать, как пользоваться инструментами, но понимают ли они инструменты? Могут ли они создать новый, лучший инструмент?
Ответ на этот вопрос я все еще пытаюсь найти. Я пытаюсь определить, стоит ли мне вернуться в школу, чтобы получить степень магистра компьютерных наук. Однако вот мое текущее мнение по этому поводу.
Несомненно, наличие ученой степени в компьютерной области было бы бесценным для большинства людей. Однако, как я упоминал в предыдущем разделе, кажется, есть точка расхождения, когда обычно наблюдается убывающая отдача, измеряемая увеличением вашего образования по сравнению с вашей зарплатой, легко поддающейся количественной оценке метрике. Получают ли выпускники MS: CS больше, как правило? Им, вероятно, платят больше, но насколько больше? Стоит ли это два года и 20 000–70 000 долларов США? Может быть…
Лучший аргумент в пользу получения традиционной степени, который я слышал, - это стремление создать что-то радикально иное и новое. Я сомневаюсь, что выпускник учебного лагеря проделал бы много новаторской работы в области искусственного интеллекта, беспилотных автомобилей, машинного обучения или робототехники, хотя я оставляю место людям, чтобы доказать, что я неправ. Создание чего-то совершенно нового, вместо того, чтобы повторять предыдущие идеи или разрабатывать радикально новую концепцию, вероятно, было бы делом тех, кто обладает передовыми знаниями в области компьютерных наук. С практической точки зрения это было бы лучшей причиной для моего возвращения, чтобы заработать MS.
Если вы заметили, я обсуждал только степень магистра, а не степень бакалавра компьютерных наук. Я проделал некоторые приблизительные подсчеты поздно ночью в додзё, и кажется, что выпускник учебного лагеря за 3,5 месяца проработает примерно 1,5 года работы, которую сделал бы студент университета с 12 кредитами. Это, вместе с тем фактом, что студент бакалавриата будет потратить только ~ 2 года на свою специальность, кажется, указывает на то, что бакалавриат не будет невероятно полезным занятием, по крайней мере, в том, что касается технических достижений и когда учебные курсы могут получить работу. сделано намного раньше за гораздо меньшие деньги. Я не собираюсь обсуждать в этой статье свои взгляды на гуманитарное образование (принцип образования, а не политический взгляд).
Суть проблемы в том, что все сводится к вам. Когда люди сравнивают выпускника университета с выпускником учебного курса, они обычно делают это, делая в корне неверное и легкое для понимания предположение. То есть они судят обоих людей по их навыкам, знаниям и способностям на момент выпуска. При сравнении выпускника учебного лагеря с ~ 4 месяцами обучения за плечами и студента университета с 2–4 годами обучения (в зависимости от того, учитываете ли вы только его основные исследования), неудивительно, что результаты в основном будут такими: перекос в университеты. Чудо в том, что буткемпы выглядят так же хорошо, как и они! Логическая ошибка такого сравнения заключается в том, что вы не должны предполагать, что выпускник учебного лагеря будет просто стагнировать после того, как он закончит свое «формальное» образование. Отличительной чертой хорошего разработчика, как вам будет сказано в любом количестве сообщений в блоге и статьях, является то, что они стремятся решать проблемы и всегда стремятся улучшить себя и свои технические навыки. Кроме того, выпускник учебного лагеря, несомненно, будет изучать только новые навыки и технологии по своей программе, которые пользуются большим спросом и находятся на переднем крае разработки, тогда как учебные программы университетов часто меняются медленно и могут не точно отражать текущую технологическую среду. .
Таким образом, если вы хотите провести надлежащее сравнение, вы должны затем сопоставить выпускника университета с 2–4 годами обучения, но с очень небольшим реальным жизненным опытом, с выпускником учебного лагеря, у которого 3–4 месяца обучения, а затем 1.75 –3,75 года постоянного обучения, совершенствования и реального опыта, которые можно сразу же использовать в качестве опытного и полезного члена команды разработчиков.
Разрешение:
Что можно вынести из этой статьи? Несколько вещей:
- Вы должны подготовиться к тому, чтобы работать усерднее, чем, вероятно, когда-либо делали раньше. Это будет сложно психологически, физически и эмоционально.
- Не отставай. Если вы впереди, продолжайте! Отставание вызовет множество проблем и неуверенности, которые будут преследовать вас. Кроме того, неплохо было бы создать себе буфер на случай, если ваш компьютер выйдет из строя или у вас плохой день и вы не можете сосредоточиться.
- Не планируйте вечеринки, светские мероприятия, отпуск или встречи с друзьями. Тратьте почти все свое свободное время на учебу, учебу и подачу заявления о приеме на работу. Сосредоточьтесь на обучении и создании полезных связей со своими сверстниками.
- Не забывай заботиться о себе! Делайте упражнения, хорошо ешьте и хорошо спите. Будьте тем человеком, к которому люди обращаются за улыбкой, шуткой или домашним печеньем (я никогда не приносил их, но другие приносили, и это добавило дополнительную искру дружелюбия Додзё). Не сгорите!
- Краткосрочная перспектива - это долгая перспектива. Чем быстрее вы получите настоящую работу, тем быстрее улучшатся ваши навыки. Войдите в дверь развития и никогда не переставайте расти. Да, вы всегда можете изучить эту горячую новую технологию или эту удивительную структуру, но вместо того, чтобы стремиться к совершенству, попытайтесь развиваться и обеспечивать отличную ценность для тех, кто ищет вас.
- Получение ученой степени в области компьютерных наук может быть чрезвычайно ценным. Если вещь выровняется, чтобы позволить вам это сделать, я бы очень внимательно посмотрел на этот вариант.
Спасибо за прочтение! Если вам понравилась моя статья, дайте мне знать, хлопнув в ладоши, поделившись ею или комментируя ниже.
Мендель Бакалейник