Foi bom pra dar uma revisada em Python e nos conceitos fundamentais. O Bacana mesmo é o material so pessoal da Cisco que é muito acessível e tem uma progressão muito bacana.
A Badge foi emitida pela @CiscoNetworking em colaboração com o OpenEDG Python Institute.
É OFICIAL!
Saiu meu mais novo curso, Games in JS, se você sempre quis fazer joguinhos, essa é a hora <3
E para a semana toda, tem um cupom SEMANADOLANCAMENTO.
RT da amizade <3
https://t.co/S3jUoFhJlY
Por recomendação estava lendo o artigo sobre atomic design da alura. Achei bem direto e foi um ótimo primeiro contato com o conceito em uma app simples. Aprovado 👍
Aproveitar a Black Friday e mandar cupom DE GRAÇA como sempre do Curso de React Avançado para quem pediu =)
https://t.co/vwHsBOrr37
Só usar cupom BLACKFREE que vai ficar 0 reais.
Passando pra avisar que É NESTE SÁBADO a Primeira Fase da Maratona SBC de Programação 2024!
Acompanhe a transmissão AO VIVO no YouTube, a partir das 13:30: https://t.co/4VfEZcklxw
[100/100] #100DiasDeCodigo
Completei o desafio!
Foram bem mais que 100 dias. Nesse período aprendi e revisei muita coisa. Fiz 2 grandes cursos e consegui um novo emprego.
Foi um período bem especial e marcante, de muito aprendizado e 1 novo recomeço.
Que venha o novo desafio!
Eu to rindo demais com essa Rinha de devs no @deyvin e não acreditei quando o @lucas_montano, @kipperdev e o @oguscaetano não souberam responder o que era devrel :-(
Vi nos comentários muita confusão sobre isso e preciso esclarecer umas coisas:
- DevRel NÃO é só um cargo de 'influencer' pago pra aparecer em evento, tá? É uma ÁREA COMPLETA com vários papéis importantes e muita bagagem técnica.
A equipe de DevRel inclui: community managers, advocates, evangelistas, Tech Writers e gerentes. Cada um com funções específicas e essenciais.
Nosso trabalho vai muito além de 'aparecer em eventos'. A gente:
- Cria pontes entre devs e empresas
- Ajuda a moldar produtos baseados no feedback da comunidade
- Produz conteúdo técnico de qualidade
- Facilita a adoção de novas tecnologias
Falando em técnico, olha só o que a gente faz no dia a dia:
- Desenvolve SDKs e bibliotecas pra facilitar integração com APIs
- Cria demos e provas de conceito pra mostrar casos de uso avançados
- Escreve documentação técnica detalhada e mantém ela atualizada
- Contribui com projetos open source relacionados
- Faz troubleshooting de problemas complexos reportados pela comunidade
- Cria tutoriais e cursos hands-on pra novas ferramentas e frameworks
- Patrocina comunidades, sponsers para creators, eventos que mantendo muitas vezes TEU CONTEÚDO TECH DE GRAÇA!
- E se tem aqueles brindes uteis que vcs amam, É A GENTE QUE FAZ CASSETAAA! porque a gente sabe o que vocês gostam 😂😂😂😂😂
A gente tá sempre com a mão na massa, testando, codando e aprendendo.
Mas o principal papel da área de devrel é não deixar vocês presos a um sistema legado bizarro toda vez que trocar de CTO, éeee DE NADA! tá?.
A gente ajuda EM PARTES, empresas a tomarem decisões tecnológicas mais inteligentes e alinhadas com as necessidades reais dos devs NO ECOSSISTEMA INTERNO E EXTERNO.
Não somos perfeitos, mas estamos trabalhando duro pra melhorar a vida das pessoas desenvolvedoras e impulsionar inovações na indústria.
Antes de julgarem, dá uma chance pra conhecer melhor o que DevRel faz de verdade.
Garanto que irão se surpreender!
E se tiverem dúvidas técnicas, só chamar que a gente tá aqui pra ajudar. 💻
https://t.co/Ewz1F3IzMY
Bora falar de performance em aplicações web?
Tenho atuado bastante nesse tema, esses são alguns dos principais pontos
- render-blocking resources
- otimização do código
- tamanho de imagens
- latência e cache
- critical path
- tree shaking
- lazy loading
- devtools
➡ Render-blocking resources
Evite recursos bloqueantes como scripts carregados de forma síncrona. Scripts não críticos para a renderização devem ser carregados async
Também observe "third-party scripts", principalmente injetados com GTM e afins que podem estar drenando performance, uma estratégia é adiar ou carregar fora da thread principal usando web workers
➡ Otimização de código
Minificar e otimizar arquivos CSS e JS é uma prática comum presente em todos os bundlers. Mas vale lembrar que grande parte do trabalho ainda fica por sua conta, como evitar imports desnecessários, remover códigos não usados e etc
➡ Tamanho de imagens
Imagens são dos maiores vilões de performance. Sempre que possível, prefira formatos mais leves como WebP ou JPG. Além disso, evite carregar imagens em resoluções maiores do que o necessário (crítico e essencial!) e utilize lazy loading em imagens fora do viewport
➡ Latência e cache
Sempre configure cache corretamente (e com cuidado, cache é um perigo!) para reduzir o número de requisições e o tempo de carregamento Além disso, prefira utilizar CDNs para servir conteúdo estático, reduzindo a latência
➡ Critical path
O critical path é o caminho que o navegador precisa percorrer para renderizar a página. Uma boa estratégia é carregar alguns recursos críticos como de CSS e JS inline, evitando requisições adicionais
➡ Tree shaking
Tree shaking é uma técnica que remove código não utilizado de um bundle. É uma prática comum em bundlers modernos como Webpack e Rollup, mas é importante que o código seja escrito de forma modular para que o tree shaking funcione corretamente. Dessa forma, apenas o código necessário é carregado em pacotes menores e mais eficientes
➡ Lazy loading
Lazy loading é uma técnica que adia o carregamento de recursos como scripts e imagens até que sejam necessários, dessa forma apenas recursos essenciais para a visualização inicial da página são carregados. Isso melhora de forma significativa o tempo de carregamento da aplicação
➡ DevTools
Além de métricas geradas Lighthouse, a aba "performance" fornece bons insumos, mostrando o impacto de cada script no carregamento e uso da aplicação. Checar o "waterfall" dentro da aba "network" também pode ajudar a entender como estão sendo feitas as requisições
Vale lembrar que performance é um trampo contínuo, que deve ser priorizado e monitorado de forma continua
TMJ 🚀
@GodOfCardio77 A sugestão que me deram para esses casos é fazer a publicação como uma recordação. Ainda estou elaborando um formato bom pra postar algumas também.
TypeScript 5.5 is now available! 🎉✨
Now with
✅ Inferred Type Predicates
✅ RegEx syntax checks
✅ The JSDoc @import Tag
✅ ${configDir} for easier tsconfig inheritance
✅ --isolatedDeclarations
✅ Lots of new optimizations
And more! Try it today!
https://t.co/DH6Vm9Fm01
Estou muito feliz em criar um game multiplayer do zero usando #JavaScript
Foi muito trabalho e muito aprendizado durante esse período e falta muito pra criar ainda
#colyseus#ctjs