Why I rewrote my Rust keyboard firmware in Zig: consistency, mastery, and fun

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • zig

    General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

  • I'd be quite surprised if you hit this point in Zig as you would in Go. Go is only just getting generics whilst Zig has a very rich compile time programming support! I think a good example of this is the Zig creator recently wrote a type that turned an array of structs (I'm handwaving a little, it takes a struct that you would then put in an array) and then turns it into a struct of arrays. That's the kind of thing you can imagine having to type out by hand and hand roll an API for every time - in Zig it is a generic couple of hundred lines

  • Git

    Git Source Code Mirror - This is a publish-only repository but pull requests can be turned into patches to the mailing list via GitGitGadget (https://gitgitgadget.github.io/). Please follow Documentation/SubmittingPatches procedure for any of your improvements.

  • Yeah I mean maybe it is also a different mental model that works better for me. But I’d say that Rust is def. more accessible than C. The docs, the book and resources like cheats.rs make it easy to get started. Whereas C has so many foot guns and dangerous methods which even challenge experienced developers. To me C is much more difficult than Rust. Being able to write code is not equal to being able to understand what the code is doing.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • go

    The Go programming language

  • That was a good read. https://github.com/golang/go/issues/15006 is absolutely hilarious.

  • soa-derive

    Array of Struct to Struct of Array helpers in Rust

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts