Python and Rust with Linux Command Line Tools (Coursera)

Python and Rust with Linux Command Line Tools (Coursera)
Course Auditing
Categories
Effort
Certification
Languages
Beginner experience in programming languages, Git for version control, and using a text editor for development.
Misc

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

Python and Rust with Linux Command Line Tools (Coursera)
This course is designed for beginners and those with some programming experience in either Python or Rust that want to implement automation and utilities in the command-line. Although no prior knowledge of Python or Rust is required, basic programming knowledge is recommended as well as some familiarity with the command-line interface (CLI).

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

Throughout the course, you will gain a solid foundation for building efficient, reliable, and high-performance command-line tools that can help you automate tasks for data engineering, systems engineering, and DevOps. By completing this course, you will have the skills to develop and distribute sophisticated and efficient command-line tools.

This course is part of the Rust Programming Specialization.


What you'll learn

- Build powerful command line tools in Rust and Python

- Use Python with Rust for building powerful tools


Syllabus


Introduction to Command-line tools with Python and Rust

This week, you will learn how to create a basic command-line tool in Python and Rust, handle command-line arguments and options, organize code into modules and packages, and implement logging and error handling. You will apply these skills by developing a command-line tool that accepts user input, uses modules to organize code, logs output, and handles errors gracefully. The tool will demonstrate your ability to build a functional CLI program using best practices covered this week.


Advanced Command-line tool development

This week, you will learn how to create command-line tools with subcommands, parse complex arguments, and incorporate environment variables in both Rust and Python. You will apply these skills by developing a fully-featured command-line tool that can handle subcommands, arguments, and environment variables in a user-friendly way. The tool will demonstrate your proficiency in organizing functionality, flexibly handling input, and integrating with the environment in Rust and Python.


Using Rust with Python

his week, you will learn how to explore advanced PyO3 features such as handling exceptions, custom conversions, and utilizing attributes. You'll also delve into the best practices for mixing Rust and Python, and understand how Rust can be leveraged for CPU-bound operations in Python. Furthermore, you'll begin the process of converting Python scripts into command-line tools using Rust, and familiarize yourself with error handling and logging in Rust CLI applications. To apply what you've learned, you'll be assessed through a series of hands-on exercises, including: Implementing a Rust function with custom exception handling that can be called from Python. Converting a simple Python script into a Rust CLI tool, focusing on the first part of the conversion process. Writing a brief case study analysis on how Rust can optimize CPU-bound operations in a given Python project. By the end of this week, you'll have a solid understanding of advanced Rust and Python integration techniques.


Rust AWS Lambda

This week, you will learn how to create, deploy, and manage AWS Lambda functions using Rust, leveraging the power and performance of the language for serverless architecture, and applying it by building a real-world Lambda function as a part of a distributed application.



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

Course Auditing
45.00 EUR/month
Beginner experience in programming languages, Git for version control, and using a text editor for development.

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