Category: Desenvolvimento

Linhas de código: uma métrica falha - Uma anedota da equipe Lisa

2025-06-26

No início de 1982, a equipe Lisa da Apple rastreava a produtividade dos engenheiros por meio de linhas de código. Bill Atkinson, o criador do QuickDraw, considerou essa métrica absurda, priorizando código conciso e eficiente. Ele otimizou o cálculo de região do QuickDraw, alcançando um aumento de velocidade seis vezes maior, enquanto reduzia o código em 2000 linhas. No formulário de produtividade, ele infamemente relatou '-2000'. A gerência sabiamente parou de usar essa métrica falha.

Desenvolvimento Eficiência de Código

O pôr do sol de 32 bits do Fedora ameaça a popular distribuição de jogos para handheld Bazzite

2025-06-26
O pôr do sol de 32 bits do Fedora ameaça a popular distribuição de jogos para handheld Bazzite

A proposta do Fedora Linux de abandonar o suporte de 32 bits gerou controvérsia, ameaçando particularmente a popular distribuição de jogos para handheld Bazzite. O criador do Bazzite, Kyle Gospodnetich, se opõe fortemente à mudança, argumentando que isso mataria projetos como o Bazzite e prejudicaria a imagem pública do Fedora. Ele aponta que, mesmo com pacotes Steam construídos, casos de uso básicos seriam quebrados e o Flatpak não resolveria problemas com a dependência do Bazzite em arquitetura de 32 bits para o modo Steam Big Picture. Atualmente, é improvável que a proposta seja aprovada para o Fedora 44, mas idealmente, a Valve portaria o cliente Steam para 64 bits, resolvendo muitos problemas. A questão também afeta a captura de jogos OBS Studio e FEX.

Desenvolvimento suporte de 32 bits

Ray Tracer CUDA supera Vulkan/RTX em 3x

2025-06-26
Ray Tracer CUDA supera Vulkan/RTX em 3x

Este artigo descreve a jornada do autor na construção de um ray tracer baseado em CUDA que supera uma implementação Vulkan/RTX — às vezes em mais de 3x — em hardware idêntico. Começando com uma porta CUDA ingênua, o autor otimizou sistematicamente o renderizador, abordando recursão, pressão de registradores, layouts de memória e ineficiências de ramificação. Técnicas como pilhas explícitas, estrutura de matrizes, término antecipado de raios e roleta russa foram empregadas, resultando em uma redução do tempo de quadro de 2,5 segundos para 9 milissegundos. O artigo mergulha profundamente nos gargalos de desempenho da CUDA e oferece estratégias práticas de otimização. Benchmarks mostram os ganhos significativos de desempenho alcançados em uma GPU RTX 3080.

Desenvolvimento

Crie um leitor de texto para fala com destaque de frases em JavaScript

2025-06-26
Crie um leitor de texto para fala com destaque de frases em JavaScript

Este artigo o guia na construção de uma ferramenta web simples que utiliza a API SpeechSynthesis do JavaScript para funcionalidade de texto para fala (TTS) e destaque dinâmico de frases. Ele explica como controlar a reprodução de fala, definir parâmetros de voz e rastrear eventos de fala. O artigo também detalha a implementação de destaque em nível de frase usando CSS e JavaScript, culminando em um leitor interativo totalmente funcional com botões de reprodução, pausa, retomada, parada e seleção de voz. O código completo HTML, CSS e JavaScript é fornecido.

Iroh: Revolucionando a comunicação de rede para conexões mais rápidas e simples

2025-06-26
Iroh: Revolucionando a comunicação de rede para conexões mais rápidas e simples

Iroh é uma nova estrutura de comunicação de rede baseada no protocolo QUIC, que permite discagem por chave pública e descoberta e manutenção automáticas da conexão mais rápida. O Iroh tenta conexões diretas, recorrendo a servidores de retransmissão públicos se necessário, com monitoramento contínuo para velocidade ideal. Ele oferece protocolos pré-construídos como iroh-blobs para transferência de arquivos grandes e iroh-gossip para construir redes de publicação-assinatura escaláveis, simplificando o desenvolvimento. Escrito principalmente em Rust, o Iroh também fornece vinculações FFI para outras linguagens.

Desenvolvimento comunicação de rede

LM Studio 0.3.17: Suporte a MCP e Melhorias Multilíngues

2025-06-26
LM Studio 0.3.17: Suporte a MCP e Melhorias Multilíngues

O LM Studio 0.3.17 apresenta suporte ao Model Context Protocol (MCP), permitindo que os usuários conectem vários servidores MCP e os utilizem com modelos locais. Esta versão também adiciona suporte para 11 novos idiomas, corrige vários bugs e melhora a interface do usuário com um novo tema 'Solarized Dark'. O MCP permite que modelos de linguagem grandes acessem ferramentas e recursos; os usuários devem ter cuidado ao instalar servidores MCP de fontes não confiáveis.

Desenvolvimento

Howdy: Autenticação facial estilo Windows Hello para Linux

2025-06-26
Howdy: Autenticação facial estilo Windows Hello para Linux

Howdy traz para o Linux um login com reconhecimento facial semelhante ao Windows Hello. Usando seus emissores de infravermelho integrados e câmera, ele fornece autenticação conveniente. Integrando-se ao PAM, funciona em todos os lugares onde você normalmente usaria uma senha: login, tela de bloqueio, sudo, su, etc. Howdy suporta Debian/Ubuntu, Arch Linux, Fedora e openSUSE, com instruções de instalação detalhadas cobrindo pacotes .deb, AUR, Fedora COPR e compilação a partir da fonte. Importante: A segurança do Howdy não é absoluta e não deve ser usada como seu único método de autenticação.

Desenvolvimento

Crie aplicativos interativos de IA diretamente no aplicativo Claude

2025-06-26
Crie aplicativos interativos de IA diretamente no aplicativo Claude

A Anthropic lançou a capacidade de construir, hospedar e compartilhar aplicativos interativos com tecnologia de IA diretamente no aplicativo Claude. Os desenvolvedores agora podem iterar mais rapidamente em seus aplicativos de IA sem se preocupar com as complexidades e custos de dimensionamento. O Claude cria artefatos que interagem por meio de sua API, transformando-os em aplicativos de IA compartilháveis, onde o uso é cobrado na assinatura do Claude do usuário, e não na do desenvolvedor. O Claude escreve automaticamente o código, lidando com a engenharia de prompts, tratamento de erros e lógica de orquestração. Os recursos incluem o uso de uma API Claude dentro de artefatos, processamento de arquivos, criação de UIs React ricas e bifurcação/personalização de artefatos. As limitações atuais incluem nenhuma chamada de API externa, nenhum armazenamento persistente e uma API de conclusão baseada em texto. Este recurso beta está disponível para usuários dos planos Gratuito, Pro e Max.

Engenharia Reversa de um Driver Linux para o Nanoleaf Pegboard Desk Dock

2025-06-26
Engenharia Reversa de um Driver Linux para o Nanoleaf Pegboard Desk Dock

O autor comprou um Nanoleaf Pegboard Desk Dock, um hub USB com LEDs RGB e ganchos para gadgets, e decidiu escrever um driver Linux para ele, já que ele só suporta Windows e macOS. Após obter a documentação do protocolo do fornecedor, o autor usou Rust e a biblioteca libusb para criar um driver de espaço de usuário. O artigo detalha o processo, incluindo o uso do lsusb para obter informações do dispositivo, lidar com interfaces USB e usar regras udev para permissões de usuário. O autor criou com sucesso um driver simples para controlar os LEDs RGB do Desk Dock e lidar com interrupções do dispositivo. Desafios como ocupação do driver do kernel e tratamento de interrupções foram superados, levando a uma compreensão mais profunda da escrita de drivers de dispositivos USB simples. Embora seja uma prova de conceito simples, destaca que escrever drivers de dispositivos básicos não é tão difícil quanto parece.

Desenvolvimento

Fundador solitário etíope constrói ferramenta de autenticação viral, garante US$ 5 milhões em rodada Seed

2025-06-26
Fundador solitário etíope constrói ferramenta de autenticação viral, garante US$ 5 milhões em rodada Seed

Bereket Engida, um programador autodidata da Etiópia, construiu silenciosamente o Better Auth, uma estrutura de autenticação de código aberto elogiada por desenvolvedores como a melhor que já usaram. O startup deste fundador solo recentemente arrecadou US$ 5 milhões em investimentos iniciais. O Better Auth resolve limitações em ferramentas existentes, oferecendo flexibilidade e armazenamento de dados local, atraindo startups de IA e outras preocupadas com a segurança de dados. Com mais de 150.000 downloads semanais e mais de 15.000 estrelas no GitHub, o Better Auth é um testemunho da habilidade de Engida e uma fonte de inspiração para aspirantes a fundadores africanos.

Desenvolvimento fundador africano

Revolta de Mantenedores de Código Aberto: O Caso Libxml2

2025-06-26

O Libxml2, um analisador XML amplamente utilizado, destaca os sucessos e falhas do modelo de código aberto. Após anos sendo usado por grandes empresas como Apple, Google e Microsoft sem suporte adequado, seu mantenedor, Nick Wellnhofer, está rejeitando acordos de sigilo sobre vulnerabilidades e tratando vulnerabilidades de segurança como bugs comuns. Essa decisão, motivada pelo esgotamento e pela falta de financiamento, gerou um debate sobre a responsabilidade corporativa em código aberto e a necessidade de modelos de manutenção sustentáveis. As ações de Wellnhofer sugerem uma frustração crescente na comunidade de código aberto e podem sinalizar uma mudança na forma como os mantenedores se envolvem com grandes empresas.

Desenvolvimento

QEMU Rejeita Contribuições de Código Geradas por IA

2025-06-26
QEMU Rejeita Contribuições de Código Geradas por IA

O projeto QEMU anunciou uma proibição de envio de patches de código gerados por IA. Devido às incertezas em torno dos direitos autorais e da licença dos dados de treinamento de modelos de IA e aos potenciais riscos legais envolvidos, o QEMU considera difícil garantir a conformidade para o código gerado por IA. Esta política abrange várias ferramentas de IA, como ChatGPT e Copilot, mas não proíbe o uso de IA para outros fins, como pesquisa, análise estática ou depuração.

Desenvolvimento

AccessOwl Contrata: Engenheiro de Software Sênior Elixir (Remoto, SaaS Impulsionado por IA)

2025-06-26
AccessOwl Contrata: Engenheiro de Software Sênior Elixir (Remoto, SaaS Impulsionado por IA)

A AccessOwl, uma startup SaaS lucrativa apoiada pela Y Combinator, está procurando um Engenheiro de Software Sênior especializado em Elixir. Essa vaga totalmente remota exige uma localização a ±3 horas de Berlim. Você colaborará com uma equipe pequena e unida para revolucionar a maneira como as empresas gerenciam suas ferramentas SaaS usando IA. O candidato ideal possui mais de 5 anos de experiência em desenvolvimento de software web, é proficiente em Elixir e prospera resolvendo problemas do mundo real. Salário competitivo, opções de ações e horários flexíveis são oferecidos.

Desenvolvimento

Let's Encrypt Próximo a Suporte para Certificados SAN de Endereço IP

2025-06-25
Let's Encrypt Próximo a Suporte para Certificados SAN de Endereço IP

O Let's Encrypt está próximo de lançar certificados que suportam Subject Alternative Names (SANs) de endereços IP, inicialmente limitados a um perfil de curta duração (6 dias) e com acesso apenas por lista de permissão. O recurso ainda está em desenvolvimento, sem cronograma de lançamento público definido. Um certificado de exemplo e um site que o utiliza são fornecidos, juntamente com discussões sobre bugs descobertos no Firefox e Discourse relacionados a SANs de endereços IP. A postagem também gera debates sobre a validade do uso de endereços IP como nomes DNS em SANs e se o desafio DNS-01 é aplicável a certificados de endereço IP.

Desenvolvimento SAN de Endereço IP

Criando Anúncios de Lançamento de Software Persuasivos

2025-06-25
Criando Anúncios de Lançamento de Software Persuasivos

Este artigo revela os segredos para escrever anúncios de lançamento de software envolventes. O autor enfatiza o foco na melhoria da experiência do usuário, não apenas em uma lista de recursos. Exemplos mostram como traduzir detalhes técnicos em benefícios percebidos pelo usuário – enquadrando correções de bugs como melhorias na experiência do usuário, não apenas como eliminações de bugs. O artigo defende o uso de capturas de tela claras, demonstrações animadas concisas e o planejamento do anúncio no início do desenvolvimento para garantir que ele se relacione diretamente com o valor do usuário, evitando frases vagas como "várias melhorias e correções de bugs."

Desenvolvimento

Hackeando a Transcrição do OpenAI: Acelere seu Áudio, Reduza Seus Custos

2025-06-25
Hackeando a Transcrição do OpenAI: Acelere seu Áudio, Reduza Seus Custos

Quer transcrições do OpenAI mais baratas e rápidas? Acelere seu áudio! Essa solução surpreendentemente eficaz envolve o uso do ffmpeg para dobrar ou triplicar a velocidade do seu áudio antes da transcrição. O autor compartilha um script combinando yt-dlp, ffmpeg e um LLM, mostrando como acelerar uma palestra de 40 minutos reduziu significativamente o tempo de processamento e o custo, com impacto mínimo na precisão da transcrição. Ao explorar alternativas para a legenda automática do YouTube, essa descoberta inesperada revelou economia de custos de até 67%, tornando-se uma otimização vantajosa para quem trabalha com transcrições de áudio de longa duração.

Desenvolvimento Transcrição

Pare de pensar em programação paralela: apenas faça (transparentemente)!

2025-06-25
Pare de pensar em programação paralela: apenas faça (transparentemente)!

Guy L. Steele Jr. argumenta que os programadores não precisam se preocupar com os detalhes específicos da programação paralela. As linguagens devem fornecer maneiras transparentes de executar tarefas em paralelo. Isso requer uma nova abordagem para o design de linguagens, suportando algoritmos baseados em princípios de independência e dividir para conquistar, em vez de decomposição linear de problemas. Sua apresentação foi feita na conferência Strange Loop.

Desenvolvimento programação paralela

Gemini CLI: Seu Assistente de Fluxo de Trabalho de Código com IA

2025-06-25
Gemini CLI: Seu Assistente de Fluxo de Trabalho de Código com IA

O Google Gemini CLI é uma ferramenta de IA de linha de comando que se conecta às suas ferramentas, entende seu código e acelera seus fluxos de trabalho. Ele permite que você consulte e edite grandes bases de código, gere novos aplicativos a partir de PDFs ou esboços, automatize tarefas operacionais e integre ferramentas e servidores MCP para funcionalidades como geração de mídia (Imagen, Veo, Lyria). Também possui integração com o Google Search e oferece vários métodos de autenticação. Basta usar prompts de linha de comando para aproveitar os recursos do Gemini para codificação, resumir alterações, gerar documentação e muito mais, aumentando dramaticamente a produtividade.

Desenvolvimento

Qodo Gen CLI: Automatize seu SDLC com agentes de IA

2025-06-25
Qodo Gen CLI: Automatize seu SDLC com agentes de IA

O Qodo Gen CLI é uma poderosa interface de linha de comando para construir, gerenciar e executar agentes de IA. Os desenvolvedores podem criar agentes personalizados para automatizar fluxos de trabalho em todo o ciclo de vida de desenvolvimento de software (SDLC), integrando recursos de IA em qualquer IDE. Com suporte para LLMs líderes e opções de implantação flexíveis, o Qodo Gen CLI oferece interfaces baseadas em terminal e navegador. Automatize tarefas como revisão de código, geração de documentação e cobertura de testes, aumentando a eficiência e permitindo que os desenvolvedores se concentrem na construção de recursos.

Desenvolvimento automação do SDLC

IA Revoluciona a Criação de Vídeos: Yarn Está Contratando Engenheiros de Topo

2025-06-25
IA Revoluciona a Criação de Vídeos: Yarn Está Contratando Engenheiros de Topo

A Yarn, uma startup, está revolucionando a criação de vídeos com IA. Sua tecnologia inovadora combina IA com produção de vídeo, tornando a criação de vídeos envolventes 100 vezes mais rápida. Apoiada por investidores como a Y Combinator e colaborando com empresas como Clay e Shopify, a Yarn está contratando engenheiros experientes em Nova York. Eles estão procurando indivíduos para construir fluxos de trabalho de agentes centrais, desenvolver ferramentas de edição colaborativa com IA e criar protótipos de modelos de IA de ponta.

Desenvolvimento Produção de Vídeo

Lendo dados do chip NFC de passaporte com Python

2025-06-25
Lendo dados do chip NFC de passaporte com Python

O autor tenta ler os dados do chip NFC de seu passaporte cancelado usando a biblioteca Python pypassport. Como o passaporte foi cancelado, uma parte da MRZ (Zona Legível por Máquina) está faltando. O autor reconstruiu a MRZ a partir de outras informações no passaporte e leu com sucesso as informações do passaporte, incluindo dados biométricos. O artigo detalha a composição da MRZ, os métodos de cálculo de soma de verificação e o processo de leitura, e discute a possibilidade e o valor prático de força bruta na MRZ. Por fim, o autor demonstra que, embora teoricamente possível, a força bruta é muito difícil na prática, e ler as informações diretamente do passaporte é muito mais conveniente e eficiente.

Desenvolvimento Passaporte

Chrome para Android finalmente recebe barra de endereço inferior

2025-06-25
Chrome para Android finalmente recebe barra de endereço inferior

O Google finalmente adicionou um recurso muito solicitado ao Chrome para Android: uma barra de endereço inferior. Os usuários agora podem mover a barra de endereço, o seletor de abas e outros atalhos para a parte inferior da tela, tornando o uso com uma mão muito mais fácil. A atualização é opcional, permitindo que os usuários escolham entre o posicionamento superior e inferior nas configurações. A implantação começa hoje e chegará a todos os usuários nas próximas semanas. Os usuários do iOS obtiveram esse recurso em 2023.

Desenvolvimento Barra de endereço inferior

Remake de código aberto do editor MS-DOS da Microsoft: Uma viagem ao passado

2025-06-25
Remake de código aberto do editor MS-DOS da Microsoft: Uma viagem ao passado

A Microsoft lançou um remake moderno e de código aberto do seu clássico editor MS-DOS, simplesmente chamado de "Edit". Construído com Rust, este editor multiplataforma roda em Windows, macOS e Linux — um desvio significativo de suas origens em 1991 no MS-DOS 5.0. O lançamento encantou usuários de longa data, oferecendo uma viagem nostálgica ao passado, além de fornecer uma alternativa amigável a editores de texto complexos encontrados em algumas plataformas. A interface de tela cheia, o suporte ao mouse e os menus intuitivos contrastam fortemente com seu predecessor, EDLIN, e até mesmo com alguns editores Linux modernos como o Vim, tornando-se uma adição bem-vinda tanto para programadores experientes quanto para iniciantes.

Desenvolvimento Editor MS-DOS

Gnosis Mystic: Habilitando a IA para controlar suas funções Python em tempo real

2025-06-25
Gnosis Mystic: Habilitando a IA para controlar suas funções Python em tempo real

O Gnosis Mystic é uma ferramenta poderosa que fornece a assistentes de IA acesso direto e controle sobre suas funções Python por meio de hijacking de tempo de execução e análise inteligente. Com decoradores mínimos, o Claude pode inspecionar, otimizar e controlar seu código em tempo real. Ele resolve o problema dos assistentes de IA serem cegos ao seu código em execução, sem acesso ao comportamento e estado de tempo de execução, e permite monitoramento de função em tempo real, experimentação segura, controle de tempo de execução, análise inteligente e depuração ao vivo, aumentando significativamente a eficiência do desenvolvimento e a segurança do código.

Desenvolvimento

Subsecond: Correções rápidas para Rust

2025-06-25

Subsecond é uma biblioteca Rust que permite correções rápidas, permitindo alterações de código em um aplicativo em execução sem reinicializações. Isso é inestimável para engines de jogos, servidores e aplicativos de longa execução onde o ciclo editar-compilar-executar é muito lento. Ele também introduz o 'ThinLinking', acelerando drasticamente a compilação do Rust em desenvolvimento. O Subsecond funciona redirecionando chamadas de função por meio de uma tabela de salto, evitando modificação de memória insegura. Uma ferramenta externa compila o código alterado, envia-o para o aplicativo e o Subsecond aplica a correção. Atualmente, ele corrige apenas o crate 'tip' e possui limitações em relação a variáveis globais, estáticas, locais de thread e layouts de struct. Ele suporta plataformas principais, excluindo dispositivos iOS devido a requisitos de assinatura de código.

Como os programadores devem pensar sobre o tempo

2025-06-25
Como os programadores devem pensar sobre o tempo

Este artigo mergulha nas complexidades do tratamento de tempo na programação. Ele explica os conceitos de tempo absoluto (baseado em épocas e durações) e tempo civil (calendário gregoriano e fusos horários), esclarecendo a mecânica dos segundos bissextos e transições de fuso horário e seus desafios inerentes. A importância do banco de dados de fusos horários IANA, que fornece regras históricas e futuras para fusos horários para um tratamento preciso do tempo, é destacada. Três estudos de caso - um fórum de bate-papo, um site de planejamento de eventos e um projeto pessoal - ilustram diferentes estratégias de tratamento de tempo, enfatizando que 'apenas usar UTC' não é uma solução universal.

Escalonamento DPI do X11: Desmascarando o Mito

2025-06-25

O autor desafia a crença comum de que o X11 não suporta escalonamento DPI, desenhando com sucesso um círculo de duas polegadas em várias telas com tamanhos e resoluções diferentes. Usando OpenGL e eventos de configuração do servidor X, o autor ajusta dinamicamente o raio do círculo com base nas dimensões físicas da tela obtidas do servidor X. Apesar de encontrar pequenas imprecisões, como uma discrepância no tamanho relatado da TV, o experimento prova que o escalonamento DPI no X11 é possível. O processo destaca a importância de ignorar as limitações impostas por outros e perseguir tarefas aparentemente impossíveis.

Desenvolvimento escalonamento DPI

Probabilidade de Colisão de Hash: Do Paradoxo do Aniversário às Aproximações

2025-06-25
Probabilidade de Colisão de Hash: Do Paradoxo do Aniversário às Aproximações

Este artigo mergulha na probabilidade de colisões de hash. Funções de hash mapeiam entradas arbitrariamente complexas para números únicos, mas existe o risco de colisões de hash (entradas diferentes mapeando para o mesmo número). Começando com o Paradoxo do Aniversário, o artigo explica a fórmula exata para calcular a probabilidade de colisão de hash e três métodos de aproximação: aproximação exponencial, aproximação simplificada e uma aproximação ainda mais simplificada. Através da comparação, a aproximação exponencial tem o melhor desempenho na maioria dos casos, enquanto as outras duas são mais adequadas para estimativas rápidas. O artigo também fornece provas matemáticas que suportam os métodos de aproximação.

Editor Simples: Uma homenagem moderna ao Editor MS-DOS

2025-06-25
Editor Simples: Uma homenagem moderna ao Editor MS-DOS

Este editor, chamado "edit", é uma versão moderna do clássico Editor MS-DOS, com uma interface contemporânea e controles de entrada semelhantes ao VS Code. Projetado para acessibilidade, é fácil de usar mesmo para aqueles que não estão familiarizados com terminais. Instale a versão mais recente via WinGet ou baixe binários da página Releases. Observe que a versão e as convenções de nomenclatura da biblioteca ICU precisam de atenção para a funcionalidade de pesquisa e substituição.

Desenvolvimento

Scripts Python Simplificados: uv e PEP 723

2025-06-25
Scripts Python Simplificados: uv e PEP 723

Cansado do gerenciamento de dependências do Python para scripts únicos? Diga adeus aos problemas de ambiente com uv, um gerenciador de pacotes e projetos Python ultrarrápido baseado em Rust. Combinado com a especificação de metadados do PEP 723, uv (e sua ferramenta semelhante ao npx, uvx) cria e gerencia sem esforço ambientes virtuais descartáveis, instalando dependências na hora. O artigo mostra como criar um script executável simples para extrair legendas do YouTube, destacando a execução perfeita habilitada por essa combinação poderosa. Sem mais lutas com ambientes virtuais – apenas scripts Python puros.

Desenvolvimento
1 2 44 45 46 48 50 51 52 206 207