NIH é Mais Barato do que a Dependência Errada

2025-07-18
NIH é Mais Barato do que a Dependência Errada

Este artigo questiona a suposição comum de que dependências de software são sempre benéficas. O autor argumenta que as dependências incorrem em custos significativos, incluindo curvas de aprendizado, sobrecarga de manutenção, riscos de segurança e complexidade de implantação. Usando o banco de dados TigerBeetle como exemplo, o artigo destaca as vantagens de uma política de 'zero dependências'. Uma estrutura para avaliar dependências é proposta, abrangendo ubiquidade, estabilidade, profundidade, ergonomia e estanqueidade. Chamadas de sistema POSIX, códigos de controle de terminal ECMA-48 e a plataforma web são usados para ilustrar a aplicação da estrutura. O artigo conclui incentivando os desenvolvedores a avaliar criticamente os custos e benefícios das dependências antes de tomar decisões.

Leia mais
Desenvolvimento

Arquivos querem ser atores? io_uring e a convergência de paradigmas computacionais

2025-01-04
Arquivos querem ser atores? io_uring e a convergência de paradigmas computacionais

Em aplicações Linux de alto desempenho, o io_uring está revolucionando a interação com o SO. Ele usa filas de submissão e conclusão, permitindo E/S assíncrona sem esperar por chamadas de sistema. Basta colocar operações na fila e continuar a computação. Isso se assemelha notavelmente ao modelo Actor: objetos enviam mensagens para computação concorrente. O envio de operações para descritores de arquivos e o recebimento assíncrono de respostas no io_uring é surpreendentemente semelhante. Isso sugere uma mudança para um comportamento de SO assíncrono e autônomo; métodos tradicionais de chamada de sistema podem ser uma abstração desatualizada.

Leia mais
Desenvolvimento