Software is changing the world….but is everything susceptible to change? At a strategy day of one of our (insurance) customers this past week, an analysis was made that the entity model of their back-end had seen no significant changes over the past 10-15 years. They did see a lot of changes though in how they collaborate internally, with customers, partners, and channels, but at the core of their business model nothing really changed. Although I was a bit sceptical if this analysis was actually true, it did make me realize that having a stable domain driven design is a huge benefit for businesses to innovate on. Whether their business model is still from the stone age, but evenly so if they are a start-up. Let’s say that for an insurance company 15 years ago, their (web 1.0) website was all about displaying a huge phone number that their customers could call. Only during business hours ofcourse. Now, it will be all about self-service.
Implementing straight-through processing for self-service processes requires you to have that solid base, and requires agility all across the systems landscape. And that is exactly why lots of traditional enterprises are still not very good at it. They fear (true) agility and change because it usually leads to a big internal mess. Being able to change is all about being confident to make changes without breaking stuff. That is why, at Luminis, we propagate the joys of having a modular software architecture. Modularity enables change by encapsulating internals from the outside world. And this keeps the design clean and free from entanglements. Having an untangled design really pays off when things change in a rapid pace. But also when changes come slowly, eventually your architecture is shifting from the original ideas that some people once had in mind, to its current state. Which usually is far from the documented version of the architecture, if any. Modularity is therefore the ultimate agile tool, that allows you to make changes with confidence.
There are many ways to implement modularity. Sometimes you need language features, tools or a framework, and sometimes it is part of the architectural style. From Object Oriented design to Microservices. While the first is at the design and programming language level, the latter is at the systems landscape and organization level. And while we may be interested in the tools and technologies that thrive on the hype of microservices, we should not forget to transform the organization along with the architecture (because: Conway’s Law). An often overlooked aspect for organizations and individuals aspiring business agility through microservices, because it is often outside of their scope. And now that the dust has settled a bit on microservices, most enterprises found out they are not another Nextflix, and raising the complexity bar along with all of the abstractions may not be for everyone. This – by the way – is also the reason we have a 3-day Microservices Awareness workshop at our Academy, if you are interested. To help attendees discover and determine whether a microservices architecture would be a good fit for them. Not all is lost if you can’t do microservices. Even though the alternative would be a monolith – along with all the negative connotations – a modular monolith is still an excellent base for change. Sander Mak did a really good presentation on this a little while ago. Check it out here if you haven’t seen it. But in the end everything comes down to getting the design right. No matter what tools or technologies, or whatever buzz words you throw in the mix. Badly designed software will prevent change anyway. No matter how stable your entity model has been over the last 15 years.
While pondering thoughts on distributed systems design earlier in the week, the second half of the week brought me to another edition of J-Spring, the Java developer conference which was brought back to life by NLJUG last year. This year’s edition was hosted in TivoliVredenburg in Utrecht and the venue hosted about 500 attendees. The cast of speakers (or: performers would be more appropriate for a music theatre) for J-Spring was hand-picked by the organization, so a lot of familiar faces from the international Java scene were present, amongst whom were 8 Java Champions. So session quality in general was very high and rated accordingly by attendees. I took the opportunity to do a re-run of my DevCon talk ‘Thinking about my Doorbell‘ which went quite well, including me hot-fixing the demo live on stage, which always gives you that extra special adrenaline boost. In the end everything worked out, and being rated 4,73 out of 5 it appears that attendees seemed to like what they saw. Besides presenting I also had some interesting conversations during the day. All in all I had a good day and am already looking forward to J-Fall in November, for which the Call for Papers is open btw – hint, hint!
With the lovely weather that we have seen over the past few weeks, these are the kind of days that you want to end outside on the terrace of a pub or restaurant after a hard day of work. Cool beer, crispy white wine, or Gin & Tonic in hand. With the latter having made quite a come-back over the last two years or so. The list of G&Ts on the menu being longer than the beer or wine list these days. Although I’m not a stranger to G&T, I never actually wondered how this funny combination of both gin and tonic came to be. After some Google research I found it to be a British invention (surprise!). Interesting since most British people I know need no excuse to drink alcohol, let alone dilute it with something else. But I learned that it is not a matter of diluting alcohol with tonic, but exactly the other way around. Gin originated from the Dutch/Flemish ‘jenever’. British soldiers learned to drink jenever or ‘Dutch courage’ as they called it, and took it back home. Recreating this evolved into ‘Ginever’, and eventually ‘Gin’. Tonic on the other end, was seen as a medicine to prevent malaria, which soldiers learned to drink in India and Sri Lanka. Apparently it didn’t take long for someone to mix and match the two favorite beverages of the British East India Company, and Gin & Tonic was born. You probably know there are lots of Gins, and also lots of Tonics. Getting the combination of the two right is quite important, and leads to all sorts of fancy combinations. And that brings me to the music for this Soundbyte…
Joe Bonamassa, one of the greatest blues/rock guitar players of all times. If you ever want to know what it is like to be the best (as laid out in our strategy document), go watch Joe Bonamassa perform live. It is humbling. The solos and improvisations are mind-blowing. Besides being an awesome musician he also is an allround guitar nerd and an avid collector of guitars and amps. To a level that most museums will be quite jealous of. He is a prolific artist, so there are a lot of great songs to choose from, but for this particular Soundbyte and in relation to the G&T story, I chose ‘Sloe Gin’, title song from the ditto titled album published in 2007. Instead of serving you the polished album version, I chose the live performance at Red Rocks Ampitheatre in Colorado. At a whopping 9 minutes, and then some, I hope you have the patience to ride it out. Otherwise skip to the guitar part at 4.55. That will send some chills up your spine. No doubt this is the most beautiful thing you will hear (and see) on this Sunday evening. But I highly recommend to sit out the full song. It was hard to choose between the electric guitar version and this masterpiece, so I’ll add that one as a bonus. Enjoy your week!