Category: Desenvolvimento

O Limite de E-mail de 500 Milhas: Um Experimento Curioso

2025-07-09

Uma história engraçada sobre um reitor de universidade incapaz de enviar e-mails além de 500 milhas desencadeou um experimento sobre conectividade de rede e distância de transmissão de e-mail. Ao escrever um código simples de conexão de rede e testar servidores em várias universidades, o autor descobriu que a distância de conexão real é limitada pela localização do servidor e pela infraestrutura de rede, não pela distância física. O experimento revelou, por fim, o impacto da computação em nuvem e da distribuição geográfica dos servidores de e-mail na transmissão de e-mail, tornando o limite de 500 milhas mais uma coincidência do que uma lei física.

Cinco maneiras de modelar dados polimórficos em bancos de dados relacionais

2025-07-09
Cinco maneiras de modelar dados polimórficos em bancos de dados relacionais

Este artigo explora cinco abordagens para modelar dados polimórficos em bancos de dados relacionais: tabela única, chaves estrangeiras anuláveis, união rotulada, chaves estrangeiras de filho para pai e JSON. Cada método tem seus prós e contras; por exemplo, a abordagem de tabela única é simples, mas pode ser lenta, enquanto JSON é facilmente extensível, mas carece de validação de dados. O autor sugere escolher o método mais fácil de ler, manter e depurar e evitar otimização prematura.

arXivLabs: Projetos Experimentais com Colaboradores da Comunidade

2025-07-09
arXivLabs: Projetos Experimentais com Colaboradores da Comunidade

arXivLabs é uma estrutura que permite a colaboradores desenvolverem e compartilharem 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

libpostal: Uma potência de PLN para endereços globais

2025-07-09
libpostal: Uma potência de PLN para endereços globais

libpostal é uma poderosa biblioteca C que analisa e normaliza endereços de rua em todo o mundo usando PLN estatística e dados abertos. Suporta vários idiomas, transformando endereços de formato livre em formatos legíveis por máquina, ideais para aplicativos de geocodificação. A biblioteca oferece vinculações para várias linguagens e aceita contribuições para melhorar sua precisão e alcance global. Oportunidades de patrocínio estão disponíveis para organizações que utilizam suas capacidades.

Desenvolvimento análise de endereço PLN

Xenharmlib: Uma biblioteca Python para explorar a teoria musical não ocidental

2025-07-09
Xenharmlib: Uma biblioteca Python para explorar a teoria musical não ocidental

Xenharmlib é uma poderosa biblioteca Python para explorar várias teorias musicais, incluindo sistemas musicais tradicionais ocidentais e não ocidentais. Ele suporta afinações microtonais e macrotonais, teoria de conjuntos diatônicos e pós-tonais e notações não padrão. Projetado para compositores e pesquisadores, ele oferece um conjunto de ferramentas fácil de usar e extensível para explorar diferentes conceitos de relações harmônicas com foco científico. A biblioteca suporta vários sistemas de afinação e inclui ferramentas para analisar intervalos, escalas e seus relacionamentos.

Desenvolvimento

Brut: Uma estrutura web Ruby simples, porém poderosa

2025-07-09

Brut é uma estrutura web simples, porém completa, para Ruby, que abandona controladores, verbos e recursos em favor de páginas, formulários e manipuladores de ação única. Os desenvolvedores escrevem HTML diretamente, gerado no lado do servidor, com total liberdade para usar JavaScript e CSS. O Brut possui instrumentação OpenTelemetry integrada, uma camada de acesso a dados alimentada por Sequel e ferramentas de linha de comando baseadas em OptionParser, e é facilmente implantável com o Docker. Ele simplifica o processo de desenvolvimento, permitindo que os desenvolvedores se concentrem na lógica de negócios e aproveitem a construção de aplicativos web.

Desenvolvimento

Explorando o MCP do Supabase para vazar tabelas SQL privadas

2025-07-09

Pesquisadores descobriram uma vulnerabilidade que permite que atacantes vazem tabelas SQL privadas de um desenvolvedor explorando a integração MCP do Supabase. Uma mensagem de ticket de suporte cuidadosamente elaborada engana o assistente LLM para executar consultas SQL, contornando a segurança de nível de linha e acessando dados sensíveis, como tokens OAuth. A vulnerabilidade decorre dos privilégios excessivos de acesso ao banco de dados do assistente LLM (service_role) e de sua confiança cega no conteúdo enviado pelo usuário. As mitigações incluem o uso do modo de leitura somente quando possível e a adição de um filtro de injeção de prompt.

Desenvolvimento

RapidRAW: Editor de Imagens RAW com Aceleração de GPU Criado por um Jovem de 18 Anos

2025-07-09
RapidRAW: Editor de Imagens RAW com Aceleração de GPU Criado por um Jovem de 18 Anos

Um desenvolvedor de 18 anos criou o RapidRAW, um editor de imagens RAW com aceleração de GPU de alto desempenho para Windows, macOS e Linux, em apenas 14 dias usando Rust e React, com a ajuda dos modelos de IA do Google Gemini. Este editor leve (menos de 30 MB) possui mascaramento com IA, recursos de edição generativa e um fluxo de trabalho não destrutivo, tornando-o uma alternativa interessante ao Adobe Lightroom.

Desenvolvimento editor de imagens

Vulnerabilidade de atualização de dependência do Helm: Chart.yaml manipulado pode levar à execução de código local

2025-07-09
Vulnerabilidade de atualização de dependência do Helm: Chart.yaml manipulado pode levar à execução de código local

Uma vulnerabilidade no Helm permite a execução de código local por meio de um arquivo Chart.yaml cuidadosamente elaborado e um arquivo Chart.lock com link simbólico durante as atualizações de dependências. Campos do Chart.yaml são escritos no Chart.lock durante as atualizações. Se o Chart.lock estiver vinculado simbolicamente a um arquivo executável (por exemplo, bash.rc), a atualização das dependências escreverá o conteúdo do Chart.lock no arquivo vinculado simbolicamente, levando à execução de código arbitrário. O Helm v3.18.4 corrige isso; atualize e verifique se há arquivos Chart.lock com link simbólico.

Desenvolvimento execução de código local

Vulnerabilidade de Clonagem de Submódulo Git: Execução Remota de Código via Injeção CRLF

2025-07-08

Uma vulnerabilidade no Git permite que atacantes consigam executar código remotamente em sistemas Unix-like criando um arquivo .gitmodules malicioso. A vulnerabilidade explora inconsistências em como os caracteres de retorno de carro (CR) e alimentação de linha (LF) são tratados. Ao injetar CRLF, um atacante pode modificar os caminhos dos submódulos, fazendo com que o submódulo seja clonado em um diretório inesperado, permitindo a execução de código. Isso foi corrigido; atualize as versões do Git e do Git embutido.

(dgl.cx)

Berry: Uma linguagem de script embarcada leve, rápida e poderosa

2025-07-08
Berry: Uma linguagem de script embarcada leve, rápida e poderosa

Berry é um interpretador de linguagem de script leve, rápido e poderoso, projetado para microprocessadores. Ele possui um compilador de bytecode de uma passagem e uma máquina virtual baseada em registradores, suportando paradigmas de programação imperativa, orientada a objetos e funcional. Sua sintaxe simples e natural, coleta de lixo e FFI (Interface de Função Estrangeira) fácil de usar o tornam amigável ao desenvolvedor. A construção de objetos em tempo de compilação minimiza o uso de RAM, armazenando a maioria dos objetos constantes em segmentos de dados de código somente leitura. Sua tipagem dinâmica e flexibilidade o tornam ideal para incorporação em aplicativos, fornecendo excelente escalabilidade dinâmica.

iOS 26 Beta 3: Liquid Glass ganha um visual fosco

2025-07-08
iOS 26 Beta 3: Liquid Glass ganha um visual fosco

A nova linguagem de design Liquid Glass da Apple no iOS 26 beta 3 passou por uma mudança significativa. Barras de navegação, botões e guias agora são menos transparentes, solucionando reclamações de usuários sobre problemas de legibilidade em versões beta anteriores. Embora pretendesse melhorar a usabilidade, alguns usuários acham que a mudança diminui a estética vítrea distintiva exibida na WWDC, considerando-a um retrocesso. Esta versão beta para desenvolvedores sugere que a Apple ainda está ajustando o design antes do lançamento público em setembro.

Desenvolvimento

epanet-js: Simulação hidráulica revolucionária com código aberto

2025-07-08

epanet-js é um aplicativo web que combina mapas web modernos com o algoritmo de simulação hidráulica EPANET. Construído pela Iterating usando código do projeto Placemark de código aberto, ele oferece uma alternativa baseada em navegador para softwares proprietários caros. Essa ferramenta inovadora desafia o status quo, fornecendo uma solução poderosa e acessível para o planejamento e atualização de sistemas de serviços de água. A biblioteca principal é de código aberto, mostrando o poder da contribuição da comunidade e dos princípios de código aberto.

Desenvolvimento simulação hidráulica

Limitações da macro `#[derive]` do Rust e soluções alternativas

2025-07-08
Limitações da macro `#[derive]` do Rust e soluções alternativas

A macro `#[derive]` do Rust, ao gerar implementações para traits como `Clone`, exige que todos os parâmetros genéricos também implementem `Clone`. Isso limita sua aplicabilidade. O artigo analisa dois exemplos mostrando por que essa restrição impede a compilação do código. O autor propõe duas soluções: enviar um RFC para alterar o comportamento do compilador e escrever uma macro personalizada para contornar a limitação. O autor opta pela segunda opção, planejando implementar macros `derive` mais flexíveis no crate `derive_more` ou em um crate próprio para resolver esse problema.

Desenvolvimento

Lean 4.22: Uma Nova Infraestrutura de Verificação para Programas Imperativos

2025-07-07

O Lean 4.22 apresenta um novo recurso empolgante: uma nova infraestrutura de verificação para provar propriedades de programas imperativos. A postagem usa um exemplo simples — determinar se uma lista contém dois inteiros que somam zero — para demonstrar o uso do recurso e o compara a ferramentas semelhantes, como Dafny e Verus. A nova estrutura, Std.Do, utiliza triplas de Hoare e combina as táticas `mvcgen` e `grind` para simplificar muito o processo de verificação para programas imperativos, mesmo aqueles com fluxo de controle complexo, como loops e retornos antecipados. Ao contrário dos sistemas automatizados que dependem de resolvedores SMT externos, a abordagem de prova interativa do Lean oferece maior confiabilidade, depuração mais fácil e melhor manutenção, tornando-o uma escolha convincente para tarefas de verificação de programas do mundo real.

Ossia Score: Sequenciador Open Source para Performances Audiovisuais Interativas

2025-07-07
Ossia Score: Sequenciador Open Source para Performances Audiovisuais Interativas

O Ossia Score é um sequenciador de código aberto projetado para artistas audiovisuais criarem shows interativos. Ele permite sequenciar OSC, MIDI, DMX, som, vídeo e muito mais em vários softwares e hardwares. Crie partituras interativas e intermediárias, scripts e código ao vivo com JavaScript, ISF Shaders, Faust, PureData ou C++. Interaja com joysticks, Wiimotes, Leap Motions, APIs da web e sensores BLE. Processe imagens por meio de Spout, Syphon, NDI, Shmdata ou Sh4lt; e sonorize conjuntos de dados com suporte CSV e HDF5. Gratuito, de código aberto e funciona em desktops, dispositivos móveis, web e sistemas embarcados (até mesmo Raspberry Pi Zero 2).

tinymcp: Controlando Dispositivos Incorporados com LLMs

2025-07-07
tinymcp: Controlando Dispositivos Incorporados com LLMs

O projeto tinymcp permite que Modelos de Linguagem Grandes (LLMs) controlem dispositivos incorporados por meio do Protocolo de Contexto de Modelo (MCP). Ele utiliza o estado LightDB e as Chamadas de Procedimento Remoto (RPCs) da plataforma Golioth para alcançar isso. Dispositivos existentes podem expor RPCs sem modificação de firmware atualizando o estado LightDB. Um exemplo simples de blinky demonstra como expor o controle de LED a um LLM via tinymcp. Os usuários precisam conectar um dispositivo à plataforma Golioth e executar o servidor tinymcp localmente. Ferramentas como o Inspetor MCP e o Claude Code estão disponíveis para teste e interação com o tinymcp.

Desenvolvimento Dispositivos Incorporados

SUS HDL: Uma Linguagem de Descrição de Hardware Mais Intuitiva

2025-07-07

SUS HDL é uma nova linguagem de descrição de hardware (HDL) que visa simplificar o processo de projeto de hardware. Ao contrário de Verilog ou VHDL, o SUS possui contagem de latência para facilitar o tempo e o pipeline, um compilador que acompanha e exibe aspectos do projeto no editor e recursos poderosos de metaprogramação para gerar LUTs. Sua filosofia principal é uma sintaxe limpa para geração direta de netlists, compatível com ferramentas de síntese tradicionais. Embora exija hardware síncrono, sua facilidade de uso e recursos poderosos o tornam uma alternativa promissora.

Desenvolvimento

ChatGPT mentiu, então nós criamos um recurso

2025-07-07

O scanner de partituras da Soundslice começou a receber muitos logs de erro: capturas de tela de sessões do ChatGPT onde os usuários tentavam enviar tablatura de guitarra ASCII. A reviravolta? O ChatGPT estava afirmando falsamente que a Soundslice suportava isso! Para lidar com o influxo de novos usuários enganados por essa desinformação, a Soundslice criou um importador de tablatura ASCII - um recurso longe de seu roadmap de 2025. Isso levanta a questão: as empresas devem desenvolver recursos em resposta à desinformação gerada por IA?

Desenvolvimento Desinformação de IA

Livro da Springer sobre aprendizado de máquina acusado de citações falsas

2025-07-07
Livro da Springer sobre aprendizado de máquina acusado de citações falsas

Um livro didático de aprendizado de máquina de US\$ 169, "Mastering Machine Learning", publicado pela Springer Nature, foi acusado de conter várias citações falsas. Uma investigação revelou que dois terços de 18 citações verificadas não existiam ou apresentavam erros significativos. Vários pesquisadores citados confirmaram que os trabalhos eram falsos ou que as citações continham imprecisões substanciais. Isso levanta preocupações sobre a confiabilidade do conteúdo gerado por modelos de linguagem grandes (LLM) e a regulamentação de ferramentas de IA na publicação acadêmica. A editora está investigando, mas o incidente destaca os desafios à integridade acadêmica impostos pela escrita assistida por IA.

Desenvolvimento citações falsas

Resolvendo o Wordle com uv e pacotes Python

2025-07-07

O autor anteriormente escreveu um solucionador de Sudoku usando o resolvedor de dependências do Poetry e agora tenta resolver o Wordle usando o uv mais avançado. O artigo detalha como traduzir o problema do Wordle para um problema de dependência de pacote Python, usando inteligentemente o resolvedor de dependências do uv para encontrar a solução. Ao criar uma série de pacotes representando posições de letras e feedback, e definindo dependências entre eles, o autor resolve com sucesso o Wordle usando uv.

Desenvolvimento

Microjax: JAX em duas classes e seis funções

2025-07-07
Microjax: JAX em duas classes e seis funções

Inspirado no Micrograd de Andrej Karpathy, o Microjax é uma biblioteca que replica a funcionalidade do JAX usando apenas duas classes e seis funções. Ao contrário do popular PyTorch, o Microjax adota o estilo de programação mais funcional do JAX. Este tutorial toma emprestado muito da excelente apresentação de Matthew J Johnson de 2017 sobre o autograd, o predecessor do JAX, simplificando-o e empacotando-o como um notebook.

Desenvolvimento

arXivLabs: Experimentos com Colaboração da Comunidade

2025-07-07
arXivLabs: Experimentos com Colaboração da Comunidade

arXivLabs é uma estrutura para o desenvolvimento e compartilhamento de novos recursos do arXiv diretamente no site, de forma colaborativa. Os participantes devem abraçar os valores do arXiv de abertura, comunidade, excelência e privacidade dos dados do usuário. Tem uma ideia para melhorar a comunidade arXiv? Saiba mais sobre o arXivLabs!

Desenvolvimento

Deno 2.4: Bundling, Importações Aprimoradas e Recursos Estáveis

2025-07-07
Deno 2.4: Bundling, Importações Aprimoradas e Recursos Estáveis

O Deno 2.4 chegou com atualizações empolgantes! O comando `deno bundle`, que retornou, suporta a criação de bundles JavaScript de arquivo único, utilizando o esbuild para tree-shaking e minificação. O novo sinalizador `--unstable-raw-imports` permite a importação direta de dados de texto e bytes, simplificando a importação de arquivos que não são JavaScript. O suporte interno ao OpenTelemetry agora é estável, eliminando a necessidade do sinalizador `--unstable-otel`. Além disso, um novo sinalizador `--preload` permite que você execute código antes do seu script principal, o comando `deno update` simplifica o gerenciamento de dependências e o `deno run --coverage` agora coleta cobertura de subprocessos. O gerenciamento de permissões foi aprimorado com suporte para curingas de subdomínio e intervalos CIDR. O suporte ao `package.json` foi aprimorado, incluindo melhor tratamento de exportações condicionais e pacotes npm locais.

Desenvolvimento

Duelo de Formatos Tar: Qual o Melhor?

2025-07-07

Este artigo mergulha em um teste abrangente de compatibilidade de vários formatos tar (v7, ustar, pax, GNU, etc.). Os resultados revelam que o POSIX ustar possui a melhor compatibilidade, enquanto o GNU se destaca com caminhos longos e arquivos grandes. Pax, embora rico em recursos, sofre de compatibilidade ruim. O autor recomenda priorizar o ustar, usar o GNU para caminhos longos e arquivos grandes quando necessário, e ter cuidado com os recursos estendidos do pax para garantir compatibilidade máxima.

Desenvolvimento compatibilidade

A Ascensão do Designer de Chips Full-Stack: Uma Revolução Impulsionada por IA?

2025-07-07
A Ascensão do Designer de Chips Full-Stack: Uma Revolução Impulsionada por IA?

Este artigo explora como a IA pode revolucionar o projeto de chips, permitindo uma abordagem 'full-stack'. Tradicionalmente, as equipes de front-end (projeto RTL) e back-end (geração GDS) trabalham de forma isolada, levando a ineficiências. O autor argumenta que a IA, particularmente os LLMs, podem preencher essa lacuna criando bancos de dados de conhecimento, melhorando a geração de RTL e aprimorando a documentação. Isso encurtará os ciclos de iteração, permitindo que indivíduos ou pequenas equipes gerenciem todo o fluxo de projeto de chips. Essa eficiência aumentada é crucial para navegar pelos custos crescentes de fabricação e ferramentas EDA, e se tornará uma vantagem competitiva fundamental para empresas de projeto de chips.

Desenvolvimento projeto de chips

Truques incomuns do Python em bibliotecas populares

2025-07-07
Truques incomuns do Python em bibliotecas populares

Este artigo revela técnicas menos conhecidas do Python descobertas ao explorar bibliotecas amplamente utilizadas. O autor destaca o uso de `super()` em classes base para herança múltipla cooperativa, o uso de mixins para adição modular de recursos, o uso de importações relativas para pesquisas específicas de pacotes e o uso de `__init__.py` além da declaração de pacote para simplificação da API e inicialização. O artigo também revela o papel de `conftest.py` no reconhecimento de módulos pytest e o valor do estudo de artigos de design de bibliotecas para uma compreensão mais profunda.

Desenvolvimento

systemd-lsp: Eleve a edição de seus arquivos de unidade systemd

2025-07-07
systemd-lsp: Eleve a edição de seus arquivos de unidade systemd

Cansado de lutar com arquivos de unidade systemd? O systemd-lsp muda o jogo. Esta implementação do Protocolo de Servidor de Linguagem (LSP) baseada em Rust fornece realce de sintaxe, diagnósticos, conclusão automática, documentação na passagem do mouse e formatação para seus arquivos de unidade systemd. Construído com Rust para velocidade e segurança, é um único binário autônomo com documentação incorporada, compatível com todos os principais editores habilitados para LSP em Linux, macOS e Windows. A instalação é muito fácil usando o Cargo. Experimente hoje!

Desenvolvimento

Backlog.md: Gerenciamento de Tarefas Nativo em Markdown para Repositórios Git

2025-07-07
Backlog.md: Gerenciamento de Tarefas Nativo em Markdown para Repositórios Git

O Backlog.md transforma qualquer repositório Git em um quadro de projeto autônomo usando arquivos Markdown simples. Esta ferramenta de linha de comando com configuração zero oferece um sistema de gerenciamento de tarefas nativo em Markdown, uma experiência privada offline, uma visualização instantânea do Kanban no terminal, uma interface web moderna, comandos prontos para IA e recursos de consulta avançados. É multiplataforma, licenciado pela MIT e perfeito para gerenciar tarefas diretamente no seu fluxo de trabalho Git.

Desenvolvimento

Entrevista de Programação Assíncrona: Um Desafio com Assistência de IA

2025-07-07

Esta postagem de blog detalha uma questão de entrevista de programação única: implementar uma fila assíncrona, `sendOnce`, garantindo que um cliente de thread único envie apenas uma solicitação a um servidor com falhas por vez. A entrevista avalia a capacidade dos candidatos de lidar com lógica de sinalização complexa, depurar código, programar em um ambiente de thread único e se adaptar a novos requisitos (como atrasos mínimos, envio em lote, mecanismos de cancelamento, tentativas, etc.). O autor também discute o papel da IA nas entrevistas, argumentando que, embora a IA possa auxiliar na codificação, os candidatos ainda precisam de habilidades de revisão de código; o uso eficiente de ferramentas de IA é um novo critério de avaliação.

Desenvolvimento fila assíncrona
1 2 45 46 47 49 51 52 53 214 215