Wohin kann ich mich wenden, wenn ich einen Fehler nicht beheben kann?

8

Ich suche nach Ressourcen, an die ich mich wenden kann, wenn ich für etwas keine Antwort habe. Ich leite ein Team von Softwareentwicklern. Wir haben monatlich neue Software-Releases eingeführt.

Wenn es einen Fehler gibt, den mein Team nicht beheben kann, landet er auf mir. Meistens kann ich das Problem beheben, aber manchmal stecke ich fest.

Leider bin ich in unserem Unternehmen führend. Es gibt niemanden, den ich um Hilfe oder Unterstützung bitten kann, um etwas herauszufinden.

Haben Sie Empfehlungen oder Anleitungen für solche Situationen?

user83443
quelle
9
Dies ist eine sehr vage Frage. Ist das Problem ein Mangel an Domänenkenntnissen, ein Mangel an Programmierkenntnissen oder ein tatsächlich unlösbares Problem?
Jonathan Rich
4
Sie wissen, dass Sie auch die Kette entlang fragen können? Brainstorming und so.
Rig
3
So habe ich Stack Overflow entdeckt :)
Omega
@ Johnathan - Normalerweise wäre eine so vage Frage geschlossen, aber ich denke, diese hat ihre Berechtigung.
Mattnz

Antworten:

10

Erstens können Sie das Debuggen verbessern . Das Debuggen von David Agans ist ein guter Anfang, um sich zu verbessern. Wenn Sie nicht wissen, wie man einen Debugger verwendet, ist jetzt ein guter Zeitpunkt, um zu lernen.

Zweitens können Sie Ihren Code debuggbarer machen . Das Hinzufügen von Komponententests wäre der Vorschlag Nummer eins in diesem Bereich. Das Hinzufügen von Protokollierung ist eine weitere hervorragende Idee. Lernen Sie einige Designprinzipien kennen und überarbeiten Sie den Code, um ihn sauberer zu machen. Starten Sie jetzt, wenn Sie die Quellcodeverwaltung nicht verwenden.

Schließlich stellt Online - Hilfe . Darum geht es auf dieser Site und bei StackOverflow. Lerntechniken wie das Erstellen kurzer, in sich geschlossener und korrekter Beispiele können sowohl beim Debuggen helfen als auch Ihnen helfen, bessere Antworten zu erhalten.

Karl Bielefeldt
quelle
+1: Zweitens können Sie Ihren Code debuggbarer machen. Absolut. Machen Sie Ihren Fehler so flach wie möglich. In 'Die Kathedrale und der Basar' sagte Eric Raymond: "Bei genügend Augäpfeln sind alle Käfer flach." Bevor Sie nach mehr Augäpfeln fragen, tun Sie alles in Ihrer Macht stehende, um die Komplexität Ihres Codes zu verringern. hbfs.wordpress.com/2009/03/31/…
Jim G.
8

Versuchen Sie, sich mit dem Entwickler zu paaren, der vor Ihnen an dem Problem gearbeitet hat. Möglicherweise können Sie beide den Fehler beheben. Wenn Sie das Problem auf eine Funktion oder einige Codezeilen eingrenzen können, kann eine Website wie StackOverflow hilfreich sein. Es ist auch ratsam, einen Test für den Fehler zu schreiben, damit Sie wissen, wann Sie ihn behoben haben (oder ob er zurückkehrt).

ckb
quelle
1

Mein persönlicher letzter Ausweg ist es, Dinge in dem scheinbar betroffenen Bereich zu kommentieren, bis der Fehler aufhört, sich einzugrenzen.

Erik Reppen
quelle
0

Definieren Sie "Kann nicht" .....

Zusätzlich zu der hervorragenden Antwort von @Karl könnte eine Änderung der Einstellung nützlich sein. Nichts, absolut nichts ist "unfixierbar". Ich habe in der Vergangenheit Wochen damit verbracht, Probleme aufzuspüren. Ich habe einige mit Sicherheit aufgegeben, aber ich habe nie gesagt "das ist unfixierbar, ich kann es nicht tun", immer einen Grund hinter das "Ich kann nicht" - "" setzen. Stellen Sie sicher, dass Ihr "Ich kann nicht" nicht "Ich will nicht" oder "Ich kann nicht gestört werden", "Mir ist langweilig" ist ....... Ich das ist der Fall, es ist was es ist , sei ehrlich (zumindest dir selbst gegenüber). Nicht jeder ist als Wartungsprogrammierer geeignet - in meinem derzeitigen Job kann ich Wochen damit verbringen, ein paar Zeilen nützlichen Codes zu schreiben. Wenn Sie also den Erfolg beim Kauf von SLOC messen, werden Sie Schwierigkeiten haben.

Gelegentlich sage ich "Ich bin nicht gut genug Programmierer, um dies zu beheben". Das ist ein wichtiger Schritt - bereit zu sein, zuzugeben, dass Sie nicht gut genug sind, bedeutet bereit zu sein, um Hilfe zu bitten. Parke dein Ego und frage, du bist ein besserer Programmierer, wenn du kannst.

mattnz
quelle
Ich denke, wir können davon ausgehen, dass er die Codezeile (n), die das Problem verursacht, nicht finden kann, im Gegensatz dazu, dass er nicht
gestört