Avatar de Caio Carrara

Caio Carrara

Desenvolvedor de software do Brasil

Possui mais de uma década de experiência em engenharia de software. Usuário, apoiador e criador de software livre. Tem um olhar social para a tecnologia.

Como DevOps, dados e IA afetam as práticas de Product Management

tech ai

Principalmente com os últimos avanços no campo da inteligência artificial, muito tem se falado sobre como será a atuação da disciplina de gestão de produtos no desenvolvimento de software. Mas não é somente a IA que promove mudanças. Práticas e disciplinas até anteriores, como devops e engenharia de dados, também influi na atuação dos product managers.

Continuar lendo...

O impacto dos LLMs de código para os profissionais de engenharia de software

tech dev ai

O impacto dos LLMs de Código, como o Copilot, na produtividade dos engenheiros de software tem gerado debates. Um ponto geralmente esquecido, é como esse tipo de ferramenta afeta a formação da próxima geração de profissionais.

Continuar lendo...

Os benefícios de trocar as redes sociais por um livro

midias-sociais

Muito TikTok (ou Instagram etc) faz mal ao cérebro. Para além do senso comum sobre os benefícios da leitura, a neurociência tem revelado um novo olhar sobre os efeitos da leitura no nosso cérebro. Em especial quando comparado com o hábito de consumo das mídias digitais.

Continuar lendo...

Magenta Lo-Fi Player: AI aplicada com criatividade

tech ai

Buscando por alternativas de tocadores de música lo-fi (low fidelity), acabei encontrando o Magenta Lo-Fi Player. Um caso de estudo e aplicação de AI para construção de um tocador de Lo-Fi interativo.

Continuar lendo...

Reflexões sobre times de plataforma após ler a pesquisa DORA de 2024

dev tech devops

O relatório DORA de 2024 diz que a pesquisa anual detectou que a "engenharia de plataforma" causou um efeito negativo inesperado: queda da velocidade e na estabilidade das mudanças. Para quem está no mercado, talvez não seja tão inesperado assim.

Continuar lendo...

Python @classmethod - O que é e quando usar

dev python

Python possui uma funcionalidade específica para modificação de métodos que é capaz de torná-los métodos de classe. Nesse post eu falo um pouco sobre o que exatamente é um método de classe, quando é interessante utilizá-lo e quais os riscos envolvidos em sua má utilização

Continuar lendo...

Porque saí do GitHub Pages

soberania-digital indieweb

Após mais de 4 anos utilizando o serviço GitHub Pages para hospedar meu site/blog pessoal resolvi que era hora de mudar. Nesse post eu faço uma autoanálise dos princípios nos quais essa minha decisão foi baseada: liberdade, autonomia, transparência, responsabilidade e diversão.

Continuar lendo...

Code Reviews: minha experiência no OpenStack

dev opensource

Muito se fala a respeito de contribuições em projetos Open Source (de código aberto) e revisões de código. Nesse post eu pretendo relatar um pouco sobre como foi minha experiência com Code Reviews em um projeto embrionário do Open Stack onde acabei me tornando core commiter.

Continuar lendo...

Do Python ao Infinito e Além!

dev carreira python

Muitas pessoas tem me perguntado como começar a estudar Python ou mesmo o que precisa aprender para arrumar um emprego e trabalhar com Python a maior parte do tempo. Com as experiências me relacionando com essas pessoas que desejam iniciar no desenvolvimento Python e na programação de uma forma mais ampla, percebo que o foco ainda está um pouco limitado sobre o que realmente significa trabalhar com desenvolvimento de software hoje em dia. Pensando em explorar um pouco esse tema vamos fazer uma viagem que irá do Python ao Infinito e Além!

Continuar lendo...

Classes e atributos em Form Fields no Django

dev python django

Nesse post eu falo sobre a distinção de responsabilidades entre Fields e Widgets no sistema de formulários do Django e um potencial problema nessa maneira de abstrair o Form quanto à sua apresentação. Assim sendo eu proponho uma maneira de se trabalhar utilizando a lib django-widget-twaks para solucionar o problema apresentado, reforçando a separação de responsabilidade entre a camada de apresentação e a de lógica de negócios.

Continuar lendo...

Regras de negócio usando Domain Driven Design

arquitetura dev

O objetivo desse post não é explicar o Domain Driven Design, mas sim tentar ajudar a desmistificar uma dúvida que pode ser recorrente dos que começam a desenvolver software orientado ao domínio: como organizar a lógica de negócio evitando o modelo anêmico.

Continuar lendo...

tech | ai | dev | midias-sociais | devops | python | soberania-digital | indieweb | opensource | carreira | django | arquitetura |