Building Native Image for a Java application requires configuration of reflection, proxies, and other dynamic Java mechanisms. But why is this necessary if the JVM handles all of this...
Devs often use "magic code" to solve tree problems on LeetCode. However, enterprise code requires readability and maintainability for years. What shall we do when a task is so large that...
Would you like to see some errors and suspicious fragments in Java code? We found lost increments, empty regular expressions, strange string sanitization, and more in an open-source project...
This is the first article in a series on what developers can expect when upgrading between LTS versions of Java. In this part, we'll look at the key changes that programmers will encounter...
I'm sure many Minecraft server owners have experienced players trying to hack into their server and give themselves administrator privileges. Of course, such behavior isn't limited to gaming, so...
The year 2025 is coming to an end. Minecraft mods, the Catalan language, and non-obvious interactions with the ternary operator—how many things our analyzer has encountered! So it's high time...
Analyzing source code is a challenging task, especially when it comes to identifying potential vulnerabilities. In this article, we'll share how we traced data flow passing through object...
Java is expanding with new trendy mechanisms, and along with it, its tomb is growing with outdated features like Vector, Finalization, NashornScriptEngine, SecurityManager, and Unsafe. Let's take...
Interviewers and LeetCode problems often focus on rotating binary trees. But what about transforming a general tree into a different one? How do we solve this problem, and what approaches can...