Vous n'aimerez probablement pas ça ... mais, voilà ...
Je travaille sur la correction de certains bugs comme un moyen d'entrer dans la "boucle" et de devenir un contributeur régulier du projet. Le problème est que je pense avoir découvert une faille de conception fondamentale qui cause l'un des bugs sur lesquels je travaille.
Non, non. Si vous le faisiez, vous ne seriez pas si hésitant à ce sujet. Le fait que vous-même ne soyez pas sûr de la "faille de conception fondamentale" signifie que vous n'en avez pas découvert une. Lorsque vous essayez de signaler l'erreur de quelqu'un d'autre, cela ne vous achète pas d'amis pour utiliser des superlatifs (comme "fondamentaux").
Ce que vous avez peut- être découvert est un design légèrement meilleur, pour le problème que vous rencontrez. Vous devriez probablement le tester à fond, car comme vous êtes nouveau dans le projet, il y a de meilleures chances que vous n'avez aucune idée de quoi vous parlez.
Mais j'ai l'impression que si je fais exploser ça sur la liste de diffusion, je vais me montrer arrogant
Le qualifier de «défaut fondamental de conception» apparaîtra certainement comme arrogant. D'ailleurs, même en soulignant qu'il peut s'agir d'un bug n'est pas la meilleure idée. Si vous ne savez pas (et pouvez le confirmer) que c'est un problème, alors vous devez poser humblement des questions et des recherches jusqu'à ce que vous le compreniez complètement . Mieux que celui que vous essayez de convaincre.
... et certaines des discussions que j'ai eues sur la question sont des coups de tête avec certaines personnes. Comment dois-je procéder?
Arrêtez. Ce n'est pas un problème moral, et cela ne tue personne (je suppose). Si vous avez l'intention d'être membre à long terme du projet, vous devez d'abord gagner la confiance avant de les interroger. Corrigez les bugs, faites un travail incroyable (par toutes les mesures des valeurs du groupe), concevez quelques fonctionnalités et gagnez une place à la table.
Ensuite, sans pointer du doigt ni appeler quoi que ce soit de cassé, faites humblement une suggestion pour améliorer la conception du groupe. Et vous feriez mieux de réfléchir à toutes les conséquences et les solutions, ou vous serez abattu pour être "naïf". Soyez prêt pour une discussion sur les raisons pour lesquelles votre conception est meilleure. Soyez prêt à perdre et perdez gracieusement.
Si votre idée est vraiment meilleure, elle sera finalement acceptée par le groupe (mais peut-être pas par le concepteur d'origine), le groupe s'en fiche ou le groupe est stupide. Dans l'un ou l'autre de ces derniers cas, pourquoi voudriez-vous de toute façon faire partie du groupe?
...
Si vous en êtes capable, l'alternative est de coder la putain de chose avec tant de sang avec brio qu'ils trembleront de stupéfaction devant vos prouesses de codage et n'auront d'autre choix que d'accepter l'élégante simplicité et la vérité éternelle de votre conception. Les développeurs ne compétence respect, mais vous devez être prudent - la punition pour incompétence (ou l' arrogance injustifiée) est assez sévère. Puisque vous posez cette question, cependant, je suppose que l'itinéraire d'arrogance brillant et sans vergogne n'est pas vraiment une option. ;)