Software Chef

Chiso's Cookbook

Recipes for Software Development

2025 Edition
"Good code is like effective communication – clear, purposeful, and built with careful attention to detail."
Toolkit

My Kitchen Tools

The essential tools I use to create...

My primary stack includes PHP, Go and Typescript but I have used a variety of other languages and tools over the years out of necessity or out of curiosity. Here are some of the tools I have used and am comfortable with, there are a lot not on this list that I have school-related experience with or have no interest in generally working with again.

  • PHP

    PHP

    My first language and my go-to for full-stack web development, I currently use it at work and personally for web-based projects with no hard performance requirements or extensive client-side functionality (like a PWA requirement).

  • Go

    Go

    Good choice for concurrent, performant & scalable backend services (and other things you definitely do not want to imagine) with single-binary* deployments.

  • Typescript

    Typescript

    Mostly a "linter" but better than nothing when working with Javascript. I use it for most of my frontend projects (Solid, React & Astro) and when I have to work with Bun or Node.js

  • MySQL

    MySQL

    A relational database management system that I have used for years as a part of the LAMP stack I started with!

  • SQLite

    SQLite

    A single-file, ACID-compliant relational database that I frequently use for my smaller projects (and sometimes for larger ones too!), stateful CLIs and mobile applications.

  • Redis

    Redis

    A key-value store that I use for caching, session storage and other abominable things you don't want to think about.

  • Docker

    Docker

    Useful for running applications in a consistent kind-of-reproducible environment, and my preferred way to develop and deploy applications.

  • Tailwind CSS

    Tailwind CSS

    A utility-first CSS framework which comes in quite handy for "designing in code" and making responsive designs easier to implement on the web.

  • Git

    Git

    Uh... preferred and the most popular version control system?

Tools I'm Excited About

  • Solid.js - I have used React a lot but I start new projects with this, it is more performant and has better first-party/primitives support.
  • Inko - It is like Rust but apparently easier!
  • Elixir - Awesome for real-time software but I haven't had a lot of time to try it out.
  • Flatbuffers - More efficient than gRPC & protobufs
  • SurrealDB - A multi-model database with interesting features

Other Ingredients I've Used

  • C++ - school experience and occasional self-torture
  • Java - school experience
  • Kotlin - also school experience, but I enjoyed it
  • Python - school experience and occasional scripting
  • Erlang - tried it briefly
  • PostgreSQL - I haven't used this much but I intend to use it more
  • MongoDB - used for several projects
  • Laravel - PHP framework I've worked with
Chef's Note

I am always interested in trying out new things, just to see how they suck and how they are better than my current tools. If you have any suggestions or anything that excites you, feel free to @ me on Twitter/X!