I agree with this, mostly.<p>Sometimes the lock free version of a Java program is simpler than the version with locks. For example, I've often written classes where all the state was easy to fit into a single atomicreference.<p>The real danger comes from writing a lock free program without knowing they type of problems that are hard to solve without locks. Just like cryptography, the greatest danger comes from engineers who know just enough to be dangerous.