Python Advanced: Developing in an AI World (PY102)

 

Course Overview

Python for Developers in an AI World is a cutting-edge course designed to expose Python developers beyond legacy techniques for Python development. Students will write code, use AI to write code, test code written by AI, and write Python applications that can interact with AI LLMs to deliver truly advanced next generation services.

Beyond just writing code that can interact with AI, students will also get hands-on experience in containerizing Python apps, leveraging OS services, coding graphical interfaces, creating and managing modules, running unit tests, interacting with network services, querying databases, processing XML, JSON, and CSV data, and much more.

Each concept is reinforced through practical labs, ensuring you can apply your new skills effectively in real-world scenarios.

This course may be customized to use GitHub or GitLab as an SCM.

Who should attend

  • Intermediate Python Developers
  • Software Engineers
  • System Administrators
  • DevOps Engineers
  • IT Managers and Directors

Course Objectives

  • How AI is reshaping how we code
  • Writing AI compliant python applications
  • Advanced Python programming techniques.
  • Leverage OS services and interact with network services.
  • Design and implement graphical user interfaces.
  • Create, test, and maintain modules and packages.
  • Implement unit testing and use developer tools.
  • Handle and process various data formats including XML, JSON, and CSV.
  • Understand and apply metaprogramming concepts.
  • Develop multithreaded and multiprocess applications.
  • Perform advanced data analysis and machine learning.
  • Develop microservices and integrate with cloud services

Outline: Python Advanced: Developing in an AI World (PY102)

Python and OS Services

  • Lecture: Python Built-in Data Types (Lists, Tuples, Dictionaries, Sets)
  • Lecture: Program Structure, Files, and Console I/O
  • Lecture: Conditional Statements and Loops
  • Lab: Refreshing Python Basics
  • Lecture + Lab: Using `os` and `os.path` Modules
  • Lecture + Lab: Environment Variables and External Commands with `subprocess`
  • Lecture + Lab: Working with File Systems and Directory Trees
  • Lecture: Understanding Binary Data vs Text
  • Lab: Using the `struct` Module for Binary Data
  • Lecture: Advanced Pythonic Programming (Zen of Python, Tuples, Sorting, List Comprehensions)
  • Lab: Pythonic Programming Practices

Python and AI

  • Lecture: AI, LLMs, and Python
  • Lab: Letting AI write your Python Code
  • Lecture: Testing AI Written Code
  • Lab: How to test code written by AI
  • Lecture: Writing AI enabled Programs
  • Lab: Writing AI enabled Programs

Dates, Times, and Pythonic Programming

  • Lecture: Basic Date and Time Classes, Formats, and Conversions
  • Lab: Formatting and Parsing Date/Time Information
  • Lecture: Sorting and Lambda Functions
  • Lab: Implementing Sorting Algorithms
  • Lecture: List Comprehensions and Generator Expressions
  • Lab: Advanced List Comprehensions
  • Lecture: String Formatting Techniques
  • Lab: Advanced String Formatting
  • Lecture: Understanding Four Types of Function Parameters
  • Lab: Working with Function Parameters
  • Lecture: Single and Multi-dispatch
  • Lab: Implementing Single and Multi-dispatch

Developer Tools, Unit Testing, Network Programming, and Data Science

  • Lecture + Lab: Analyzing Programs with `pylint`, Debugging, and Profiling
  • Lecture: Unit Testing Python Apps (including AI apps)
  • Lab: Writing and Running Unit Tests, Mocking Resources
  • Lecture + Lab: Network Programming (Using `requests`, Consuming RESTful Services, SSH)
  • Lecture: Multiprogramming with `threading` and `multiprocessing`
  • Lab: Creating Multithreaded and Multiprocess Applications
  • Lecture: Working with XML, JSON, and CSV
  • Lab: Processing XML Data with `ElementTree`
  • Lab: Handling JSON Data
  • Lab: Reading and Writing CSV Files
  • Lecture: Scripting for System Administration
  • Lab: Running External Programs and Parsing Arguments
  • Lecture: Logging and Debugging in Python
  • Lab: Implementing Logging in Python Scripts
  • Lecture: Advanced Data Analysis with Pandas
  • Lab: Data Analysis with Pandas

Advanced Topics, Microservices, and Cloud Integration (as time permits)

  • Lecture: Containers & Kubernetes
  • Lab: Creating and Using Containers with Python Apps
  • Lecture + Lab: Building Python Containers
  • Lecture: Building a Python Package
  • Lab: Python Packages
  • Lecture: Developing Microservices with Flask
  • Lab: Building Microservices with Flask
  • Lecture: Building Microservices with FastAPI
  • Lab: Building Microservices with FastAPI
  • Lecture: Swagger
  • Lab: Building API code with Swagger and Python

Prices & Delivery methods

Online Training

Duration
3 days

Price
  • Online Training: CAD 3,445
  • Online Training: US $ 2,495

Schedule

Currently there are no training dates scheduled for this course.