Kotlin code quality SonarQube

Check the quality of Kotlin code

Last week, I read a post about Kotlin code analysis, thanks to the Kyiv Kotlin UG. I stumble upon a lot of similar posts: they show how to hack into the build to produce a text report showing quality issues. At the risk of sounding arrogant, I claim this is not proper software engineering. It’s a one-time hack: it has no value over the long term. Code quality is a serious subject, and should be treated accordingly. First, it needs to be evaluated, then issues have to be stored and compare

GraalVM performance polyglot

My first impressions about Graal VM

Last week was the release of Oracle’s GraalVM. As stated on the website: GraalVM is a universal virtual machine for running applications written in JavaScript, Python 3, Ruby, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages such as C and C++. GraalVM removes the isolation between programming languages and enables interoperability in a shared runtime. It can run either standalone or in the context of OpenJDK, Node.js, Oracle Database, or MySQL. There are several fac

DevOps metrics Spring Boot monitoring

Spring Boot 2.0 actuator change analysis

Some years ago, I discovered the Spring Boot actuator: Spring Boot includes a number of additional features to help you monitor and manage your application when it’s pushed to production. You can choose to manage and monitor your application using HTTP endpoints, with JMX or even by remote shell (SSH or Telnet). Auditing, health and metrics gathering can be automatically applied to your application. To sum it up, the actuator offers endpoints that allow monitoring of the application from

git garbage collector cleanup

Git cleanup

I use Git a lot, in my daily job as well as for this blog. When using it, I often rebase locally before pushing, to have a clean and readable history. A sample workflow For my blog, the branching model looks like the following: o---o---o---o master \ \---o---o feature/newposts master As expected, this branch is the production site. feature/newposts The branch is dedicated for new posts. There’s one post per commit. Also, to speed up renderi

Open Source

Open Source has won

When I started working as a developer - a long time ago, we were under constant supervision. For example, one had to ask the architects team for every new library. I remember one of the "official" library was iText, probably because reimplementing its features was deemed to expensive. Yet, though Struts was available, we had our own MVC framework. Just like any other company at this time. Since that time, a lot has changed. The Apache Web Server has become ubiquitous, even though some