Первая запись в блоге программиста и начало его пути к состязанию 100 Days of Code

Введение

Одна из первых вещей, которую вам вбивают в голову на уроках информатики, это то, что мы должны начинать считать с 0. Это урок, который вы никогда не забудете, потому что в противном случае вы столкнетесь с бесконечными ошибками индекса за пределами границ. Точно так же я хотел попробовать выполнить задание «100 дней кода», начав с нулевого дня.

Сделав шаг назад, вызов 100 Days of Code — это именно то, на что он похож. Цель состоит в том, чтобы тратить не менее часа на программирование каждый день. Дополнительную информацию можно найти на официальном сайте. Впервые я услышал об этом челлендже на Reddit год назад. Я присоединился к серверу разногласий для подотчетности и даже не дожил до первого дня. В то время я учился в колледже и вел активную социальную жизнь, рекрутировал, участвовал в организациях, посещал занятия, учился, тренировался и просто жил своей жизнью. жизнь мешала найти время или энергию, чтобы посвятить себя этому вызову. Теперь, будучи работающим человеком с ограниченными возможностями для социального взаимодействия вне работы, у меня есть больше времени и энергии, чтобы пройти 100 дней кода.

Мотивы и цели

После прочтения вводного абзаца у вас могут возникнуть два основных вопроса:

  1. Почему вы хотите кодировать час в течение 100 дней подряд?
  2. Почему вы хотите вести блог о своем опыте кодирования?

Оба вопроса отличные, потому что я думаю, что любой здравомыслящий человек был бы сбит с толку. Я работаю инженером-программистом в Liberty Mutual, что требует от меня смотреть на экран компьютера с 9 утра до 5 вечера. Безумно думать, что я добровольно вернусь к программированию после того, как уже потратил целый день на кодирование для своей работы.

Отвечая на вопрос 1, я объясняю свое желание выполнить эту задачу несколькими причинами. Я хочу развить любовь к программированию, которую я не могу себе представить, если мои отношения с программированием связаны только с моей работой. Работа — это здорово, и мне искренне нравится то, что я делаю, но есть свобода и радость, которые приходят от занятий чем-то в свободное время, чего работа никогда не сможет воспроизвести. К чести Liberty Mutual, у меня отличный баланс между работой и личной жизнью. После работы я не чувствую себя вымотанным или уставшим, что очень важно, если я хочу иметь пропускную способность для кодирования в течение часа. Глядя на свое резюме с объективной точки зрения (по состоянию на сентябрь 2022 года), я думаю, что раздел проектов можно было бы улучшить. Большинство перечисленных проектов являются школьными проектами или проектами, которые я создал с помощью следующих руководств. Я, конечно, чему-то научился на этих проектах, но я не испытываю особого энтузиазма ни к одному из них. Было бы неплохо создать что-то с нуля, чтобы назвать его своим. В моей голове есть множество проектных идей, которые я никогда не начинал, потому что мне не хватало знаний для их кодирования, и мне не хватало мотивации для получения этих знаний. Я выбрал этот челлендж на 100 дней именно потому, что считаю, что невероятно сложно выработать привычку без какого-либо расписания или цели. Цель состоит в том, чтобы достичь 100 дней, и путь к достижению этой цели — час кодирования в день. Если бы я мог внедрить программирование в свою жизнь без необходимости запускать VSCode и печатать на клавиатуре, это значительно улучшило бы мое мышление и навыки программиста.

Для вопроса 2 объяснение намного короче. Я хочу задокументировать свой процесс и выразить свои мысли в осязаемых словах. Я не ожидаю, что кто-либо когда-либо прочитает этот блог, кроме меня или друзей/семьи, которым я отправляю ссылку на этот блог. Но если вы случайно наткнулись на этот блог и читаете его, спасибо. Этот блог отвечает за то, чтобы я писал что-то каждый день каждую неделю, или я должен писать в блог о своих неудачах, чтобы поддерживать свои привычки. Я человек сентиментальный, храню свои детсадовские художественные поделки, поэтому знаю, что через несколько лет вернусь в эти блоги, и счастлив, что записал свои мысли и чувства. Наконец, это простой способ улучшить свои навыки письма, которые я не развил со времен колледжа.

Препятствия и корректировки

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

На официальном сайте есть много других правил, таких как использование Twitter для рекламы своего хэштега и взаимодействие с сообществом. Я никогда не сижу в Твиттере, поэтому меня не волнуют эти другие требования, тем более, что кажется, что это в первую очередь для рекламных целей. Веб-сайт ссылается на оригинальную статью, в которой говорится, что вам нужно кодировать не менее часа в день и учитывать только время, потраченное на кодирование. Я, скорее всего, включу время, которое я потратил на исследования, потому что я вижу, что в противном случае трачу от 2 до 3 часов в день на работу над этой задачей. Просматривая видео на YouTube или посещая StackOverflow, я часто изучаю новые концепции, и эти веб-сайты могут быть пустой тратой времени. Мне нравится программировать, но это не моя жизнь. Приобретение новых привычек заключается в том, чтобы загнать себя на неудобную территорию, но не доводить себя до выгорания.

Следующие шаги

Я кратко упомянул свои следующие шаги, которые заключались в том, чтобы сделать некоторые базовые коды и изучить больше тем программирования. Я хочу провести мозговой штурм в этом разделе, перечислив проекты, которые я хочу создать, и веб-сайты / каналы, которые я планирую изучить. Мое главное требование для проведения исследований и планирования заключается в том, что я хочу, чтобы все мои ресурсы были бесплатными.

https://www.theodinproject.com/ — Я потратил пару недель на работу над этим курсом, но так и не закончил его. С тех пор веб-сайт претерпел изменения, и учебная программа выглядит по-другому. Но пока качество остается прежним, я определенно могу полагаться на то, что это хороший ресурс для изучения веб-разработки.

https://www.freecodecamp.org/ — еще один бесплатный веб-сайт высшего уровня для обучения веб-разработке. Мне больше нравится пользовательский интерфейс The Odin Project, но этот сайт загружен гораздо большим количеством материалов и курсов для изучения. Это определенно может быть ошеломляющим для тех, кто начинает с кодирования, но в нем есть почти все, что нужно новичку-программисту для изучения веб-разработки.

https://www.codecademy.com/ — я использовал этот сайт раньше, и я всегда был немного смущен тем, какие курсы бесплатны, а какие нет, потому что у меня был доступ к курсам Pro некоторое время. кусочек. Определенно отличный ресурс, но мне придется провести дополнительное исследование, так как некоторые курсы заблокированы за платным доступом.

Хорошие ютуберы, которых стоит посмотреть:

Проекты, которые мне было бы интересно реализовать:

  • Видеоигра, похожая на что-то вроде Stardew Valley, текстовая приключенческая игра или игра типа RPG (Pokemon, Final Fantasy и т. д.)
  • Многопользовательская онлайн-игра наподобие Bomberman или адаптация настольной игры
  • Проект, который отслеживает статистику НБА или делает прогнозы
  • Веб-сайт социальной сети с функциональностью CRUD
  • Личный дневник, который фотографирует
  • Приложение для отслеживания цен на продукты на рынке и сравнения одних и тех же продуктов на разных рынках.
  • Что-то безопасное для планирования встреч в районе
  • Приложение для организации встреч виртуального книжного клуба
  • Приложение для соседей по комнате, похожее на Tinder
  • Веб-сайт, помогающий готовить, хранить рецепты или хранить продукты в холодильнике.
  • Дуолинго для приготовления пищи
  • Визуализатор пути с использованием DFS, BFS и т. д.
  • Что-то сложное, о чем я раньше не думал

Заключение

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