The Typecast Pattern: Harnessing State Transitions

Whether you’re dealing with network connections, user sessions, or any state-dependent operations, ensuring that transitions are valid and safe is crucial. The complexity arises because states often dictate what actions can be performed, and performing an invalid action can lead to unpredictable behavior or even system failures...

Read

Design Patterns: Abstract Factory

In the last article I explored how to implement the Singleton pattern in Rust, I will continue with another creational design pattern, the Abstract Factory pattern

Read

Static Factory Method

I am reading currently the Effective Java book and one of the first tips on the book is the usage of the static factory methods instead of constructors...

Read

Design Patterns: Singleton

Whether you’re dealing with network connections, user sessions, or any state-dependent operations, ensuring that transitions are valid and safe is crucial. The complexity arises because states often dictate what actions can be performed, and performing an invalid action can lead to unpredictable behavior or even system failures...

Read

Small Steps, Big Impact: The Benefits of Moving Fast

As an engineering manager, one of my key philosophies is to move things faster. This many times can feel strange to others, why we are we running to do X or Z, why we do this small thing here and there. Personally I believe that...

Read

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

Την τελευταία δεκαετία όλο και περισσότερες εταιρίες και καταστήματα έχουν αρχίσει να προσφέρουν πληρωμή με κάρτα, αυτό έχει φέρει ανταγωνισμό στην αγορά με νέες εταιρίες που βρίσκονται στο σταυροδρόμι μεταξύ τεχνολογίας και τραπεζικού τομέα να εισέρχονται στον χώρο και να ρίχνουν το κόστος ανά συναλλαγή. Έχουμε φτάσει σε σημείο να ενοχλούμαστε αν κάποιο κατάστημα δεν προσφέρει πληρωμή με κάρτα...

Read

Ethical Leadership

In the recent years the technology industry has seen numerous cases of unethical practices from toplevel executives. Elizabeth Holmes, the CEO of Theranos put the lives of thousands of people into danger by hiding that the blood-testing technology she was promoting was not providing accurate results while on the same time she was hiding the truth from the company’s investors (Carreyrou, 2018). Uber’s CEO and Founder Travis Kalanick reportedly got involved into scandals about sexual harassment (Kleinman, 2017) that led to his resignation. In 2020...

Read

The case against event sourcing

Traditionally most applications model the main components of a system as entities and implement mechanisms to create/update this entities in the form of state that is stored in a database. This modeling although is natural (and relatively straightforward to implement) has certain limitations that not every domain is able to accept...

Read

Talking to my son about Micro-frontends

What are micro frontends? What problem they try to solve? Client side patterns, Server side patterns. Composition, Communcation, Performance oportunities and problems. Team boundaries, and...

Read

Blue-Green Deployment in K8s

Blue/Green deployment is an application rollout model that progressively directs user traffic from the previous version of an application or service to a new version of it, while...

Read