A importância de se manter atualizado

A importância de se manter atualizado
Quando falamos de tecnologia, estamos falando de um mercado que não para de crescer nem por um minuto, isto é, enquanto você lê a primeira frase desse artigo, alguém, em algum lugar do mundo acaba de criar ou descobrir algo novo com auxílio da tecnologia. Seja um novo serviço, um nova empresa, uma novo sistema, uma nova linguagem de programação, esse mercado está sempre recebendo novidades.
Ok, disso você provavelmente já sabia. E para nós, desenvolvedores, no que exatamente isso implica?
Eu costumo dividir o significado de “atualização” em duas partes:
A primeira se dá a atualização de recursos, que acontece quando uma nova versão da sua linguagem de programação, do seu sistema operacional ou até mesmo da sua IDE é liberada.
Já a segunda metade dessa divisão é a atualização do profissional, com o objetivo de acompanhar as atualizações mencionadas acima.
Ambas as metades são de extrema importância para evitar a estagnação e incentivar o crescimento saudável da carreira de qualquer desenvolvedor.
O software atualizado
Vou usar um exemplo que já acompanho há algum tempo: linguagens de programação (mais especificamente, PHP, no meu caso).
Vejo casos onde o desenvolvedor não faz nem ideia da versão do PHP utilizada no seu servidor. Ao questionar sobre a versão do PHP, a resposta que mais ouço é: “é PHP, oras, não importa se é 4, 5 ou 8000. É PHP”. E que mal isso tem?
Veja bem: quando a versão do PHP muda de 5.4 para 5.5, não é porque os desenvolvedores resolveram deixar o número ímpar por um tempo. Melhorias significativas são aplicadas, bugs são corrigidos, novas funcionalidades são implementadas. Basicamente, sempre que sai uma versão nova do PHP, a ideia é fornecer mais segurança e confiabilidade para uma linguagem que vem ficando cada vez mais completa. Isso é bem fácil de entender, não?
Mas meu sistema foi desenvolvido na versão 1.0 da linguagem “X”, e usar a versão 2.0 vai quebrar a aplicação.
Nos casos em que existe retrocompatibilidade, isso deve causar pouco ou nenhum problema, sendo apenas necessário recompilar o software com a versão nova da linguagem. Independente disso, é sempre importante tentar escrever um código “a prova de tempo”. Isto é, use recursos que não estão marcados para remoção em versões futuras, use sempre boas práticas de desenvolvimento e recursos recomendados pelos desenvolvedores da linguagem. Fazendo isso, você já aumenta (e muito) as chances do seu sistema rodar sem muito esforço em versões futuras da linguagem de programação utilizada.
Claro, não dá para prever o futuro e refatorar se faz necessário. Mas, lembre-se que refatorar é sempre uma chance de melhorar o código escrito.
Minha opinião sobre este tipo de caso é: a não ser que seja definitivamente impossível se manter atualizado com a versão da linguagem de programação, sistema operacional, servidor de banco de dados ou qualquer outra coisa, atualize.
O profissional atualizado
A segunda parte é sobre a atualização do profissional. Na verdade, isso é ligado diretamente ao primeiro item. O profissional só vai conseguir escrever código “a prova de tempo”, caso ele mesmo esteja atualizado. Isto é, um profissional da linguagem “X” deve conhecer, nem que seja por cima, todas as versões em uso dessa linguagem. Desta forma, ele vai facilmente encontrar melhorias e vai tornar o processo de atualização muito mais suave. Afinal, como você vai saber se um software é compatível com a nova versão da linguagem se ele não conhece a linguagem nova?
Isso é apenas um exemplo, mas, para o profissional de TI, a coisa vai mais além. Conhecer apenas uma linguagem de programação não torna o desenvolvedor “a prova de tempo”. Para ser desenvolvedor, é preciso ter vontade de se manter atualizado não só com esse lado do mercado, mas com novas tecnologias, novos dispositivos, serviços, empresas, etc.
Além disso, é bastante importante que se tenha mente aberta. Hoje você conhece uma determinada tecnologia de um jeito, amanhã (no sentido literal, e não um amanhã futuro), essa tecnologia pode estar 100% diferente e você precisará entender tudo de novo. Isto é o mercado da tecnologia.
Obviamente é impossível conhecer tudo sobre tecnologia (assim como é impossível saber tudo sobre qualquer outra coisa), mas precisamos buscar sempre mais. Um dia sem aprender algo novo, para um desenvolvedor, é um dia desperdiçado.
Ok, esta última parte é uma opinião pessoal minha, mas que, eu levo muito a sério.
Resumindo, um profissional de TI precisa estar atualizado para manter seu código atualizado, e assim, manter uma solução de qualidade para seus usuários. Minha dica é: não tenha medo, muito menos preguiça: sempre procure portas para se manter atualizado, e quando encontrar uma porta, vá até o fim e aprenda algo novo. Atualizações são sempre bem vindas e com certeza vão fazer diferença na sua carreira como desenvolvedor. Esqueça o papo de “Eu programo em Linguagem X versão 1.5.12”, ou “Eu uso o Software X versão 2.5.0”. O primeiro passo para contornar essa situação é converter isso em “Eu programo em Linguagem X” e “Eu uso Software X”. E, por fim, lembre-se que o orgulho não tem vez no mundo da tecnologia. Se você decide por não conhecer alguma coisa por simplesmente “não se dar bem”, pode estar perdendo seu maior passo rumo a uma carreira melhor.
E você, se mantém atualizado? O que faz para manter seu código e seu conhecimento sempre em dia? Compartilhe suas experiências abaixo, nos comentários ;)