This intensive training course will teach you in-depth about Python's powerful language features, modern best practices for Python app development in teams, and how to use Python for building and maintaining API services, back-end websites, and interactive web-based dashboards.
Days 1–2: You will learn about powerful Python features and best practices for writing maintainable code in teams.
Days 3–4: You will learn the essentials of creating RESTful APIs in Python, including handling requests and sessions, and interfacing with databases. You will also learn about templating and creating dynamic websites and interactive web-based dashboards, as well as debugging, deploying, and scaling them.
Overall: You will gain in-depth understanding and useful practical experience in a popular and powerful language and technology stack (Python / Flask / SQLAlchemy / Dash). This will help you immediately to contribute more to any Python development team.
Day 1 will teach you powerful Python language features and help you fill the gaps in your knowledge as a foundation for developing larger real-world systems:
Day 2 teaches you some “best practices” for developing maintainable, robust systems in teams:
Day 3 teaches you how to create database-backed websites and RESTful web APIs using Flask, an elegant, thriving Python web framework used by companies like Pinterest to power billions of requests per month:
Day 4 illustrates the concepts from days 1-3 with a real-world example: developing and deploying interactive web-based dashboards using Dash (which builds upon Flask). We apply best practices to building, deploying, and maintaining a complete scalable web dashboard app:
We are happy to offer on-the-spot problem-solving after each day of the training for you to ask one-on-one questions — whether about the course content and exercises or about specific problems you face in your work and how to solve them. If you would like us to prepare for this in advance, you are welcome to send us background info before the course.
Live, online, interactive instructor-led training with video streaming (via Zoom) and a cloud server for coding during the course.
Some sessions are jointly offered both online and face-to-face; see locations and dates below.
You will have access to all the course materials via the cloud server: PDF of the course notes, Jupyter notebooks, sample datasets.
We will also send you a bound copy of the course notes, cheat sheets, and a USB stick containing kitchen-sink Python installers for multiple platforms, solutions to the programming exercises, and reference documentation on Python and the third-party packages covered in the course.
Computer (online participants):
Hardware: we recommend ≥ 8 GB of RAM, a headset mic, webcam. Preferably also a quiet room and multiple screens.
Software: a modern browser: Chrome, Firefox, or Safari (not IE or Edge) and Zoom. You do not need to install Python on your own computer.
Coding: we have a cloud-based coding server that supports running code and sharing code with the trainer(s).
The course will run from 9:00 to roughly 17:00 each day, with breaks of 50 minutes for lunch and 20 minutes each for morning and afternoon tea.
Certificate of completion:
We will provide you a certificate if you complete the course and successfully answer the majority of the exercise questions.
For face-to-face participants (where applicable):
Venue: modern computer-based training facilities (CBD venues)
Computer: An internet-connected computer will be provided for you.
Food and drink: We will provide lunch, morning and afternoon tea, and drinks.