Bit shifting blew my mind

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

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

    A fully-featured CHIP-8 interpreter (or "emulator") written in Rust (by anthonygedeon)

  • I used it for my Chip-8 emulator https://github.com/anthonygedeon/chip8

  • snowflake

    A simple to use Go (golang) package to generate or parse Twitter snowflake IDs (by bwmarrin)

  • It doesn't come up very often. There is an id generation library I use github.com/bwmarrin/snowflake that makes pretty good use of bit shifting. Each id is split into 3 parts, a timestamp, a node id, and a sequence number. The idea is that each server has a node id. Each node can make 4096 ids every millisecond for about 70 years. It works by doing the following

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • roaring

    Roaring bitmaps in Go (golang), used by InfluxDB, Bleve, DataDog

  • Definitely take a look at a roaring bitmap. https://github.com/RoaringBitmap/roaring

  • squashfs

    A library to interact with Squashfs archives. Currently only has support for reading, but writing archives will probably come eventually.

  • Recently had to seriously solidify my knowledge on bitwise operations for my squashfs library. WAIT IT'S BEEN NEARLY A YEAR???? Why is time so weird recently?

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