Seize the deal!
Caching Best Practices
Imagine having a tool that can automatically detect if you are using JPA and Hibernate properly. Hypersistence Optimizer is that tool!
Since I started the Hibernate Master Class project, focusing on best practices and well-established usage patterns. I then realized that all my previous Hibernate experience wouldn’t be enough for this task. I needed more than that.
Hibernate has a very steep learning curve and tens of new StackOverflow questions are being asked on a daily basis. With so many problems waiting to be solved, I came to realize this was a great opportunity to prove my current skills while learning some new tricks.
On 8th of May 2014, I gave my very first StackOverflow answer. After 253 days, on 16th of January 2015, I managed to get a reputation of over 10,000:
StackExchange offers a data query tool to analyze anything you can possible think of. Next I’m going to run some queries against my own account and four well renowned users:
The accepted answer ratio tells us how much you can count on the OP (question poster) to accept your answers:
|User||Average acceptance ratio||Average acceptance reputation
[Ratio x 15]
The chance of having your answer accepted rarely surpasses the 60% rate, so don’t count too much on this one. Some OP will never accept your answer, even if it’s the right one and it has already generated a high score.
Lesson 1: Don’t get upset if your answer was not accepted, and think of your answer as a contribution to our community rather than a gift to the question author.
Another interesting metric is the answer score graph:
The average answer score is a good indicator of your overall answer effectiveness, as viewed by the whole community:
|User||Average Score||Average score reputation
[Ratio x 10]
While the answer acceptance is a one-time event, up-voting can be a recurring action. A good answer can increase your reputation, long after you’ve posted your solution.
Lesson 2: Always strive to getting high-quality answers. Even if they don’t get accepted, someone else might find it later and thank you with an up-vote.
I’ve been a bounty hunter from the very beginning and the bounty contribution query proves why I happen to favor featured questions over regular ones:
|User||Bounty Count||Total bounty reputation||Average bounty reputation|
To place a bounty, you have to be willing to deduct your own reputation, so naturally, the question is both challenging and rewarding. The featured questions have a dedicated tab, therefore getting much more traction than regular ones, increasing the up-vote chance as well.
Lesson 3: Always favor bounty questions over regular ones.
The reputation alone is just a community contribution indicator and you should probably care more about tag badges instead. The tag badges prove one’s expertise in a certain technology, and it’s the fairest endorsement system currently available in the software industry.
If you want to become an expert in a particular area, I strongly recommend you trying to get a gold badge on that topic. The effort of earning 1000 up-votes will get you more than a virtual medal on your StackOverflow account. You will get to improve your problem-solving skills and make a name for yourself in the software community.
As I said it before:
When you answer a question you are reiterating your knowledge. Sometimes you only have a clue, so you start investigating that path, which not only provides you the right answer but it also allows you to strengthen your skills. It’s like constant rehearsing.
If you cannot imagine developing software without the helping hand of the StackOverflow knowledge base, then you should definitely start contributing
In the end, the occasional “Thank you, it works now!” is much more rewarding than even a 10,000 points reputation.
Hypersistence Optimizer 2.2 has been released!