Muito obrigado por assinar e espero que você goste do conteúdo! Não esqueça de preencher o feedback no final da newsletter para eu saber o que você quer ver por aqui nas próximas edições!
Vamos falar sobre Deno
Estaria o Node finalmente morrendo depois de 10 anos? Bora descobrir o que o mais novo/velho runtime criado pelo mesmo criador do Node pode oferecer para a gente e se ele vai mesmo ser uma boa alternativa ao nosso tão amado Node.
Proposal: Js Module Blocks
E se o JavaScript fosse tão bom em mais de um thread como se ele se comporta hoje com uma só? Vamos entender as sobre Block Expressions!
Entendendo criptografia construindo sua própria máquina
E se eu te falasse que a gente pode recriar uma das máquinas mais importantes da história usando somente JavaScript? E com isso a gente vai apresenta vários conceitos de criptografia e entender um pouco mais sobre como podemos manter a segurança nos nossos apps.
Links do mês
Entendendo Redis no nível arquitetural
Esse é um daqueles artigos que você vai usar uma vez na vida, mas que são extremamente interessantes de se ler e entender.
Aqui o autor está explicando como funciona o Redis desde o básico até o nível mais arquitetural possível. O Redis é um serviço de banco de dados open source que usa o paradigma de armazenamento de dados de chave-valor em memória, ou seja, ele é EXTREMAMENTE rápido.
Hoje o Redis está presente em quase todas as aplicações web por conta de como ele consegue lidar muito bem com caches e por ter uma funcionalidade de TTL (time to live) nativa, o que torna ele perfeito para armazenamento de dados locais por um curto periodo de tempo.
Como one-time-passwords funcionam
Um artigo super breve (até demais) explicando como funcionam os tokens de autenticação única, os famosos TOTPS ou Time-based One-Time-Passwords que a gente usa em autenticação de dois fatores.
A ideia básica é que você tem um contador que seja um valor comum entre o cliente e o servidor, geralmente é o tempo (contado desde 1970) dividido por um número de segundos que é a duração da chave, por padrão, 30s.
A chave em si é uma cifra HMAC que usa uma chave acordada entre o cliente e o servidor para encodar o contador, ou seja, a mensagem criptografada é, na verdade, o contador de tempo, isso que faz com que ela seja de uso único.
Depois temos algumas leituras de bits (que estão mais especificadas no artigo) e podemos obter a nossa chave final
Conheça o RaDash, sucessor do LoDash
Como se o LoDash já não fosse ruim o suficiente, agora a gente tem uma versão funcional do que é provavelmente a biblioteca mais desnecessária que todo mundo continua usando.
Nesse artigo, o próprio autor do projeto mostra alguns dos muitos problemas que o LoDash tem até hoje e também é sensato em dizer que ele foi criado para uma época onde o JavaScript era mais simples, porém muito mais confuso, o que é justo.
Depois ele mostra a solução para esse problema e, pasmem, é criar outra biblioteca. Dessa vez misturando conceitos funcionais do RamdaJS com as funções que o LoDash já tinha, a ideia final ficou bastante interessante como uma prova de conceito, mas ainda não me convenceu.
Usando Rust para escrever módulos do Node.js
Esse é um artigo super interessante porque mostra que o Rust tem ferramentas nativas que podem criar código JS válido que pode ser importado pelo Node.js
Nesse exemplo, o autor pega uma API do express e faz o mesmo teste usando Rust, mas não só para criar uma função externa, ele cria um módulo completo e compila usando um pacote nativo do Rust chamado nj-cli criando um módulo que pode ser importado diretamente.
7 funções essenciais do JavaScript
Um artigo muito massa sobre as principais funções que todo dev deveria saber que existem na Web e deveriam saber implementar caso necessário, as funções cobertas aqui são:
- Debounce: Reduzir a quantidade de chamadas consecutivas para uma função específica
- Poll: Checagem de estado em intervalos específicos
- Once: Executa uma função uma única vez
- getAbsoluteUrl: Obtém a URL absoluta de uma variável
- isNative: Descobrir se a função é nativa ou não
Foque em atividades importantes
Esse é um dos artigos mais importantes que eu já li, o foco em uma atividade que traz mais ganhos do que tempo investido é essencial. Nesse artigo o Addy Osmani mostra um cálculo que pode mudar a vida de quem tem muitas atividades para fazer, foque somente naquelas que dão o maior ganho.
Por que o Twitter não quebrou
Essa é uma história real e interessante contada por um engenheiro de SRE do Twitter que, depois dos layoffs massivos na empresa, diz que o Twitter se mantem vivo por conta dos sistemas de cache implementados. Pode não parecer, mas a maioria dos tweets e coisas que vemos no site não são em tempo real, a maioria delas é cacheada constantemente e servida em milissegundos.
Como investir em documentação interna
Esse é um artigo super interessante que mostra em 4 passos o que você precisa para começar a fazer sua empresa ou time começar a investir em documentação:
- Comece com uma mudança de cultura
- Pague seus débitos técnicos com uma ideia de MVP
- Organize sua documentação existente
- Traga a documentação para o processo de desenvolvimento