Fernando Vezzali - Microsoft Certified Professional Developer

June 2009 - Posts

Fundamentos

O desenvolvimento de software depende, entre outros fatores, de lógica. Todo programador experiente, conhece e aplica a lógica inevitavelmente o tempo todo e existem meios de se atingir um nível mais aprofundado de conhecimento nessa matéria.

 

O ato de simplesmente codificar, ainda mais quando amparado por ferramentas de apoio à edição (IDEs), oferece em si pouquíssima dificuldade. Com um nível mínimo de lógica e bastante vontade, um aventureiro com acesso ao google conseguiria programar e até modelar um banco de dados. A conseqüência inevitável seria um produto final ruim, um software repleto de defeitos, que castigariam bastante o usuário. A lista de problemas seria extensa, renderia um bom artigo sobre “más práticas” no desenvolvimento de software, no entanto não é o objetivo deste texto discorrer sobre o tema.

 

Hoje em dia, com a enorme variedade de linguagens de programação, frameworks, tendências, ferramentas e notícias, indo e vindo à frente de todos a toda velocidade, é compreensível constatar o fato de um profissional de TI esquecer-se dos fundamentos e direcionar todos os seus esforços para trabalhar com uma tecnologia que pouco domina, às vezes por força das circunstâncias, às vezes por uma imposição. O fato é que, os fundamentos sempre serão fundamentos e é importante buscar fortalecê-los, sempre.

 

A busca pelo conhecimento precisa estar direcionada a um objetivo e situada nos padrões da atualidade. Um indivíduo que objetiva atuar como desenvolvedor de software, não deve iniciar sua preparação estudando tecnologias ultrapassadas ou que simplesmente morreram. Também não deve iniciar os estudos abordando um tema composto por princípios dos quais se desconhece por completo. Por exemplo, não é possível iniciar estudos sobre design patterns sem possuir uma base sólida em orientação a objetos, assim como não é recomendável aprofundar-se em data warehouse sem antes conhecer modelagem de dados.

 

Com o a popularização da Internet criou-se uma ilusão de que a busca por informação tornou-se tarefa simples, ledo engano. A Internet jorra informação, as ferramentas de busca retornam milhares de resultados e separar o joio do trigo é uma tarefa árdua. O tempo das pessoas é muito precioso para ser gasto separando informação boas das ruins, quando se define o objeto de estudo o mais aconselhável é partir diretamente para a fonte genuína dessa informação.

 

O meio mais seguro para se obter informações verdadeiras e atualizadas sobre o objeto de estudo é ler as documentações fornecidas pelo próprio fabricante da tecnologia em questão. Se assunto for .Net Framework, não há hesitação, as bibliotecas do MSDN Brasil ou MSDN Americano fornecem uma documentação abrangente. Já quando o assunto for UML, a fonte mais atualizada é consultar o site da organização internacional que mantém padrões abertos: http://www.uml.org, (saiba mais em http://www.omg.org/). Para design patterns pode-se começar pelo site http://www.dofactory.com/Patterns/Patterns.aspx.

 

Entretanto, localizar a fonte genuína de informação não é tudo, outra dificuldade no aprendizado é a barreira lingüística, dentre as fontes citadas acima, somente o MSDN fornece uma versão em português brasileiro, as restantes são em inglês. Frente a esse problema existem duas saídas: aguardar uma futura versão em português dos documentos (totalmente inviável) ou estudar o idioma inglês voltado para leitura técnica.

 

Para atingir a maturidade, em qualquer carreira, faz-se necessário atuar em duas frentes simultaneamente, fortalecer fundamentos e manter a mente a aberta. Ou seja, deixar o radar ligado para as novidades que possam agregar valor ao trabalho, sem nunca perder foco na realidade.

 

Treinar não é fácil, treinar exige um certo esforço. Acomodar-se em uma zona de conforto é um risco iminente e trabalhar muito não é o suficiente para afastar o perigo da estagnação do aprendizado. Ilude-se aquele que pensa que trabalhando muito estará aprendendo mais e mais. Indubitavelmente, no início de qualquer atividade profissional, involuntariamente aprende-se muito, porém com o passar do tempo essa curva de aprendizado logo se transforma numa reta, paralela ao eixo do tempo e limitada pela zona de conforto.

 

A necessidade da leitura técnica em inglês surge quando o profissional já domina os fundamentos e está buscando materiais relativamente novos, portanto em um primeiro momento é válida a opção de ler livros em português sobre os fundamentos, participar dos fóruns sérios como os do MSDN Brasil e estudar leitura técnica de inglês. Cultivar hábitos como: optar pela língua inglesa ao instalar softwares e participar das versões americanas dos fóruns MSDN ou ASP.NET irá estimular aprendizado na língua.

 

More Posts