coding weekly #264

Newsletters - 04/Out/2023 - por Campus Code
A sua newsletter da Campus Code • Edição 264 - Outubro de 2023

Hey! Tudo bem?

Em programação, os contêineres funcionam como um empacotamento de aplicações com todas suas dependências e configurações, tornando-as acessíveis e facilitando seu compartilhamento. Eles criam um ambiente de desenvolvimento completo, garantindo uma unidade padrão de software, e ajudam a compartimentalizar aplicações diferentes em um mesmo sistema operacional, trazendo inúmeros ganhos. Atualmente, Docker é a principal tecnologia utilizada para conteinerização e, por isso, selecionamos artigos para você estudar mais a fundo.

Você também vê como participar da Hacktoberfest - tradicional evento mundial de código aberto -, uma reflexão de como os ciclos de hype influenciam no mundo da tecnologia, uma comparação entre ActiveRecord e Ecto, os comandos Git que você precisa saber e como criar gráficos animados para o LiveView com Echarts.

Boa leitura!

DOCKER

Animação de contêineres vistos de frente, encaixados em 3 andares, mudando de lugar entre si.
Construa seu próprio Docker

Este repositório no GitHub te convida a construir sua própria versão do Docker, oferecendo uma oportunidade de aprender sobre contêineres e sistemas operacionais, além de ajudar a compreender melhor como o Docker funciona, aprofundando sobre a tecnologia.

Recursos não utilizados no Docker

Ao longo do tempo, o Docker pode acumular recursos não utilizados como contêineres, imagens, volumes e redes. Esses recursos consomem espaço em disco e podem tornar o ambiente Docker menos eficiente. Para manter o sistema limpo e liberar espaço, é uma boa prática fazer regularmente o prune (poda, em português) desses recursos, usando os próprios comandos integrados e ferramentas da plataforma. Nesse artigo, você conhece os comandos úteis para essa limpeza, além de acompanhar a possibilidade de automação desse processo para manter um ambiente Docker limpo e eficiente.

Utilizando npm workspaces com Docker

Usar o Docker em conjunto com o gerenciamento de pacotes npm workspaces cria um ambiente de desenvolvimento isolado e consistente. Mas, ao integrar uma aplicação conteinerizada a um ambiente de npm workspaces ou ao conteinerizar um monorepo node existente, podem surgir peculiaridades no tratamento de “node_modules” e “package-lock.json” pelo npm. Este texto aborda os princípios para melhores práticas, evitando problemas como dependências não compartilhadas corretamente ou tamanhos de pacote desnecessariamente grandes, garantindo ambientes de desenvolvimento mais controlados e eficazes.

CAMPUSCODERS INDICAM

Logo da Hacktoberfest 2023.
Hacktoberfest 2023: O guia completo

O Hacktoberfest, tradicional evento mundial de código aberto que ocorre anualmente durante o mês de outubro, é uma excelente maneira de começar no desenvolvimento open source (ou código aberto, em português). No entanto, pode parecer intimidador se você estiver no início da carreira ou nunca tiver contribuído em projetos abertos. Esse artigo traz algumas boas sugestões para fazer parte da edição comemorativa de 10 anos, incluindo repositórios, comunidades, ideias e eventos.

Ciclos de hype

O hype não é um conceito restrito à tecnologia, mas talvez seja possível dizer que, em desenvolvimento de software, ele faz estragos consideráveis. Isso porque é bastante comum aparecerem novas tecnologias que todo mundo AMA e que “vai mudar tudo”, para um tempo depois serem abandonadas pela comunidade. Esse texto traz algumas impressões sobre os ciclos de hype, como eles influenciam a evolução das tecnologias e o impacto disso na área.

Comparando ActiveRecord com Ecto

Ecto é, para uma aplicação Phoenix, o que ActiveRecord é para o Rails: ambos são utilizados para validar dados, além de fazer buscas e inserções no banco de dados. Porém, mesmo tendo um propósito similar, o design dos dois é bastante diferente e, para quem já desenvolve em Rails, pode demorar um pouco para se acostumar com o Ecto. Pensando nisso, nesse artigo você vai ver como fazer as buscas no banco de dados usando o Ecto, referenciando o ActiveRecord do Rails para melhor entendimento de quem já programa neste framework.

Todos os comandos Git que você precisa saber

Git é uma poderosa ferramenta de controle de versão que tem um papel fundamental no desenvolvimento de software. Dessa forma, se familiarizar com os principais conceitos e comandos do Git é fundamental para qualquer pessoa envolvida com essa carreira. Nesse artigo, você vai descobrir diversos comandos essenciais para sua rotina de desenvolvimento.

Criando gráficos animados para o LiveView com Echarts

A criação de gráficos e utilização de bibliotecas de visualização de dados pode ser bastante importante para que pessoas desenvolvedoras possam entender ideias complexas, tornando-as visuais. Pensando nisso, esse artigo traz informações sobre como usar o Apache ECharts com Liveview.

Campuscoders que contribuíram com a curadoria da semana: André Benjamim, Ederson de Lima e João do Vale 💚

Campus Code