it means that changing projects means you have to learn an entirely new set of idioms and standards. I consider that a bug. It's a feature when you need certain syntaxes to tackle a problem that is particular to a certain domain, and you want to make a pseudo-dsl. Clobbering the standard language to use the idioms you like, just forces anyone wishing to contribute to your project to deal with a learning curve that should be language-wide. ...then when you move to another project, maybe they use another language-clobbering that makes for _similar_ idioms. They make good changes not realising the subtle differences, which could actually cause significant issues.