Python and Rust with Linux Command Line Tools (Coursera)

Offered by Duke University,
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).

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

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.

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

Related Courses

Using Python to Interact with the Operating System (Coursera) Coursera
Google

Using Python to Interact with the Operating System (Coursera)

By the end of this course, you’ll be able to manipulate files and processes on your computer’s operating system. You’ll also have learned about regular expressions -- a very powerful tool for processing text files -- and you’ll get practice using the Linux command line on a virtual machine. And, this might feel like a stretch right now, but you’ll also write a program that processes a bunch of errors in an actual log file and then generates a summary file. That’s a super useful skill for IT Specialists to know.

Jun 23rd 2026
5-12 Weeks
Delivery Problem (Coursera) Coursera
University of California, San Diego,Higher School of Economics - HSE University

Delivery Problem (Coursera)

We’ll implement (in Python) together efficient programs for a problem needed by delivery companies all over the world millions times per day — the travelling salesman problem. The goal in this problem is to visit all the given places as quickly as possible. How to find an optimal solution to this problem quickly? We still don’t have provably efficient algorithms for this difficult computational problem and this is the essence of the P versus NP problem, the most important open question in Computer Science.

Jun 22nd 2026
3 Weeks
Machine Learning: Regression (Coursera) Coursera
University of Washington

Machine Learning: Regression (Coursera)

Case Study - Predicting Housing Prices. In our first case study, predicting house prices, you will create models that predict a continuous value (price) from input features (square footage, number of bedrooms and bathrooms,...). This is just one of the many places where regression can be applied. Other applications range from predicting health outcomes in medicine, stock prices in finance, and power usage in high-performance computing, to analyzing which regulators are important for gene expression.

Jun 22nd 2026
5-12 Weeks
Interfacing with the Raspberry Pi (Coursera) Coursera
University of California, Irvine

Interfacing with the Raspberry Pi (Coursera)

The Raspberry Pi uses a variety of input/output devices based on protocols such as HDMI, USB, and Ethernet to communicate with the outside world. In this class you will learn how to use these protocols with other external devices (sensors, motors, GPS, orientation, LCD screens etc.) to get your IoT device to interact with the real world.

Jun 22nd 2026
4 Weeks
Neural Networks and Deep Learning (Coursera) Coursera
DeepLearning.AI

Neural Networks and Deep Learning (Coursera)

If you want to break into cutting-edge AI, this course will help you do so. Deep learning engineers are highly sought after, and mastering deep learning will give you numerous new career opportunities. Deep learning is also a new "superpower" that will let you build AI systems that just weren't possible a few years ago. In this course, you will learn the foundations of deep learning.

Jun 22nd 2026
4 Weeks
Applied Text Mining in Python (Coursera) Coursera
University of Michigan

Applied Text Mining in Python (Coursera)

This course will introduce the learner to text mining and text manipulation basics. The course begins with an understanding of how text is handled by python, the structure of text both to the machine and to humans, and an overview of the nltk framework for manipulating text. The second week focuses on common manipulation needs, including regular expressions (searching for text), cleaning text, and preparing text for use by machine learning processes. The third week will apply basic natural language processing methods to text, and demonstrate how text classification is accomplished. The final week will explore more advanced methods for detecting the topics in documents and grouping them by similarity (topic modelling).

Jun 22nd 2026
4 Weeks
Python Project: pillow, tesseract, and opencv (Coursera) Coursera
University of Michigan

Python Project: pillow, tesseract, and opencv (Coursera)

This course will walk you through a hands-on project suitable for a portfolio. You will be introduced to third-party APIs and will be shown how to manipulate images using the Python imaging library (pillow), how to apply optical character recognition to images to recognize text (tesseract and py-tesseract), and how to identify faces in images using the popular opencv library. By the end of the course you will have worked with three different libraries available for Python 3 to create a real-world data-analysis project.

Jun 22nd 2026
3 Weeks
Cloud Networking (Coursera) Coursera
University of Illinois at Urbana-Champaign

Cloud Networking (Coursera)

In the cloud networking course, we will see what the network needs to do to enable cloud computing. We will explore current practice by talking to leading industry experts, as well as looking into interesting new research that might shape the cloud network’s future. This course will allow us to explore in-depth the challenges for cloud networking—how do we build a network infrastructure that provides the agility to deploy virtual networks on a shared infrastructure, that enables both efficient transfer of big data and low latency communication, and that enables applications to be federated across countries and continents? Examining how these objectives are met will set the stage for the rest of the course.

Jun 22nd 2026
5-12 Weeks
Protecting Cloud Architecture with Alibaba Cloud (Coursera) Coursera
Alibaba Cloud Academy

Protecting Cloud Architecture with Alibaba Cloud (Coursera)

The Security Exam Preparation Course is a series of online courses covering topics including Linux and Windows OS basics and operations, network fundamentals, host security, application security, network security, and data security. It is designed to help you understand how these products work, how they should be used, and help you gain the required knowledge to prepare for the ACA/ACP level cloud security specialist.

Jun 22nd 2026
5-12 Weeks
操作系统原理 (Operating Systems) (Coursera) Coursera
Peking University

操作系统原理 (Operating Systems) (Coursera)

操作系统原理》是针对计算机科学技术专业三年级本科生开设的一门专业基础课程。本课程着重学生系统观的培养,通过重点讲述操作系统的内部结构、工作原理及典型技术的实现,使学生建立起对操作系统的整体及各个功能模块的认识,从而系统掌握计算机的专业知识,进一步提升学生的软件开发能力乃至系统软件开发能力。

Jun 22nd 2026
13-24 Weeks