Monitoring code quality

Posted by Mike Haller on Sunday, April 26. 2009 at 13:35 in Java
I've been looking for tools to measure and visualize code quality for some time now. Every once in a while, there's some tool which aggregates results from quality measurements and monitoring tools like PMD, Findbugs, Checkstyle etc. but I haven't yet found something which attracted my interest.

Read on to find out about Codehaus' Sonar.

Codehaus Sonar for code quality showing Hotspots
Codehaus Sonar for code quality

Java Class Popularity

Posted by Mike Haller on Friday, April 17. 2009 at 08:00 in Java
Taken from a heap dump of a JBoss Application Server with some applications deployed, i've look at the number of objects in the heap and compiled a 'popularity list' accordingly:

java.util
1. ArrayList
2. HashMap
3. TreeMap
4. Vector
5. Hashtable
6. LinkedList
7. HashSet
8. WeakHashMap
9. TreeSet

Read on to see the full list. I've marked some classes which I find interesting enough to have a second look on them. Know your library.

String Manager failed

Posted by Mike Haller on Thursday, April 16. 2009 at 08:00 in Vista
Sometimes applications fail to start on Windows Vista. Sometimes, it can be resolved by starting them using an Administrative user account. And sometimes, they print funny error messages like Command and Conquer does:



The error message reads ***FATAL*** String Manager failed to initilaized propertly. (Typo left as-is)

While looking for a solution, i found out that there are millions of StringManagers out there.

What is a String manager?

I wonder if they meant someone who fiddles with strings and tries to organize them:


Or perhaps they thought about managers who produce strings (and all sorts of other undearwear):

Julien and Jean-Marc Tornel, managers of 'Cette'-underwear

What do you think about the responsibility of a class called StringManager and its design? Is this really a class in the object-oriented meaning or is it a trashcan for procedural utilities?

webstats

Posted by Mike Haller on Wednesday, April 15. 2009 at 23:01 in Selfmade
My web site statistics show that

make it work, right, fast

Posted by Mike Haller on Thursday, April 9. 2009 at 17:32 in Methodologies
make it work
make it right
make it fast


These statements are often quoted when it comes to discussions between software developers about software performance. Some people tend to emphasize "make it work" and leave the "make it right" and "make it fast" to the maintenance guys.

The statements should not be understood as

"Make the WHOLE SYSTEM work"
"Make the WHOLE SYSTEM right"
"Make the WHOLE SYSTEM fast"


Rather, I'd like to see it as a continuous cycle which reflects the modern development iterations:

"Make the CLASS work"
"Make the CLASS right"
"Make the CLASS fast"
"Repeat with next CLASS"

About

My name is Mike Haller and I'm a software developer and architect at Innovations Software Technology in Germany. I love programming, playing games and reading books. I like good food, making photos and learning and mentoring about the craftsmanship of commercial software development.

Quicksearch