The Joel on Software Discussion Group (CLOSED)

A place to discuss Joel on Software. Now closed.

This community works best when people use their real names. Please register for a free account.

Other Groups:
Joel on Software
Business of Software
Design of Software (CLOSED)
.NET Questions (CLOSED)
TechInterview.org
CityDesk
FogBugz
Fog Creek Copilot


The Old Forum


Your hosts:
Albert D. Kallal
Li-Fan Chen
Stephen Jones

Measuring time wasted on compiling etc

Is there any neat tool I can use to automatically keep track of how much time I spend doing certain things on my PC? Right now I'm frustrated how it appears to take 30s to compile my C++ app each time. If I could automatically monitor this over a week or two I could then put an objective number together for how much wasted time (->money) I'd save if I had a brand new PC that could compile twice as fast.
John256 Send private email
Thursday, June 18, 2009
 
 
30 seconds is a pittance.  I'm looking at a change from 1 hour to 10 minutes for a complete build - switching to a faster machine, more RAM, more cpu cores and faster drives.

If you want a newer/faster machine then get it - stop wasting time and money figuring our the cost-effectiveness of it.
Tim J Send private email
Thursday, June 18, 2009
 
 
30s. That's funny. I remember one project i was working on going from an hour and a half down to 20 minutes was just awesome.

If you're looking to get a faster machine, you'll probably need to try harder than cutting a 30s compile time in half. How many compiles could you have run while posting this message?
Bart Park Send private email
Thursday, June 18, 2009
 
 
It certainly is a matter of cost. Let's say I compile and test 25 times in 1 day, and it takes 30s to compile each time. With a new PC, it takes 15s.

So each day I could save 6min with my new PC, or about a half-hour a week. So say 25 hours a year. If I value my time at $50/hr, that means if I can halve my compile time on a PC costing $1250 or less, I'm actually saving money.

Since I run a business, I need to consider my costs seriously. Would spending $2k on a top-notch system still be cost-effective for instance, or would my gains taper away?

Joel reckons you should always buy the absolute best stuff you can get, regardless of cost, but I'm not sure that's not too simple.
John256 Send private email
Thursday, June 18, 2009
 
 
>>How many compiles could you have run while posting this message?

I reckon up to about 3 including time posting this reply. But it all adds up over a year.
John256 Send private email
Thursday, June 18, 2009
 
 
they promised fast compilation times but as frameworks and libraries get bigger, the amount of time required for compilation is only getting bigger. counterpositive of moore's law.

don't be fooled fellas. go python and be happy.

python for ever!
victor a.k.a. python for ever Send private email
Thursday, June 18, 2009
 
 
You are probably better off figuring out how to stop wasting time elsewhere in your daily routine.  6 minutes a day is pretty small peanuts - email, IM, coffee, lunch, web, bathroom are all probably way more relevant than the 15 seconds per build.  Scavenging seconds is nice, but go with the higher order stuff first. (IMO)
Tim J Send private email
Thursday, June 18, 2009
 
 
John256:
>Since I run a business, I need to consider my costs seriously. >Would spending $2k on a top-notch system still be cost-effective >for instance, or would my gains taper away?

>Joel reckons you should always buy the absolute best stuff you >can get, regardless of cost, but I'm not sure that's not too simple.

The benefits aren't just the easily measured reduced compile time. Your concentration will be better because you'll waste less time, you won't as easily be distracted, you'll probably enjoy your work a bit more, having the snappier computer will make working less of a drag in general, etc. Those are all very significant, serious benefits.
RobertDahlstrom Send private email
Thursday, June 18, 2009
 
 
I think the real productivity boost would be if the compiles got quick enough that you didn't leave 'the zone' while you're waiting for them. 

I find blogs and forums turn 30 second compiles into 5 minutes of lost productivity for me :)
Doug Send private email
Thursday, June 18, 2009
 
 
Hello John. Be sure to include the time you would spend selecting and purchasing the PC, as well as the time spent moving Favorites, Installing software, removing bloatware, etc.

Perhaps set up a test matrix to compare the effect of purchasing a faster hard drive or switching to solid state. Or maybe a faster processor or faster ram. As well as the different combinations of the above... :)

Seriously, if you want a new computer, buy it. But I would look for a better justification than compilation time.
B2B Micro ISV Send private email
Thursday, June 18, 2009
 
 
You say you own your own business.  That means that you are charging for the "downtime" that the computer spends compiling.  If you buy a faster computer that cuts your compile time in half, each project will take 30 minutes less per week to create and you won't be able to charge your customers as much.

By spending $2K to buy a new computer you will actually cost yourself $1,250 per year in income since you will finish apps faster and won't be able to bill for that "wasted" compile time.

You should buy a SLOWER computer.  That way you can increase billings because compiles take longer.
Karl Perry Send private email
Thursday, June 18, 2009
 
 
I get what you say in a way - I don't not bill for compilation time!
I'm still going to work the same amount of hours so I guess the difference is I'll finish work faster, be more productive and increase my chances of getting more work.
John256 Send private email
Thursday, June 18, 2009
 
 
Karl Perry: "You should buy a SLOWER computer.  That way you can increase billings because compiles take longer."

And it helps ensure that your app will run reasonably quickly on more end user systems.

Sincerely,

Gene Wirchenko
Gene Wirchenko Send private email
Thursday, June 18, 2009
 
 
I agree with Dough.  It's easy to get out of the zone during compiles (and in my case deployments) since I'm writing web applications.  It takes over 3 minutes to build and deploy a war at the office.  At home, building and deploying a larger web application takes 20 to 30s.  Needless to say, I'm much more productive at home.  I don't lose my train of thought as frequently and don't need other stimuli to fill in the dead space.
Michael Bacarella Send private email
Friday, June 19, 2009
 
 
I recompile frequently.  My app takes only seconds to recompile, but even if it took more, I would still recompile.  I got bit a few times by bugs that turned out to be artefacts of the compilation/debugging process.  It is very frustrating to find that the bug that one has spent two or three hours tracking down is due to such an artefact.

Sincerely,

Gene Wirchenko
Gene Wirchenko Send private email
Friday, June 19, 2009
 
 
I've never really agreed with Joel's theories on "the zone". If someone is so easily distracted that a few extra seconds of compile time or some minor noise will greatly reduce his productivity, then he deserves to get fired.
Bill Lumberg Send private email
Sunday, June 21, 2009
 
 
Bill:

It is not just any interruption.  The zone is a state of high-level concentration that is sensitive.  When one is in the zone, one's production can be many times higher than normal.  Naturally, those of us who understand it want the results.

Unfortunately, it does not happen at will.  Many the time I have realised that I was in the zone, because I have lost track of time.  Once, I thought that my CD should be playing track 3.  It was on track 5.  Some things can get tuned out, such as music.  For me, this includes Tschaikovsky's "1812 Overture"; that is the one that, near the end,  is scored for cannons.  Yes, those things that fire cannonballs.

The zone is not very people-friendly.  Communication by or with another person usually blows it to pieces.

Sincerely,

Gene Wirchenko
Gene Wirchenko Send private email
Sunday, June 21, 2009
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz