Como Aprender a Programar em 3 simples passos: o Depoimento da Jornada
Published: 2020-07-08 22:00:49

# Introdução

Exatamente em Janeiro de 2020 me coloquei o desafio de aprender a programar. Focado em Web Development, olhando 100% pra o Javascript e todo o seu ecossistema.

Gostaria de compartilhar a minha jornada até aqui (Julho de 2020). Deixando claro que não me coloco aqui como expert, mas alguém que está 100% focado no contínuo processo de se tornar um.

Um pouco do meu background: Sou formado em Engenharia de Produção pela UNESP e SEMPRE tive a cabeça borbulhando de idea com produtos pra empreender. Varias dessas ideias envolviam a necessidade de outra pessoa com um viés técnico na área de software pra me ajudar a tirar essas ideias do papel.

Não estou ignorando o papel do conjunto no empreendedorismo, **na realidade sem um time é quase impossível**. Mas até pra poder interagir melhor com pessoas da área de tecnologia decidi que era a hora de aprender eu mesmo a programar.

# O Início (Tutorial Hell)

Já ouviu falar no tutorial hell? Basicamente é você ficar preso vendo cursos e mais cursos (pulando de um pra o outro geralmente). E quando se dispõe a colocar algo em prática, na hora de colocar a mão no código, você simplesmente sente que tudo o que assistiu foi em vão. Não sai nada na hora de começar escrever o código para concretizar aquilo que você havia imaginado...

# Padrões, padrões everywhere

Vejo o tutorial hell que citei acima como uma mau necessário. Quando você não sabe muito sobre um assunto não só é produtivo, mas também inteligente procurar ouvir aqueles que entendem do assunto que você quer entender.

Conforme eu passei a assitir vídeos na área, comecei a notar certos padrões, não só da sintaxe do código(como o código é escrito), mas também na forma como o código é organizado. As nomeclaturas utilizadas pra nomear variáveis, funções, arquivos, pasta. Entendi que saber escrever código é no máximo uns 10% da jornada.

Programar se trata de resolver problemas e digitar código é só o início.

# Epifania, back to the basics

Quando comecei a estudar Javascript, tinha uma coisa muito clara em mente: não estava aprendendo para fazer sites. Estava aprendendo para contruir produtos de tecnologia.

-Mas calma, não é a mesma coisa?

Parecido né? Mas existe uma diferença enorme.

Engenharia é o uso de princípios científicos (ou muito bem fundamentados) para construir coisas.

Ou seja, pra você construir coisas que realmente importam você deve ter a base muito bem fundamentada. 

- Não posso começar pelo React?

Tudo bem você querer começar pelo React. 

Mas tenha consciência: pra criar a engenharia de um sistema robusto você precisa estar com os fundamentos em dia.

- Mas porque toda essa preocupação com a engenharia?

Sistemas de tecnologia não são entidades estáticas. Mais uma vez, construir é só o início, você precisa construir algo que permita ser constantemente alterado, isso demanda conhecimento de engenharia que é pautado em conhecer os princípios básicos.

**Ou seja, o básico bem feito dá resultado.**

![Louvre](https://i0.wp.com/turismo.eurodicas.com.br/wp-content/uploads/2017/07/obras-do-museu-do-louvre-1.jpg?resize=740,480)

# Como realmente aprender a programar

{% twitter 1280427723291271169 %}

Não confunda conhecimento com habilidade.

Assim que você terminou de ver um curso, no máximo você tem o conhecimento. Mas habilidade... Takes time.

Suponho que se você está lendo no artigo veio exatamente por esse tópico "Como aprender a programar". Essa deveria ser a sessão mais elaborada desse post, mas na realidade será a mais curta.

Pra aprender a programar (e creio que pra aprender qualquer coisa) você precisa se envolver num looping com apenas três passos:

1. Aprenda um conceito
2. Construa algo com esse conceito
3. Volte ao passo 1

Não tem mágica, mas tem suor, horas de dedicação e a aplicação por tempo indefinido do looping acima.

PS: **Foco nos fundamentos, sem fundamentos você faz engenhocas e não engenharia!**

E me conta aí, como foi/está sendo a jornada no aprendizado da programação? Quanto tempo você ficou preso no tutorial hell?