Hibernate is one of the most used ORM Java frameworks out there. It is really
simple to use, just add few annotations and you're ready to go. However, it
is also really easy to experience strange behaviors and bugs if you don't
respect Hibernate's best practices. That's why at Tocea we developed rules
to detect coding mistakes and to make sure that your experience with
Hibernate will be painless.
Our Hibernate repository currently contains 30 rules. Some of them are
related to the detection of possible bugs, other treat of maintainability or
performance. In this article, we're going to present four rules that deal
with a famous Hibernate's usage problem : the implementation of equals() and
hashCode() methods.
What's the problem?
Equals and hashCode are used to compare objects. The default implementation
of equals compares the object's address in memory. This is good... (more)
Technical Debt is worth nothing if no pragmatic action is taken into code, in
order to control and tackle it. To illustrate Scertify's capability to
automatically correct code defects that increase this unintended debt, we
performed code refactoring on two subprojects of the Hadoop project : Hadoop
Common and Hadoop Mapreduce. Thanks to Scertify, we were able to correct 25K
defects in 2 minutes. In other words, 14% of the Technical Debt has been
written-off without any human effort needed.
Initial analysis
According to Wikipedia, Apache Hadoop is "an open-source software framewor... (more)
Technical Debt is worth nothing if no pragmatic action is taken into code, in
order to control and tackle it. To ilustrate the Scertify's capability to
automatically correct code defects that increase this unintended debt, we
performed code refactoring on OpenKM, an Free/Libre document management
system. The initial Technical Debt of the project has been reduced by 49.2%
from 84 days to 42 days. Here, at Tocea, we call it the Debt Write-Off.
For this first Debt Write-Off, we have decided to perform the refactoring
of OpenKM (6.2.1-DEV).
According to Wikipedia, OpenKM is a Free/L... (more)
Day 1 - Yeepie! We declare war to Technical Debt...
Today is a great day. Everyone is now aware of the problem and truly believes
that technical debt affects the velocity of teams, by decreasing the
applications quality level (performance, ability to add new features,
reliability of maintenance tasks, testability, maintainability, etc.).
Everyone agrees that we need to control code quality in order to apply
programming best practices. Developers are enthusiastic, and the application
owner hopes that the project will be back soon on the track of excellence.
This is the first day of... (more)