← Back to Portfolio

Uses

Hardware, environment, and development stack · uses.tech

Hardware & Embedded Lab

  • Microcontrollers: ESP32-S3 (Xtensa dual-core 32-bit LX7 with native USB-OTG and high-speed SPI).
  • RF / NFC: NXP PN532 NFC/RFID controller boards communicating over SPI for high baud rate APDU exchanges.
  • Interfacing: CP2102 and CH340 USB-to-UART bridges, 24MHz 8-channel USB logic analyzer for decoding SPI/I2C buses with PulseView.
  • Primary Rig: Linux laptop running lightweight tiling environment for maximum screen efficiency.

Operating System & Terminal

  • OS: Arch Linux — rolling release, minimal bloat, predictable package management with pacman.
  • Shell & Multiplexer: Bash and tmux for session management across local and remote sessions.
  • Terminal: Alacritty — GPU-accelerated, minimal configuration.

Editor & Development Environment

  • Neovim: Configured in Lua with native LSP (gopls for Go, clangd for C++, ts_ls for TypeScript), Treesitter, and Telescope for fuzzy searching.
  • VS Code: For occasional multi-target visual debugging and diff inspection.
  • Version Control: git with signed commits via GnuPG.

Languages & Runtimes

  • Go (Golang): Primary backend language for concurrent networked services, GUI tooling with Fyne, and search indexing.
  • C++: Microcontroller firmware for ESP32 and real-time hardware interfacing.
  • TypeScript & Node.js: Edge workers on Cloudflare Workers, build pipelines, lightweight web interfaces.
  • Python: Graph analysis, SciPy sparse matrix PageRank computation, and prototyping.
  • Databases: SQLite (in-memory and disk-backed inverted indexes).

Hosting & Edge Infrastructure

  • Cloudflare: DNS management, Cloudflare Workers, and R2 object storage.
  • Vercel: Fast global CDN hosting this static portfolio with strict CSP security headers.