Modern Python developer's toolkit

Most of the Python workshops focus on how to write the most beautiful, efficient, and Pythonic code. So we all know how to replace "for" loops with list comprehension, how memory-efficient generators are or why we no longer need to use OrderedDict in Python 3.6 and above. But we keep using the same inefficient text editor that we installed long time ago, we rarely hear about great new packages that are popular now and we are falling behind with the latest trends in Python packages management ("Am I supposed to use virtualenv, pipenv, poetry or this other dependency manager that I saw two days ago on Hacker News?”).

This workshop aims to change this and upgrade your “developer's toolkit” to the best modern tools available in the Python ecosystem. If you feel that your Python tool belt is a bit rusty - this workshop is for you!

Duration: 8 hours (1 day)
Language: English
Cost: Please contact me for an individual estimate
Location: On-site (at your company)
Maximum group size: 12 people

Intended audience and requirements

This workshop is designed for participants with any level of Python knowledge (but not for people with ZERO Python knowledge).

Requirements:

  • Computer or laptop. Preferably - your work machine if you are planning to actively follow the "Editors" part of the workshop. Otherwise, it's perfectly fine to take notes and configure your computer later.
  • Knowledge of how to install software and Python packages on your computer. Keep in mind that I will be using a Macbook (most of the commands and processes will be similar for any distribution of Linux), so if you have a Windows you need to know how to use it, as I might not be able to help you if you get stuck.

What you will learn

  • Using a modern code editor like VS Code
    • Best plugins for a Python developer
    • Configuration options
    • Tips & tricks of VS Code
  • Tools
    • pyenv, virtualenv, pipenv, poetry, pipx
    • Static code analyzers (linters)
    • IPython - the Swiss knife for a Python developer
  • Testing with pytest
  • Web frameworks - what are the most popular ones and when to use them?
  • Asynchronous programming in Python
  • Most useful libraries
    • Hidden gems from the standard library
    • Web scraping
    • Documentation
    • Logging

Frequently Asked Questions

  • Why VS Code editor?

    Because it's modern, actively developed and very popular among Python programmers. And it's open-source, so anyone can use it. There are other commercial solutions like PyCharm, there are text editors like Sublime Text, Atom or even Vim and Emacs for more advanced users, but discussing ALL of them would require a separate course. So instead I will show you how to use a text editor that I know very well. If the whole group decide that they don't need this part of the workshop, we can skip it and spend more time discussing other topics.

Contact


When would you like to schedule the workshop, for how many people and any other information that can help us quickly schedule the workshop for you.