There is a theme I notice amongst "green" developers: They want to blame the wrong thing every time when something goes wrong. They want to blame the environment when the problem is obviously caused by an error in code; and, in turn, they want to blame code when there is something wrong in the environment. I've seen many a developer waste ''hours'' trying to track down something that was related to an external system, that they couldn't fix. This is something that should be recognized immediately and avoided. I call this GoblinsOfTheEnvironment, because that's what it feels like to me. They're chasing ghosts, goblins, gremlins, etc. Often times, instead of just adding a breakpoint (or even placing a print of some kind), they'll complain and say things like: - It was ClearCase (I hear this ''all'' the time) - It was WebLogic - It was ''your'' code - It was ''their'' code - It was working a minute ago - It worked yesterday So, a question to the wiki community: How do you guide developers into more sane and non-mythical debugging practices? Besides just say, "You're chasing goblins, and they don't exist." -- JeffPanici ''"How do you '''know''' that it was "X"?"'' I say, "Show me a test that reproduces that error." -- StevenNewton The exact same thing happens in biology, which makes me think it's human nature, not unique to developers. The theory usually goes something like: It's the water... it has (too many ions / too much bacterial contamination / too many organic contaminants etc. etc. etc.). In my experience it has '''never''' been the fault of the water. There are times when the environment really ''is'' at fault, but it is encumbent upon the person blaming the environment to '''proove''' that this is the case. --AndyPierce