Programming

bazel repo: Starting a monorepo

I love monorepos and it was not the case prevously but I do think that monorepos shine in scenarios where:

  • The code is tightly coupled together.
  • One needs to ensure that resources on dev-tooling are efficiently spent.
  • Migrations can be completed atomically.

Bazel is a really good build system, which allows reproducible and reasonably fast builds and the build system is configured with starlark, which can be used to write custom build rules, which allow to do linting or ensure consistency in packaging, etc.

Makefile: adding prerequisites to external targets

Consider that you have a situation where you have a build system using make heavily. And you want to hook into one of the targets such that before the target is built, make builds the prerequisite you are interested in.

git-prompt-rs: Type driven development in Rust

This post is from a series of posts about writing a small application in Rust to display information about a particular git repository.

In this part I try to explore the problem by relying on the Rust's compiler and the sum types.

git-prompt-rs: Generating test data for UI tuning

This post is from a series of posts about writing a small application in Rust to display information about a particular git repository.

I have finished at the MVP stage (part 1) of the prompt after adding the logging (part 2) so in this post I summarize the rest of features:

  • git branch status
  • git local status

git-prompt-rs: diagnostics and logging

This post is from a series of posts about writing a small application in Rust to display information about a particular git repository.

Yesterday I finished with a reasonably good starting point and I thought that I would not talk about diagnostics, but after finding out how good rust tool-chain is at this, I wanted to share some thoughts.

git-prompt-rs: Writing an MWP

As an attempt to learn Rust and type-driven development using it I am going to show you how to write a small Rust CLI, which gives you status about the current repository. I wanted a small CLI to update my prompt for ion and zsh and I wanted it to be as fast as possible with the possibility to extend in case I want to display more information.