The Craft Lab
What Stakeholders Really Want to Know — And Why Most Updates Miss It
What Stakeholders Really Want to Know — And Why Most Updates Miss It One format sent to everyone answers no one’s question well.
Here is a mistake I see engineering managers make constantly — and one I made myself for years.
They write one update. They send it to everyone.
Their VP gets the same message as their direct manager. Their peer team lead gets the same as their own engineers.
read moreThe Craft Lab
The Psychology of Uncertainty — Why Your Boss Keeps Asking for Updates
The Psychology of Uncertainty — Why Your Boss Keeps Asking for Updates Micromanagement is rarely about control. It is almost always about uncertainty that has not been addressed.
Your manager asks for a status update. You send one. Two days later, they ask again. You update your Slack message, add a note in Jira, send another email. Three days later — another ask.
This is not a personality flaw. It is not distrust in you personally.
read moreThe Craft Lab
Why Status Updates Fail — And the Root Causes Nobody Talks About
Why Status Updates Fail — And the Root Causes Nobody Talks About Most status updates are a waste of time — for the writer, the reader, and the team. Before fixing them, you need to understand exactly why they break down.
If you manage a team — especially a distributed one — you have probably experienced both sides of this problem.
You write a detailed update that nobody reads. Or you receive constant “what’s the status?
read moreThe Craft Lab
Keycloak Ssl Adventure
The Great Keycloak SSL Adventure: A Tale of Mixed Content, Proxy Headers, and Lessons Learned A developer’s journey from CloudFront complexity to simple SSL success
The Problem That Started It All Picture this: you’ve got Keycloak running smoothly behind AWS CloudFront and Application Load Balancer (ALB). Everything seems perfect until you open your browser’s developer console and see the dreaded red errors:
Blocked loading mixed active content "http://keycloack.example.com/resources/master/admin/en" Content-Security-Policy: The page's settings blocked the loading of a resource.
read moreThe Craft Lab
Feature Flags With Open Feature
Feature Flags: The Clean Architecture Way How OpenFeature enables incremental development while keeping your architecture clean and vendor-agnostic
The Problem with Traditional Feature Flag Implementations Picture this: You’re working on a critical feature for your application. The business is breathing down your neck, demanding frequent updates on progress. The feature is complex, will take weeks to complete, and you know that merging half-finished code into the main branch is a recipe for disaster.
read moreThe Craft Lab
Neural Networks Explained: Flight Similarity Prediction
Neural Networks Explained: Flight Similarity Prediction Hey there, tech enthusiasts and curious minds! 👋 Today we’re diving into the fascinating world of neural networks with a real example: predicting flight similarities! Don’t worry if you’re new to this - I’ll break it down so it’s as easy as ordering your favorite pizza.
🧠 Neural Networks: The Basics Imagine your brain for a second. It’s made up of billions of neurons that send signals to each other, helping you recognize patterns, make decisions, and learn new things.
read moreThe Craft Lab
Clean Architecture Part 3: Why a Tech Lead Must Care About SOLID
In the previous parts of this series, we explored what Clean Architecture is and how SOLID principles shape the design of individual components. In this post, we go one level up: why should a Tech Lead specifically care about SOLID? And when the pressure of deadlines and business demands pushes back, why should the answer almost always be to protect the architecture?
This post draws heavily from Robert C. Martin’s book Clean Architecture: A Craftsman’s Guide to Software Structure and Design.
read moreThe Craft Lab
Microservices vs. Monolithic Architecture: A Comparative Analysis
Microservices vs. Monolithic Architecture: A Comparative Analysis In the rapidly evolving world of software development, the debate between microservices and monolithic architectures is more relevant than ever. Drawing insights from Sam Newman’s seminal works, “Building Microservices” and “Monolith to Microservices,” and incorporating theories from Martin Fowler, this post aims to offer a comprehensive understanding of both architectures, providing software professionals and enthusiasts with the knowledge needed to navigate these complex landscapes.
read moreThe Craft Lab
SOLID principles for architecture
The SOLID principles are a set of guidelines for software design and architecture, aimed at making software systems more understandable, flexible, and maintainable. These principles were promoted by Robert C. Martin in his book “Clean Architecture,” and they are widely accepted in the software development community. Here’s a breakdown of each principle:
Single Responsibility Principle (SRP): This principle states that a class should have only one reason to change. It means that a class should only have one job or responsibility.
read moreThe Craft Lab
The Five Dysfunctions of a Team
“The Five Dysfunctions of a Team” by Patrick Lencioni presents a unique approach to understanding and overcoming common pitfalls faced by teams.
Absence of Trust: This foundational dysfunction is where team members are not open with each other about their mistakes and weaknesses. It leads to a lack of vulnerability-based trust, which is crucial for building a strong team. Fear of Conflict: Teams that lack trust are incapable of engaging in unfiltered and passionate debate of ideas.
read more