We've often noticed how people starting with a technique imbue it with a lot of potential to solve all the problems of software development (* exaggerating for effect). This is rarely the case. Let's look in particular at domain modeling, and how bounded contexts are not 1-to-1 to business domains, inspired by another excellent article written by Mattias Verraes.| Mozaic Works
LLMs have many ethical implications, and we decided to tackle them head on in this video, in the context of using AI assistants to generate code and other software development artifacts. The brief:The top issues for using LLMs for software development are: copying the whole internet to build the models, possible copyright infringement in generated […]| Mozaic Works
What to do when you can’t ensure that services will run normally and return correct data? We have our Sagas and our Circuit Breakers, but maybe there’s a cleaner way. Let’s have a look at the Scheduler – Agent – Supervisor architectural pattern. Links:| Mozaic Works
A common argument against using AI coding assistants is that typing is not the bottleneck and therefore they are not useful. But does this argument stand? Let’s dive in.| Mozaic Works
A recent LinkedIn post makes the point that before moving to microservices you should ask what is the bottleneck. Let’s look in more detail. Links:| Mozaic Works
Can Claude help with legacy code? Let’s try to use it and see what value it adds and what limitations it hits.| Mozaic Works
Overengineering is a common problem in software development. Does hexagonal architecture fit this pattern? Let’s examine this idea. Links:| mozaicworks.com
A recent LinkedIn post by Simon Wardley raises an interesting point: what if we would build microtools fit for our environments using LLMs? Let’s examine this idea. Links:| Mozaic Works
We often get asked to include best practices in our learning programs, and often we need to explain during the training that the best thing we can do is to have emergent practices. Let me explain why. Links:| Mozaic Works
Fitness functions are metrics mapped with architectural concerns that help channel the evolution of the architecture towards desired results. When monitored properly, they help the system maintain its qualities over time. An interesting twist is that fitness functions can be automated before the implementation, or modified when the conditions change, with a practice called fitness […]| Mozaic Works
Alex is looking at four fundamental questions about Large Language Models: Transcript Are LLMs intelligent can they create something new what are their limitations and do prompts matter? These are a few things that I want to discuss in this video and I don’t believe I will get to the bottom of all these issues […]| Mozaic Works
Gen AI has been around for a few years now, so it’s time to do a quick check of practical use cases for developers. Alex has found three so far (actually four, you have to watch the video) and is opening a conversation on the topic.| mozaicworks.com
A recent article on InfoQ discusses the idea of architecting software for greener future. Alex comments on the article, looking also at the more general trend towards architecture and practices that reduce carbon footprint. Links:| mozaicworks.com
Software architecture is about trade-offs, but what does this mean and how do we deal with them? Links:| mozaicworks.com
Alex explains a few ways to manage passwords, including some less known but very useful. Links:| mozaicworks.com
Alex explains a few types of automated tests, from a developer perspective.| mozaicworks.com
This page contains resources for the keynote held by Alex Bolboaca and Adrian Bolboaca in Brescia, for the “Working Software” Conference 2024. Software Development is Non-Linear We discussed briefly in the section “II. When Requirements Change” about the non-linear reality of software development. A deep dive into this topic can be found in our video […]| mozaicworks.com