Home Office Workspace

  • Desk: IKEA Bekant
  • Headphones: Bose QuietComfort 35 II
  • Monitor: BenQ EL2870U 4K Monitor
  • Webcam: BENEWY C1 (1920x1080)
  • Keyboard: Royal Kludge RK918 RGB Mechanical Gaming Keyboard
  • Mouse: Logitech MX Anywhere 2S Wireless Mouse

Desktop PC

  • CPU: AMD Ryzen 7 5800X
  • Memory: 32GB (4x 8GB) G.Skill Flare X (DDR4-3200)
  • Graphics: 8GB Asus GeForce GTX 1070 Dual OC
  • Hard drives: 500GB Crucial P1 NVMe M.2 2280, 256GB Kingston SDD, 128GB Samsung SDD

Laptop

  • Model: Lenovo IdeaPad 5 Pro
  • Display: 16 Inch WQXGA WideView/Anti-Glare
  • CPU: AMD Ryzen 9 5900HX
  • Memory: 32GB RAM
  • Hard drive: 1TB SSD
  • Graphics: NVIDIA GeForce RTX 3050 4GB GDDR6

Software

  • OS: Linux Mint (Desktop); Arch Linux (Laptop)
  • Window Manager: i3
  • Window Tiling: TMUX
  • Code Editor: Neovim
  • Shell: Zsh
  • Sexy Command Line Tools: lf, fzf, exa, imagemagick, bat, ripgrep
  • Browsing: Hardened Firefox
  • Password manager: BitWarden

Software toolbelt

I order of usefulness, maintainability and DX (from my perspective, of course).

Languages

  • HTML and CSS (vanilla, please)
  • XML and XSLT
  • JavaScript (TypeScript where it really makes sense)
  • Python (don’t like it, but it’s great for quick scripts and prototyping)
  • Rust (amazing, but I’m still learning)
  • Elixir (beautiful language)
  • Haskell (recreationally learning, i.e. mainly for fun)

Paradigms and principles

  • FP over OOP (almost always)
  • Composition over inheritance (always)
  • Convention over configuration (wherever possible)
  • Working on getting used to TDD and practical principles of DDD

Frameworks

Frontend

  • Svelte/SvelteKit (love it)
  • Astro (fantastic)
  • Yew and Leptos (WASM is powerful)
  • SolidJS (very nice, but I’m sick of JSX)
  • Vue.js (it’s a’ight, I guess)
  • React/Next.js (Just no. Please let React finally die, okay?)

Backend

  • FastAPI or Flask (Python)
  • Axum (<3) or Rocket (Rust)
  • Pheonix Framework (Elixir)
  • Express or AdonisJS (I’m ot a fan of JS in the backend, though)
  • Laravel (but I don’t take PHP jobs, ‘cause I absolutely, positively hate PHP)

Source Control, Deployment, Servers and Hosting

  • Git and GitLab <3
  • DigitalOcean
  • Docker
  • Let’s Encrypt
  • Traefik
  • NGINX
  • Netlify
  • Render
  • Fly.io

Build Tools and package managers

  • Bun
  • Vite
  • Cargo
  • Hex
  • Poetry or pip
  • Webpack (but only when I really have to)

HTTP, APIs, ORMs, Databases, Query Languages and Protocols

I’m not particularly great with databases per se, but I enjoy implementing APIs and working with ORMs.

  • REST APIs
  • GraphQL
  • JSON-RPC
  • Redis
  • PostgreSQL
  • SurrealDB (learning)
  • MongoDB
  • SQLAlchemy
  • Diesel
  • SeaORM
  • SQLx
  • Ecto

GUI Development

  • Tauri (learning)
  • Electron (used it, but meh)
  • Iced (very interested)

Designing and Prototyping

  • Vim and Markdown
  • Figma
  • drawSQL
  • Mermaid