My Blog

2025

July 20, 2025

Technical debt has never been more expensive

July 17, 2025

Two tower embeddings

2024

August 4, 2024

Schema on Write vs Schema on Read vs Adjusting to a Schema using an LLM

July 22, 2024

Infrastracture as Code vs Infrastracture from Code

July 15, 2024

SDLC Development Principles

July 8, 2024

Proximity

July 2, 2024

The Importance of Interactions in System Design

June 30, 2024

More on coupling

June 26, 2024

Applying the cynefin framework in software engineering

June 16, 2024

Knowledge coupling

June 10, 2024

The Typecast Pattern: Harnessing State Transitions

June 8, 2024

Design Patterns: Abstract Factory

June 8, 2024

Box<dyn ...> enables the Bridge Pattern

June 8, 2024

Mastering stakeholder dynamics

June 7, 2024

Design Patterns: Singleton

June 7, 2024

Static Factory Method

2023

June 3, 2023

Remote 1-1s

2022

December 30, 2022

Small Steps, Big Impact: The Benefits of Moving Fast

July 25, 2022

Προς υπεράσπιση του "Πληρωμή με μετρητά"

2021

November 4, 2021

Ethical Leadership

February 7, 2021

The case against event sourcing

January 2, 2021

Blue-Green Deployment in K8s

2020

November 20, 2020

The story of reducing a Github Actions workflow by ~7 minutes

November 14, 2020

DRY in test suites is an antipattern

November 13, 2020

Against closure consts

June 12, 2020

On cohesion

May 21, 2020

What I read during the lockdown

May 14, 2020

Thoughts on rewards as a way to boost productivity

March 1, 2020

How to create a CI/CD pipeline for a React app (2nd part)

February 29, 2020

How to create a CI/CD pipeline for a React app (1st part)

February 23, 2020

Code Smell: Too much indirection

February 22, 2020

Code Smell: Divergent Change

February 21, 2020

Code Smell: Feature Envy (or Data Envy)

February 7, 2020

Materialized Views to Improve Aggregations Performance

2019

December 27, 2019

Working on vacations (as a Lead)

October 6, 2019

Frontend Architecture in the hooks era

August 21, 2019

Performance is a requirement

July 30, 2019

Faster sampling in PostgreSQL

July 19, 2019

It's all Greek to me: Thoughts on code readability and aesthetics

July 12, 2019

Lazy and infinite data structures

July 7, 2019

Compensation does not guarantee motivation

2018

November 7, 2018

Giving praise

November 5, 2018

Ruby: Provide ways to iterate over collections

October 25, 2018

Implementing feature toggles for a React App using Webpack

October 25, 2018

Pseudomandatory parameters in es6 functions

October 11, 2018

Backpressure for smoother user experience in low-end devices

September 9, 2018

Remove argument-order dependency and provide defaults

September 9, 2018

Hide depedency to a data structure

August 9, 2018

Null object pattern