Говорят, если с первого раза не получится, попробуй еще раз. Никогда в моей жизни эта фраза не была более уместной, чем во время обучения программированию на Python.

Эта статья впервые появилась в моем блоге — Artificiallyintelligentclaire.com. Загляните сюда, чтобы узнать больше о моем путешествии, и подпишитесь на обновления и дополнительные материалы.

После многих, многих попыток я наконец завершил свою первую программу на Python и успешно отправил ее. Это викторина для начинающих, основанная на программе Python. В этом посте подробно описано, как я туда попал. Потребовалось некоторое время, чтобы накопить мои знания о программировании на Python, чтобы я понял его. Я начал использовать дополнительные материалы в виде подкастов по машинному обучению, книги под названием «Автоматизировать скучные вещи», а также искать советы, используя github и stackoverflow, чтобы получить поддержку. Я расскажу об этом позже в этом посте, но сначала я буду очень самодовольным, что закончу свою программу Python для начинающих!!

Удачи нашей программе Python для начинающих!!!

Я гений. Я гений. лалалала я такой умный. лалала очень умный! Серьезно, стоит научиться программировать на Python и пройти через боль, пытаясь понять его чисто, чтобы вы могли почувствовать настоящую радость, которую мы с Кэмероном испытали, когда нам удалось заставить нашу программу Python для начинающих работать. Мы были так счастливы. Ниже фотография, показывающая, как мы были счастливы. Это было непросто, но когда нам это удалось, стало еще лучше. Здесь вы можете увидеть код, который мы написали с помощью github. Также зацените, какие мы крутые в наших компьютерных очках :D

Итак, как мы учимся программировать на Python?

Как известно постоянным читателям, Кэмерон и я делаем введение Udacity в наностепень программирования. Как вы могли догадаться из заголовка поста, сейчас мы находимся в разделе, посвященном обучению программированию на Python. В конце этого раздела вы должны выполнить проект под названием «Создай свой собственный тест». Это то, что я имею в виду, говоря, что я создал свою программу Python для начинающих. В коде есть несколько основных концепций Python. Я перечислил их ниже со ссылками на соответствующую документацию и примеры для тех, кто заинтересован.

Вот некоторые концепции, описанные в произвольном порядке в программе Python для начинающих:

Сохраняйте мотивацию, изучая программирование на Python.

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

На данный момент я, вероятно, должен сказать, что Udacity предоставляет дополнительные материалы и рабочие часы в рамках содержания курса. Однако они, как правило, представляют собой видеоуроки YouTube продолжительностью от 40 минут до 1 часа. Я не говорю, что они плохие, но реально, когда я когда-нибудь буду достаточно обеспокоен, чтобы сесть и посмотреть их. Я действительно хочу научиться программировать на Python, но я также очень хочу пойти в паб с друзьями, потому что когда-нибудь будет солнечно. Честно говоря, я знаю, что если бы я был лучшим учеником, я бы нашел время, но на самом деле я просто добавлю их в длинный список вещей, которые я должен сделать, чтобы никогда больше не увидеть дневной свет (или экран).

Имея это в виду, вот что я на самом деле сделал.

Шаг 1: автоматизируйте скучные вещи

Automate the Boring Stuff — это книга, которую вы можете просмотреть в Интернете или загрузить на свой Kindle (доступны и другие электронные книги, но я работаю в Amazon, поэтому я необъективен). Книга написана Элом Свейгартом, также известным как мой и Кэм, обучающийся программированию гуру Python. Мне его порекомендовал мой коллега, специалист по данным. Идея Automate the Boring Stuff заключается в том, что она учит вас автоматизировать с помощью Python скучные административные задачи, такие как извлечение адресов электронной почты и номеров телефонов из текста или веб-страниц или переименование файлов.

Использование автоматизации скучных вещей

Я поставил перед собой цель завершить половину книги «Автоматизация скучных вещей», прежде чем вернуться к завершению моей программы Python для начинающих с помощью Udacity. Скажу сразу, результат меня не разочаровал. Я не уверен, было ли это сочетанием курса и книги, изменением моего мышления или только книгой, но я определенно почувствовал пользу. Что мне понравилось в Automate the Boring Stuff, так это то, что, поскольку каждая глава посвящена отдельной теме программирования на Python, я чувствовал, что получаю гораздо более глубокое понимание. Я определенно рекомендую эту книгу другим изучающим Python.

В конце каждой главы есть набор вопросов викторины и несколько проектов, чтобы вы могли проверить свое понимание. По-настоящему замечательно то, что, начиная с главы 7, программы, которые вы пишете, на самом деле полезны в реальном мире — они автоматизируют скучные вещи!

Шаг 2: Использование github

Хорошо, я признаю, что я не научился правильно использовать github и делиться там своими проектами, но я вижу, что в этом есть преимущества. Позвольте мне сделать шаг назад, что такое github? Согласно википедии, github — это веб-хостинг для контроля версий с использованием git. Я позволю вам прочитать больше об этом и остальном техническом жаргоне на вики. Все, что я знаю, это то, что я могу размещать на нем проекты и получать помощь.

Почему мне нравится идея использования github

Несколько моих друзей порекомендовали использовать github, чтобы делиться своими проектами и получать отзывы о том, как их улучшить, чтобы помочь мне учиться. Это одна из моих любимых вещей в программировании и программистах. Кажется, существует действительно большое сообщество людей, которые готовы помочь вам учиться. Это очень напоминает мне, когда я работал химиком-исследователем и как я проводил мозговой штурм с другими. Это стремление к знаниям и желание помочь другим — это то, чего мне, к сожалению, не хватает в корпоративном мире, ориентированном на достижение целей.

Одна вещь, которую я скажу об использовании github, это то, что это действительно чертовски запутанно, когда вы начинаете, поэтому вот руководство, которое я нашел, чтобы помочь вам. И туториал на всякий случай. Честно говоря, поскольку у меня есть только одна программа для начинающих на Python, которой я могу поделиться прямо сейчас, я в основном просто гуглю проблемы, которые у меня есть, и вещи, которые я не понимаю, а затем смотрю ответы на stackoverflow. Кажется, это работает.

Шаг 3 (совет от меня): подкасты машинного обучения

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

Почему подкасты, я слышал, вы говорите? Что ж, я считаю, что наличие чего-то, что я могу просто послушать, чтобы поглотить интересующую меня тему, действительно помогает мне сохранять мотивацию. В моем случае и для моей миссии это подкасты машинного обучения. Их прослушивание напоминает мне, почему я испытываю боль при обучении программированию на Python, и помогает мне продвигаться вперед.

Какие подкасты по машинному обучению мне нравятся больше всего?

Мой любимый подкаст по машинному обучению на данный момент — Data Skeptic. Это действительно легко понять, они не используют слишком много жаргона, а темы интересны. Недавно они сделали серию статей о тесте Тьюринга, о чем я хочу рассказать подробнее в своем следующем посте. Вам обязательно стоит ознакомиться с ним, если вы интересуетесь машинным обучением или наукой о данных.

Поделитесь своими мыслями

Я надеюсь, что вы найдете эти советы полезными. Комментируйте, чтобы сообщить мне, как у вас идут дела, если вы изучаете Python, или поделитесь своими советами. Если у вас есть какие-либо рекомендации по подкастам, особенно по машинному обучению, я также буду рад услышать от вас!

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