HOME > Development > Hands-On Systems Programming with Rust

Hands-On Systems Programming with Rust

  • Development
  • Jan 05, 2025
SynopsisHands-On Systems Programming with Rust, available at $59.99,...
Hands-On Systems Programming with Rust  No.1

Hands-On Systems Programming with Rust, available at $59.99, has an average rating of 4.35, with 26 lectures, 5 quizzes, based on 248 reviews, and has 1690 subscribers.

You will learn about Explore Rusts package registry for discovering and sharing code Use multithreading to unlock the power of multiple cores Get to know data-flow rate and speed through a pipeline Display time-based statistics using stderr Build your own middleware project to control the flow of data between two processes Best practices and techniques to set up your project for success Test and publish your own project on crates .io This course is ideal for individuals who are If you are already a software developer and want to learn systems programming in Rust practically and quickly, this course is for you! or This course will greatly appeal to intermediate Linux and general Unix programmers, network programmers, and C / C++ programmers interested in learning different approaches to concurrency. It is particularly useful for If you are already a software developer and want to learn systems programming in Rust practically and quickly, this course is for you! or This course will greatly appeal to intermediate Linux and general Unix programmers, network programmers, and C / C++ programmers interested in learning different approaches to concurrency.

Enroll now: Hands-On Systems Programming with Rust

Summary

Title: Hands-On Systems Programming with Rust

Price: $59.99

Average Rating: 4.35

Number of Lectures: 26

Number of Quizzes: 5

Number of Published Lectures: 26

Number of Published Quizzes: 5

Number of Curriculum Items: 31

Number of Published Curriculum Objects: 31

Original Price: $109.99

Quality Status: approved

Status: Live

What You Will Learn

  • Explore Rusts package registry for discovering and sharing code
  • Use multithreading to unlock the power of multiple cores
  • Get to know data-flow rate and speed through a pipeline
  • Display time-based statistics using stderr
  • Build your own middleware project to control the flow of data between two processes
  • Best practices and techniques to set up your project for success
  • Test and publish your own project on crates .io
  • Who Should Attend

  • If you are already a software developer and want to learn systems programming in Rust practically and quickly, this course is for you!
  • This course will greatly appeal to intermediate Linux and general Unix programmers, network programmers, and C / C++ programmers interested in learning different approaches to concurrency.
  • Target Audiences

  • If you are already a software developer and want to learn systems programming in Rust practically and quickly, this course is for you!
  • This course will greatly appeal to intermediate Linux and general Unix programmers, network programmers, and C / C++ programmers interested in learning different approaches to concurrency.
  • Scripting languages will provide safety, but not concurrency and speed, while traditional systems programming languages such as C and C++ will definitely give you speed and some concurrency, but forget about safety! If you need safety, concurrency, and speed, then Rust is the only viable option.

    In this course, you will learn how Rust guarantees memory and thread safety at compile-time, yet uses zero-cost abstractions without the runtime overhead of a garbage collector. You’ll learn how to monitor the flow of data through a pipeline by building your own middleware utility. You’ll learn how to utilize I/O to interact with the command line, work with standard library mpsc channels to perform data flows, and create an ergonomic timer for your project. You’ll apply key concepts in every section while creating your own middleware tool in Rust along the way.

    By the end of this practical course, you will feel comfortable designing safe, consistent, parallel, and high-performance applications in Rust using systems programming.

    This course should appeal to intermediate Linux and general Unix programmers, network programmers, and C/C++ programmers interested in learning different approaches to concurrency. Prior knowledge of basic programming concepts is required, and a working knowledge of Rust is assumed.

    About the Author

    Nathan Stocks has spent the last 20 years working in software development, mostly in the field of backend infrastructure. He fell in love with Rust in 2016 and began teaching it in 2017. For the past several years, he has focused on systems-level programming. He maintained the AVbin audio library (written in C) from 2011-2013. He has had tons of fun learning, using, and teaching Rust at conferences and online. He also loves Python and PostgreSQL, and still occasionally suffers from nightmares about C and C++.

    He currently works at GitHub, managing the Git Storage team, and spends his nights in pursuit of someday creating a successful indie game in Rust.

    Course Curriculum

    Chapter 1: Preparing for Systems Programming with Rust

    Lecture 1: The Course Overview

    Lecture 2: Systems Programming in Rust

    Lecture 3: Configuring Your Editor/IDE

    Lecture 4: The Many Faces of Cargo

    Lecture 5: Preview Finished Project

    Lecture 6: Layout the Skeleton of the Project

    Chapter 2: Operating with I/O

    Lecture 1: Read from stdin, Count Bytes, and Write to stdout

    Lecture 2: Inspecting Values with dbg!()

    Lecture 3: Working Effectively with cargo fmt and cargo clippy

    Lecture 4: Handling Errors Gracefully

    Lecture 5: Handling Command Line Arguments with Clap

    Lecture 6: Reading/Writing Files, Buffered I/O, and Traits

    Chapter 3: Applying Multithreading Features to Your Project

    Lecture 1: Working Effectively with Organized Library Modules

    Lecture 2: Separate Input, Statistics, and Output Threads

    Lecture 3: Operating with MPSC Channels for Data Flow in Sequence

    Lecture 4: Refactor Code to Use Crossbeam Channels

    Chapter 4: Dealing with Time and Terminal

    Lecture 1: Working with Instant

    Lecture 2: Calculate a Delta Time Using Instants

    Lecture 3: Use Durations to Create an Ergonomic Timer Struct

    Lecture 4: Using Timer and Output Progress Statistics at a Steady Rate

    Lecture 5: Applying Crossterm and Colorizing the Output

    Chapter 5: Systems Programming in Rust: Best Practices

    Lecture 1: Creating a Library and Organizing it into Modules

    Lecture 2: Writing and Running Tests on Your Code

    Lecture 3: Documenting Your Code

    Lecture 4: Understanding the Ins and Outs of Semantic Versioning

    Lecture 5: Publishing Your Project as a Crate on crates.io

    Instructors

  • Hands-On Systems Programming with Rust  No.2
    Packt Publishing
    Tech Knowledge in Motion
  • Rating Distribution

  • 1 stars: 0 votes
  • 2 stars: 4 votes
  • 3 stars: 18 votes
  • 4 stars: 92 votes
  • 5 stars: 134 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!