281 votes

Longue tenue, une programmation incorrecte hypothèses

Je suis en train de faire quelques recherches sur les erreurs et les pauvres et les hypothèses formulées par junior (et peut-être senior), les ingénieurs en logiciel.

Quel a été votre plus longue hypothèse qui a finalement été corrigé?

Par exemple, j'ai mal compris que la taille d'un entier n'est pas un standard et dépend plutôt de la langue et de la cible. Un peu gênant pour l'état, mais il est.

Être franc; ce qui ferme conviction que vous avez, et à peu près combien de temps avez-vous maintenir l'hypothèse? Il peut être sur un algorithme, une langue, un concept de programmation, les tests, ou quoi que ce soit d'autre au sujet de la programmation, langages de programmation, ou de l'informatique.

545voto

JohnFx Points 23761

Pendant longtemps, je suppose que tout le monde a eu cette super-maîtrise de tous les concepts de la programmation (design patterns, les dernières nouvelles de la langue, de la complexité des calculs, des expressions lambda, vous le nom).

Les blogs de lecture, de Débordement de Pile et les livres de programmation semblait toujours à me faire sentir que j'étais à la traîne sur les choses que tous les programmeurs doit juste savoir intuitivement.

Je l'ai réalisé avec le temps que je suis effectivement en comparant ma connaissance, à la connaissance collective de beaucoup de gens, pas une seule personne et c'est une assez haute de bar pour tout le monde. La plupart des programmeurs dans le monde réel ont un cache de la connaissance qui est nécessaire pour faire leur travail et qui ont plus que quelques domaines qu'ils sont faibles ou complètement ignorant de.

308voto

Instantsoup Points 6428

Que les gens savaient ce qu'ils voulaient.

Pendant longtemps je pensais que je voudrais en parler avec les gens, ils décrivent un problème ou de flux de travail et je voudrais le mettre dans le code et de l'automatiser. S'avère à chaque fois qu'il se passe, ce qu'ils ont pensé qu'ils voulaient n'était pas réellement ce qu'ils voulaient.

Edit: je suis d'accord avec la plupart des commentaires. Ce n'est pas une réponse technique et peut-être pas ce que l'interlocuteur a été à la recherche pour. Il ne s'applique pas seulement à la programmation. Je suis sûr que ce n'est pas ma plus longue hypothèse soit, mais c'était la chose la plus frappante que j'ai appris en 10 ans j'ai fait cela. Je suis sûr que c'était de la pure naïveté de ma part, mais la façon dont mon cerveau est câblé et l'enseignement et les expériences que j'avais avant d'entrer dans le monde de l'entreprise m'a amené à croire que j'allais faire ce que j'ai répondu; que je serais en mesure d'utiliser le code et les ordinateurs pour résoudre les problèmes des gens.

Je suppose que cette réponse est similaire à Robin au sujet de la non-programmeurs de comprendre ou de se soucier de ce que je parle. Il s'agit d'apprendre à l'entreprise comme un agile et itératif, processus interactif. C'est à propos de l'apprentissage de la différence entre le fait d'être un programmation-code-de singe et d'être un développeur de logiciels. Il s'agit de réaliser qu'il y a une differnce entre les deux et que pour être vraiment bon dans le domaine, ce n'est pas seulement la syntaxe et la vitesse de frappe.

Edit: Cette réponse est aujourd'hui la communauté wiki pour apaiser les gens mécontents à cette réponse me donner rep.

292voto

lothar Points 11904

Que je sais où le problème de performances est sans profilage

232voto

Dug Points 460

Que je devrais avoir un seul point de sortie à partir d'une fonction/méthode.

228voto

Robin Day Points 39440

Que les non-programmeurs à comprendre de quoi je parle.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: