The daughter called on Sunday to wish me "Happy Father's Day." I was engaged in putting in a cobble-stone walkway in the back yard. We got to talking and she made a comment that reminded me of conversations I've had with folks. Some recently, some in the last few years. These particular conversations were with Project Manager folks.
So, the dear daughter made a joke about fitting stones into place (she has seen some of the other "little" stone projects I've done.) What she said was "Well, brute force can work. Unless it doesn't."
Yeah. It CAN work placing stones and getting things to get where they belong just so. Get stuff generally set, get out the rubber mallet and beat the stone into submission. Sometimes this works really well. Being the size of fellow I am, I kinda fall back on this a bit more often than I should.
Unfortunately, things don't quite work the way you expect. There's a wee bit of resistance you don't expect. Maybe you don't hit the stone quite where you should, or at least intend to. Sometimes you do smack it just where you expect to... unfortunately.
You see, stones are all different. Shape, color, size, weight, density. They are not bricks. Bricks are pretty predictable. Stones, particularly those that come out of the back garden (where ours do) Not so much.
Then there is the "simple way" - the hands-off, let it be way. A little paver base. A little sand. Put the stones down (more or less), sprinkle some redi-mix over it and then sprinkle water. Done.
The question is, will it be "done" enough? Well. Maybe. If you intend to walk on it, it probably will work reasonably well. If you intend to put chairs or tables on it, well... it might be an "issue." WELL, what if you intend to put your ginormous charcoal grill on it - or roll it on and off it? You could have another type of issue.
What you want to do kind of makes a difference in which approach works.
Then there is the "lay out the stones, remember the spots, pull them up, pour cement, replace the stones and hammer them into place in the wet cement." Sounds simple - unless you have done it. No, really. My muscles ache at the memory.
This gives you a really solid spot to walk, stand, or roll a ginormous grill. The problem is that getting the stones level before the cement sets is a challenge. A big challenge. Having tried this method, suffice to say that small sections are easier than everything at once. Then, when that section is level, do it again on the next.
Each of these techniques can work well for some projects and work poorly on others. Each of them has good points and bad points - easy and hard to work with. Each takes a different approach to planning and execution. Each has its own pace.
The thing is, you can rush these projects and something will give away that it was rushed. Something, possibly a loose stone here or there, will show that the same level of attention was not paid to the entire project. Sometimes, the loose stone knocks others out of place and you have a chain reaction.
Stuff needs to be fixed. That can involve pulling up a whole bunch of stones and "starting over" for that section. It can mean reconsidering how you approach the project.
I'm glad I'm writing about cobble stones and not software projects.
Software projects NEVER have stuff go wrong as the result of using inappropriate approaches or techniques. Software projects NEVER have mistakes from trying to rush to catch-up or make up time.
After all, we have a wealth of practices and experiences to draw on. I'm glad that we always know what to do with every situation we face when it comes to software. We have years and years of people telling us what we should do in every situation. If We just do THIS - then everything will be perfect. Right?