Companies Home Search Profile

Taking Python to Production: A Professional Onboarding Guide

Focused View

Eric Riddoch

1:45:50

144 View
  • 1.1 pap-book-preview.pdf
  • 1. Linux and terminal crash course.html
  • 2. Install VS Code.mp4
    02:02
  • 3. Make sure you have the `code` command.html
  • 4. Mac users only Install Homebrew, Xcode, and iTerm2.html
  • 5. Windows users only Install the Windows Subsystem for Linux (WSL2).mp4
    06:19
  • 6. Windows users only Integrate VS Code with the WSL2.mp4
    07:40
  • 7. Resources Installing git.html
  • 8. Installing the git CLI tool.mp4
    02:50
  • 1. Introduction.mp4
    02:56
  • 2. Installing OhMyZSH.mp4
    03:23
  • 3. Navigating using ZSH and installing ZSH plugins.mp4
    02:42
  • 4. The ~.zshrc file and ZSH themes.mp4
    03:55
  • 5. Disablingenabling ZSH plugins; All-in-one Markdown extension; web-search plugin.mp4
    10:20
  • 6. Typeahead auto-completion with zsh-autosuggestions.mp4
    04:09
  • 7. Syntax highlighting with zsh-syntax-highlighting.mp4
    02:13
  • 8. Cheat sheet quick ZSH setup.html
  • 1. Introduction to Semantic Versioning (semver).mp4
    14:19
  • 2. Semantic Versioning (continued).mp4
    12:35
  • 3. Semantic Versioning.html
  • 4. Why developers need to be able to switch between multiple Python versions.mp4
    05:32
  • 5. Resources for installing pyenv.html
  • 6. Installation and overview of pyenv for managing multiple Python versions.mp4
    14:30
  • 7. History of Python changes; Overview of how Python evolves.mp4
    10:25
  • 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?


  • 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
  • More details


    Description

    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
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Eric Riddoch
    Eric Riddoch
    Instructor's Courses
    Hi, I'm Eric. I've been working in the industry for just over 4 years--the first two years as a Data Engineer (Python, Airflow, Kubernetes, AWS, Snowflake), and the most recent two years as an MLOps engineer at a product placement company called BENLabs.I co-organize the Utah, USA chapter of the MLOps-Community Meetup. Join us if you're around!I have extensive experience architecting systems on AWS, making sure they are secure from a network and application standpoint; also that they are scalable, monitored, and tested. I've done a fair bit of work on CI/CD, writing and testing infrastructure-as-code, and full-stack development.
    Students take courses primarily to improve job-related skills.Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.
    • language english
    • Training sessions 16
    • duration 1:45:50
    • Release Date 2023/04/19