Comme le disent Onur et Rintintin, le code devrait pouvoir être lisible sans trop avoir besoin de commenter, et je pense comme PpHd que mettre le { à la ligne rend le code moins compact. C'est une moins grande quantité de code qu'on a sous les yeux (et même si on est pas en mode texte) et au final on est moins productif. Les commentaires jouent aussi beaucoup dans la densité du code.
Steve Yegge a d'ailleurs récemment parlé de ça dans un de ces pavés,
Portrait of a n00b. Ça traite aussi du fait de trop modéliser le code, et j'ai trouvé ça plutôt intéressant. J'imagine que ça va horrifier JackosKing par contre.
For instance, as just one random illustrative example, you might need to return 2 values from a function in Java (a language with no direct support for multiple return values). Should you model it as a MyFunctionCallResult class with named ValueOne and ValueTwo fields (presumably with actual names appropriate to the problem at hand)? Or should you just return a 2-element array (possibly of mixed types) and have the caller unpack it?
Sinon, quand on regarde l'exemple de Python comparé aux autres langages, on voit quand même bien la différence au niveau du rapport signal à bruit…