Para onde devo procurar se não consigo corrigir um erro?

8

Estou procurando recursos para recorrer quando não tenho resposta para alguma coisa. Liderei uma equipe de desenvolvedores de software. Estamos lançando novos lançamentos de software mensalmente.

Quando há um erro que minha equipe não pode consertar, ele cai em mim. Na maioria das vezes, consigo resolver o problema, mas há momentos em que fico preso.

Infelizmente, sou o melhor da linha em nossa empresa. Não há ninguém que eu possa pedir ajuda ou assistência para descobrir algo.

Você tem alguma recomendação ou orientação para situações como essa?

user83443
fonte
9
Esta é uma pergunta muito vaga. O problema é falta de conhecimento de domínio, falta de conhecimento de programação ou um problema real e insolúvel?
Jonathan Rico
4
Você sabe que pode pedir a cadeia também? Brainstorming e tal.
Rig
3
Este é tipo de como eu descobri Stack Overflow :)
Omega
@ Johnathan - Normalmente, uma pergunta tão vaga seria encerrada, no entanto, acho que essa tem mérito.
mattnz

Respostas:

10

Primeiro, você pode melhorar a depuração . A depuração por David Agans é um bom começo para ajudá-lo a melhorar. Se você não sabe usar um depurador, agora é uma boa hora para aprender.

Segundo, você pode tornar seu código mais debugável . Adicionar testes de unidade seria a sugestão número um nessa área. Adicionar registro é outra excelente ideia. Aprenda alguns princípios de design e refatorar o código para torná-lo mais limpo. Se você não estiver usando o controle de origem, comece agora.

Por fim, peça ajuda online . É disso que trata este site e o StackOverflow. Técnicas de aprendizado, como a criação de exemplos curtos, independentes e corretos, podem ajudar na depuração em primeiro lugar, além de ajudar a obter melhores respostas.

Karl Bielefeldt
fonte
+1: segundo, você pode tornar seu código mais depurável. Absolutamente. Faça o seu bug o mais superficial possível. Em 'A Catedral e o Bazar', Eric Raymond disse que “dados olhos suficientes, todos os insetos são rasos”. Antes de pedir mais olhos, faça tudo o que estiver ao seu alcance para reduzir a complexidade do seu código. hbfs.wordpress.com/2009/03/31/...
Jim G.
8

Tente emparelhar com o desenvolvedor que trabalhou no problema antes de você. Vocês dois podem consertar o erro. Se você pode restringir o problema a uma função ou a algumas linhas de código, um site como o StackOverflow pode ajudar. Também é aconselhável escrever um teste para o bug, para que você saiba quando o corrigiu (ou se ele retorna).

ckb
fonte
1

Meu último recurso pessoal é começar a comentar as coisas no que parece ser a área afetada até que o bug pare de acontecer para diminuir.

Erik Reppen
fonte
0

Definir "não pode" .....

Além da excelente resposta de @Karl, uma mudança de atitude pode ser útil. Nada, absolutamente nada, é "impossível de fixar". Passei semanas caçando problemas no passado. Desisti de algumas com certeza, mas nunca disse "isso não pode ser corrigido, não posso fazê-lo", sempre coloque uma razão por trás do "não posso" - "". Certifique-se de que o seu "eu não posso" não seja "eu não quero" ou "eu não posso ser incomodado", "eu estou entediado" ....... Eu, nesse caso, é o que é , seja honesto sobre isso (pelo menos para si mesmo). Nem todo mundo está preparado para ser um programador de manutenção - no meu trabalho atual, posso passar semanas e escrever algumas linhas de código útil; portanto, se você medir o sucesso na compra do SLOC, terá dificuldades.

Ocasionalmente, digo "Não sou um programador suficientemente bom para corrigir isso". Esse é um passo importante - estar preparado para admitir que você não é bom o suficiente significa estar preparado para pedir ajuda. Estacione seu ego e pergunte: você é um programador melhor, se puder.

mattnz
fonte
Eu acho que podemos assumir que ele não pode encontrar a linha (s) de código que está causando o problema, ao contrário não podem ser chateado etc
ozz