Задача # 100DaysOfCode - это набор правил и онлайн-сообщество, которые помогают людям научиться программировать, создавая привычку к постоянному ежедневному самообучению.

Описав, кто я, чем я занимаюсь и почему я решил эту задачу, я делаю ключевые выводы из того, что я узнал в качестве цифрового маркетолога за первые 100 дней изучения программирования на таких языках, как Python, PHP, JavaScript. , jQuery, HTML и CSS. В последней части статьи я благодарю создателей, участников и членов сообщества проекта # 100DaysOfCode, а также FreeCodeCamp.org, онлайн-документацию и вдохновляющих разработчиков.

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

1. Кто я

Я женатый 33-летний гражданин Европы, который родился в Ростоке, вырос в Лейпциге и вырос в Риме. У меня степень бакалавра экономики и менеджмента в итальянском Università degli Studi di Trento, и я в полной мере владею английским, немецким и итальянским языками.

Я специалист по цифровому маркетингу. Я не разработчик. Но я хочу создавать вещи.

2. Чем я занимаюсь

Как специалист по цифровому маркетингу с 8-летним опытом работы в области медийной рекламы, нативной рекламы, поискового маркетинга и маркетинга в социальных сетях, я ежедневно использую формулы и макросы в Microsoft Excel и Google Таблицах. Я не новичок в использовании фидов данных и продуктов, а также в реализации динамической вставки ключевых слов, параметров рекламы и модификаторов объявлений.

Удобный запрос в MySQL или xPath время от времени оживляет мой рабочий день, и я приобрел достаточно знаний HTML, CSS, jQuery и JavaScript, чтобы публиковать базовые побочные проекты с WordPress, такие как веб-страницы для инструкторов по кайтсерфингу или музыкальные школы.

3. Почему я совершил

Хотя я могу продвигать продукты, начиная от установок приложений и тест-драйвов автомобилей до SaaS и заканчивая внедорожниками, через каналы интернет-маркетинга, я знаю, что не могу создать что-то кроме Денежная стоимость. То есть: у меня нет возможности создавать продукт с нуля.

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

4. Что я узнал

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

Чтобы поддерживать мотивацию, я пытался связать свои занятия самообучением либо со своими личными интересами, либо с проектами, связанными с работой. Благодаря 100 дней, когда я вставал рано в 4:00, чтобы узнать что-то новое, и поздно ложиться спать, чтобы повторить полученные знания, я смог улучшить свой рабочий день, настроив автоматическое принятие решений, помимо процессов принятия. в общем проще, быстрее и интереснее.

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

В первом раунде # 100DaysOfCode я изучил Amazon Alexa, CSS, Go, скрипты Google Apps, HTML, jQuery, JavaScript, Microsoft Azure ML, MySQL, PHP, Python, регулярные выражения и SVG, чтобы получить базовые знания в области фронтенд-разработки, машинного обучения, интеллектуального анализа социальных сетей и голосовых помощников.

Я предполагаю, что 100 дней программирования, соответственно 100 часов обучения, недостаточно для изучения любого языка программирования, остается только тринадцать - с предварительными знаниями или без них. На протяжении первого раунда испытания я смог познакомиться с логикой программирования, что заставило меня отойти от лингвистического подхода. Кодирование отличается от хронологической последовательности субъект-глагол-объект-фразы. Иногда объекта нет. Иногда нет последовательности. Иногда код просто есть.

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

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

5. С чего начать

Не существует идеальной отправной точки и идеального времени, чтобы начать изучать новый навык. Совершенство для прокрастинаторов. Вы можете использовать принципы, которые помогут вам составить план в начале вашего пути и сохранят концентрацию и мотивацию в течение 3+ месяцев, 12+ недель, 100 дней.

1. Будьте реалистичны: ставьте цели, даже амбициозные. Ваши цели будут направлять вас.

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

3. Будьте просты: начните все сначала. Основы - это самое главное. Всегда.

4. Будьте терпеливы. Обучение требует времени. Доверьтесь процессу. Не торопите процесс.

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

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

7. Будьте честны: никто не заметит, если вы обманете. Если вы обманываете, никто не пострадает. Кроме вас.

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

9. Будьте щедры: пожертвуйте, если можете, инструменты, которые вы используете, например Eclipse, FreeCodeCamp, phpMyAdmin или Wikipedia или продвигать идею этого. Без доступа к бесплатным статьям, курсам, программам и видео наш процесс обучения был бы намного медленнее или просто невозможен. Мы должны отдать, прежде чем сможем взять.

10. Будьте собой: Мечтайте масштабно. Но начнем с малого.

5. Следующие шаги: цели для # 200DaysOfCode

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

  1. Пройти курс профессионального программирования Microsoft на тему Искусственный интеллект.
  2. Создайте многоязычный блог на www.PeterStieg.com
  3. Завершите чтение Social Media Mining Роберто Мармо.
  4. Завершите чтение Проектирование голосовых интерфейсов пользователя Кэти Перл.
  5. Завершите чтение Разработка веб-приложений с помощью PHP и MySQL »Марка Вандшнайдера.

6. Спасибо

  1. Алексу Каллауэю за создание кода # 100DaysOfCode и предоставление репозитория GitHub.
  2. Куинси Ларсон за создание обучающей платформы FreeCodeCamp.org.
  3. Сообществу Twitter, стоящему за # 100DaysOfCode, за вдохновение и поддержку.
  4. MDN Web Docs и Wikipedia за надежные источники информации.
  5. Сара Драснер, Элишеба Виггинс, Хосе М. Перес, Майкл Фоглеман и С Ли за то, что они вдохновляли и помогали.
  6. Роберто Берретта за то, что познакомил меня с такими инструментами, как Firebug и xPath.
  7. Рудольфу Янтосу, прежде всего, за создание FreeCodeCamp.org.

Кроме того, спасибо за то, что прочитали это и остались со мной. Не стесняйтесь комментировать и подключаться!

LinkedIn | Твиттер | Син | Средний | GitHub