Category: Desenvolvimento

Somo: Uma alternativa amigável ao netstat para monitoramento de sockets e portas no Linux

2025-06-09
Somo: Uma alternativa amigável ao netstat para monitoramento de sockets e portas no Linux

Cansado da complexidade do netstat? O Somo é uma ferramenta de monitoramento de sockets e portas mais amigável para Linux. Ele exibe informações em uma visualização de tabela limpa, suporta várias opções de filtro (protocolo, porta, endereço IP, nome do programa, etc.) e oferece a opção de matar processos interativamente. A instalação é fácil, com suporte para pacotes .deb para Debian e instalação via Cargo. O uso de sudo permite visualizar todos os processos e portas. Em resumo: O Somo torna o monitoramento de portas no Linux mais simples, eficiente e amigável.

Desenvolvimento

Apple WWDC2025: Aprimorando as Ferramentas para Desenvolvedores para o Futuro dos Apps

2025-06-09
Apple WWDC2025: Aprimorando as Ferramentas para Desenvolvedores para o Futuro dos Apps

A Apple anunciou na WWDC2025 importantes atualizações para ajudar os desenvolvedores a criar aplicativos mais inteligentes, bonitos e envolventes. O Xcode 26 integra grandes modelos de linguagem como o ChatGPT, aumentando a eficiência da codificação. A nova estrutura Foundation Models permite que os desenvolvedores aproveitem a IA no dispositivo para aplicativos inteligentes offline e que protegem a privacidade. Uma linguagem de design aprimorada, 'Liquid Glass', traz uma experiência visual renovada. Outras melhorias incluem ferramentas de desenvolvimento de jogos atualizadas, recursos aprimorados de segurança online para crianças e maior acessibilidade na App Store. Essas ferramentas e recursos poderosos visam ajudar os desenvolvedores a criar a próxima geração de aplicativos excepcionais.

Desenvolvimento Desenvolvedores Apple

Por que Go é uma boa escolha para agentes

2025-06-09

Este artigo explora as vantagens de usar Go para construir agentes de IA. O autor argumenta que o crescimento dos agentes de IA exige alta concorrência, processos de longa duração e gerenciamento eficiente de recursos. Go se destaca nessas áreas devido às suas goroutines leves, modelo de concorrência eficiente, biblioteca padrão robusta e mecanismos de cancelamento convenientes. O artigo compara Go com outras linguagens como Python e Node.js, destacando o manuseio superior de concorrência, gerenciamento de memória e tratamento de erros do Go. Um exemplo de código ilustra a abordagem elegante do Go para comunicação entre agentes e gerenciamento de estado. Embora reconheça a relativa falta de bibliotecas de aprendizado de máquina em Go, o artigo defende fortemente o Go como a escolha ideal para construir agentes de IA de alto desempenho e escaláveis.

Desenvolvimento

Glowstick: Operações de Tensor Seguras e Eficientes em Rust

2025-06-09
Glowstick: Operações de Tensor Seguras e Eficientes em Rust

Glowstick é uma crate Rust que torna o trabalho com tensores seguro, fácil e divertido, rastreando as formas dos tensores no sistema de tipos. Ele oferece uma variedade de operações de tensor, incluindo multiplicação de matrizes, convolução, reformulação, compressão, achatamento e muito mais. Integrando-se perfeitamente com frameworks populares de ML Rust como Candle e Burn, Glowstick capacita os desenvolvedores Rust com poderosas capacidades de computação de tensor, simplificando significativamente o desenvolvimento de modelos de aprendizado profundo. Observe que o projeto está atualmente na versão pré-1.0 e sujeito a alterações significativas.

Desenvolvimento

Guia Moderno para OAuth 2.0: Além das Especificações

2025-06-09
Guia Moderno para OAuth 2.0: Além das Especificações

Este não é apenas mais um guia OAuth 2.0; é um mergulho profundo no uso do OAuth no mundo real, baseado na experiência de construir o FusionAuth, um servidor OAuth com mais de um milhão de downloads. O guia detalha oito modos OAuth comuns, incluindo login local, login de terceiros, login corporativo, autorização de serviço e autenticação máquina-a-máquina, explicando o fluxo de trabalho e as considerações de segurança de cada modo. Ele também examina a concessão de código de autorização, PKCE, JWTs, atualização de token e recuperação de informações do usuário, oferecendo conselhos práticos de implementação.

Desenvolvimento

Prêmio Gödel para Extração de Dois Fontes Explícita

2025-06-09
Prêmio Gödel para Extração de Dois Fontes Explícita

O Prêmio Gödel de 2025 foi concedido a Eshan Chattopadhyay e David Zuckerman por seu trabalho inovador, "Extrator de duas fontes explícitas e funções resilientes", publicado no STOC 2016 e nos Anais de Matemática de 2019. Este trabalho melhora significativamente a construção de grafos de Ramsey, alcançando um limite exponencial que supera os métodos anteriores. O resultado é elogiado por suas implicações na derandomização e sua aplicação surpreendente à teoria de Ramsey, gerando debates sobre seu duplo significado em pseudorandomness e combinatória.

EU OS: Uma distribuição Linux comum para o setor público (mas não um projeto da UE)

2025-06-09
EU OS: Uma distribuição Linux comum para o setor público (mas não um projeto da UE)

O EU OS não é um projeto oficial da União Europeia, mas deveria ser. É uma prova de conceito de uma distribuição Linux baseada no Fedora, usando KDE Plasma e contêineres inicializáveis, projetada para organizações do setor público. Seu valor reside em fornecer um sistema operacional base comum com opções para modificações em camadas (nacional, regional, organizacional). Isso garante um ambiente de área de trabalho consistente, gerenciamento de usuários e tratamento de dados. O EU OS também é parceiro do HackDays e do endof10.org, promovendo a adoção do Linux.

Desenvolvimento Setor público

Software é sobre Promessas: Um Estudo de Caso em Ciência de Bibliotecas Pessoais

2025-06-09
Software é sobre Promessas: Um Estudo de Caso em Ciência de Bibliotecas Pessoais

Este artigo explora o papel crucial das 'promessas' no desenvolvimento de software. O autor argumenta que as promessas de um desenvolvedor aos usuários, como uma especificação de produto, devem ser claras e testáveis. Usando 'Your Commonbase', um software de biblioteca pessoal, como estudo de caso, o artigo demonstra como decompor a funcionalidade do software (armazenar, pesquisar, sintetizar, compartilhar) em promessas específicas e alcançáveis e priorizar o desenvolvimento com base nos recursos. O autor destaca como promessas claras protegem os desenvolvedores, os usuários e a integridade do software.

Desenvolvimento Promessas Estudo de Caso

tcpulse: Gerador de Carga de Rede de Alto Desempenho em Go

2025-06-09
tcpulse: Gerador de Carga de Rede de Alto Desempenho em Go

tcpulse é uma ferramenta de geração de carga de conexão TCP/UDP e medição de desempenho de alto desempenho escrita em Go. Ela opera nos modos servidor e cliente, permitindo testes de carga, medição de desempenho de estabelecimento de conexão, teste de desempenho de conexão sustentada, comparação de protocolos e validação de infraestrutura. O modo cliente oferece padrões de conexão persistentes e efêmeros para simular vários cenários de aplicativos. O tcpulse fornece métricas em tempo real (percentis de latência, taxa de transferência, contagens de conexão), limitação de taxa, suporte para vários destinos, suporte a protocolos TCP/UDP e otimizações de plataforma. Os resultados são gerados no formato JSON Lines para fácil integração com ferramentas de monitoramento e análise.

Backend x86 nativo do Zig acelera a compilação em 70%

2025-06-09

A equipe do compilador Zig anunciou que seu backend x86 nativo agora está pronto para produção, oferecendo melhorias significativas de velocidade. Em comparação com o backend LLVM, o backend Zig apresenta uma aceleração de compilação de 70%, reduzindo os tempos de compilação de 75 segundos para 20 segundos em projetos grandes. Isso é atribuído a otimizações na geração de código e processamento paralelo. Planos futuros incluem suporte aarch64. Esta versão também inclui mensagens de erro UBSan aprimoradas para melhor depuração e suporte aprimorado de compilação cruzada para FreeBSD e NetBSD.

Desenvolvimento Backend x86

Desempenho de E/S de Disco OpenBSD: Mais Threads Nem Sempre São Melhores

2025-06-08
Desempenho de E/S de Disco OpenBSD: Mais Threads Nem Sempre São Melhores

Esta publicação compara o desempenho de leitura/escrita aleatória e latência de um SSD Crucial P3 Plus de 1 TB no OpenBSD 7.7 usando fio(1). Os resultados mostram boa escalabilidade de E/S no OpenBSD, mas aumentar a contagem de trabalhos além de um ponto ideal (6-8 trabalhos concorrentes) degrada o desempenho devido à contenção e à sobrecarga da CPU. Em comparação com o Linux, o OpenBSD mostra mais sensibilidade à concorrência em gravações NVMe. O teste também revela que threads excessivas impactam significativamente a capacidade de resposta da área de trabalho. Testes futuros serão estendidos a armazenamento USB.

Desenvolvimento desempenho de E/S

De Zero a App iOS em Três Dias: Uma Jornada de Desenvolvimento Impulsionada por IA

2025-06-08
De Zero a App iOS em Três Dias: Uma Jornada de Desenvolvimento Impulsionada por IA

O autor, um especialista em produto e GTM com experiência limitada em codificação, criou um aplicativo de gerenciamento de fotos iOS funcional em apenas três dias usando assistência de IA. Aproveitando o Gemini, ele superou desafios como as limitações do CLGeocoder da Apple na China e superou obstáculos de codificação com depuração e aprendizado assistidos por IA. O aplicativo, projetado para compra única em vez de um modelo de assinatura, reflete uma crítica das práticas atuais de marketing de aplicativos iOS.

(mgx.me)
Desenvolvimento

O Mistério do Adaptador Ethernet do Android: Uma Expressão Regular Estúpida

2025-06-08
O Mistério do Adaptador Ethernet do Android: Uma Expressão Regular Estúpida

Este post detalha a frustrante tentativa do autor de usar um adaptador Ethernet USB em seu telefone Android. A investigação revelou que o problema não era a falta de suporte ao driver, mas sim o serviço `EthernetTracker` do Android usando uma expressão regular `eth\d` para corresponder aos nomes das interfaces Ethernet. Adaptadores Ethernet CDC criam interfaces denominadas `usbX`, resultando em não reconhecimento. O autor documenta meticulosamente o processo de depuração, incluindo a obtenção da configuração do kernel e a análise do código-fonte do Android. A causa raiz? Uma expressão regular simples e restritiva. O post mostra habilidades impressionantes de resolução de problemas, mas também destaca uma possível falha no design do Android.

futa: Um Assistente de Terminal Funcionalmente Inútil

2025-06-08
futa: Um Assistente de Terminal Funcionalmente Inútil

futa, alimentado pelo modelo de linguagem grande qwen3, é um assistente de terminal que executa comandos simples de uma maneira incrivelmente intensiva em recursos. Os usuários inserem qualquer texto, e futa usa um modelo de linguagem grande para interpretá-lo e, em seguida, executa o que considera apropriado, potencialmente incluindo (mas não se limitando a) iniciar contêineres Docker ou executar comandos git. futa é caracterizado por superconfiança, explicações prolixas e produtividade extremamente baixa; pode até corromper seu sistema de arquivos. Os desenvolvedores declaram explicitamente que futa é funcionalmente inútil e não são responsáveis por quaisquer danos resultantes. Em resumo, futa é uma ferramenta para entretenimento e para experimentar as peculiaridades da IA, inadequada para ambientes de produção.

Desenvolvimento Ferramenta de Terminal

Compiler Explorer: 92 milhões de compilações por ano e ainda forte

2025-06-08

O Compiler Explorer, o site online de exploração de compiladores, lida com impressionantes 92 milhões de compilações anualmente. Este artigo mergulha profundamente em sua arquitetura, desde o frontend do editor Monaco e o balanceador de carga/CloudFront até a segurança com sandbox nsjail. Para gerenciar essa carga massiva, ele usa o autoescalonamento da AWS e possui quase 4 TB de mais de 3000 versões de compiladores, suportando 81 linguagens. O autor detalha os desafios e soluções em segurança, gerenciamento de versões, suporte multiplataforma (Windows, ARM e GPU) e otimização de custos, mostrando a evolução de um projeto de fim de semana para uma plataforma robusta que atende milhares de desenvolvedores.

Desenvolvimento

Substituindo o servidor REST do Restic por Nginx para backups

2025-06-08

O autor utiliza o Nginx de forma inteligente para substituir a solução de backup do servidor REST do Restic, criando dois hosts virtuais Nginx: somente anexação e administrador. O host somente anexação impede a exclusão de dados, enquanto o host administrador permite operações de gerenciamento. A configuração usa os módulos DAV e LUA do Nginx, empregando alguns truques para lidar com métodos HTTP e códigos de resposta, e usando expressões regulares para modificar a saída JSON do autoindex. Embora a abordagem seja um pouco improvisada, ela é eficaz e eficiente. O autor também discute preocupações de segurança e menciona planos para simplificar a configuração no futuro.

Desenvolvimento

IA: Uma Impressora Que Transcende a Realidade

2025-06-08
IA: Uma Impressora Que Transcende a Realidade

Um departamento de TI ordinário encontra uma impressora mágica: ela pode imprimir documentos de universos paralelos, manipular bandejas de papel em espaço não euclidiano e até mesmo reescrever as leis da matemática! Este artigo relata a conversa do autor com o modelo de IA Claude, começando pelo sistema de impressão LPR e culminando na construção de uma impressora hiper-realista com um stargate, sistemas de defesa de Atlântida e um arsenal multidimensional. Todo o processo mostra as poderosas capacidades de geração criativa da IA e os métodos engenhosos do autor para orientar a IA. O código resultante está cheio de ideias extravagantes, tornando-o bastante humorístico.

Desenvolvimento História de Fantasia

binfmtc: Executando código C como scripts

2025-06-08

Cansado de escrever Makefiles para scripts shell? binfmtc permite que você escreva scripts diretamente em C! Ele usa o mecanismo Linux binfmt_misc para compilar e executar automaticamente seu código C quando o script é executado. Basta adicionar um comentário especial ao seu script C, torná-lo executável e desfrutar da eficiência do C com a conveniência dos scripts shell. Atualmente suporta GCC, G77 e GPC, com planos para suportar mais compiladores como GNAT, Gobjc e Mono.

Desenvolvimento scripting shell

Codificação Agencial: Hype ou Realidade?

2025-06-08
Codificação Agencial: Hype ou Realidade?

Este artigo reflete sobre a experiência do autor com LLMs e avalia criticamente o hype em torno da 'codificação agencial'. Embora os LLMs possam gerar código utilizável, construir projetos de software completos, como um servidor HTTP/2, requer intensa microgerenciamento e supervisão algorítmica. Os LLMs frequentemente travam, exigindo intervenção humana e ajustes de contexto. O autor argumenta que as ferramentas atuais de 'codificação agencial' são amplamente exageradas, seu sucesso dependendo do esforço de engenheiros experientes em vez de capacidades autônomas de LLM. Somente ao abordar o problema da gestão de contexto de LLM seu verdadeiro potencial pode ser liberado.

Desenvolvimento Codificação Agencial

Quadratura de Gauss: Uma Técnica Poderosa de Integração Numérica

2025-06-08

Este post de blog explora a quadratura de Gauss, uma técnica poderosa de integração numérica, especificamente a quadratura de Chebyshev-Gauss. Ela aproxima integrais definidas avaliando a função em nós específicos e somando os valores ponderados. Comparada a métodos tradicionais, ela atinge maior precisão com menos nós, particularmente para integrais no intervalo [-1,1]. O post explica como adaptar intervalos gerais e formas de funções para se adequar à quadratura de Chebyshev-Gauss, demonstrando sua aplicação e vantagens com um exemplo. A técnica foi aplicada na estimativa de taxas de mudanças no nível do mar.

Biblioteca OAuth gerada por IA do Cloudflare: Uma faca de dois gumes

2025-06-08
Biblioteca OAuth gerada por IA do Cloudflare: Uma faca de dois gumes

O Cloudflare construiu uma nova biblioteca de provedor OAuth quase inteiramente usando o Claude LLM da Anthropic. Embora o código seja bem estruturado e os testes sejam aprovados, o autor encontrou problemas de segurança, como configurações CORS excessivamente permissivas, cabeçalhos de segurança padrão ausentes e implementação incorreta da especificação OAuth. Apesar da revisão do código gerado pelo Claude por engenheiros, vulnerabilidades críticas permanecem, destacando os riscos do código gerado por IA, mesmo sob escrutínio. Isso levanta questões sobre a confiabilidade e segurança da programação assistida por IA e o papel crucial da experiência humana em sistemas críticos de segurança.

Desenvolvimento

De Emacs para Obsidian: A jornada de um desenvolvedor em gerenciamento de conhecimento pessoal

2025-06-08

Um desenvolvedor compartilha sua jornada de Emacs para Obsidian. Embora poderoso, o alto custo de manutenção do Emacs levou a uma mudança para o Obsidian, mais amigável ao usuário, juntamente com o método PARA para gerenciar anotações, tarefas e recursos. O autor argumenta que manter um banco de conhecimento pessoal é crucial na era da IA, promovendo o pensamento independente e evitando a dependência excessiva de ferramentas de IA. O Obsidian se torna uma ferramenta para o pensamento independente, não um apêndice de IA.

Fray: Ferramenta de Teste de Concorrência para Java

2025-06-08
Fray: Ferramenta de Teste de Concorrência para Java

Fray é uma ferramenta de teste de concorrência para Java projetada para ajudar desenvolvedores a identificar e depurar condições de corrida difíceis de encontrar que se manifestam como violações de asserção, exceções em tempo de execução ou deadlocks. Usando técnicas avançadas como teste de concorrência probabilístico e amostragem de ordem parcial, o Fray oferece teste de concorrência controlado e reprodução determinística para depurar intercruzamentos de threads específicos. Facilmente integrado em frameworks de teste existentes, como JUnit 5 (usando anotações) e outros, o Fray também fornece plugins Gradle e Maven para configuração simplificada. Contribuições são bem-vindas!

Claude Code: Segurança em Primeiro Lugar, Mas a Que Custo?

2025-06-08

Este post investiga o funcionamento interno do Claude Code da Anthropic, um assistente de codificação. Interceptando as comunicações entre o Claude Code e a API da Anthropic usando o mitmproxy, o autor revela que ele é mais lento e caro do que alternativas como o Cursor. Isso se deve às suas rígidas políticas de segurança e invocações de ferramentas em várias camadas. O Claude Code avalia meticulosamente a segurança de cada comando bash e usa várias ferramentas (View, GlobTool, Bash, etc.) para processar solicitações do usuário, resultando em chamadas LLM extras e aumento de custo. Embora essa abordagem priorize a segurança, ela compromete a eficiência. Embora o Claude Code tenha uma UX superior em comparação com outras ferramentas, seu custo e velocidade exigem otimização adicional.

Desenvolvimento política de segurança

O Pesadelo da Manutenção do Android: Por que a Contagem de Aplicativos da Google Play Store Caiu?

2025-06-08
O Pesadelo da Manutenção do Android: Por que a Contagem de Aplicativos da Google Play Store Caiu?

Um desenvolvedor Android amador com cinco anos de experiência na manutenção do MusicSync, um substituto do Google Play Music + Podcast, compartilha as dificuldades da manutenção de aplicativos Android e explica a queda de 47% no número de aplicativos na Google Play Store. O artigo destaca os desafios significativos em comparação com o desenvolvimento de back-end, incluindo problemas de compatibilidade Java/Kotlin, mudanças drásticas devido a atualizações frequentes de bibliotecas do Google (por exemplo, ExoPlayer, Google Auth), interrupção do suporte para versões mais antigas do Android, atualizações obrigatórias em vários componentes (Android Studio, Gradle, SDKs), mudanças imprevisíveis nas diretrizes de design da IU e a descontinuação ou falta de manutenção de bibliotecas de terceiros cruciais como Picasso, Glide, OkHttp e EventBus. O esquema de dupla versão para versões do Android e níveis de API adiciona ainda mais confusão. A conclusão enfatiza o custo de manutenção mais alto dos aplicativos Android em comparação com o desenvolvimento de back-end.

Desenvolvimento Manutenção de Aplicativos

LLMs: Assistentes de codificação úteis ou assassinos da criatividade?

2025-06-08

Este artigo expressa preocupação com a dependência excessiva de LLMs. Embora reconheça seu potencial para auxiliar na codificação e melhorar a eficiência, o autor argumenta que a dependência excessiva de LLMs enfraquece o pensamento independente e as habilidades de resolução de problemas dos programadores, particularmente para iniciantes, dificultando sua compreensão do conhecimento fundamental de programação e o desenvolvimento do pensamento de programação. O autor também aponta que a qualidade do código gerado por LLMs é inconsistente, propensa a erros e carece de criatividade e arte, podendo levar a uma queda na qualidade do código e até mesmo à desonestidade acadêmica. O autor pede regulamentação e limitações no uso de LLMs, especialmente na educação, para evitar seu impacto negativo no aprendizado e na criatividade dos alunos.

Desenvolvimento

Criando Imagens de Disco Rígido no DOSBox-X

2025-06-08

Este guia explica como criar imagens de disco rígido no DOSBox-X. Você pode usar o menu ou o utilitário de linha de comando IMGMAKE para criar imagens de vários tamanhos, suportando sistemas de arquivos FAT12, FAT16 e FAT32. Observe que o driver integrado do Windows 98 tem limitações para discos maiores que 128 GB; imagens maiores podem exigir drivers de terceiros. O guia fornece exemplos usando modelos predefinidos e tamanhos personalizados e aponta as limitações encontradas ao criar partições FAT32 maiores que 32 GB no Windows 98 e posterior.

Desenvolvimento Imagem de Disco Rígido

arXivLabs: Projetos Experimentais com Colaboração da Comunidade

2025-06-08
arXivLabs: Projetos Experimentais com Colaboração da Comunidade

arXivLabs é uma estrutura que permite a colaboradores desenvolverem e compartilharem novos recursos do arXiv diretamente no nosso site. Indivíduos e organizações que trabalham com o arXivLabs abraçaram e aceitaram nossos valores de abertura, comunidade, excelência e privacidade dos dados do usuário. O arXiv está comprometido com esses valores e trabalha apenas com parceiros que os respeitam. Tem uma ideia para um projeto que agregará valor à comunidade do arXiv? Saiba mais sobre o arXivLabs.

Desenvolvimento

arXivLabs: Projetos Experimentais com Colaboradores da Comunidade

2025-06-08
arXivLabs: Projetos Experimentais com Colaboradores da Comunidade

arXivLabs é uma estrutura que permite que colaboradores desenvolvam e compartilhem novos recursos do arXiv diretamente em nosso site. Indivíduos e organizações que trabalham com o arXivLabs adotaram e aceitaram nossos valores de abertura, comunidade, excelência e privacidade dos dados do usuário. O arXiv está comprometido com esses valores e trabalha apenas com parceiros que os respeitam. Tem uma ideia para um projeto que agregará valor à comunidade do arXiv? Saiba mais sobre o arXivLabs.

Desenvolvimento

Além da 'Programação Vibe': Guia prático para enviar código real com o Claude

2025-06-07

Esta publicação detalha a experiência da equipe do autor em aumentar a eficiência do desenvolvimento de software usando o Claude. Ela critica os riscos de depender apenas da 'programação vibe' de IA, enfatizando a importância de práticas robustas de desenvolvimento. Três modos de desenvolvimento assistido por IA são propostos: IA como primeira versão, programador em par e validador. O artigo destaca o papel crucial da documentação CLAUDE.md e dos comentários de ancoragem em projetos em larga escala e sublinha a importância primordial de escrever testes — uma tarefa que a IA nunca deve realizar. O autor enfatiza que os testes representam a intenção humana e são essenciais para prevenir erros introduzidos pela IA. A discussão abrange ainda a gestão de tokens, novas sessões do Claude, o fomento da cultura certa na equipe e oferece conselhos práticos.

Desenvolvimento
1 2 64 65 66 68 70 71 72 214 215