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
Python for Data Science (edX) EdX
University of California, San Diego,UC San DiegoX

Python for Data Science (edX)

Learn to use powerful, open-source, Python tools, including Pandas, Git and Matplotlib, to manipulate, analyze, and visualize complex datasets. In the information age, data is all around us. Within this data are answers to compelling questions across many societal domains (politics, business, science, etc.). But if you had access to a large dataset, would you be able to find the answers you seek?

Self Paced
Self-Paced
Introduction to Computer Science and Programming Using Python (edX) EdX
MIT,MITx

Introduction to Computer Science and Programming Using Python (edX)

An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5. This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems.

Jan 24th 2024
5-12 Weeks
Data Science and Machine Learning Capstone Project (edX) EdX
IBM

Data Science and Machine Learning Capstone Project (edX)

Create a project that you can use to showcase your Data Science skills to prospective employers. Apply various data science and machine learning techniques to analyze and visualize a data set involving a real life business scenario and build a predictive model. Now that you've taken several courses on data science and machine learning, it’s time to put your learning to work on a data problem involving a real life scenario. Employers really care about how well you can apply your knowledge and skills to solve real world problems, and the work you do in this capstone project will make you stand out in the job market.

Self Paced
Self-Paced
Using Python for Research (edX) EdX
HarvardX,Harvard University

Using Python for Research (edX)

Take your introductory knowledge of Python programming to the next level and learn how to use Python 3 for your research. This course bridges the gap between introductory and advanced courses in Python. While there are many excellent introductory Python courses available, most typically do not go deep enough for you to apply your Python skills to research projects.

Self Paced
Self-Paced
Probability and Statistics in Data Science using Python (edX) EdX
University of California, San Diego,UC San DiegoX

Probability and Statistics in Data Science using Python (edX)

Using Python, learn statistical and probabilistic approaches to understand and gain insights from data. The job of a data scientist is to glean knowledge from complex and noisy datasets. Reasoning about uncertainty is inherent in the analysis of noisy data. Probability and Statistics provide the mathematical foundation for such reasoning.

Self Paced
Self-Paced
Computer Forensics (edX) EdX
Rochester Institute of Technology,RITx

Computer Forensics (edX)

Learn the process, techniques and tools for performing a digital forensics investigation to obtain data related to computer crimes. Digital forensics involves the investigation of computer-related crimes with the goal of obtaining evidence to be presented in a court of law.

Jan 8th 2024
5-12 Weeks
Introduction to Linux (edX) EdX
Linux Foundation,LinuxFoundationX

Introduction to Linux (edX)

Never learned Linux? Want a refresh? Develop a good working knowledge of Linux using both the graphical interface and command line across the major Linux distribution families. Develop a good working knowledge of Linux using both the graphical interface and command line, covering the major Linux distribution families.

Self Paced
Self-Paced
CS50's Introduction to Artificial Intelligence with Python (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Artificial Intelligence with Python (edX)

Learn to use machine learning in Python in this introductory course on artificial intelligence. AI is transforming how we live, work, and play. By enabling new technologies like self-driving cars and recommendation systems or improving old ones like medical diagnostics and search engines, the demand for expertise in AI and machine learning is growing rapidly. This course will enable you to take the first step toward solving important real-world problems and future-proofing your career.

Self Paced
Self-Paced