I don't think the search for your car keys is an accurate analogy for software development time estimation. The executable steps for the search for your keys is the same each time: you already know all of the steps you need to do in order to look in the freezer, in the couch, etc. You might not know all of the places you need to look, but you at least know where you will most likely look and roughly how long it will take you. In software, when I start out on something completely new, I don't necessarily have an idea where I'm going to "look", nor how long it's going to take me to "look" once I've decided where to start. For the parts of the project where "we've already done something just like this for that last project", then historical data makes sense.
That would be terribly foolish. For one thing, RAII wouldn't work any longer. You can't force someone to check a plain return code, but they're forced to deal with an exception.
I'll second this. The Gerber I bought 3 years ago gets used every day and is none the worse for wear. The two things I like most? 1) Scissors that don't feel like they'll break when cutting anything thicker than paper and 2) Pliers that don't feel like they'll break when used on anything. The Gerber was the first multitool that I've had where the pliers don't feel flimsy. It's heavy but I don't mind--I've used it as a last-resort hammer on occasion.
I don't think the search for your car keys is an accurate analogy for software development time estimation. The executable steps for the search for your keys is the same each time: you already know all of the steps you need to do in order to look in the freezer, in the couch, etc. You might not know all of the places you need to look, but you at least know where you will most likely look and roughly how long it will take you. In software, when I start out on something completely new, I don't necessarily have an idea where I'm going to "look", nor how long it's going to take me to "look" once I've decided where to start. For the parts of the project where "we've already done something just like this for that last project", then historical data makes sense.
You have 7 holes in your head. Keep your fingers out of them and you'll be fine.
Not always:
I'm not sure how to effect a change in people to get them to understand the effect of using 'affect' or 'effect' incorrectly.
That would be terribly foolish. For one thing, RAII wouldn't work any longer. You can't force someone to check a plain return code, but they're forced to deal with an exception.
I'll second this. The Gerber I bought 3 years ago gets used every day and is none the worse for wear. The two things I like most? 1) Scissors that don't feel like they'll break when cutting anything thicker than paper and 2) Pliers that don't feel like they'll break when used on anything. The Gerber was the first multitool that I've had where the pliers don't feel flimsy. It's heavy but I don't mind--I've used it as a last-resort hammer on occasion.