Java Performance Tuning

Java(TM) - see bottom of page

|home |services |training |newsletter |tuning tips |tool reports |articles |resources |about us |site map |contact us |
Tools: | GC log analysers| Multi-tenancy tools| Books| SizeOf| Thread analysers| Heap dump analysers|

Our valued sponsors who help make this site possible
JProfiler: Get rid of your performance problems and memory leaks! 

Training online: Concurrency, Threading, GC, Advanced Java and more ... 

Javva The Hutt October 2006

Get rid of your performance problems and memory leaks!

Modern Garbage Collection Tuning
Shows tuning flow chart for GC tuning

Java Performance Training Courses
COURSES AVAILABLE NOW. We can provide training courses to handle all your Java performance needs

Java Performance Tuning, 2nd ed
The classic and most comprehensive book on tuning Java

Java Performance Tuning Newsletter
Your source of Java performance news. Subscribe now!
Enter email:

Training online
Threading Essentials course

Get rid of your performance problems and memory leaks!

Back to newsletter 071 contents | All Javva's articles

Knowing the right question to ask is a big, big way to getting to the right answer - or whatever answer you want if you are a politician. I loved this quote (from this article about people working for the telephone reference service at New York Public Library) about searching on the net:

"If you don't have a good question, you will get 17 million responses and you will wish you hadn't asked."

Its the same in performance monitoring (there Jack, happy now? I finally mentioned performance thingies in the column. Editors! I ask you, its not enough that I deign to share my assorted rambling with you, they want coherence and relevence!). If you are measuring performance, you have to decide pretty firmly on what you are measuring before you measure, or you get too many data points to help you identify the problem.

Mind you, there was another quote from that article I loved too - and it was not far off my response to many of the questions I see about about performance:

"And if a question is very funny," Shalat said, "you have to put the person on hold, before you start laughing."

Diary of a Hutt

Now, where was I? Oh yes, I was telling you about my leaving BigCorp to head off to SmallStartupCo. Employee number 54, that was me. Funny, I never knew my employee number at BigCorp but at SmallStartupCo I sure as heck did. Employee numbers 1 and 2 were of course Big Cheese and the other founder, Grand Fromage. You have to wonder whether they fought over who would be employee number 1. Did they stay up at night in legal wrangles over it? Did they come to blows, did their partnership nearly disintergrate when one of them found out the other would be employee number 1? Maybe they agreed to share the accolade, maybe they are both employee number 1.5. Mind you, if they did, its more likely they are both employee number 1.1.

The first thing I noticed as employee number 54 was that there were not 53 other employees. It was more like mid-twenties, maybe a little over thirty if some of the people who came and went but who you couldn't actually work out what why they were there, were also employees.

So, in a few short years, SmallStartupCo had lost a very large percentage of its staff, maybe 50%. Of course, I didn't find that out before I had already joined. Its not really one of the questions you tend to think of asking at the interview. Well maybe it is for you, but I certainly didn't think of asking "what was your staff turnover rate over the last couple of years". Mind you, I did ask if they had unisex toilets. They looked very trendy and who knows how far Ally McBeal could have penetrated in the world of trendy startups. By the time I left SmallStartupCo (ooh, getting ahead of myself here), they were approaching employee number 100. To paraphrase Brian Hanrahan, I counted them in, and I counted them out.

Why did they hire me? They had Java performance problems of course. Peculiar ones that strained my capabilities. That was the brilliant part of the job. No doubting that it was challenging, and it was dead fun to roll up my metaphorical sleeves and get down and dirty into the low layers of code. I could change things in ugly ways, make the code scream until it looked like there was nothing between the user and the database. Image manipulation, animation, proprietary network communications, god it had been a long time since I had tuned those sorts of things. I tried to leave it maintainable. I documented everything I did and why I did it. But I suspect that five years down the line my changes will be like those obscure passages in the Bible that no one can quite figure out what they mean, but are nevertheless treated with reverence and on no account deleted. (Okay, that sounds really pretentious. Ah well, what can I say but ... genius can sound pretentious.)

SmallStartupCo ran ... well I'm afraid I may not be allowed to say what it did, I haven't figured out that part of my contract. I can definitely talk about them now that I'm gone, but their contracts were written by an expert in obfuscation (a lawyer in other words), so there are some things I'd have to pay to find out if I can do, and saying what they do is one of them. In any case I don't see why I should give them any free publicity - I didn't leave on bad terms, but then again I didn't stay with them. I think I can say that SmallStartupCo are a specialist niche company serving the rapidly growing world of online leisure. Nothing to do with porn - I said online leisure, not online pleasure.

Credit where credit is due, though. Despite their ability to constantly disagree, Big Cheese and Grand Fromage were smooth. I guess they'd have to be, to have raised venture capital so soon after dot-bomb. And SmallStartupCo was even semi-profitable. That is, they were scheduled to be profitable Real Soon Now. Which I guess means that if you average out the past losses with the expected future profits, you get "semi-profitable".

Well, that's me done for this month, I'll have more about my time at SmallStartupCo next month. bcnu.

Javva The Hutt.

Back to newsletter 071 contents

Last Updated: 2022-11-29
Copyright © 2000-2022 All Rights Reserved.
All trademarks and registered trademarks appearing on are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries. is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
RSS Feed:
Trouble with this page? Please contact us