Il me semble que s'ils ne développent pas avec un débogueur, c'est :
-soit parce qu'ils font de très petit programme,
-soit parce qu'ils ne programme plus,
-soit parce que leur programme n'a que très peu de bug et plus de nouveauté (donc ils ne programment plus vraiement),
-soit parce qu'ils ne savent pas se servir d'un débogueur,
-soit parce qu'ils sont fermés dans leur esprit, et ne veulent pas progresser en utilisant un outils complexe. Ils ont un blocage purement idéologique.
J'ai bien peur qu'ils sont dans le dernier cas.
A titre personne, j'aime bien utiliser un débogueur, et cela m'aide beaucoup. Je trouve le débogueur d'éclipse très bon, y compris pour déboguer des servlets. Des fois, j'utilise traces (log4j ou printf) (par exemple pour trouver la partie qui est trop lente), d'autre fois un débogueur (un point d'arrêt conditionnel permet par exemple de suivre le déroulement du programme a partir de la 10.000 itération d'une boucle), d'autre fois, je fais de la relecture de code (très utile pour vérifier si tous les chemins sont correctes et qu'il n'y a pas un bug très subtile dans un cas très particulier). Et il y a d'autre outils de débogage (recherche de memory leak, etc...)
En informatique, il faut être ouvert à tout. Si une technologie est meilleur dans certains cas qu'une autre, il faut s'il mettre.
Mais je reconnais que sous linux, gdb seul, est très évolué, mais aussi très austère.