9 de abril de 2012

Como ser um bom programador



NOTA: Esta mensagem visa aconselhar o programador na sua conduta e metodologia, e não no conhecimento técnico inerente a profissão. Não faça deste texto um guia, são apenas alguns conselhos para o lado prático do desenvolvimento. Este texto foi escrito com a melhor das intenções, e baseia-se na minha pouca experiência pessoal na área

 1 - Tenha Calma: Se você não conseguir de primeira, não é motivo para desistir já, e ir correr procurar ajuda. Se você não perseverar, o lado negro da força dominará você e a mediocridade eterna será a sua recompensa profissional. Programação exige, entre outras coisas, muita perseverança. Tenha fé, acredite sempre em ti, por vezes sabes a resposta, ou seja, por vezes o teu cérebro não consegue processar aquilo que os teus olhos vêem.

2 - Tente Entender: Se a dúvida é sua, assuma a responsabilidade, tente entender a resposta que te foi dada exaustivamente antes de descartá-la. Muitas vezes ela está certa, e o seu conhecimento ou empenho é que não não foram suficientes. Faça o mesmo antes de aceitá-la 

 3 - O Passo Maior que a Perna: Se você não se garante em alguma coisa é porque ainda falta para você chegar lá. Tente começar pelo inicio. De que adianta você fazer um programa usando código que te foi passado, ou copiaste de algum lado, e você não entende como ele funciona? O bom programador é aquele que tem uma boa base, que conhece e domina o básico da linguagem e cultiva uma boa lógica, o resto vem com o tempo e a necessidade. 

4 - Seja Humilde: A humildade é um factor crucial em qualquer profissão. Cultive-a, ela pode te ensinar muito, tanto no trabalho como na vida. Cultive-a pelo prazer de ser verdadeiro nas suas acções e honesto na sua profissão. 

5 - Seja Independente: Não fique esperando a ajuda de todos para realizar o que você quer. A tarefa tem que ser a sua principal motivação. Além do mais cada vez que alguém te entrega uma solução "mastigada" você deixa de aprender com o processo. 

6 - Nada é Complicado: Uma coisa complicada nada mais é do que o encadeamento de varias coisas simples. O erro é tentar resolver o problema inteiro com o estigma de acha-lo complicado na cabeça. Ao invés, divida o problema em pedaços menores e mais simples (rsrsrs hehehe,  capitulo 7 do manual de Técnicas de Programação, Divisão e Conquista) e resolva-os ou divida de novo até ficar simples o suficiente. Feito isso o que restar já não será tão complicado. Note que isso não quer dizer que você irá resolver qualquer problema de agora em diante, mas já da uma perspectiva bem melhor. Tome este conselho como uma maneira de ver as coisas, nada mais. 

7 - Não Abuse: Sua dúvida é primariamente problema seu. Os seus colegas, professores, amigos, etc... não estão aqui somente para ajuda-lo, portanto se você realmente preza a ajuda que recebe, contente-se com ela. Lembre-se que todos tem mais o que fazer do que ficar atendendo "caprichos" dos outros. Sua prova de apreciação é sempre bem vinda. 

8 - A César o que é de César: Dê crédito, se você usou código de alguém e esse código ajudou para o desenvolvimento do seu software, mencione esta pessoa nos seus créditos, afinal de contas ela trabalhou bastante para que você não precisasse, e nem está te cobrando. Depois, qual é a graça de dizer ter feito algo quando você não fez?

9 - Bom Senso é Tudo! : Sem bom senso você está perdido, pode considerar isso a pura verdade. Diante de uma situação complexa e aparentemente sem saída, pare, relaxe e use o seu bom senso, escute os seus neurônios. Lembre-se que mesmo depois de ter seguido este conselho e o problema continuar lá não quer dizer que ele é insolúvel. 

10 - Nada é Impossível: Embora algumas coisas parecem!. Imagine, existe programadores (e não só) criando jogos, portanto,  se aquilo é possível, sua tarefa também deve ser. O importante é perseverar e manter uma atitude positiva diante da tarefa, não encare a tarefa como inimiga e sim como uma amiga que não fala a sua "língua". 

11 - Nunca Pare de Aprender: Se um dia você se cansar de aprender novas tecnologias em desenvolvimento, siga meu conselho: Mude de curso, ouvi dizer que em Economia têm vaga. É como diz o meu professor de Programação: "Não existe uma lei que obriga todo mundo a ser Engenheiro, se não está a dar, meu caro, desista, abre uma janela aberta o quê, epá, a vida é durra!".

12 - Tenha Curiosidade: Procure, pesquise e corra atrás. Isso ensina mais. A máquina é o computador e não você, portanto não se torne um autômato que apenas faz o necessário e apenas sabe o suficiente. 

13 - Tenha Criatividade: Muitas vezes é o que distingue o "bom" programador do "medíocre". Programação não é somente uma técnica, é também uma arte. Sem criatividade você está a mercê da mesmice num mundo cada vez mais dinâmico e variado. Infelizmente criatividade não pode ser ensinada, tem que ser aprendida na prática. 

14 -  Faça Bem Feito: Seja detalhista e capriche em tudo até que isso fique automático em você, essa atitude lhe renderá um diferencial importante nesta nossa profissão.

15 - Seja Simples: A simplicidade é mágica e as pessoas de hoje tendem a complicar, portanto mantenha-se simples. Se existirem 3 possíveis soluções para um problema, tente a mais simples, é geralmente a mais eficaz. 

16 - Não Tenha Pressa: O aprendizado é uma estrada longa e cheia de obstáculos, que começa no primeiro passo e termina quando você a abandona. Aprenda a não ter pressa, de que adianta entregar no prazo, se está mal feito. O velho ditado vale: "A pressa é inimiga da perfeição".