The necessity of software abstraction
Argues that deep understanding of software abstractions is not necessary for effective use, challenging a common belief in tech.
Argues that deep understanding of software abstractions is not necessary for effective use, challenging a common belief in tech.
Learn how to externally resolve JavaScript Promises using a clever technique with getters and setters for better code architecture.
Foreword for a book on applying Domain-Driven Design, Functional Programming, and Reactive principles to manage complexity in modern software systems.
A foreword discussing the convergence of Reactive Systems and Microservices architectures for modern distributed software development.
Author transitions from a software engineering role at Disy to becoming a Java channel editor at SitePoint, reflecting on lessons learned.
A guide to implementing a protocol-oriented, testable logging system in Swift without leaking dependencies or using singletons.
Explores the 'Functional Core, Reactive Shell' software architecture pattern, contrasting it with spaghetti and lasagna code to improve testability.
A collection of resources and credits for the "Functional Core, Reactive Shell" talk, discussing software architecture and testing.
A keynote transcript on Microservices, analyzing them from first principles and their true context as distributed systems.
Explains how to implement tenant-specific dependency injection scopes in ASP.NET Core for multi-tenant applications.
A developer's notes from /dev/world/2015 conference, focusing on software testing, maintainable architecture, and team processes.
A software engineer reflects on legacy, inspiration, and meeting a pioneering software architecture researcher at a tech conference.
A summary and analysis of Sandro Mancuso's 'Crafted Design' talk, which advocates for software architecture centered on the domain model.
A discussion of different approaches to organizing PHP class namespaces, focusing on modularity and cohesion in small-to-medium apps.
Explains the new Commands & Handlers feature in Laravel 5.0, using a 'Duplicate Talk' example from a conference app.
Explores the now-removed Event Annotations feature in Laravel 5.0, which allowed binding event listeners using code annotations.
Explains the new Middleware feature in Laravel 5.0, which replaces the traditional filter-style architecture for handling HTTP requests.
A reflection on Robert C. Martin's classic talk about software architecture, use-case driven design, and treating the web and database as implementation details.
Explains how to implement the Decorator Pattern in Java 8 using default methods and lambda expressions for cleaner, more convenient code.
Announcing the Kindle release of 'Microsoft .NET: Architecting Applications for the Enterprise' (NAA4E), covering DDD, CQRS, and enterprise architecture.