Application and data architecture

30 posts
Why a microservice-based architecture isn't a holy grail

Why a microservice-based architecture isn't a holy grail

Microservices are a very popular architectural approach — maybe too popular! Here's why it might not be ideal for your organization.

Google Workspace SSO and automated user provisioning

Google Workspace SSO and automated user provisioning

One of the client projects I work on has larger, enterprise customers. Because of this, I needed to create a way for their users to sign into our application using single sign-on (SSO). To do that, we needed to automatically provision users in our system. This is something I wasn’...

Modern front-end monorepos — Part 2: running scripts

Modern front-end monorepos — Part 2: running scripts

In the previous article, we set up a monorepo project with 2 applications and a package. We also enabled Yarn workspaces to manage the dependencies and linking of the workspaces. One inconvenience so far was having to start 2 separate terminal windows to run the applications. This isn’t a...

Modern front-end monorepos — Part 1: managing dependencies and sharing code

Modern front-end monorepos — Part 1: managing dependencies and sharing code

I’ve really learned to love a good monorepo setup, a repository that contains multiple packages and/or applications. Being able to make changes across applications or packages in 1 pull request (PR), having the option to centralize and reuse code over applications, and unifying documentation and processes greatly simplifies...

Improving performance and reliability of client's core business component using a simple running total

Improving performance and reliability of client's core business component using a simple running total

A client project I work on required some processing, scheduled nightly at 2am. I’m a curious creature, by nature, so I was eager to learn what keeps the queues busy for up to 30 minutes in the middle of the night. It must have been something important! The business...

Merging 4 codebases with help of Rector

Merging 4 codebases with help of Rector

The set up When developing software, you sometimes come up with ideas that in the end don’t really work out. Depending on the idea and on the time spent finding out it’s a bad idea, it can be challenging to turn back the changes. One of those ideas...

Effectively using Facades and Hexagonal Architecture to separate bounded contexts

Effectively using Facades and Hexagonal Architecture to separate bounded contexts

Separating your bounded contexts A challenge when implementing bounded contexts is managing the dependencies between them. We always aim to make bounded contexts as independent as possible, but making them completely independent is impossible and unwanted. Software tends to be useful only when the different parts talk to each other....

Deploying distributed web application - Laravel queued jobs

Deploying distributed web application - Laravel queued jobs

If you have a really simple PHP application that you deploy to a single server, deploying it basically boils down to transferring the source code to the server, one way or another. Maybe you also clear OPcache, if you have it enabled. If your application is more complex and constitutes...

Building an SDK with PHP, part 3: Making it testable

Building an SDK with PHP, part 3: Making it testable

This post is part 3 of the “Building an SDK with PHP” series. Read Part 1 and Part 2 In our last article we’ve looked at how we can make our SDK configurable and today we’ll apply this to cover our SDK with several unit tests. What should...

You’ve successfully subscribed to madewithlove
Welcome back! You’ve successfully signed in.
Great! You’ve successfully signed up.
Success! Your email is updated.
Your link has expired
Success! Check your email for magic link to sign-in.