Как учить Python: девять кратких практических советов

Python уже не один год уверенно занимает место среди самых популярных языков программирования. На нём можно писать любые программы, но сегодня основной сферой для него стал искусственный интеллект и всё, что с ним связано — data science, машинное обучение, анализ данных, нейронные сети. Кроме того, Python популярен в веб-разработке. Среди новейших направлений Python является лидером в квантовых вычислениях и квантовом машинном обучении.
По сути, Python — это интерпретируемый язык высокого уровня, в котором возможно применять как объектно-ориентированный подход, так и функциональный. Этот язык достаточно лёгок для изучения, в отличие от C++, Хотя Python в какой-то мере является наследником C++, изучить его легче, чем «плюсы». В среднем, путь с нуля до джуниора занимает полгода год — в зависимости от того, изучали ли вы раньше какой-нибудь из C-подобных языков, а также от других фоновых знаний. Чтобы с самого начала ускорить ваше освоение «питона», мы подготовили ряд небольших советов.
- В начале обязательно изучите синтаксис Python и порешайте простые алгоритмические задачи. Здесь поможет сайт Pythontutor.ru. Без задач выученный синтаксис быстро вылетит из головы; они помогают закрепить теорию.
- Уже на этапе изучения основ языка (или даже до этого) задумайтесь о том, чем вы конкретно хотите заниматься с помощью Python. Лучше сразу определиться, выбираете вы искусственный интеллект или веб-разработку, так как рано или поздно нужно будет понять, какие библиотеки стоит изучить — для каждой сферы применения нужен свой набор библиотек.
- Обратите внимание на различные среды разработки. Универсальный IDE для любых задач в Python — это PyCharm. Дата-сайентисту также нужно уметь работать в Jupyter Notebook и, возможно, стоит изучить Spyder.
- Хорошо изучите простейшие структуры данных Python: списки, словари, множества. Это пригодится, когда нужно будет решить, как лучше обрабатывать данные в разных случаях.
- Не пренебрегайте функциями. В Python создавать их очень легко. Если одинаковые части кода повторяются больше двух раз, лучше написать функцию. Это поможет не только сократить код, но и улучшить его восприятие.
- Изучите продвинутые возможности Python: генераторы, декораторы, list comprehension, методы из библиотеки itertools и других библиотек. Это поможет вам впоследствии не изобретать велосипед.
- Если вы работаете с искусственным интеллектом, изучите основные библиотеки для этого направления — Numpy, Pandas, SciKit-Learn, Matplotlib, Seaborn, Keras, TensorFlow, Pytorch.
- Если ваша цель — квантовые вычисления, изучите библиотеки Qiskit, Cirq и PennyLane.
- Чтобы быстро выйти на уровень профессионального кода, изучите объектно-ориентированное программирование. В Python применять его очень легко.
Если вы уже уверены в том, что хотите начать карьеру Python-разработчика, ждём вас на Python-факультете Geek University. А если ещё сомневаетесь, то посмотрите для вдохновения истории наших выпускников-питонистов:
- Постигая Python: учёба в GU, практика в Австрии, развитие. Интервью с Python-разработчиком Максимом Столпасовым.
- Говорят, стать Python программистом легко. Правда? История Артёма Сухаренко.
- Поиск себя и быстрое погружение в веб-разработку. История Ильи Курбакова, который в 25 лет решил кардинально поменять направление в своей карьере.
Освоить востребованную профессию в Data Science можно всего за полтора года на курсах GeekBrains. После учёбы вы сможете работать по специальностям Data Scientist, Data Analyst, Machine Learning, Engineer Computer Vision-специалист или NLP-специалист.
Как стать Python разработчиком. План действий для начинающих
Python — один из самых популярных языков программирования среди украинских разработчиков, имеющий широкую область применения. Язык имеет сравнительно простой синтаксис и его легко изучить, поэтому Python часто выбирают новички в качестве первого языка для входа в IT.
В рамках рубрики для начинающих «Код профессии» рассказываем о том, как выучить Python и найти первую работу. Для этого мы пообщались с опытными Python-разработчиками Владимиром Обризаном, Виталием Мирошниченко, Сергеем Галабурдой и Михаилом Кашкиным и собрали их советы в один материал.
Что такое Python
Python — интерпретируемый объектно-ориентированный язык программирования высокого уровня со строгой динамической типизацией. Разработал его в 1990 году Гвидо ван Россум.
Сфера применения языка достаточно широка. Python используют в веб-разработке, для машинного обучения и работы с данными, для автоматизированного тестирования. На Python пишут игры, сервисы, веб-приложения, крон-скрипты для бекапа, программы по юнит-тестированию, с его помощью учат нейросети. В проектах Python используются и как основной язык программирования, и для создания расширений и интеграции приложений. Также его активно используют для создания прототипов будущих программ.
Согласно последнему рейтингу языков программирования от DOU, Python — на месте среди языков, которые опрошенные ИТ-специалисты используют для работы, — на нем пишут 11,2% специалистов. Среди языков, которые используются как дополнительные, Python на третьем месте.

По этой ссылке можно посмотреть средние зарплаты Python-разработчиков с разным опытом.
На момент публикации медианная зарплата Python-разработчика составляет $2600. Зарплата Trainee: $330-900; Junior: $700-1163; Middle: $2000–3500; Senior: $4000-6000.
А здесь можно найти открытые вакансии в категории Python. На момент публикации статьи открыто 185 вакансий.
Почему язык Python стоит выбрать начинающему
Для новичков, не имеющих опыта программирования на других языках, изучение Python является хорошим способом освоить часть базовых концептов (таких как арифметические операции, разветвления, циклы, функции) языков программирования и прокачать логику.
Рассмотрим преимущества языка для начинающих по порядку:
- Python сравнительно легко выучить, у него простой и понятный синтаксис. Легко подключать сторонние библиотеки.
- Есть много литературы, образцов кода, онлайн-курсов, видео, вопросов и ответов на Stack Overflow, поэтому новичок не останется без информации.
- Большое сообщество разработчиков, поскольку Python является одним из самых популярных языков. Это облегчает поиск ментора или чата поддержки.
- У Python-разработчиков есть много вариантов развития. Этот язык используют для автоматизации рутинных дел системные администраторы, инженеры по тестированию используют Python для автоматизации тестирования вебсайтов (Selenium), программисты пишут программы для ПК (PyQT), вебсайтов (Django), вебсервисов (Flask, FastAPI и т.д.), для обработки данных (Pandas , NumPy), даже можно писать новые плагины для больших программ (QGis, Gimp). И это не исчерпывающий список!
- На рынке труда достаточно предложений работы как в Украине, так и удаленно.
Поскольку мы видим, что язык подходит для начинающих, перейдем к вопросу о том, как его изучить.
Какие технологии следует изучить в рамках Python
Прежде всего нужно выучить синтаксис языка. Важно, что язык развивается, поэтому сегодня нужно учить примеры кода, разработанные для Python 3.10 или выше.
Также следует знать:
- Алгоритмы и структуры данных, а также их реализацию в стандартных пакетах Python.
- Многопоточность (concurrency) — для того, чтобы узнать о программировании многопоточных приложений и то, почему у Python многопоточность ограничена.
- Flask, FastAPI — чтобы создать свой первый сервис для обработки HTTP-запросов.
- NumPy, pandas для работы с данными и математическими расчетами (визуализация данных, умножение матриц и т.п.).
Следует использовать следующие инструменты:
- Black — автоматическое форматирование кода программы.
- Pylint — проверка базовых правил написания кода, проектирование и подсказка типичных ошибок в коде. Это важно для начинающих, потому что сначала ошибок будет очень много, нужно, чтобы этот инструмент вовремя подсказал, где именно.
- Unittest, Pytest — автоматическая проверка программы. Хорошие инструменты, чтобы писать надежный код без логических ошибок.
- Mypy — проверка корректного употребления типов.
- Git — система управления версиями файлов и совместной работы.
Кроме того, на выбор технологий влияет запрос разработчика. Если вы планируете заниматься анализом данных или созданием искусственного интеллекта, следует изучать визуализацию и обработку данных, а также математику. Если хотите создавать приложения, нужно больше внимания уделить изучению библиотек и технологий, связанных с бэкендом, и многопоточности.
Если речь идет о профессиональном применении языка, то в разных направлениях есть свой обязательный минимум технологий.
Автоматизация тестирования: unittest, pytest, Selenium, HTML, CSS.
Программирование для ПК: PyQT.
Разработка веб-сайтов: Django, HTML, JavaScript, SQL.
Разработка веб-сервисов: Flask, FastAPI, JSON, SQL.
Как лучше учить язык программирования — на курсах или самостоятельно
Этот вопрос индивидуален и ответ зависит от возможностей, времени, желания и других факторов. Можно выучить язык самостоятельно, на курсах или во время стажировки в компании.
Чтобы легче определиться с тем, как лучше учиться, поговорим о преимуществах и недостатках каждого из способов.
Самостоятельное обучение
Достоинства:
- Материалов в интернете много, и есть огромный выбор доступных и качественных гайдов.
- Это бесплатно или дешево (по стоимости книги или подписки на определенный ресурс).
- Скорость и темп обучения вы контролируете сами, можете заниматься, когда вам удобно, и не подстраиваться под кого-либо.
- Если у вас уже есть опыт в разработке, сможете потратить меньше времени на изучение языка, чем если бы пошли на курсы, продолжающиеся полгода или год.
- Можно выбирать формат потребления информации — видео или текстом.
Недостатки:
- Без ментора может быть сложно распознать и понять свои ошибки, а с каждой последующей задачей может снижаться и мотивация к обучению.
- Сложно разобраться, что и за чем учить, где и как найти необходимые ресурсы.
- Сложно понять, достигли ли вы уже уровня, с которым можно идти на стажировку или искать работу.
- Изучение языка может затянуться, если нет навыков самоорганизации.
Опытные разработчики советуют найти ментора, если вы выбрали путь самостоятельного изучения языка. Поскольку на определенном этапе вы можете попасть в тупик и не найти решения. Кроме того, иногда самому трудно увидеть свои ошибки, а ментор подскажет, как сделать код более чистым и качественным, объяснит особенности его написания на примере каждой отдельной ситуации. Впрочем, хороший ментор — это дорого.
Курсы
Достоинства:
- Вы находитесь в коллективе людей, которые изучают то же самое, могут поделиться знаниями и опытом, помочь избежать блокеров или проблем.
- У вас есть преподаватель или ментор, который может ответить на ваши вопросы.
- Вы попадаете в окружение мотивированных людей, что позволяет поддерживать надлежащий уровень вдохновения.
- График занятий на курсе не даст вам «забить» на обучение.
- Если курсы проводит IT-компания, есть большие шансы, что вас научат именно тому, что нужно этой компании, и вы сможете претендовать на стажировку или должность в ней.
Однако разработчики советуют серьезно отнестись к выбору курсов: читать отзывы, расспросить тех, кто там учился, узнать достижения учеников, будущего преподавателя. Больше информации о том, какие в Украине есть IT-курсы и как их выбрать, вы можете найти на DOU по тегу «курсы». Советуем обратить внимание на статью «Инструкция по выбору IT-курсов для начинающих».
Недостатки:
- Курсы — это дорого. Длительные курсы могут стоить как семестр обучения в университете, а такие деньги есть не у всех.
- Если вы недостаточно мотивированы, учиться будет трудно, а отстав от остальных есть большой шанс все бросить.
- Курсы не гарантируют трудоустройства и карьеры (самостоятельное обучение тоже не гарантирует, но вы хотя бы не платите за это деньги).
- Курсы могут длиться долго, около года.
- На обучение нужно будет находить время и подстраиваться под график.
- Чтобы попасть на бесплатные курсы при IT-компаниях, нужно иметь базовые знания и часто хорошее владение английским.
Полезные ресурсы для изучения Python
«Learning Python» Марка Лутца. Есть два тома: первый рассказывает о синтаксисе и базовых возможностях языка, второй — об объектно-ориентированном программировании. Книга большая — более 1500 страниц, автор должен многое рассказать начинающему.
Официальный туториал языка, который изначально пошагово демонстрирует возможности языка.
Pycharm Edu. Это бесплатная версия среды для разработки для Python. Здесь много задач для начинающих с автоматической проверкой.
Learn Python in Y minutes. Справочник по изучению языка.
LeetСode. Для решения алгоритмических задач.
LearnPython. Минималистичный интерактивный туториал.
Python for Absolute Beginners! Бесплатный курс на Udemy для абсолютных начинающих.
Python Lectures. Набор лекций по Python от Rajath Kumar в виде Jupyter notebooks.
Pylot.me. Курс Михаила Кашкина для начинающих.
Полезные статьи на DOU
Как искать работу начинающему в Python
Перед поиском работы разработчики советуют реализовать два-три простеньких проекта и залить их на GitHub. Возможность на этапе отбора кандидатов взглянуть на код может стать вашим преимуществом.
Также тренируйтесь решать задачки и будьте готовы это делать во время интервью. Не отказывайтесь выполнять тестовое задание. Сейчас есть множество сервисов, где можно потренироваться. К примеру: LeetCode, Codewars, HackerRank.
Подтяните свой английский. В реалиях украинского IT-рынка хороший английский значительно увеличивает шансы найти работу.
Еще одним альтернативным источником для опыта может быть открытый код программного обеспечения. Периодически, проекты с открытым кодом имеют задачи для людей без опыта, но с желанием работать. Иногда такую работу даже оплачивают — вам нужно серфить GitHub в поисках интересных проектов и полезного опыта.
✅ Что следует указать в резюме
- Должность, на которую вы претендуете.
- Технологии, с которыми имели дело, даже если это стандартные пакеты Python.
- Все выполненные задачи с указанием технологий и пакетов. Залейте свой код в публичный репозиторий GitHub и укажите ссылку. Например: «Написал программу, которая читает CSV-файл выписки с карточного счета «ПриватБанка» и делает аналитику по разным группам расходов. Результат в виде Excel-файла или PNG-графика. Использовал пакеты: CSV, pyexcel, Matplotlib, pytest, Pylint.
- Стажировка, если где-то проходили. Опишите, что там делали, какие были задачи и чего добились.
- Курсы и обучение, образование. Они не гарантируют ваших знаний, но показывают рекрутеру, что вы хотя бы ориентируетесь в сфере.
- Английский язык — его знания на старте карьеры могут компенсировать пробелы в понимании языка.
- Soft skills. Умение работать под давлением или в сжатые сроки, быть командным игроком или разрешать конфликты, заменить определенные процессы.
❌ О чем лучше не писать
- Опыт, который вообще не связан с позицией — не нужно в резюме на бэкенд-разработчика писать о том, как вы работали барменом, официантом и т.д.
- Негатив о предыдущей работе или коллегах — таких кандидатов стараются избегать.
- Не допускайте грамматических ошибок. Если вы сомневаетесь, попросите вычитать резюме редактора/корректора.
Больше о том, как написать хорошее резюме, читайте в этих статьях:
- Як оформити резюме, щоб конкурувати з найкращими кандидатами. Поради на реальному прикладі.
- Как помочь работодателю выбрать ваше резюме. Советы тимлида.
- Як Junior-спеціалісту створити перше резюме. Покрокова інструкція з поясненнями.
Также следует перед подготовкой к собеседованию обратить внимание на статью «Співбесіда з Python. 100+ запитань для Junior, Middle, Senior».
Работу разработчики советуют искать на Djinni и DOU. На DOU есть раздел «Первая работа» с курсами, стажировками и вакансиями только для начинающих. Также следует создать аккаунт в LinkedIn и добавить в друзья как можно больше разработчиков и рекрутеров. О том, как правильно заполнять LinkedIn-профиль, читайте здесь. После первых отказов спрашивайте у интервьюеров, что следует подтянуть.
Желаем удачи в изучении Python и верим, что у вас все получится!
Раньше мы писали о том, как изучить JavaScript. Напишите в комментариях, о каком языке вы хотели бы почитать в следующий раз.
Все про українське ІТ в телеграмі — підписуйтеся на канал DOU
Подобається Сподобалось 28
До обраного В обраному 33
Схожі статті
Як стати .NET-розробником. План дій для початківців
Ivanna Tkachuk 15 липня 2022
Як стати PHP-розробником. План дій для початківців
Ivanna Tkachuk 1 вересня 2022
Як стати Rust-розробником. План дій для початківців
Ivanna Tkachuk 28 листопада 2022
25 коментарів
Oleksandr Tykhonruk Technical Lead в private entrepreneur 17.06.2022 15:06
Черговиий клікбейтний крео рівня емсітудей, який формує якісь дивні очікування у починаючих. До чого на початку статті про те, як стати Python-розробником, приводити поточні зарплати? Це повинно якось вплинути на вибір першої мови програмування, ви серйозно? Для початку, ви забули сказати, що для розробника мова програмування, навіть основна, це у кращому випадку третина необхідних навичок. Навіть якщо у вакансії написано «Python розробник» (максимально тупо, ну але ок, це реалії місцевого ринку), від розробника все ж очікується вміння вирішувати досить широкий спектр проблем, і далеко не всі взагалі пов‘язані безпосередньо з програмуванням. Навіщо так д****и на окремі мови? Навіщо пов‘язувати зарплати з мовами? (підказка: кореляції немає. Є кореляція зі складністю завдань, які ви вирішуєте, та рівнем відповідальності; від технологій це безпосередньо не залежить).
Oleksandr Strelnykov Former Lead Editor в DOU.ua 17.06.2022 15:08
Олександре, вітаю! Все ж зарплати відображають поточні реалії ринку і можуть вплинути на вибір мови. Ми не ставимо за мету просунути думку «йдіть туди, де більше платять».
Mikhail Kashkin Python expert в Pylot 16.06.2022 20:38
Иванна, большое спасибо за приглашение поучаствовать в написании этой статьи и за вопросы, которые задали. Очень люблю работать и вообще любые коммуникации с командой ДОУ. К моему сожалению, статья на ДОУ вышла чуть раньше, чем мы успели со своими планами. В этом году вообще планы вторичны.
В дополнение к нашим профессиональным курсам на Pylot.me в июле я запускаю бесплатный вводный курс по Python’у. Специально для тех, кто еще определяется в каком направлении двигаться, возможно у меня получится убедить вас, что Python — это лучшее направление. Пока нет какой-то страницы с анонсом, но лекции будут выкладываться на моем канале www.youtube.com/. /UCzClGkSdFfjursCUsp6T_bQ. Или подписывайтесь в фейсбуке и там буду держать в курсе www.facebook.com/mkashkin
Юлія Лещенко PR & Marketing Manager в CyberBionic Systematics, ITVDN 16.06.2022 17:06
Безкоштовний курс Python Стартовий українською мовою.
Олександр Корж Senior Python Developer в UST / ITernal 16.06.2022 15:32
Посоветую еще webformyself и skillbox видео курсы, качал бесплатно с торрента.
А сколько из 185 вакансий готовы взять без коммерческого опыта? Это же статья для новичков, верно? А как этот опыт получить, если всем сейчас нужны с опытом 100+ лет?
Mikhail Kashkin Python expert в Pylot 16.06.2022 21:39
Это простой вопрос, но ответ нравится далеко не всем. Собственно причина, по которой я создал свои курсы обучению заключается в том, что большинство курсов, книжки и сайты дают только кусок теории, редко дают немного практики. Хотя при этом для того, чтобы получить полноценный навык надо 3 составляющие:
— теория, которая тянет максимум процентов на 15% от времени, которое надо потратить на приобретения навыка. Хотя кажется, что на собеседованиях вас будут спрашивать именно ней. С теорией есть известная проблема, что ее слишком много, а новичок, введя слово python на любом книжном сайте получит сотни названий. Но тут вам может помочь дерево навыков, или матрица компетенций. Курсы, которые воруют друг у друга программы, а потом дают читать джунам, не сильно помогают в этом деле.
— практика, все это слышали, все понимают. Те, кто не понял, но поймут, то поймут сразу. Меня очень неприятно удивило, что многие из бесплатных или платных платформ, которые дают практику требуют реализацию каких-то зубодробильных и замудренных алгоритмов, которые не имеют отношения к рабочей практике. Такое впечатление, что синдром советского препода перепрыгнул сразу в наше цифровое время.
— экспертное мышление. Часть, которую вообще игнорируют очень многие школы пытаясь как можно быстрее впарить свои курсы. И то, что вообще невозможно получить из учебников. Это совместное общение и совместное решение проблем с человеком который повидал некоторое дерьмо в этой сфере.
И теперь после куска этой душещипательной теории вернусь к вопросу о прохождении собеседований на вакансии джунов. Джунов без года опыта работы стараются не брать на работу. Но что же отличает этих джунов с годом опыта и тех, у кого его нет? Ну вот допустим человек прочитал книги, сделал практические проекты, даже за пиво попросил ревью своего кода у бывшего одноклассника и даже выложил код на гитхаб. Вроде бы прошелся по всем трем направлениям: теория, практика, экспертное мышление.
Помимо навыка, который называется хард-скиллом нужна вторая часть. Возможно, вы слышали, что берут на работу за хард-скиллы, а увольняют за софт-скиллы. Как открыть тикет, как закрыть тикет, что такое код-ревью, как проходят коммуникации в компаниях и какие виды их бывают. Даже банально как не опаздывать, как распознать работодателя, о котором потом будут писать на кохане.айті. Как правильно оформить резюме чтобы оно выглядело как от человека, которому можно доверять. Как не бояться проходить собеседования, какие вопросы задают, как устроен процес найма и т.д. Это все о коммуникациях и это называется софт-скиллы.
Я этому уделяю половину времени вебинаров на наших курсах. Уже накопилось часов разбора этих вопросов. Собственно, работодатель объективно не хочет тратить на них свое время. Во-первых, не везде готовы обучать новичков, а во-вторых, мало кто умеет объяснять и вообще развивает навык объяснять так чтобы было понятно, нужно быстрее грести. Проще дождаться чтобы кто-то потратил это время на человека, а потом его уже можно брать. Даже можно выдать почетную грамоту стронг-джуна.
И вот возвращаюсь к первому предложению. Оказывается, помимо учебника, чтобы стать программистом и получать триста тысяч сыров в секунду за нажатие кнопки надо еще уметь общаться, уметь производить впечатление, выглядеть как надежный партнер.
Но чтобы мои рассуждения не выглядели как какая-то сложная и непробиваемая история.
Я провел за свою жизнь много интервью думаю около 2000. Бывало, по 200 и более год, на позиции от джунов до СТО. И, конечно, проходил собеседования сам. И не однократно попадал в ситуации, когда компании приглашали собеседовать закомплексованных и неуверенных в себе людей, вместо проверки просто самоутверждались в попытке поднять свою самооценку. По сути это направленная агрессия и хорошо бы уметь с ней разбираться. Но в любом случае — это опыт. Да, вам может попасться что-то типа Интеллиас, и если вы без опыта успешных собеседований, то будете думать, что проблема в вас. Мусорных компаний в Украине много. Но вы дотачиваете свой опыт и это отражается на вас. Прохождение собеседований — это навык. Как ездить на велосипеде. У кого-то быстрее, у кого-то медленнее, а кому-то приходится этому учиться по учебнику. Но вы можете управлять процессом и потратив нужное количество часов вы сможете проехать первый круг.
Как самостоятельно изучить Python для веб-разработки. Ловите подробный план обучения
У меня для вас хорошая новость: любой человек может достичь хорошего уровня владения Python благодаря заинтересованности, мотивации и дисциплины.
Поэтому я составил (абстрактный) план обучения. Он задает общий ориентир и коррелирует с этим роадмэпом. Также в этой статье я дам несколько полезных советов из своего опыта, поделюсь полезными ресурсами, инструментами и технологиями, которые в свое время помогли и до сих помогают мне самому.
Все написанное здесь является моим субъективным взглядом, основанным на личном опыте.
Кто пишет: Тимофей, автор Telegram-канала The Pythonic Way, Python-разработчик с 3+ годами опыта. Гуманитарий в душе, который самостоятельно изучил программирование.
Если вы самостоятельно изучили какой-то язык программирования, поделитесь своей историей с коммьюнити. Напишите нам на [email protected] .
Общие рекомендации
- Выберите удобную IDE. Процесс разработки в первую очередь должен быть комфортным для вас самих. Лучшая IDE для разработки на Python — это Pycharm, но после войны JetBrains их продукты больше не доступны для покупки аккаунтам из Беларуси и России. Альтернатива — VS Code, достаточно шустрый редактор кода, благодаря плагинам в нем доступны большинство плюшек Pycharm.
- Обязательно делайте перерывы: дайте вашему мозгу шанс обработать и усвоить полученную информацию. Если у вас долго что‑то не получается — просто отдохните и отвлекитесь. Лучший отдых для меня — прогулка. Выработайте привычку заниматься каждый день.
- Теория + много практики. Теоретические знания — это безусловно хорошо, но без должного количества практики они ничего не значат. Часто бывает такое, что в теории вам все кажется очевидным и понятным, но как дело касается решения вы обнаруживаете, что сильно путаетесь и голова будто бы не работает. Это нормально! Пытайтесь, пока не получится.
- Не прыгайте между темами. Обучайтесь поэтапно и в комфортном для вас темпе. Никто не выиграет от того, что вы с утра до вечера будете сидеть за книгами и задачами, после чего сильно перегорите. Перегорание — это в целом распространенная проблема у программистов (и не только). Во время обучения и работы я тоже перегорал и знаю, что это такое. Но в итоге я нашел комфортный для себя темп и определил некоторые рабочие правила, вроде периодического отдыха.
- Не злоупотребляйте копипастом кода. Старайтесь думать сами. Это не значит, что вы не должны слушать автора, напротив, изучайте курс внимательно. Вы не должны слепо переписывать код и ждать чуда. Пытайтесь решить задачу сами, экспериментируйте, думайте над задачей вместе с автором.
- Если вам нужно решить большую или же непонятную задачу, декомпозируйте ее на более мелкие.
- Ищите сообщества — отличный способ сохранить мотивацию и учиться у других.
- Создавайте пет‑проекты — применяйте полученные знания на практике. Их можно добавить в резюме.
Начните с простых проектов: калькулятор или текстовая игра. Постепенно переходите к более сложным.
В Adviser найдете: советы по карьере в ИТ, подборки курсов по технологиям, иностранным языкам, скидки на цифровые услуги, книги
Шаг 1. Изучение основ языка + GIT
Начните с основ Python, таких как типы данных, переменные, циклы, функции и модули. Также хотел вынести сюда GIT — систему контроля версий. Данная технология обязательна к изучению всем разработчикам — удобно и используется повсеместно.
Для начала вам понадобятся несколько базовых команд:
git init # Инициализация репозитория
git add # добавление файлов в staging area
git commit # снимок текущих изменений проекта
git pull # стягиваем последние изменения с репозитория
git push # заливаем изменения после commit’а
Шаг 2. Объектно-ориентированное программирование
Python — это объектно‑ориентированный язык программирования, здесь все является объектом. Следовательно, важно изучить объектно‑ориентированные концепции, такие как классы, объекты, наследование, полиморфизм и инкапсуляция.
Концепции ООП практически всегда спрашивают на собеседованиях, поэтому вы должны хорошо в них ориентироваться. Помимо этого вы постоянно будете сталкиваться с классами в своих повседневных задачах.
Шаг 3. Алгоритмы
Для того, чтобы уметь решать поставленные задачи, нужно мыслить алгоритмически. А как это сделать? Правильно, практиковаться в решении различных задач.
В книге «Грокаем алгоритмы» доступнейшим языком рассказывается о различных базовых алгоритмах и понятиях, вроде времени выполнения и О‑большого. Параллельно с изучением данной книги, особенно рекомендую решать разные задачки на codewars или leetcode.
Материалы для изучения на данном этапе
- Знакомство с Python. Дэн Бейдер.
Дэн Бейдер считается одним из лучших авторов по Python. Он пишет очень просто и понятно, данная книга отлично подойдет новичкам. - «Изучаем Python». Марк Лутц
Многие питонисты считают данную книгу мастхэвом. Освоив материал, вы совершенно точно сможете решать с помощью Python самые разные задачи. Книга написана довольно сложным языком и довольно объёмная — около 1200 страниц. - Укус питона. Swaroop C.H
Противоположностью учебнику Лутца. Она маленькая (около 164 страниц), содержит в себе самые основы в формате «записок» автора. Книгу вполне можно изучать вместе с каким‑нибудь курсом, например из пункта 4. - Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих. Адитья Бхаргава
В книге «Грокаем алгоритмы» Адитья Бхаргава не просто показывает примеры таких решений с детальными иллюстрациями, но и учит читателя самостоятельно находить их в дальнейшем. Читатель знакомится с понятиями бинарного поиска, массивами, связанными списками, структурами данных, рекурсией.
Книга рассчитана на тех, кто уже знаком с основными азами программирования и интересуется алгоритмическими решениями. Автор старается доносить информацию понятным даже новичку языком, иллюстрирует все основные моменты. - Вся серия курсов «Поколение Python».
Очень хорошие курсы с большим количеством задач, которые познакомят вас с основными типами данных, циклами, условиями и т. д. - Руководство по языку Python. Вполне себе хорошее базовое руководство по языку. Рассматриваются все базовые темы, включая ООП. Сам когда‑то пользовался, было полезно.
- Git за полчаса: руководство для начинающих. Отличная статья, которая научит вас основам работы с системой контроля версий.
- Гуглите. Вы обучаетесь только тогда, когда сталкиваетесь с трудностями. Поиск решения задачи сильно прокачивает ваши скиллы. Ищите ответы на форумах, в статьях, видео на YouTube и т. д. Только путем проб и ошибок можно по‑настоящему понять изучаемую тему.
Шаг 4. Изучение основ SQL, работа с ORM
Работа с базой данный — неотъемлемая часть работы любого backend‑разработчика. Для начала изучите основы: что такое таблицы, поля, связи и запросы. Остальное за вас сделает ORM (Object‑Relational Mapping) — специальный инструмент, который позволяет разработчикам взаимодействовать с базами данных более объектно‑ориентированным образом.
Вместо написания необработанных SQL‑запросов для взаимодействия с базой данных разработчики могут определять классы, представляющие таблицы базы данных, и использовать эти классы для запроса данных к базе и манипулирования ими.
При помощи ORM вы можете делать все то же самое, что и в самом SQL: создавать таблицы, обновлять их, использовать индексы, писать различные запросы и т. д. Например, в Django используется удобная Django ORM. Сравните сами:
Допустим, у нас есть есть три таблицы: Students, Grade и Marks. Нам нужно вывести всех учащихся 7 класса, у которых оценки выше 4.
Примерно так бы выглядел SQL‑запрос, удовлетворяющий нашей задаче:
FROM Students s
INNER JOIN Grades g ON s.grade_id = g.id
INNER JOIN Marks m ON s.id = m.student_id
WHERE g.grade = 7 AND m.mark > 4;
А вот так в Django ORM:
from django.db.models import Q
from myapp.models import Students
Допустим, у нас есть две таблицы: Book и Author. Мы хотим вывести все книги, автором которых является Стивен Кинг.
JOIN Author a ON b.author_id = a.id
WHERE a.name = ‘Steven King’;
from myapp.models import Book
Book.objects.filter (author__name=’Steven King’)
Материалы для изучения на данном этапе
- Разбираем SQL на примере PostgreSQL — SELECT, JOIN, GROUP, HAVING, Coalesce и др. YouTube канал Диджитализируй!
- Django ORM и его самые популярные фичи. Статья.
- Официальная документация Django ORM .
Шаг 5. Изучение верстки на базовом уровне
Сегодня без верстки никуда. Ее должен знать каждый, в том и числе и backend‑инженер. То же самое я бы мог сказать и о JavaScript, но на данном этапе изучать его необязательно. Вы всегда сможете вернуться к нему позже.
Материалы для изучения на данном этапе
- YouTube канал Евгения Андриканича «Фрилансер по жизни». Отличнейший канал, благодаря которому я также в свое время изучал верстку. Автор доступным языком объясняет различные концепции и штуки из верстки и фронтенда в целом. На канале очень много практики, которую Женя буквально «разжевывает» для зрителя.
- Ресурс W3 Schools. Полезный сайт, на котором содержится куча информации и практических примеров по всем html‑тегам, css‑селекторам и т. д.
- После знакомства с основными концепциями, я бы посоветовал набрать понравившихся макетов из тематических тг‑каналов, вроде этого и тупо верстать их. После нескольких таких макетов вы будете чувствовать себя уверенно и поймете, что верстка — это просто.
Шаг 6. Изучение фреймворка
После того, как вы изучите базовые конструкции Python, а также работу с SQL, переходите к изучению фреймворка. Параллельно стоит изучить работу веба в целом: как сервер взаимодействует с клиентом, как осуществляется сохранение данных на сервере, какие HTTP‑запросы существуют и т. д. Да, это займет у вас какое‑то время, но эти знания — обязательные.
На данный момент на Python существует три самых популярных решения для разработки веб‑приложений: Django, Flask и FastAPI. Какой из них выбрать — решать вам. В этой статье автор проводит понятное сравнение всех трех фреймворков.
В свое время я начинал с Django: меня подкупила популярность, наличие огромного множества библиотек, широкий функционал прямо из коробки, большое количество обучающего материала, а также большое комьюнити.
Чтобы понять, как устроен фреймворк, вы также должны знать о существовании паттернов разработки. Шаблон проектирования или паттерн в разработке программного обеспечения — это повторяемая архитектурная конструкция, представляющая собой решение проблемы проектирования в рамках некоторого часто возникающего контекста.
На самом деле существует огромное количество таких паттернов и подходов. Вам не нужно знать их все, но зачастую фреймворк использует тот или иной архитектурный паттерн, следовательно, вам стоит знать как он устроен.
Шаг 7. Создание первого проекта
Для начала вы можете делать проект с курса или книги, которые вы изучаете. После этого вам нужно будет написать что‑то свое. Подумайте. Может быть у вас есть хобби?
Может быть вы любите читать книги и хотите создать интернет‑магазин по их продаже. Любите играть в футбол, и хотите создать сайт о спортивных мероприятиях, матчах, командах и т. д. Выбор тут и вправду огромный, он ограничивается лишь вашей фантазией.
Шаг 8. Работа с API
Вам так или иначе придется научиться работать с API (Application programming interface) — интерфейсом, при помощи которого один сайт может взаимодействовать с другим.
Грубо говоря API — это набор операций и функций, доступный внешним клиентам.
Задачи backend‑разработчика так или иначе сводятся к созданию или работе с API‑интерфейсом, который далее будет использоваться frontend‑разработчиком.
В Django для проектирования API используется библиотека Django Rest Framework, которая предоставляет все нужные инструменты для создания API прямо из коробки.
Попробуйте поработать с API разных платформ: например, с API площадки Steam, при помощи которой вы можете получить данные о всех размещенных на ней играх.
Материалы для изучения
- Quickstart по Django Rest Framework. Официальная документация.
- Официальная документация по Django.
- Django3 by example. Antonio Mele
Новая обновленная версия книги Django2 by example. В книге автор разбирает создание различных проектов на Django: начиная от просто блога, заканчивая интернет‑магазином и образовательной платформой - Two Scoops of Django3. Daniel Roy Greenfeld, Audrey Greenfeld
В этой книге авторы познакомят вас с различными советами, хитростями, шаблонами, фрагментами кода и техниками, которым они научились за годы разработки на Django. Стоит отметить, что книга является обновлением и дополнением предыдущих изданий. - Django for APIs: Build web APIs with Python & Django
Django for APIs — это основанное на разработке проекта руководство по созданию современных веб‑API с использованием Django & Django REST Framework. Он подходит для начинающих, которые никогда раньше не создавали API, а также для профессиональных программистов, ищущих быстрое знакомство с основами Django и лучшими практиками. Стоит отметить, что материалы книги используют современные версии фреймворка: Django 4.0 и Rest Framework 3.13 - YouTube канал Django School. Автор на практике понятным языком объясняет как работать с Django. На канале есть несколько плейлистов по полноценной пошаговой разработке веб‑приложений, включая сайт по поиску фильмов.
Я бы мог еще долго перечислять различные инструменты и технологии, которые могут понадобиться вам в работе. Например Docker или принцип работы веб‑серверов, вроде Nginx.
Чтобы понять, что нужно изучить дополнительно, обязательно собеседуйтесь. Так вы сможете понять свой текущий уровень, и что вам нужно подтянуть. А также увидеть, какие хард-скиллы от вас ждет рынок.
Мнение автора может не совпадать с мнением редакции.
Вы потратили на этот материал две минуты. Потратьте ещё 15 секунд, пожалуйста.
dev.by, как и другим честным медиа, сегодня очень сложно: редакция работает за пределами страны, а наши рекламные доходы сократились в несколько раз.
Но мы справляемся — с вашей помощью. Это вы делитесь с нами инфоповодами, мнениями, опытом, временем и вниманием. А 170 читателей поддерживают нас донатами.
В 2023 году мы хотим собрать 1000 читателей-подписчиков.
Помочь нам можно через Patreon. Сейчас средний чек — около 10$, но мы рады любой сумме.
В Беларуси Patreon заблокирован. Мы будем добавлять другие способы.
Спасибо, что прочитали это сообщение.
Что ещё почитать?
- Найти работу в Европе ч.1. Как выбрать локацию и где искать? Личный опыт менеджера
- Увайсці ў айці — з чаго пачаць? Пакрокавая інструкцыя ад HR-спецыялісткі
- Как научиться тестировать самому и найти работу в трудные времена. Гид
- Как быть успешным джуном и не завалить испытательный срок
Как изучить Python самостоятельно и бесплатно: алгоритм
Отдел продаж проклял нас за эту статью! От вас — пара часов в день, от нас — список бесплатных материалов для входа и прокачки в Python.


Иллюстрация: Альберто Блинчиков для Skillbox Media

Цокто Жигмытов
Кандидат философских наук, специалист по математическому моделированию. Пишет про Data Science, AI и программирование на Python.
Python — основной язык в data science и один из трёх главных языков в веб-разработке — наряду с PHP и JavaScript. Кроме того, он широко используется для администрирования сетей, автоматического тестирования, создания приложений и даже 3D-анимации.
- Для каких задач подходит Python
- 5 проектов на Python
- Для чего нужен Python
- Сколько зарабатывают Python-разработчики
Ко всему прочему, Python считается лёгким в изучении: у него десятки тысяч подключаемых библиотек на все случаи жизни, глобальное сообщество разработчиков и нереальное количество учебных материалов.
Так что если вы решаете, с какого языка вам вкатиться в программирование с нуля, то Python — ваш кандидат! А в этом самоучителе расскажем, как освоить Python самостоятельно и бесплатно:

- С чего начать обучение
- Основы языка программирования
- Пишем первое приложение
- Python для data science
- Что в итоге
Как убедиться, что Python — отличный язык для старта в разработке? Простой алгоритм:
- Прочитайте нашу статью «Выбираем язык программирования: что нужно знать о Python». Мы сравнили детище Гвидо ван Россума с Java и JavaScript.
- Если этого мало — изучите увлекательную краткую историю Python.
- Стереотипы и сомнения всё не отпускают? Мы развеяли 10 главных мифов о Python.
- Теперь мы точно на одной волне: пора приобщиться к тайным знаниям и прочитать, какие ошибки совершают новички при изучении Python.
С чего начать обучение Python
Мы собрали для вас ссылки на обучающие материалы, которые накопились за годы работы Skillbox Media. Они бесплатны и разбиты по трём направлениям: основы, приложения, data science. Внутри каждого направления статьи отсортированы по возрастанию сложности: от простых до заковыристых.
Как вам выучить Python по нашим материалам:
- Читаете статьи.
- Смотрите видео.
- Повторяете за преподавателем или автором.
- Гуглите, если что-то совсем не получается.
- Вбиваете в Telegram слово «Python» и присоединяетесь к лучшим чатам, где опытные питонисты смогут ответить на любой ваш вопрос — если захотят, конечно.
Настало время добрых советов — часть из них могут показаться банальными, но они и правда работают!
Выделите на занятия 1–2 часа ежедневно, чтобы знания не успевали выветриваться (согласно кривой забывания), и постарайтесь продержаться в таком темпе три недели — говорят, за этот срок вырабатывается привычка.
Не бойтесь ошибок. Их будет много — и в процессе обучения, и когда вы станете настоящим программистом. Воспринимайте ошибки как повод впасть в депрессию узнать что-то новое. Цикл вашего обучения должен выглядеть приблизительно так:
- Проба.
- Ошибка.
- Google, чат или помощь друга.
- Исправление ошибки.
- GO TO п. 1.
- .
- Воскресенье PROFIT!
Только учтите: статьи и вебинары могут не отражать самые новые фишки языка. Что-то могло измениться: исчезли команды, обновились библиотеки, сервисы стали другими. Это не помешает учиться, но в каких-то мелочах придётся разобраться самостоятельно — и да, это часть ежедневной работы программиста.
Python: основы языка программирования для начинающих
С помощью нашего самоучителя Python вы изучите язык на базовом уровне: установка интерпретатора, синтаксис языка, импорт библиотек, основные типы данных и операции над ними. Кстати, этого вполне достаточно, чтобы создавать довольно сложные и полезные программы — и стать начинающим разработчиком.
Установка
Программировать на Python можно на своём компьютере, скачав и установив дистрибутив (рекомендуем пакет Anaconda или среду разработки PyCharm), либо в браузере с помощью специальных сервисов (например, Google Colab).
- Как запустить Python на Linux, Windows, macOS
- Как использовать сервис Google Colab
- PyCharm: как её установить и использовать
Базовый синтаксис
Путь питониста начинается с основных операторов, базового синтаксиса языка и установки библиотек. Чтобы изучить Python с нуля, советуем начать с этих материалов:
- График курса доллара в Anaconda. Установим дистрибутив Anaconda, изучим синтаксис и нарисуем график курса доллара.
- Типы данных в Python. Когда с языком познакомились, пора узнать, что такое типы данных и какие они бывают в Python.
- Облако слов на Python. Нарисуем облако самых частотных слов со страницы «Википедии» прямо в браузере с помощью Google Colab.
- Устанавливаем библиотеку в Python. Основные способы: ручная установка, с помощью easy install и самый популярный — c помощью утилиты PIP.
- Вебинар «Рисуем дерево с помощью Python». Изучим чуть больше команд и функций, разберёмся с циклами и условиями, импортируем библиотеку для рисования.
Списки
Списки — самый популярный тип данных, с которым вы будете работать большую часть своего времени, поэтому стоит узнать, что это такое. Начинающий Python-разработчик должен знать:
- Списки в Python. Начинаем, конечно же, с основ и разбираемся, как устроены списки.
- Удаляем элемент из списка в Python. Узнаём о четырёх способах удаления элемента из списка.
- Методы append () и extend () в Python. Разбираемся, в чём различия двух методов добавления элементов в список.
- Преобразование списка в строку. Ещё полезно знать, как разные типы данных можно переделывать в другие — например, списки в строки.
- 11 вопросов про списки. Если на собеседовании вас начнут гонять по этому типу данных, вы не потеряетесь.
Строки
Постмодернисты говорили: мир как текст и текст как мир. Это особенно актуально в программировании — в том числе на Python. Поэтому важно уметь работать со строками.
- Форматированные строки на примерах. Разбираем удобный и наглядный способ вывода строк.
- Объединение строк. Их вечно приходится объединять, поэтому пора узнать самые эффективные методы.
- Регулярные выражения. Они полезны, когда вам нужно проанализировать и обработать строки.
Инструменты и фишки
Хороший программист — любопытный программист. Знание фишек и неочевидных нюансов языка — один из признаков хорошего программиста, даже начинающего.
- Генераторы в Python: что это и зачем они нужны. Одна из характерных фич Python — создание сложных объектов буквально в 1–2 строки. В этом помогут и генераторы.
- 15 коротких программ на Python. Короткие и понятные программы позволяют лучше понять язык.
- Библиотека collections. Инструменты, которые вы будете постоянно использовать в разработке.
- Vim как IDE для Python. Если вы хотите стать хардкорным разработчиком, то скорее учите Vim. Он круто выглядит, быстро работает и имеет кучу классных фишек.
Продвинутые возможности
Python снисходителен к новичкам — потому что позволяет решать какие-то задачи довольно небрежно, жертвуя чистотой кода в обмен на скорость разработки. Но это не значит, что правильного и красивого решения не существует.
- Корректное объединение строк в Python. Да, можно просто объединять строки с помощью знака +, но это не лучший способ.
- Декораторы: что отвечать на собеседовании. Функция, которая изменяет (декорирует) другую функцию. Звучит перспективно!
- Случайные числа в Python. Случайностей не бывает, особенно в Python. Или…
- Рефакторинг кода в Python. Большая часть работы программиста — не написание нового кода, а чтение и переделка (рефакторинг) старого. Будем же делать это правильно!
- Рекурсивные функции. Функции могут вызывать сами себя. Это называется «рекурсия». Разбираемся, как она работает и где бывает полезна.
Объектно-ориентированное программирование
Однажды вы увидите, что ваши программы становятся всё больше и больше, а их поддержка становится сложнее. Тогда вы задумаетесь, как это всё исправить. Ответ простой — используйте ООП.
- ООП в Python. Наверное, самая важная тема из всех остальных. Вы узнаете, что такое объекты и классы, и научитесь писать лаконичный код.
- Создаём «Змейку» на Pygame. Попробуйте закрепить знания и переписать код игры по принципам ООП. Уверены, что у вас получится.
Чтобы глубже изучить тему ООП, советуем также прочитать наши статьи о главных концепциях этой парадигмы:

- Классы и объекты. Базовые элементы всего ООП, от которых строится всё остальное.
- Особенности работы с объектами. Нюансы при работе с объектами.
- Инкапсуляция и модификаторы доступа. Доступ к методам внутри объектов иногда нужно защищать, делается это с помощью инкапсуляции и модификаторов доступа.
- Перегрузка методов и операторов. Приём в объектно-ориентированном программировании, который позволяет определить несколько методов с одним и тем же названием.
- Полиморфизм. Более подробно про перегрузку на концептуальном уровне.
- Наследование и ещё немного полиморфизма. Избавляемся от дубликатов кода и делаем проекты ещё лаконичнее.
- Абстрактные классы и интерфейсы. Удаляемся от всех материальных вещей и думаем абстрактными идеями — или абстрактными классами и интерфейсами в случае ООП.
Python: пишем приложения
Лучшего способа обучения, чем многократное повторение за учителем, пока что не придумали. Повторяйте все действия за нашими преподавателями, и вы научитесь работать в PyCharm, взламывать пароли и создавать настоящие мессенджеры.
Можно проматывать и ускорять видео, пересматривать сложные места — записи именно для этого и сделаны.
Считаем калории и пишем голосового ассистента
Анастасия Борнева, ведущий исследователь данных в Сбербанке, демонстрирует процесс создания нескольких простых программ в PyCharm. Бонусом — советы по началу карьеры в Python.
«Нет неподходящего возраста, есть неправильно преподнесённое резюме».
Подбираем пароли и работаем с сетью
Никита Левашов, технический директор в Lia, учит основам хакинга на Python.
- В первый день вы вспомните основы Python и напишете простую программу — парсер паролей.
- Во второй день изучите работу с файлами и сетью, а также закодите утилиту для автоматического подбора паролей.
- На третьем, итоговом, занятии Никита разберёт домашние задания — можно будет сравнить со своими решениями.
Интенсив «Хакинг на Python»: день первый, день второй, день третий.
Создаём мессенджер с формами и интерфейсом
Алексей Коновалов, старший разработчик «ООО МТС-Диджитал», показывает, как написать мессенджер на Python.
- Традиционно первый день посвящён основам языка и написанию простой программы.
- Во второй день вы напишете ещё одну программу, сделаете формы регистрации пользователей и настроите отправку и получение сообщений.
- В третий день Алексей рассказывает о пользовательском интерфейсе и подводит итоги.
Интенсив «Мессенджер на Python за 3 дня»: день первый, день второй, день третий.
Парсим данные
Парсинг — это когда мы собираем данные с сайтов и потом что-то с ними делаем, например анализируем или создаём базу данных.
- Парсинг сайта вместе с Python и библиотекой Beautiful Soup
- Парсим данные в Telegram на Python
- Чат-боты в Telegram на Python
Пишем десктопное приложение
На Python можно и приложения с графическим интерфейсом писать. Делать это удобно, потому что:
- Python — простой и понятный язык;
- в Python есть много инструментов, которые ускорят разработку;
- вы всегда сможете найти ответ на свой вопрос.
Лучший способ написать десктопное приложение — с помощью библиотеки Tkinter.
Python для data science
Наверняка кто-то уже написал статью о причинах популярности Python среди дата-сайентистов. Эти причины нам, по правде сказать, не слишком важны, просто запомним, что на данный момент Python главный язык в науке о данных.
Если вы планируете карьеру в этом направлении, то в дополнение к основным вебинарам прочитайте статьи:
- Карта развития дата-сайентиста: с чего начать и куда идти.
- Как изучить Data Science по-настоящему (а не развлекаться трюками).
- Семь базовых понятий из статистики для Data Science.

Первые модели
Одна из сильных сторон Python — это то, что настоящую модель машинного обучения можно закодить буквально в пару десятков строк, а то и меньше. И, разумеется, чтобы написать эти строки, глубокое знание Python не требуется.
- Галопом по Python: языковой минимум для начинающего дата-сайентиста
- Первичное преобразование данных: использование библиотеки Pandas
- Работаем с Pandas: основные понятия и реальные данные
- Библиотека NumPy: всё, что нужно знать новичку
- Ваша первая модель машинного обучения
Делаем умного чат-бота
Михаил Овчинников, директор по разработке в лондонской компании Noon Academy, научит вас делать умных чат-ботов.
- В первый день познакомимся с архитектурой будущего чат-бота, узнаем, что такое NLU, а также, как обычно, освежим в памяти основы Python.
- Во второй день научим чат-бота понимать текст. Для этого подготовим данные, превратим слова в числа, обучим модель и встроим её в чат-бота.
- На третий день создадим телеграм-бота и запустим наконец-то наше приложение. Восстание машин уже близко!
Интенсив «Чат-бот с искусственным интеллектом на Python»: Первый день, Второй день, Третий день.
Пишем зрячую нейросеть
Уже знакомый нам Никита Левашов покажет, как сделать приложение с нейронкой внутри.
- Первый день: основы Python для работы с нейросетью, работа в Google Colab, что такое компьютерное зрение.
- Второй день: обучение модели распознаванию объектов.
- Третий день: написание приложения, подключение его к стриму.
Интенсив «Пишем нейросеть для распознавания предметов и слежки»: первый день, второй день, третий день.
Что в итоге
Вдумчивое освоение указанных материалов даст вам достаточно навыков, чтобы претендовать на позиции стажёра или, если повезёт, даже джуниора, в зависимости от требований в конкретной компании.
Самое главное — не останавливаться. Путь программиста — это путь постоянного обучения, и Python-программисты не исключение. Эта статья — лишь начало вашего путешествия в огромный мир IT. Заметим, что совершенно необязательно входить в него в одиночестве.