Estou trabalhando em um aplicativo bastante grande e com erros - e devido à maneira como ele foi escrito (pouparei os detalhes, mas viola as regras na maioria das áreas em que você pode pensar), é quase impossível desenvolvê-lo sem grandes refatorações.
Parte significativa do aplicativo foi criada por estagiários, n00bs etc .; mas também houve um programador na categoria de desenvolvedor mestre e, com toda humildade, o código que ele deixou para trás também é dúbio, de uma maneira diferente, talvez, mas ainda assim.
É verdade que seu código tende a fazer o trabalho - na maioria das vezes - mas é tipicamente enigmático, reinventando a roda (por exemplo, um grande método personalizado que realiza um backup de banco de dados SQL bastante comum) etc. Basicamente, confusão desnecessária e muita superengenharia
E isso me fez pensar que ser um programador altamente qualificado (eu deliberadamente não uso a palavra "desenvolvedor", assumindo que isso indica um conjunto mais amplo de habilidades), se não for acompanhado por outras qualidades, pode realmente ser meio venenoso.
Supondo que seja verdade, algumas das razões pelas quais pude pensar são:
- se você estiver codificando com facilidade, parece (ou realmente é, em curto prazo) apenas mais rápido para lançar suas próprias soluções no local, sem recorrer a bibliotecas, funcionalidade preexistente etc.
- se alguém é experiente o suficiente para manter facilmente uma imagem mental de um programa complexo, é menos inclinado a dividi-la em módulos, camadas etc.
Portanto, o que quero dizer é que, se um programador fluente é um desenvolvedor ruim, sua fluência não apenas compensa o último, mas na verdade causa ainda mais danos.
O que você acha daquilo? É verdade (até que ponto, se sim)?
I.ThinkOf(this).KindOfThing()