Taking Python to Production: A Professional Onboarding Guide
Eric Riddoch
1:45:50
Description
Data scientists, analysts, and beginner devs: transition from "coder" to "software engineer" and learn to ship code
What You'll Learn?
- Set up a professional Python development environment - Visual Studio Code, pyenv, pipx, git, autocompletion
- Learn the professional git workflow with GitHub and CI/CD with GitHub Actions
- Make the terminal more intuitive with ZSH and plugins
- Version and package Python software and publish it for the community
- Setup automated code quality checks (testing, linting, documentation, type checking, etc.)
Who is this for?
More details
DescriptionThis is a course about transitioning from a "coder"Â to a "software engineer". It specifically covers the tools needed to develop and "ship" production-ready software with Python.
------ Note ------
You should know that this course is still unfinished the final section lists the sections that still aren't published. IÂ have a soft commitment to get everything published by April 2nd, 2023.
-------------------
As an MLOps engineer, my role is to help enable data scientists, analysts, and junior engineers become more self-sufficient at bringing products to production.
This course covers a mix of foundational tools, engineering practices, and career advice that new engineers should be given during the onboarding process when they join a team (but they often don't get guidance!).
By the end of this course, you should feel confident contributing to complex software projects in a team setting, whether open-source or at a company (or please request a refund within 30 days!).
You will understand how closed- and open-source projects are run and how to run your own.
In the course, we write very little code and instead focus on the non-coding aspects of software engineering that make you an effective member of the software engineering community. But you should have a solid grasp of Python fundamentals (loops, functions, classes, etc.)
Expect to learn
how to set up a professional Python development environment
how to set up a professional workflow for Python development with Visual Studio Code; extra emphasis on autocompletion
how to use git, GitHub, "branching strategies", and their integrations with VSÂ Code and the terminal
how to write clean, maintainable code and ensure that all code contributed to your projects is good quality (testing, linting, formatting, type checking, documentation, etc.)
how to publish production-quality software for a wide audience with packaging, versioning, continuous integration, and continuous delivery (pre-commit, GitHub Actions, PyPI)
how to templatize all of the above points, so you can create new, high-quality projects in seconds
Before paying for this course, please sample the preview lectures so you can get a sense of whether it's right for you.
See you in the course!
- Eric
----------
Important requirement:
Please do not buy this course if you do not have a machine capable of running a Linux terminal.
If you are running MacOSÂ or Linux (e.g. Ubuntu), you should have no problems getting access to a Linux terminal for this course. For Windows users it's trickier.
There is a free preview video about the Windows Subsystem for Linux. Watch this video to see if your version of the Windows operating system is capable of running a true Linux terminal. If you are a Windows user, you will need Windows 10 or 11.
Without an OSÂ compatible with a Linux terminal, you will not be able to take this course unless you do one of 3 things:
1. Switch to a Mac or Linux machine for this course
2. Upgrade Windows OS to a version that supports it
3. Dual-boot a Linux (e.g. Ubuntu)Â operating system on the same machine that you have Windows on
You can easily find guides for (2)Â and (3)Â online.
Who this course is for:
- Lower-intermediate to advanced Python developers who meet the requirements and are interested in the learning outcomes.
- Data scientists, analysts, junior developers, and self-taught developers who want want to set up a development environment for writing "production-ready" software
This is a course about transitioning from a "coder"Â to a "software engineer". It specifically covers the tools needed to develop and "ship" production-ready software with Python.
------ Note ------
You should know that this course is still unfinished the final section lists the sections that still aren't published. IÂ have a soft commitment to get everything published by April 2nd, 2023.
-------------------
As an MLOps engineer, my role is to help enable data scientists, analysts, and junior engineers become more self-sufficient at bringing products to production.
This course covers a mix of foundational tools, engineering practices, and career advice that new engineers should be given during the onboarding process when they join a team (but they often don't get guidance!).
By the end of this course, you should feel confident contributing to complex software projects in a team setting, whether open-source or at a company (or please request a refund within 30 days!).
You will understand how closed- and open-source projects are run and how to run your own.
In the course, we write very little code and instead focus on the non-coding aspects of software engineering that make you an effective member of the software engineering community. But you should have a solid grasp of Python fundamentals (loops, functions, classes, etc.)
Expect to learn
how to set up a professional Python development environment
how to set up a professional workflow for Python development with Visual Studio Code; extra emphasis on autocompletion
how to use git, GitHub, "branching strategies", and their integrations with VSÂ Code and the terminal
how to write clean, maintainable code and ensure that all code contributed to your projects is good quality (testing, linting, formatting, type checking, documentation, etc.)
how to publish production-quality software for a wide audience with packaging, versioning, continuous integration, and continuous delivery (pre-commit, GitHub Actions, PyPI)
how to templatize all of the above points, so you can create new, high-quality projects in seconds
Before paying for this course, please sample the preview lectures so you can get a sense of whether it's right for you.
See you in the course!
- Eric
----------
Important requirement:
Please do not buy this course if you do not have a machine capable of running a Linux terminal.
If you are running MacOSÂ or Linux (e.g. Ubuntu), you should have no problems getting access to a Linux terminal for this course. For Windows users it's trickier.
There is a free preview video about the Windows Subsystem for Linux. Watch this video to see if your version of the Windows operating system is capable of running a true Linux terminal. If you are a Windows user, you will need Windows 10 or 11.
Without an OSÂ compatible with a Linux terminal, you will not be able to take this course unless you do one of 3 things:
1. Switch to a Mac or Linux machine for this course
2. Upgrade Windows OS to a version that supports it
3. Dual-boot a Linux (e.g. Ubuntu)Â operating system on the same machine that you have Windows on
You can easily find guides for (2)Â and (3)Â online.
Who this course is for:
- Lower-intermediate to advanced Python developers who meet the requirements and are interested in the learning outcomes.
- Data scientists, analysts, junior developers, and self-taught developers who want want to set up a development environment for writing "production-ready" software
User Reviews
Rating
Eric Riddoch
Instructor's Courses
Udemy
View courses Udemy- language english
- Training sessions 16
- duration 1:45:50
- Release Date 2023/04/19