Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

edX

Python and Rust with Linux Command Line Tools

Pragmatic AI Labs via edX

Overview

Build powerful automation utilities for the terminal with Python and Rust

  • Learn to build efficient, reliable command-line utilities
  • Gain skills for automating tasks in data/systems engineering
  • No prior Python/Rust knowledge required, but programming basics recommended
  • Understand best practices for CLI tool development and distribution

This course teaches you how to implement automation and utilities via the command-line interface (CLI) using Python and Rust. Designed for beginners and those with some programming experience.

  • Step-by-step tutorials cover core concepts like parsing CLI args, creating subcommands, generating reports, and more
  • Write high-performance Rust code for CPU/memory-intensive tasks
  • Leverage Python's rich libraries for file I/O, HTTP requests, and data manipulation
  • Learn techniques for distributing your CLI tools via PyPI and crates.io
  • Best practices for designing intuitive, user-friendly command-line interfaces

By completing this course, you'll gain a solid foundation in Python and Rust to develop sophisticated, powerful command-line tools for automating workflows across various domains.

Syllabus

Module 1:

\- 25 videos (Total 173 minutes)

\- Meet your instructor: Alfredo Deza (Video, 1 minute, Preview module)

\- Meet your instructor: Noah Gift (Video, 0 minutes)

\- About this course (Video, 1 minute)

\- Introduction (Video, 1 minute)

\- Setting up your development environment for Command-line tool development (Video, 7 minutes)

\- Your first Command-line tool in Python (Video, 12 minutes)

\- Working with user input: arguments and options (Video, 12 minutes)

\- Expanding your tool's functionality with modules and libraries (Video, 8 minutes)

\- Managing output: logging, errors, and exceptions (Video, 10 minutes)

\- Optimizing your Command-line tools: performance and best practices (Video, 8 minutes)

\- Introduction (Video, 1 minute)

\- Setting up your development environment for Command-line development (Video, 11 minutes)

\- Your first Command-line tool in Rust (Video, 12 minutes)

\- Working with user input: arguments and options (Video, 9 minutes)

\- Expanding your tool's functionality with modules and libraries (Video, 7 minutes)

\- Managing output: logging, errors, and panics (Video, 11 minutes)

\- Optimizing your Command-line tools: Performance and best practices (Video, 9 minutes)

\- Introduction (Video, 1 minute)

\- Organizing your project with modules and packages in Python (Video, 12 minutes)

\- Working with dependencies and libraries in Python (Video, 7 minutes)

\- The Python Package Index (Video, 4 minutes)

\- Creating and using modules in Rust (Video, 4 minutes)

\- Advanced module usage in Rust (Video, 3 minutes)

\- Working with dependencies and libraries in Rust (Video, 5 minutes)

\- Using crates.io for Rust (Video, 4 minutes)

****

- 12 readings (Total 120 minutes)

- Course structure and discussion etiquette (Reading, 10 minutes)

- A basic Python CLI example (Reading, 10 minutes)

- External lab: build a basic Python CLI (Reading, 10 minutes)

- Introduction to the Click framework (Reading, 10 minutes)

- Introduction to building a Rust CLI (Reading, 10 minutes)

- External lab: Setup your environment (Reading, 10 minutes)

- External lab: build a basic Rust CLI (Reading, 10 minutes)

- External lab: Create a Python Package Index account (Reading, 10 minutes)

- The Python Packaging Index (Reading, 10 minutes)

- Explore modules, packages, and third-party Rust crates (Reading, 10 minutes)

- External lab: update a Rust CLI to use modules (Reading, 10 minutes)

- End of week reflections (Reading, 10 minutes)

****

- 1 quiz (Total 30 minutes)

- CLI basics Quiz (Quiz, 30 minutes)

****

- 1 discussion prompt (Total 10 minutes)

- Meet and greet (optional) (Discussion prompt, 10 minutes)

****

- 1 ungraded lab (Total 60 minutes)

- Simple Command-line tool in Python (Ungraded lab, 60 minutes)

****

Module 2: Advanced Command-line tool development

- 21 videos (Total 136 minutes)

- 13 readings (Total 130 minutes)

- 1 quiz (Total 30 minutes)

****

Module 3: Using Rust with Python

- 21 videos (Total 91 minutes)

- 9 readings (Total 90 minutes)

- 1 quiz (Total 30 minutes)

****

Module 4: Rust AWS Lambda

- 21 videos (Total 88 minutes)

- 14 readings (Total 140 minutes)

- 1 quiz (Total 30 minutes)

- 1 ungraded lab (Total 60 minutes)

Taught by

Alfredo Deza

Reviews

Start your review of Python and Rust with Linux Command Line Tools

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.