Java in the Technology Radar (JavaSpektrum)
I’ve written a new article for JavaSpektrum: “Java im Technology Radar – Totgesagte leben länger”. The piece looks back at Java’s journey through the eyes of the Thoughtworks Technology Radar...
November 01, 2025
I’m excited to share the first MVP release of NKP (aNalysis of Kotlin Programs), a command-line tool for analyzing Kotlin codebases and uncovering architectural insights.
NKP examines Kotlin source code to surface structure, dependencies, and stability metrics. It helps answer questions like:
NKP focuses on architectural understanding:
Use NKP for:
This MVP emphasizes architecture, not general code quality metrics. Think JDepend for Kotlin, not Sonar or Detekt.
Running NKP on my ray-tracer project showed:
math, colors, hits) and application layersThe package coupling metrics helped identify that:
math, colors) are very stable (I < 0.1)world package couples 14 different subsystems, indicating a need for better separationThis kind of insight is invaluable when planning architectural improvements.
As someone who works with teams on architectural improvements and refactoring, I found myself needing better tools to understand Kotlin codebases. While there are excellent tools for Java (like JDepend), Kotlin’s package structure and syntax required a specialized approach.
NKP fills this gap by providing:
NKP is open source and available on GitHub. If you work with Kotlin projects and need better insights into your architecture, give NKP a try. It’s particularly useful for:
I’d love to hear your feedback and learn about your experiences using NKP on your projects!
I’ve written a new article for JavaSpektrum: “Java im Technology Radar – Totgesagte leben länger”. The piece looks back at Java’s journey through the eyes of the Thoughtworks Technology Radar...
I’ve written an article for JavaSpektrum 2/2025 about Structured Concurrency in Java 24. The article covers JEP 499, Java’s fourth preview of Structured Concurrency, which aims to make concurrent programming...