Задача # 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
Во втором раунде проверки кода я поставил перед собой ряд минимальных целей, чтобы завершить проекты, которые я начал, но еще не завершил.
- Пройти курс профессионального программирования Microsoft на тему Искусственный интеллект.
- Создайте многоязычный блог на www.PeterStieg.com
- Завершите чтение Social Media Mining Роберто Мармо.
- Завершите чтение Проектирование голосовых интерфейсов пользователя Кэти Перл.
- Завершите чтение Разработка веб-приложений с помощью PHP и MySQL »Марка Вандшнайдера.
6. Спасибо
- Алексу Каллауэю за создание кода # 100DaysOfCode и предоставление репозитория GitHub.
- Куинси Ларсон за создание обучающей платформы FreeCodeCamp.org.
- Сообществу Twitter, стоящему за # 100DaysOfCode, за вдохновение и поддержку.
- MDN Web Docs и Wikipedia за надежные источники информации.
- Сара Драснер, Элишеба Виггинс, Хосе М. Перес, Майкл Фоглеман и С Ли за то, что они вдохновляли и помогали.
- Роберто Берретта за то, что познакомил меня с такими инструментами, как Firebug и xPath.
- Рудольфу Янтосу, прежде всего, за создание FreeCodeCamp.org.
Кроме того, спасибо за то, что прочитали это и остались со мной. Не стесняйтесь комментировать и подключаться!