Category: Desenvolvimento

Smartest Kid: Assistente de IA para desktop Windows em Python

2025-03-03
Smartest Kid: Assistente de IA para desktop Windows em Python

Apresentamos o Smartest Kid, um assistente de IA para desktop Windows desenvolvido em Python! Inspirado no SmarterChild, ele possui uma interface de bate-papo simples e limpa e usa a automação COM do Windows para interagir com o Microsoft Office (Word, Excel), imagens e seu sistema de arquivos. Perfeito para usuários do Windows que exploram a automação de desktop com tecnologia de IA. O projeto é de código aberto e aceita contribuições para expandir sua funcionalidade e personalidade.

Implementação Go de alta performance de mecanismos de atenção e camadas Transformer

2025-03-03
Implementação Go de alta performance de mecanismos de atenção e camadas Transformer

A equipe de Pesquisa de Fronteira da takara.ai apresenta a primeira implementação pura em Go de mecanismos de atenção e camadas Transformer, priorizando alto desempenho e facilidade de uso. Esta biblioteca inclui atenção de produto escalar, atenção multi-cabeça e uma implementação completa da camada Transformer, com operações em lote para melhor desempenho e operações de matriz otimizadas para CPU. Ideal para computação de borda, processamento em tempo real, aplicativos nativos em nuvem, sistemas embarcados e implantações de produção. Melhorias futuras incluem codificação posicional, dropout e aceleração CUDA.

Desenvolvimento Mecanismos de Atenção

Repensando o SQLite: Surpreendentemente poderoso em hiperescala

2025-03-03
Repensando o SQLite: Surpreendentemente poderoso em hiperescala

Ao contrário da crença popular, o SQLite não é apenas para aplicativos pequenos. Este artigo argumenta que serviços como Cloudflare Durable Objects e Turso liberam o potencial do SQLite em hiperescala. Essas plataformas atribuem bancos de dados SQLite por entidade, substituindo as complexidades dos bancos de dados particionados. Essa abordagem resolve problemas como esquemas rígidos, alterações de esquema difíceis e operações complexas entre partições. Embora ainda existam desafios — falta de solução open-source auto-hospedada e protocolos padronizados —, a conformidade ACID do SQLite, E/S eficiente e extensões SQL ricas o tornam uma alternativa convincente aos bancos de dados particionados tradicionais.

Desenvolvimento Computação em nuvem

agents.json: Simplificando a Interação de Agentes de IA com APIs

2025-03-03
agents.json: Simplificando a Interação de Agentes de IA com APIs

A Wildcard AI apresenta a especificação agents.json, projetada para otimizar a interação de agentes de IA com APIs. Construída sobre o padrão OpenAPI, ela aborda o desafio de agentes de IA executarem sequências de chamadas de API de várias etapas, adicionando recursos como fluxos e links. O arquivo agents.json descreve os endpoints da API e suas interações, permitindo a execução confiável de chamadas de API por agentes de IA. O pacote Python Wildcard Bridge fornece funcionalidade para carregar, analisar e executar arquivos agents.json, permitindo que os desenvolvedores integrem perfeitamente agentes de IA com APIs simplesmente adicionando um arquivo agents.json.

Desenvolvimento interação com API

Compressão Insana: Reduzindo 10 GB de Dados de Trânsito RATP para 530 KB com Rust

2025-03-03

Este projeto de fim de semana começou navegando no repositório de dados abertos da rede de transporte público de Paris. O autor notou uma seção sobre reutilização de dados, com projetos externos usando esses dados abertos, particularmente o site de status da RATP, que visualiza interrupções históricas. O repositório GitHub contém arquivos JSON consultados a cada 2 minutos por quase um ano, totalizando mais de 10 GB. O autor se perguntou se isso poderia ser melhor comprimido. Esta publicação detalha como eles usaram o padrão de design de interação do Rust para alcançar uma compressão 2000x! As técnicas exploradas incluem otimizar a estrutura do interador, ajustar o esquema de dados e alavancar a interação na serialização. O resultado? Uma redução impressionante de 1,1 GB de arquivos JSON para meros 530 KB.

arXivLabs: Experimentos com recursos impulsionados pela comunidade

2025-03-03
arXivLabs: Experimentos com recursos impulsionados pela comunidade

arXivLabs é uma estrutura experimental que permite a colaboradores desenvolverem e compartilharem novos recursos do arXiv diretamente no site. Participantes, indivíduos e organizações, abraçam os valores do arXiv de abertura, comunidade, excelência e privacidade dos dados do usuário. O arXiv está comprometido com esses valores e apenas se associa a aqueles que os compartilham. Tem alguma ideia para melhorar a comunidade do arXiv? Saiba mais sobre o arXivLabs.

Desenvolvimento

Construindo um Grafo de Rede de Restaurantes Franceses com LLMs

2025-03-03

Este projeto utiliza as avaliações de restaurantes franceses do LeFooding.com para construir um grafo de rede de restaurantes franceses e seus funcionários. Ao utilizar o modelo gpt4o-mini da OpenAI e técnicas de geração estruturada, o autor extrai informações sobre funcionários de restaurantes e suas trajetórias de carreira das avaliações, resultando em um grafo com mais de 5000 nós e arestas. O projeto destaca o poder dos LLMs na extração de informações estruturadas e explora os prós e contras do uso de diferentes LLMs, incluindo otimização de custos. O resultado final é um grafo de rede visual que mostra as conexões entre restaurantes franceses e a progressão da carreira dos funcionários.

FlakeUI: Uma Nova Interface de Usuário Gráfica Baseada em Fractais

2025-03-03
FlakeUI: Uma Nova Interface de Usuário Gráfica Baseada em Fractais

FlakeUI revoluciona a navegação de conteúdo com sua interface gráfica baseada em estrutura fractal, órbita pai-filho e elementos de zoom. Imagine explorar seu conteúdo web não como uma lista simples, mas como um universo fractal dinâmico e explorável. Os usuários navegam nesta interface visualmente impressionante usando cinco gestos intuitivos: arrastar para panorâmica, girar, ampliar, reduzir e rolar para alternar modos. Construído com Javascript, o FlakeUI é perfeito para sites visitados com frequência, como coleções de links selecionados ou catálogos hierárquicos pesquisáveis. O conteúdo é gerenciado por meio de páginas XHTML e configuração XML, suportando navegação por hiperlinks dentro dos nós. Experimente a navegação de conteúdo como nunca antes!

Ninjavis: Visualizando Logs de Construção Ninja

2025-03-03
Ninjavis: Visualizando Logs de Construção Ninja

Ninjavis analisa logs de construção Ninja, extraindo o alvo, o tempo de início e o tempo de término para cada item de construção. Ele gera esses dados em um modelo com uma visualização de linha do tempo simples usando vis.js. Inspirado pelo buildbloat, ajuda a analisar o desempenho da construção. Lembre-se de executar `ninja -t recompact` antes para remover entradas duplicadas no log. A ferramenta oferece uma interface de linha de comando limpa para gerar perfis de construção.

Desenvolvimento ferramentas de construção

uBlock Origin e a Depreciação do Manifest V3 no Chrome

2025-03-03
uBlock Origin e a Depreciação do Manifest V3 no Chrome

A partir do Chrome 127, usuários do uBlock Origin (uBO) verão avisos devido à depreciação das extensões Manifest V2. O uBO, uma extensão Manifest V2, não possui um equivalente Manifest V3. Uma alternativa leve, uBO Lite (uBOL), foi lançada, mas com sacrifícios de recursos para compatibilidade com o Manifest V3. Os usuários devem decidir se mudam para o uBOL ou continuam usando o uBO em navegadores como o Firefox. Discussões sobre a extensão do suporte ao Manifest V2 no Chrome até junho de 2025 estão em andamento.

Desenvolvimento

Adeus, ERB! Criando modelos de e-mail em Ruby puro com Phlex

2025-03-03
Adeus, ERB! Criando modelos de e-mail em Ruby puro com Phlex

Cansado de usar ERB para modelos de e-mail em Rails? Este artigo mostra como usar o Phlex, uma biblioteca Ruby, para escrever modelos de e-mail HTML em Ruby puro, eliminando a dificuldade e ineficiência do ERB. O autor detalha as etapas para migrar do ERB para o Phlex, incluindo a criação de visualizações e layouts do Phlex, e o uso do roadie-rails para estilos embutidos, alcançando, finalmente, o objetivo elegante de um aplicativo Rails sem ERB. O artigo também inclui exemplos de código completos e casos de teste para ajudar os leitores a começar rapidamente.

Desenvolvimento Modelos de E-mail

TrapC: Uma extensão mais segura para C

2025-03-03
TrapC: Uma extensão mais segura para C

TrapC é uma extensão da linguagem de programação C projetada para melhorar a segurança de memória. Removendo palavras-chave como `goto` e `union`, e adicionando `trap` e `alias`, o TrapC incorpora recursos do C++, como construtores e destrutores. Ele possui gerenciamento automático de memória, prevenindo vazamentos, e usa gerenciamento de tempo de vida para ponteiros em vez de coleta de lixo. Apesar de seu design minimalista - mantendo a mesma contagem de palavras-chave que C - ele surpreendentemente oferece compatibilidade significativa com código C++. Apresentado em uma reunião da ISO C, o TrapC visa abordar preocupações de segurança de memória de forma mais abrangente do que outras propostas existentes.

Desenvolvimento Extensão de linguagem

CBOR x MessagePack: Um confronto de serialização

2025-03-03

O autor luta para escolher entre MessagePack e CBOR para uma linguagem de programação compartilhada, priorizando desempenho e facilidade de compreensão. Embora o MessagePack tenha uma interface mais simples e acessível, o CBOR demonstra velocidades de codificação/decodificação significativamente mais rápidas (aproximadamente 200% mais rápido em benchmarks). Apesar da documentação mais complexa do CBOR, seu design superior acaba prevalecendo. O autor escolhe o CBOR, mas reconhece a bagagem política que influencia sua decisão.

Desenvolvimento

Tangled: Plataforma de colaboração Git descentralizada baseada no protocolo AT

2025-03-03

Tangled é uma nova plataforma de colaboração Git habilitada para mídia social, construída sobre o protocolo AT, com o objetivo de dar aos desenvolvedores a propriedade total de seu código, permitir que comunidades de código aberto se autogovernem e tornar a codificação novamente social e divertida. Combinando os pontos fortes do modelo federado do ActivityPub e da abordagem P2P do Radicle, ele usa servidores 'knots' leves para simplificar o hosting de repositórios Git. Tangled oferece nós gerenciados gratuitamente e uma visão de aplicativo consolidada em tangled.sh para acesso e colaboração perfeita em toda a rede. Ainda em sua infância, a equipe está construindo com foco em propriedade de dados, baixa barreira de entrada e uma ótima experiência do usuário. Atualmente, apenas por convite.

Desenvolvimento

Yoke: Infraestrutura como código, de verdade

2025-03-03
Yoke: Infraestrutura como código, de verdade

Cansado de ferramentas como Terraform que oferecem apenas configuração, e não código? Yoke permite que você escreva definições de infraestrutura em Go ou Rust, compile-as para WebAssembly e gere manifestos Kubernetes. Isso evita os riscos de segurança de dependências em tempo de execução. O Air Traffic Control, um operador Kubernetes, permite a gestão de infraestrutura declarativa, simplificando a implementação. O autor demonstra como o Yoke, usando Definições de Recursos Personalizados (CRDs), simplifica a implementação de aplicativos e explica seu mecanismo de sandbox de segurança baseado em WebAssembly.

Desenvolvimento infraestrutura como código

VectorChord-BM25: Aprimorando a Busca de Texto Completo do PostgreSQL

2025-03-03
VectorChord-BM25: Aprimorando a Busca de Texto Completo do PostgreSQL

VectorChord-BM25 é uma nova extensão para PostgreSQL que utiliza o algoritmo BM25 e o algoritmo Block WeakAnd para melhorar significativamente a velocidade e a precisão da busca de texto completo do PostgreSQL. Simplifica o processo de busca e integra-se perfeitamente ao PostgreSQL. Em comparação com o ElasticSearch, o VectorChord-BM25 obtém um QPS (Queries Per Second) 3 vezes maior em média para consultas Top 1000 e pontuações NDCG@10 comparáveis ou até superiores, mas requer um alinhamento cuidadoso das estratégias de tokenização para uma comparação justa.

Desenvolvimento

Personagem animado na barra de rolagem: Uma alternativa divertida à barra de rolagem padrão

2025-03-03

Cansado de barras de rolagem chatas? Este projeto substitui a barra de rolagem padrão por um boneco animado que anda para cima e para baixo na página enquanto você rola. O autor criou um primeiro protótipo usando JavaScript simples e planeja adicionar mais personagens como um skatista, um escalador ou até mesmo um esquilo. Que outros companheiros de rolagem devem ser adicionados?

Desenvolvimento barra de rolagem criativa

Chrome prototipa poderosas funções CSS: expandindo as capacidades do CSS

2025-03-02
Chrome prototipa poderosas funções CSS: expandindo as capacidades do CSS

O Chrome está criando um protótipo de Funções CSS, algo que mudará o jogo para o CSS. Isso permite que os desenvolvedores criem funções personalizadas que calculam valores com base em parâmetros e propriedades personalizadas, atuando como propriedades personalizadas avançadas. Por exemplo, uma função `--light-dark()` pode retornar cores ou pesos de fonte diferentes dependendo da preferência do modo escuro do sistema, superando as limitações da função `light-dark()` embutida. Embora ainda esteja em fase de protótipo no Chrome Canary (exigindo o sinalizador Recursos Experimentais da Plataforma Web), isso abre enormes possibilidades para um CSS mais expressivo e flexível.

Desenvolvimento

Usando LLMs em Scripts Bash: A Ferramenta ofc

2025-03-02
Usando LLMs em Scripts Bash: A Ferramenta ofc

Uma nova ferramenta, ofc, simplifica a integração de LLMs Ollama em scripts bash. Permite a troca fácil de prompts do sistema, permitindo a comparação do comportamento do modelo em diferentes prompts. O autor demonstra seu uso na geração de conjuntos de dados para testar o Harper e até mesmo fazendo com que o LLM gere seus próprios prompts para uma análise mais profunda. A instalação é simples via cargo.

Desenvolvimento Scripts Bash

GPUs Nvidia em um Cluster Kubernetes Bare-Metal com NixOS: Uma Aventura na Toca do Coelho

2025-03-02

Para escalar sua estrutura de aprendizado de máquina, MAZE, o autor tentou habilitar o suporte de GPU Nvidia em seu cluster Kubernetes, composto por três mini-PCs e uma estação de trabalho aposentada. Isso se mostrou muito mais desafiador do que o esperado, envolvendo obstáculos como configurar o plugin de dispositivo Nvidia, navegar pelas complexidades de um ambiente NixOS e implantar certificados PKI. Ele finalmente conseguiu, compartilhando suas experiências na implantação de um cluster Kubernetes usando NixOS, Ansible e Sops, juntamente com um mergulho profundo em CRI, CDI, nvidia-container-toolkit e muito mais. Ele também desenvolveu o nix-playground, uma ferramenta para simplificar a correção e a construção de projetos de código aberto, e utilizou o Grok 3 para depuração. Ao longo do caminho, ele encontrou outros desafios, como problemas do PyCharm com WSL NixOS e configuração do Kubernetes RuntimeClass. Toda a jornada, semelhante às Aventuras de Alice no País das Maravilhas, destaca o impressionante poder de execução e as habilidades de resolução de problemas do autor.

Desenvolvimento GPU Nvidia

Rotores vs. Quatérnios para Rotações de Gráficos 3D?

2025-03-02

Este artigo mergulha na teoria matemática e na aplicação prática do uso de rotores para rotações em renderização de gráficos 3D. Os rotores, originários da álgebra geométrica, oferecem uma alternativa potencialmente mais elegante e simples aos quatérnios. O artigo começa com uma explicação teórica de conceitos como o produto vetorial e o produto geométrico, mostrando como eles permitem a reflexão vetorial e a rotação. Em seguida, fornece exemplos de código C++, demonstrando a criação, combinação, inversão de rotores e sua aplicação a transformações vetoriais e geração de matrizes. Finalmente, discute métodos de interpolação de rotores, incluindo nlerp e slerp, analisando seus pontos fortes e fracos.

Desenvolvimento Álgebra Geométrica Rotores

Alucinações de código LLM: não é o fim do mundo

2025-03-02

Uma reclamação comum entre desenvolvedores que usam LLMs para código é a ocorrência de 'alucinações' - o LLM inventando métodos ou bibliotecas inexistentes. No entanto, o autor argumenta que isso não é uma falha fatal. Alucinações de código são facilmente detectáveis por meio de erros de compilador/intérprete e podem ser corrigidas, às vezes automaticamente por sistemas mais avançados. O risco real reside em erros não detectados que só são revelados durante a execução, exigindo habilidades robustas de teste manual e QA. O autor aconselha os desenvolvedores a melhorar suas habilidades de leitura, compreensão e revisão de código e oferece dicas para reduzir alucinações, como tentar modelos diferentes, usar o contexto de forma eficaz e escolher tecnologias estabelecidas. A capacidade de revisar código gerado por LLMs é apresentada como uma valiosa construção de habilidades.

Desenvolvimento

SmallPond: Uma estrutura de processamento de dados leve

2025-03-02
SmallPond: Uma estrutura de processamento de dados leve

SmallPond é uma estrutura de processamento de dados leve e de alto desempenho, construída com DuckDB e 3FS. Ele escala para lidar com conjuntos de dados em escala de petabytes sem exigir serviços de longa execução e suporta Python 3.8-3.12. Sua API simples permite fácil carregamento, processamento e salvamento de dados. Com base no benchmark GraySort em um cluster de 50 nós de computação e 25 nós de armazenamento executando 3FS, o SmallPond classificou 110,5 TiB de dados em 30 minutos e 14 segundos, atingindo uma taxa de transferência média de 3,66 TiB/min.

Desenvolvimento

Aplicativo Web Interativo: Um Orwellial

2025-03-02

Esta postagem descreve um aplicativo web altamente interativo que requer JavaScript. O autor rejeita o termo 'Bluetorial', chamando-o de 'Orwellial' e incluindo um GIF engraçado. Isso sugere que o aplicativo é complexo e interativo, muito além de uma simples interface HTML.

Desenvolvimento Interativo

Matt's Script Archive: Um Tesouro de Scripts CGI Gratuitos

2025-03-02

O Matt's Script Archive (MSA) oferece uma grande quantidade de scripts CGI gratuitos em Perl e C++, incluindo contadores de visitantes, envio de formulários por e-mail, livros de visitas, fóruns de discussão e mecanismos de busca. Esses scripts são populares desde 1995, com milhões de downloads. O MSA também fornece documentação de suporte, um centro de ajuda e serviços de hospedagem pagos para facilitar o uso e a manutenção.

A Armadilha do 'Outro' em Enumerações: Compatibilidade de Versão e Enumerações Abertas

2025-03-02
A Armadilha do 'Outro' em Enumerações: Compatibilidade de Versão e Enumerações Abertas

Este artigo discute as armadilhas de usar um valor 'Outro' (por exemplo, WidgetFlavor::Outro) em enums C++. Adicionar novos valores de enum apresenta um desafio: como lidar com eles e manter a compatibilidade com versões de código mais antigas. O autor sugere evitar o 'Outro' completamente e declarar o enum como aberto, permitindo que os programas lidem com valores não reconhecidos de forma independente. Isso resolve elegantemente problemas de compatibilidade de versão, evitando confusão ao adicionar novos valores de enum e garantindo transições suaves entre códigos antigos e novos.

Desenvolvimento Compatibilidade de Versão

TypeScript 5.8 se Despede das Enumerações: Uma Saída Digna

2025-03-02
TypeScript 5.8 se Despede das Enumerações: Uma Saída Digna

O TypeScript 5.8 introduz a flag `--erasableSyntaxOnly`, efetivamente encerrando a era das enumerações e namespaces. Embora uniões literais ofereçam ergonomia superior, o autor expressa nostalgia pelas enumerações. O artigo destaca uma vantagem-chave das enumerações: suporte de documentação superior para membros, incluindo avisos de depreciação, crucial em grandes bases de código, um recurso que falta em uniões literais. O autor exorta a equipe do TypeScript a melhorar o suporte de documentação para uniões literais em lançamentos futuros.

CSRF, CORS e a Política de Origem Mesma: Uma Disputa de Segurança do Navegador

2025-03-02

Este artigo mergulha nos mecanismos de segurança da web de CSRF (Falsificação de Solicitação entre Sites) e CORS (Compartilhamento de Recursos entre Origens). Embora ambos estejam relacionados a solicitações entre sites, suas funções e mecanismos diferem significativamente. Por padrão, os navegadores impõem a política de mesma origem, restringindo gravações entre sites, mas permitindo leituras entre sites. CSRF explora vulnerabilidades nessa política, enquanto CORS fornece um mecanismo para permitir solicitações entre sites específicas. O artigo analisa o impacto do atributo SameSite em CSRF, o papel crucial dos navegadores na arquitetura de segurança geral e observa que a adoção do padrão SameSite=Lax pelos navegadores afetará diretamente a segurança da Internet.

Desenvolvimento

smallpond e 3FS da DeepSeek: Escalonando o DuckDB para Petabytes

2025-03-02
smallpond e 3FS da DeepSeek: Escalonando o DuckDB para Petabytes

A DeepSeek AI lançou o smallpond e o 3FS, projetados para expandir o banco de dados DuckDB para lidar com conjuntos de dados em escala de petabytes. O smallpond é uma estrutura de processamento de dados distribuída e leve que permite que o DuckDB processe dados em paralelo em vários nós, enquanto o 3FS é um sistema de arquivos paralelo de alto desempenho que utiliza SSDs e rede RDMA para alta taxa de transferência. No entanto, a implantação e o uso dessas ferramentas são complexos, exigindo hardware especializado e experiência em DevOps. Para conjuntos de dados abaixo de 10 TB, uma instância de DuckDB de nó único ou soluções mais simples são mais eficientes. Somente ao lidar com conjuntos de dados massivos o smallpond e o 3FS mostram suas vantagens.

A Ascensão dos Objetos de Negócio Agentes: Dados que Trabalham para Você

2025-03-02
A Ascensão dos Objetos de Negócio Agentes: Dados que Trabalham para Você

Por décadas, os dados de negócios foram passivos, esperando que humanos os processassem. Agora, a IA está dando agência aos dados. Este artigo explora o conceito de Objetos de Negócio Agentes (ABOs), entidades inteligentes que podem autonomamente lidar com fluxos de trabalho, coordenar recursos e até mesmo se comunicar com outros sistemas. Usando o exemplo de uma fatura, o autor demonstra como os ABOs podem gerenciar independentemente os processos de aprovação, pagamento e conciliação. O artigo prevê aplicações em vendas, suporte e RH, transformando a arquitetura de software empresarial e liberando humanos para se concentrarem em trabalhos de maior valor. Essa mudança nos leva de operadores de dados a orquestradores de processos, liberando o potencial humano para criatividade e inovação.

Desenvolvimento Software Empresarial
1 2 147 148 149 151 153 154 155 214 215