EdX

Python and Rust with Linux Command Line Tools (edX)

Python and Rust with Linux Command Line Tools (edX)

Applied command line tool automation with Python and Rust for efficient task management.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

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.
This course is part of the Rust Programming Professional Certificate.

What you'll learn

  • Build powerful command line tools in Rust and Python
  • Use Python with Rust for building powerful tools
  • Package and distribute your tools

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)

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

Related Courses

Introducción al desarrollo de aplicaciones web (edX) EdX
Universidad Autonoma de Madrid

Introducción al desarrollo de aplicaciones web (edX)

Aprende a desarrollar una aplicación web desde cero con diferentes tecnologías como HTML, CSS, Python, JSON, JavaScript y Ajax. Hoy en día utilizamos la web para todo tipo de tareas: buscar un vuelo, comprar entradas, ver el pronóstico meteorológico, leer noticias, etc. Todo esto es posible gracias a las aplicaciones web creadas para darnos estos servicios.

Self Paced
Self-Paced
Text Analytics 1: Introduction to Natural Language Processing (edX) EdX
University of Canterbury,UCx

Text Analytics 1: Introduction to Natural Language Processing (edX)

Learn the core techniques of text analytics alongside the cognitive science that makes it all possible. Introduction to Text Analytics with Python is part one of the Text Analytics with Python professional certificate. This first course introduces the core techniques of natural language processing (NLP). But we introduce these techniques from data science alongside the cognitive science that makes them possible.

Self Paced
Self-Paced
Machine Learning with Python: from Linear Models to Deep Learning (edX) EdX
MIT,MITx

Machine Learning with Python: from Linear Models to Deep Learning (edX)

An in-depth introduction to the field of machine learning, from linear models to deep learning and reinforcement learning, through hands-on Python projects. Machine learning methods are commonly used across engineering and sciences, from computer systems to physics. Moreover, commercial sites such as search engines, recommender systems (e.g., Netflix, Amazon), advertisers, and financial institutions employ machine learning algorithms for content recommendation, predicting customer behavior, compliance, or risk.

May 27th 2024
13-24 Weeks
Análisis de datos: Llévalo al MAX() (edX) EdX
Delft University of Technology,DelftX

Análisis de datos: Llévalo al MAX() (edX)

Incrementa tus habilidades de análisis de datos utilizando hojas de cálculo y visualización de datos en Excel. Aumenta tu productividad y produce mejores decisiones de negocio. Este curso de análisis de datos (business intelligence: BI) y estadísticas es para todos aquellos que quieren mejorar sus habilidades en el análisis de datos. ¿Buscas una forma inteligente de visualizar los datos para que tengan sentido? ¿Quieres entender esa colección de datos loca que te dio tu jefe? ¿Tienes Megabytes de sensores de datos para analizar? ¡No te preocupes, lo tenemos cubierto!

Self Paced
Self-Paced
Computing in Python I: Fundamentals and Procedural Programming (edX) EdX
Georgia Institute of Technology,GTx

Computing in Python I: Fundamentals and Procedural Programming (edX)

Learn the fundamentals of computing in Python, including variables, operators, and writing and debugging your own programs. This course starts from the beginning, covering the basics of how a computer interprets lines of code; how to write programs, evaluate their output, and revise the code itself; how to work with variables and their changing values; and how to use mathematical, boolean, and relational operators.

Self Paced
Self-Paced
Introduction to Kubernetes (edX) EdX
Linux Foundation,LinuxFoundationX

Introduction to Kubernetes (edX)

Want to learn Kubernetes? Get an in-depth primer on this powerful system for managing containerized applications. Is your team beginning to use Kubernetes for container orchestration? Do you need guidelines on how to start transforming your organization with Kubernetes and cloud native patterns? Would you like to simplify software container orchestration and find a way to grow your use of Kubernetes without adding infrastructure complexity? Then this is the course for you!

Self Paced
Self-Paced
Successfully Evaluating Predictive Modelling (edX) EdX
University of Edinburgh,EdinburghX

Successfully Evaluating Predictive Modelling (edX)

Gain an in-depth understanding of evaluation and sampling approaches for effective predictive modelling using Python. A predictive exercise is not finished when a model is built. This course will equip you with essential skills for understanding performance evaluation metrics, using Python, to determine whether a model is performing adequately.

Oct 26th 2021
5-12 Weeks
Analytics in Python (edX) EdX
Columbia University,ColumbiaX

Analytics in Python (edX)

Learn the fundamental of programming in Python and develop the ability to analyze data and make data-driven decisions. Data is the lifeblood of an organization. Competency in programming is an essential skill for successfully extracting information and knowledge from data. The goal of this course is to introduce learners to the basics of programming in Python and to give a working knowledge of how to use programs to deal with data.

This course is archived
5-12 Weeks