@Deprecated annotation, introduced in Java 5, received several enhancements in Java 9, which makes easier to document the deprecation of API.
Telescoping constructor pattern is quite common practice. It has, however, some shortcomings. What are the alternative approaches and when should you use them?
Are you still using @author javadoc tag? Maybe it’s time to reconsider. Let’s discuss why the tag may be actually harmful and why you should stop using it.
Should you explicitly declare serialVersionUID or leave it to be automatically generated?
Choosing descriptive, intent-revealing names is one of the key principles of writing clean code, which is easy to read and understand and usually requires little to no comments. According to the official convention, generic type parameter names are supposed to be just one capital letter. Should you break this convention to make your names more descriptive?