Skip to content
View fabiojmendes's full-sized avatar

Block or report fabiojmendes

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
fabiojmendes/README.md

Hi there 👋

My name is Fabio and welcome to my GitHub repo. I'm passionate about all things related to programming languages, hardware & software, and distributed systems. As a home lab enthusiast, I also enjoy running my own infrastructure.

Professionally I am a senior architect with focus on complex distributed systems levering Kafka and a variety of different data stores like Redis, MySQL, OpenSearch, and Databricks. I use this space as a conduit to express my interests and creativity about embedded systems, hardware design, and low level programming that I don't get to do on my day job.

Noteworthy Projects and Repos

Autosys

Miscellaneous automation and IoT projects, mainly using Rust, that have a component of embedded systems and custom PCB design. Nonetheless, it is a distributed system using MQTT to wire up its various components. The motivation behind it is to provide a level of automation to a commercial facility. Check Autosys for more details.

Super Jeff

I like playing games and always wanted to write one myself. I tried a few times over the years but would never get past the prototype stage. Finishing things is an art. This time around I wanted it to be different. Also, that was during the pandemic and I didn't have kids at the time… Even though it is a simple game, it is a complete game with graphics, physics, audio, and an objective. My friends had a blast playing and a real hard time defeating the boss, so that alone made me feel accomplished. The game is also published to the arewegameyet website.

From the technical point of view it was also a fun challenge. Probably my first Rust program past the hello world stage. I also wanted to go for a bare-bones approach using only SDL to deal with multimedia stuff but without a full game engine. Because of this, I also had to figure out a bit of math along the way. Check super-jeff for more details.

FabiOS

Pandemic was in full swing, so of course I had to implement my own operating system. Never really got much further than going through the bootloader process and printing some text on the screen. Still a very interesting deep dive on the absolute mess that it is to initialize an x86 box. Check FabiOS for more details.

Raft Rust

A quick attempt at implementing the Raft Consensus Protocol in Rust. This project is mostly for self-study purposes and, you guessed it; pandemic time activities. It doesn't actually implement the storage part; the focus was more on the leader election component. Check raft-rust for more details.

Honorable Mentions

  • riscv-bare-metal how to bootstrap a RISC-V microcontroller using rust and a bit of assembly.
  • cfg my dot files repository.
  • nvim my Neovim configuration based on LazyVim.

Pinned Loading

  1. super-jeff super-jeff Public

    2D platform game written in Rust

    Rust 11 3

  2. motion-detection motion-detection Public

    Motion detection application using opencv

    Python 2 1

  3. ble-temp-sensor ble-temp-sensor Public

    Bluetooth LE temperature sensor using a nrf52840 and mcp9808.

    C

  4. esp-humidity esp-humidity Public

    Humidity sensor using the ESP IDF dev environment and a bme680

    C

  5. raft-rust raft-rust Public

    Incomplete implementation of the raft algorithm in rust

    Rust

  6. temp-sensor-server temp-sensor-server Public

    Go services for the temp-sensor server side

    Go