Rust Icon

Rust

Rust is a systems programming language created by Mozilla.
59 Stories
All Topics

Gaming github.com

The NES you left outside in the rain but let dry and still kind of works

This is an NES emulator and a work in progress. The CPU, PPU, and APU mostly work, though there are still at least a couple bugs. I’ve mostly tested on Donkey Kong and Super Mario Bros. so far. There are plenty of full-featured emulators out there; this is primarily an educational project but I do want it to run well.

If you’re interested in learning about Rust and/or emulators, this is for you.

The NES you left outside in the rain but let dry and still kind of works

Rust github.com

The Rust SQL Toolkit 🧰

SQLx is a modern SQL client built from the ground up for Rust, in Rust.

  • Truly Asynchronous. Built from the ground-up using async-std using async streams for maximum concurrency.

  • Type-safe SQL (if you want it) without DSLs. Use the query!() macro to check your SQL and bind parameters at compile time. (You can still use dynamic SQL queries if you like.)

  • Pure Rust. The Postgres and MySQL/MariaDB drivers are written in pure Rust using zero unsafe code.

Command line interface github.com

A CLI for displaying network utilization by process, connection, and remote host

bandwhich sniffs a given network interface and records IP packet size, cross referencing it with the /proc filesystem on linux or lsof on MacOS. It is responsive to the terminal window size, displaying less info if there is no room for it. It will also attempt to resolve ips to their host name in the background using reverse DNS on a best effort basis.

This looks much better than me fumbling through lsof’s man page for ten minutes and then giving up.

A CLI for displaying network utilization by process, connection, and remote host

Rust blog.rust-lang.org

Blog-driven roadmap for Rust?

The Rust core team put out a post today titled “A call for blogs 2020” where they put Rust’s 2020 roadmap into the community’s hands, by way of blogging. Here’s the breakdown…

  • Anyone and everyone in the Rust community writes a blog post about what they’d like Rust development to be like in 2020.
  • The core team reads all the posts, and writes up a “Roadmap RFC” to make a formal proposal.
  • The RFC is reviewed by everyone, comments are made, adjustments are made, and eventually it is accepted.
  • This RFC is a guide to either accept or postpone RFCs for 2020. If a proposal fits into the themes of what we want to accomplish, we’ll take it, but if it doesn’t, we’ll put it off until the next year.

The core team will begin reviewing all the posts starting December 1 with a plan to produce the RFC draft a few weeks after.

The Changelog The Changelog #363

Nushell for the GitHub era

Jonathan Turner, Andrés Robalino, and Yehuda Katz joined the show to talk about Nushell, or just Nu for short. It’s a modern shell for the GitHub era. It’s written in Rust, and it has the backing of some of the greatest minds in open source. We talk through what it is, how it works and cool things you can do with it, why Rust, ideas for the future, and ways for the community to get involved and contribute.

Python nicolas-hahn.com

One program written in Python, Go, and Rust

This is a subjective, primarily developer-ergonomics-based comparison of the three languages from the perspective of a Python developer, but you can skip the prose and go to the code samples, the performance comparison if you want some hard numbers, the takeaway for the tl;dr, or the Python, Go, and Rust diffimg implementations.

Not only is this a good way to compare programming languages, but it’s a good way to learn a new language if you’re already familiar with one of the others.

Rust blog.discordapp.com

Using Rust to scale Elixir for 11 million concurrent users

The Discord team bumped up against some limitations of the BEAM (Erlang’s virtual machine) when dealing with rather large data structures:

The double-edged sword of immutable data structures is that mutations are modeled by taking an existing data structure and an operation and creating a brand new data structure that is the result of applying that operation to the existing data structure.

This meant that when someone joined a server — internally referred to as guilds — with a Member List of 100,000 members, we would have to build a new list with 100,001 members in it.

You’ll want to click through and read all of the data structures they tried to fix this problem. It’s some seriously solid engineering and I love how they continued to measure and push themselves further. Finally, they reached for Rust thanks to BEAM’s NIF feature and really scaled up the speed.

The New Stack Icon The New Stack

Rust creator Graydon Hoare talks about security, history, and Rust

It’s hard to believe it’s already been 9 years since Rust was first announced to the world. The New Stack has a nice interview with Graydon Hoare

sharing his thoughts on everything from the state of systems programming, to the difficulty of defining safety on ever-more complex systems — and whether we’re truly more secure today, or confronting an inherited software mess that will take decades to clean up.

Sarah Allen ultrasaurus.com

Essential Rust tools

Sarah Allen shares her essential Rust tools, which includes rustup, cargo, and rust-parcel. Sarah is “just scratching the surface” as she learns Rust, so stay tuned for more on Rust from her in the future.

Are you super experienced with Rust? Share any essential tools Sarah was missing in the discussion below.

0:00 / 0:00