wooowwwww, I know that you've always wanted to compare objects in JS as `obj === obj` so I brought good news for you 🤩🔥
Let's begin🧵 /1
I don't know about you but I'm really excited about this feature, let me show you how it works 🔥
/2
The #ECMAScript proposal for the #Record and #Tuple value types is Stage 2 which means that it could change at any time but there're packages and playgrounds for you to try out this feature before it's available on the language.
/3
For me, the feeling is the same as when they added async/await to the JavaScript language.
A real game-changing feature 🤯
/4
The most confusing concept in JavaScript to me is the `const` keyword.
You cannot reassign values such as:
const p = { a : 1}
p = { b : 2 } // error
/5
But you can change its content:
const p = { a : 1}
p.a = 2 // works
p.b = 1 // works
So this `const` is not a real constant and immutable variable, right? 😂
Record and Tuples came to help us fix this problem (and others)
/6
Now, you'll define your immutable variables with a new syntax and it throw errors if you try changing them:
const p = #{ count: 1 }
p.count = 2 // "error: count" is read-only"
p.newProp = 1 // "error: can't define property "newProp": Object is not extensible"
/7
Those two data types will be primitive types on JS which means that you can compare them as you do for strings and numbers, independently of the order:
Aewwww agora simmmmmm, atendendo a pedidos eu trouxe uma super surpresaaaaaaaa 🔥🔥
Boraaaaaaaaa🧵 /1
No ultimo mês estive palestrando em grandes eventos pelo mundo e muita gente acompanhou a parada de perto. /2
Fui para Athenas na Grécia, para Amsterdã em Netherlands palestrar para mais de 2 mil pessoas (como na foto) e por fim em Tel Aviv em Israel para também mais de 2 mil pessoas presencialmente 🚀🚀 /3
Top 5 dicas para resolver problemas de lentidão em apps @nodejs (ou mesmo qualquer app) 🔥🧵 /1
1 - Entenda o motivo da lentidão e timeouts
Essa é a fase de investigação, procure a causa da lentidão e o motivo de sua aplicação não estar entregando os requests em tempo (timeout). /2
Isso pode ser analisado usando ferramentas de Application Performance Monitoring, os APMs, ou até mesmo localmente, com pacotes para testes de carga como o autocannon em Node.js, o wrk da Apache por aí vai /3
Como resolvi um bug no @nodejs que afeta o @Facebook Jest, @yarnpkg e milhares de outros pacotes 🔥🤩
Bora para o 🧵 /1
Para quem não sabe, há um tempo atrás consegui resolver um bug no Node.js que impedia que sub processos se comunicassem com o processo principal quando usássemos #ECMAScript modules /2
Fiz até um vídeo no canal mostrando todo o passo a passo, vou deixar o link no final do post para você assistir depois!
Minha primeira contribuição foi realizada na versão 17 do Node.js, só que até então, o problema não havia sido corrigido na versão corrente /3
Como dobrei a capacidade de resposta de um endpoint adicionando cache de apenas 100 milisegundos 🤯🧵
/1
Até criei um repositório completão para você testar essa prova de conceito, comparando o antes e o depois das alterações. /2
Eu já trabalhei bastante otimizações e caching de informações que são "quase" realtime, em desenvolvimento de uma grande plataforma de Application Performance Monitoring (APM) /3
Top 5 dicas que eu gostaria de ter ouvido quando iniciei em programação 🔥🤩
Segue o 🧵 /1
1 - Você não precisa ser 100% produtivo(a) todos os dias
Isso serve para qualquer área da vida. Não adianta tentar ser produtivo(a) 12 horas por dia todos os dias, seu corpo e principalmente sua mente precisam de descanso. /2
Tem vezes que o dia parece não render bem, mas é normal, isso acontece com todo mundo (e principalmente comigo, até hoje)
A chave é não parar e ir com calma, a consistência é chave no aprendizado /3