How Uber Uses Zig

Disclaimer: I work at Uber and am partially responsible for bringing zig cc to serious internal use. Opinions are mine, this blog post is not affiliated with Uber.

I talked at the Zig Milan meetup about “Onboarding Zig at Uber”. This post is a little about “how Uber uses Zig”, and more about “my experience of bringing Zig to Uber”, from both technical and social aspects.

The video is here. The rest of the post is a loose transcript, with some commentary and errata.

TLDR:

  • Uber uses Zig to compile its C/C++ code. Now only in the Go Monorepo via bazel-zig-cc, with plans to possibly expand use of zig cc to other languages that need a C/C++ toolchain.
  • Main selling points of C/C++ toolchain on top of zig-cc over the alternatives: configurable versions of glibc and macOS cross-compilation.
  • Uber does not have any plans to use zig-the-language yet.
  • Uber signed a support agreement with Zig Software Foundation (ZSF) to prioritize bug fixes. The contract value is disclosed in the ZSF financial reports.
  • Thanks to my team, the Go Monorepo team, the Go Platform team, my director, finance, legal, and of course Zig Software Foundation for making this relationship happen. The relationship has been fruitful so far.

Read in full here:

This thread was posted by one of our members via one of our news source trackers.

Corresponding tweet for this thread:

Share link for this tweet.