The best way to learn how to write code is to write code
Você quer saber como eu aprendi Ruby on Rails, Vue.js e Node.js? Leia este artigo e veja que o melhor jeito de aprender programar é programando.
Frase fantástica
Recentemente eu encontrei na internet a seguinte a frase: "The best way to learn how to write code is to write code".
O criador dessa frase é Kyle Simpson, que além de programador ele também é autor vários livros sobre JavaScript.
Eu digo que essa frase é fantástica porque traduz muito bem a minha trajetória profissional, onde os maiores aprendizados vieram com o maiores desafios.
Mas se eu não sei, como vou começar?
É natural que iniciantes na programação sejam inseguros, uma vez que a programação é algo complexo e necessita de muito estudo. Porém você precisa ter em mente que também não é algo impossível.
Quando eu comecei a programar, em meados de 2007, eu também tinha um receio antes de começar um software, mas eu sempre pensava o seguinte: "Se outras pessoas conseguem, por que eu não vou conseguir?"
Como citei anteriormente a programação requer estudo, mas não pense que você vai ler um livro de algoritmos ou fazer um curso de programação e você será um programador. É necessário muito estudo e prática.
Busque desafios reais
Normalmente em livros e cursos existem muitos exercícios e exemplos de código, mas não se limite a isso. É importante que você busque desafios reais.
Quando eu falo de desafios reais, eu digo que você deve ser desenvolver softwares que realmente serão usados. Reflita sobre coisas que você esteja precisando e que tipo de software poderia te ajudar em alguma atividade do dia a dia. Outra opção é criar algum programa que ajude algum familiar, pessoa próxima, entre outros.
Um detalhe importante desta etapa, é ser totalmente transparente e deixar claro que você está aprendendo, principalmente se esse serviço possuir algum tipo de remuneração.
Com os erros você aprende muito
É fato que erros acontecerão e não tenha medo deles. Na verdade é com esses erros que você vai evoluir.
No inicio da minha carreira eu trabalhei com um software legado que o código era muito ruim, muito ruim mesmo! Criei várias features nesse software, onde algumas deram certo e muitas deram errado, mas evolui muito como programador. Normalmente eu falo que nesse projeto eu aprendi como NÃO programar um software.
Aqui é importante destacar, que eu não estou dizendo para você ser negligente e errar de propósito. Eu quero passar a mensagem que você precisa tentar fazer do jeito certo, mas em caso de fracasso você precisa aprender com o erro para não repeti-lo.
Como eu aprendi Ruby on Rails
No fim do meu curso de graduação, entre meados de 2014 e inicio de 2015, eu decidi fazer meu TCC com Ruby on Rails. Era um framework que as pessoas falavam muito bem e por isso queria experimentar.
Após o TCC, criei mais alguns programas para uso pessoal e posso dizer que foram grandes desafios. Cometi erros nesse trajeto? Sim, mas aprendi muito com eles.
Se você quer saber mais sobre como eu aprendi Ruby on Rails e como isso mudou minha mentalidade, leia este artigo: Por que aprender Ruby on Rails? Mudança de mentalidade é a resposta
Como eu aprendi Vue.js
Após aprender Ruby on Rails, eu queria mais desafios. Eu sabia que eu precisava programar melhor com JavaScript e consequentemente desenvolver um front-end mais dinâmico e produtivo para os usuários finais.
Neste momento Angular e React estavam fazendo muito sucesso e eu estava considerando começar com um deles. Até que um dia eu conheci Vue.js e me identifiquei muito com o estilo de programação e facilidade de uso.
No início comecei com alguns exemplos, depois criei alguns programas para uso pessoal e quando percebi já estava usando no meu dia-a-dia.
Se você quer saber mais sobre como eu aprendi Vue.js e consegui melhorar significativamente minhas interfaces, leia este artigo: Não tenha medo de Javascript! Deixa o Vue.js te levar
Como eu aprendi Node.js
Em meados de 2017, estava envolvido em um projeto onde eu iria criar um software com Ruby on Rails no back-end e Vue.js no front-end, até aqui tudo certo. Porém havia algumas integrações altamente críticas a serem feitas.
A primeira integração era com uma central telefônica digital Asterisk. Durante minhas pesquisas percebi que a melhor biblioteca de integração (no caso deste projeto) era construída com Node.js, ou seja, isso seria perfeito para aplicar o conceito de micro serviços.
Eu já havia feito alguns testes com Node.js, mas esse era o primeiro desafio importante. O resultado foi incrivelmente satisfatório, consegui fazer uma integração rapidamente e o software ficou muito simples, estou falando de 2 arquivos e umas 200 linhas de código.
Um pouco mais adiante, mas ainda nesse mesmo projeto, foi necessário uma integração com um banco de dados legado. Neste momento eu encontrei um framework chamado Sails.js que servia como uma luva para o que eu precisava e ainda inspirado em Ruby on Rails.
Se você quer saber mais sobre Sails.js, leia este arquivo: Use Sails.js para criar uma REST API de um sistema legado
Por fim,
Desde então, muita coisa se passou, muitos softwares eu criei, muito conhecimento eu adquiri, mas sempre encarando desafios.
Como citei no início deste artigo, o melhor jeito de aprender programar é programando.
Dúvidas ou sugestões é só entrar em contato. Abraço.