Estamos vivendo um momento em que ideias se transformam em unicórnios de uma hora para outra, ou seja, negócios que "da noite para o dia" alcançam um valor de mercado na casa dos milhões ou bilhões de reais. É difícil querer entrar nessa competição de gigantes com uma ideia que precisa ficar no forno por meses ou até anos. Quando ela sair do forno, o bonde já pode ter passado. Aí, meu querido, foi tempo, esforço e, muito provavelmente, dinheiro jogado no lixo.

Tudo demais e resultado de menos

Tudo em excesso acaba se transformando em veneno, não importa o que seja! É muito comum desenvolvedores iniciantes caírem na tentação de implementar todas as boas práticas, padrões e recursos mais novos que possuem conhecimento, na ilusão de alcançar a obra-prima dos softwares. Minha nossa, como isso é comum, eu mesmo já fui vítima dessa ilusão!

Mostre resultados, uma solução "inacabada" é melhor do que nenhuma solução! Utilize o princípio 80-20 (Princípio de Pareto) para manter o foco em 20% das funcionalidades tidas como primordiais/principais. Resumidamente, no mundo do desenvolvimento de software, este princípio preconiza a máxima de que 80% das necessidades do negócio serão atendidas por 20% das funcionalidades tidas como primordiais.

<aside> ⚠️ A instituição "The Standish Group" por meio de um de seus relatórios reportou que, de todas as funcionalidades entregue para o cliente final, somente 7% são sempre utilizadas, 13% são frequentemente utilizadas, 16% as vezes, 19% raramente e 45% nunca são utilizadas de verdade.

</aside>

O que me motivou a escrever este livro

Já passei por inúmeras tecnologias e linguagens de programação, como Java, Swift, Python, PHP e algumas outras. No entanto, a necessidade de agilidade no desenvolvimento de soluções versáteis e multiplataforma me levaram a apreciar o ecossistema do Node.js.

Ao trabalhar com Node.js, programamos essencialmente em JavaScript. Como já utilizava essa linguagem para a construção de páginas web dinâmicas, acabei unindo o útil ao agradável e mergulhei de cabeça no estudo das particularidades e funcionamento do Node.js, ou simplesmente Node para os íntimos 😏.

Pre-requisitos

Assim como tudo na vida, para tirar o melhor proveito possível deste livro, é necessário que você esteja alinhado com os três pré-requisitos básicos listados a seguir:

1 - Ter noções de JavaScript. Sempre que possível, explicarei o código apresentado como exemplo, porém, conforme os capítulos forem sendo vencidos, passarei a focar cada vez mais no funcionamento e menos nos detalhes de implementação. Essa abordagem tem por objetivo evitar que a leitura se torne cansativa;

2 - Ter noções básicas de uso da linha de comandos/terminal, tais como navegar no sistema de arquivos, criar, editar e excluir arquivos/diretórios;

3 - Possuir privilégio (perfil de administrador) para instalação e/ou execução de ferramentas e softwares auxiliares.

O que esperar deste livro

Este livro não tem por objetivo contar a história do Node.js desde os primórdios de seu surgimento... Em respeito ao tempo que você está dedicando a esta leitura, buscarei ser o mais objetivo e prático possível deste ponto em diante!

Tenha este livro como um guia inicial, porém, não limite seus estudos a esta obra, corra atrás de conteúdo extra, participe de comunidades como o Stack Overflow e auxilie outras pessoas sempre que possível.

Chega de papo! Here we go!