The term microservice has been getting a lot of hype and attention. I have to admit that I fail to understand what’s the big deal about it. The best practices about microservices are similar to the ones we should apply to everyday software design. Avoid tight coupling. Single responsibility principle. Keeping things simple. Even those principles go back to the old Unix mantra of doing one job and doing it well (and that’s from 1978). And even that could in turn be labelled just “common sense”.
In this post I’m using the Maven Enforcer plugin to break the build when certain files don’t follow the expected naming convention. It’s always a good idea to take the time and implement these checks inside the build pipeline. The alternative is hoping that code reviewers will spot the problems, which is a manual, tedious and error prone approach. Automate all the things! Continue reading “Validate filename conventions with Maven Enforcer plugin”
If your Windows PowerShell profile is inside your OneDrive folder and you don’t like that, this is what you have to do: Continue reading “Tip: Windows PowerShell and OneDrive”
When it comes to installing software on a Windows laptop, I often prefer portable apps compared to Windows installers. I am also looking currently into Chocolatey as a package manager solution. But also there, I prefer portable apps. Continue reading “Tip: Send to Programs Start Menu”
A little bit more than a month ago, I created an improved Maven archetype project. Similar to the default quickstart archetype, but for Java 8 and with recent jUnit dependency. In order for someone to use it, they’d have to clone the repo, as I had not published it in Maven. After a bit of studying, I figured out what is needed to make the package public. More importantly, I implemented the process in Travis, so that a new version gets published automatically.
In this post we’ll create a small Java application, run it inside a Docker container, and use IntelliJ IDEA to debug. The source code is available here. This is a rather large post, so take your time.