Category: Desenvolvimento

Manifest V3 do Chrome: Um pesadelo para desenvolvedores de bloqueadores de anúncios?

2025-02-08
Manifest V3 do Chrome: Um pesadelo para desenvolvedores de bloqueadores de anúncios?

A reformulação da arquitetura de extensão do Chrome Manifest V3 (MV3) do Google continua a causar problemas para os desenvolvedores de bloqueadores de anúncios, filtros de conteúdo e ferramentas de privacidade. Embora o Google afirme que o MV3 visa melhorar a segurança e o desempenho, desenvolvedores como os que estão por trás do AdGuard e do uBlock Origin acham suas restrições muito mais severas do que o previsto, limitando ou mesmo impedindo a funcionalidade principal. Os desenvolvedores reclamam que o MV3 aumenta a dificuldade de desenvolvimento e acusam o Google de respostas lentas aos comentários dos desenvolvedores, chegando mesmo a minar sutilmente as extensões por meio de alterações na interface do usuário. Isso levanta questões sobre as verdadeiras intenções do Google: é sobre melhorar a segurança e a privacidade, ou sutilmente limitar os recursos de extensão?

LLMs falham em OCR complexo: Por que modelos de linguagem grandes têm dificuldades com PDFs

2025-02-07
LLMs falham em OCR complexo: Por que modelos de linguagem grandes têm dificuldades com PDFs

A Pulse, uma empresa que visa extrair dados de planilhas e PDFs, descobriu uma limitação crítica no uso de Modelos de Linguagem Grandes (LLMs) para OCR. Embora os LLMs se destaquem na geração de texto e resumo, eles falham significativamente ao lidar com PDFs e tabelas complexas. A natureza probabilística dos LLMs e seu processamento abstrato de imagens levam a alucinações, perda de dados e interpretações incorretas, representando riscos significativos, especialmente com dados financeiros e médicos. Além disso, os LLMs são vulneráveis a ataques de injeção de prompt, levantando preocupações de segurança e éticas. A Pulse acabou abandonando os LLMs para OCR e está desenvolvendo uma solução personalizada que integra algoritmos tradicionais de visão computacional e transformadores de visão.

Desenvolvimento Extração de Dados

Como a IA está mudando a entrevista técnica

2025-02-07
Como a IA está mudando a entrevista técnica

A crescente proficiência da IA em tarefas complexas, como codificação, está desafiando os métodos tradicionais de entrevista técnica. O autor relata sua experiência, destacando as deficiências das entrevistas de LeetCode e design de sistemas: ênfase excessiva em algoritmos e abordagens formulaicas, desconexão com o trabalho do mundo real. A IA agora consegue passar facilmente em algumas entrevistas técnicas, forçando as empresas a repensar seus processos. O autor propõe incorporar revisões de código, pois elas avaliam melhor a capacidade dos candidatos de avaliar a qualidade do código, segurança, desempenho etc. - crucial na era da IA.

Desenvolvimento Entrevista Técnica

ExpenseOwl: Um Sistema Simples e Minimalista de Acompanhamento de Despesas

2025-02-07
ExpenseOwl: Um Sistema Simples e Minimalista de Acompanhamento de Despesas

Cansado de aplicativos complexos de controle de despesas? O ExpenseOwl oferece uma solução minimalista. Ele usa um simples arquivo JSON para armazenamento de dados, fornece uma visualização moderna em gráfico de pizza dos gastos mensais e possui interfaces de linha de comando e web. Sem configurações complicadas ou recursos desnecessários - apenas adicione, exclua e visualize despesas para gerenciar suas finanças facilmente. O ExpenseOwl também suporta categorias e moedas personalizadas e é facilmente implantado no Docker.

Desenvolvimento rastreamento de despesas

Ferramentas Emerge: Projeto de exemplo de teste de desempenho de aplicativos Android e iOS

2025-02-07
Ferramentas Emerge: Projeto de exemplo de teste de desempenho de aplicativos Android e iOS

Este projeto de código aberto demonstra como usar o conjunto de ferramentas Emerge para análise de tamanho, teste de instantâneos, detecção de código morto e teste de desempenho usando aplicativos de exemplo Android e iOS. Os aplicativos estão disponíveis na App Store e no Google Play, e o repositório inclui documentação abrangente e exemplos de configurações Gradle/fastlane.

Desenvolvimento Teste de desempenho

Zep AI: Construindo a Camada de Memória Fundamental para Agentes de IA de Próxima Geração

2025-02-07
Zep AI: Construindo a Camada de Memória Fundamental para Agentes de IA de Próxima Geração

A Zep AI está construindo a camada de memória fundamental para agentes de IA de próxima geração. Sua tecnologia de grafo de conhecimento em aprendizado contínuo permite que sistemas de IA construam uma compreensão rica e temporal a partir de interações do usuário e dados comerciais. Confiada por líderes do setor como Mattel e WebMD, a Zep aprimora a personalização e a precisão de aplicativos de IA. Eles estão procurando um Engenheiro Sênior para construir soluções inovadoras e escaláveis e moldar a estratégia técnica ao lado do fundador, trabalhando em infraestrutura, APIs e tecnologias de front-end. O candidato ideal terá 7+ anos de experiência prática em engenharia de software, experiência em pelo menos duas de Python, TypeScript ou Go, e um histórico comprovado em arquitetura de sistemas, software em escala de produção e liderança de equipe.

Desenvolvimento

20 Anos de Assinatura de Código do Firefox: Do Manual para o Automatizado

2025-02-07

Este artigo relata a evolução da assinatura de código do Firefox na Mozilla nos últimos 20 anos. Inicialmente, o processo era extremamente manual, exigindo máquinas físicas, pen drives e muitas etapas feitas à mão. Com os avanços tecnológicos, a Mozilla automatizou a assinatura, passando de scripts aprimorados para servidores de assinatura dedicados e, finalmente, adotando o Taskcluster e o serviço Autograph. Hoje, a assinatura de código do Firefox ocorre milhares de vezes por dia, melhorando significativamente a segurança do software.

Desenvolvimento

Pantograph: Um Editor de Estrutura Fluido e Tipado

2025-02-07
Pantograph: Um Editor de Estrutura Fluido e Tipado

Pantograph é um editor de código estruturado revolucionário que opera diretamente em uma árvore de sintaxe tipada, ao contrário de editores tradicionais que analisam texto e depois verificam o tipo. Ao introduzir o conceito de seleção de árvore e "edição de zíper", o Pantograph simplifica a edição de programas existentes, permitindo que programadores façam modificações de código complexas mais facilmente, mantendo a segurança de tipos. Ele lida inteligentemente com diferenças de tipo e permite a existência de alguns erros no programa, facilitando a depuração gradual. O design do Pantograph é genérico para linguagem, permitindo que desenvolvedores definam novos editores com base em sua estrutura.

Os Cinco Chapéus do Programador: Estilos de Codificação Orientados para o Contexto

2025-02-07

Um programador experiente reflete sobre anos de experiência, descrevendo cinco "chapéus" de codificação distintos: Chapéu de Capitão (cuidadoso, deliberado, para sistemas críticos), Chapéu Desleixado (protótipos rápidos, cerimônia mínima), Chapéu MacGyver (experimentação rápida, código desorganizado aceitável), Chapéu de Chef (foco na estética do código) e Chapéu de Professor (priorizando clareza e compreensão do código). O autor argumenta que escolher o estilo de codificação certo com base no contexto é crucial, evitando a adesão dogmática a uma única maneira "correta" para eficiência ideal.

LOD Dinâmico em Three.js: Inspirado no Nanite

2025-02-07
LOD Dinâmico em Three.js: Inspirado no Nanite

Este projeto tenta reproduzir um sistema de LOD dinâmico em Three.js, semelhante ao Nanite do Unreal Engine 5. Ele começa agrupando uma malha em meshlets, agrupando meshlets adjacentes, mesclando-os (vértices compartilhados), simplificando a malha usando o meshoptimizer (reduzindo pela metade os triângulos, máximo 128) e, finalmente, dividindo-a (atualmente em 2, com objetivo de N/2). O projeto está em estágio inicial; trabalhos futuros incluem melhorar os LODs, cortes DAG e streaming de geometria para a GPU. A pesquisa inclui Nanite, estruturas de multirresolução e multi-triangulações em lote.

Desenvolvimento

Engenheiro Fundador: Construa os Sistemas de Dados Impulsionados por IA na PropRise

2025-02-07
Engenheiro Fundador: Construa os Sistemas de Dados Impulsionados por IA na PropRise

A PropRise, uma plataforma de dados imobiliários em rápido crescimento, está buscando um Engenheiro Fundador sênior para projetar e construir sua arquitetura de dados central. Você trabalhará com uma pilha de tecnologias incluindo TypeScript, Next.js, React, Postgres e GCP, manipulando milhões de registros de propriedades. As responsabilidades incluem a construção de pipelines de dados robustos, sistemas de garantia de qualidade que aproveitam a IA e ferramentas internas para detecção mais rápida de outliers. Esta é uma oportunidade de construção do zero, reportando diretamente ao CTO com participação significativa, ideal para engenheiros apaixonados por resolver problemas complexos, entusiasmados com a interseção de IA e qualidade de dados e ansiosos para desempenhar um papel fundamental em uma startup de crescimento rápido.

Desenvolvimento Engenharia de Dados

TRRE: Expressões Regulares Transdutivas – Além do Regex Clássico

2025-02-07
TRRE: Expressões Regulares Transdutivas – Além do Regex Clássico

TRRE é uma extensão experimental de expressões regulares projetada para edição de texto e correspondência de padrões mais intuitivas. Ao contrário do regex tradicional, o TRRE usa o símbolo `:` para definir transformações, simplificando a substituição, inserção e exclusão de texto. Ele fornece uma ferramenta de linha de comando semelhante ao `grep` para tarefas de manipulação de texto eficientes, como substituição de palavras, inserção/exclusão de caracteres e até mesmo criptografia/decriptografia simples. Embora ainda seja um protótipo, o TRRE mostra promessas, especialmente para tarefas complexas, onde seu desempenho pode até superar o `sed` em alguns cenários.

Desenvolvimento

A Ascensão do Software Pessoal: Impulsionado pela IA

2025-02-07

Após uma década desenvolvendo software para outros, o autor experimentou esgotamento. O advento da IA tornou a criação de software pessoal mais fácil do que nunca. Isso levou o autor a abraçar o conceito de software 'pessoal' ou 'egoísta' – focando em resolver seus próprios problemas e tornando os projetos de código aberto. Essa abordagem reacende a paixão, permite iteração mais rápida e utiliza a IA para aprender e resolver problemas de forma eficiente. Mesmo pequenos scripts únicos se tornam agradáveis, promovendo um novo senso de propósito no desenvolvimento.

Desenvolvimento software pessoal

O inevitável verificador de empréstimos no Inko: Uma compensação entre alocação na pilha e verificações em tempo de compilação

2025-02-07

O designer da linguagem Inko explora soluções ótimas para alocação na pilha e verificação de empréstimos. Por padrão, os tipos Inko são alocados na heap, oferecendo flexibilidade, mas incorrendo em sobrecarga de desempenho. Para melhorar o desempenho, um modificador `inline` é introduzido para suportar alocação na pilha, mas isso traz novos desafios: como lidar com empréstimos e semântica de movimentação garantindo a segurança de memória. O artigo explora várias soluções, incluindo permitir atribuições de campo, introduzir tipos exclusivos e análise de escape, concluindo que a verificação de empréstimos em tempo de compilação é a melhor abordagem, mas sua complexidade de implementação é alta e não será implementada em curto prazo. Atualmente, o Inko ainda usa uma estratégia que não permite a reatribuição de campos de tipos inline.

Desenvolvimento

arXivLabs: Projetos experimentais com colaboradores da comunidade

2025-02-07
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

Modelo LLM menor que 100MB agora instalável via pip: Apresentando llm-smollm2

2025-02-07
Modelo LLM menor que 100MB agora instalável via pip: Apresentando llm-smollm2

Um novo plugin, llm-smollm2, inclui um modelo LLM SmolLM2-135M-Instruct quantizado com menos de 100MB, tornando-o instalável via pip. O autor detalha o processo de criação, desde encontrar um modelo adequado com menos de 100MB (limitado pelas restrições de tamanho do PyPI) até suprimir logs detalhados do llama-cpp-python e empacotar para o PyPI. Embora as capacidades do modelo sejam limitadas, ele é apresentado como uma ferramenta de aprendizado valiosa para entender a tecnologia LLM.

Desenvolvimento Quantização de Modelo

Geração de Terreno e Hidrologia Realistas com Erosão Hídrica Baseada em Partículas

2025-02-07

Este artigo apresenta uma técnica de simulação de erosão hídrica baseada em partículas capaz de gerar terrenos realistas com rios, lagos e outros recursos hidrológicos. Ao estender um modelo anterior de erosão baseado em partículas e introduzindo 'mapas de rios' e 'mapas de poças' para rastrear o fluxo e o acúmulo de água, o sistema simula a migração de rios, a formação de cachoeiras, planícies de inundação e outros fenômenos geográficos. O método é simples, eficiente e fortemente acoplado ao terreno, produzindo paisagens altamente realistas que permanecem suaves mesmo durante a renderização em tempo real.

Kubernetes: Uma Analogia Surpreendente com Sistemas Entidade-Componente

2025-02-07

Este artigo revela uma semelhança notável entre o modelo de gerenciamento de recursos do Kubernetes e o padrão Entidade-Componente-Sistema (ECS) comumente usado no desenvolvimento de jogos. Os objetos do Kubernetes espelham as entidades do ECS, possuindo identificadores únicos; os campos `spec` e `status` correspondem aos componentes, representando os estados desejado e observado, respectivamente; enquanto os controladores, planejadores e o Kubelet atuam como sistemas, reconciliando discrepâncias entre os estados desejado e atual. Essa semelhança arquitetônica esclarece o design do Kubernetes e oferece novas perspectivas sobre sua natureza declarativa.

Desenvolvimento

Mantenedor do Kernel Linux Hector Martin renuncia

2025-02-07

Hector Martin, um desenvolvedor proeminente do kernel Linux, anunciou sua renúncia à manutenção do kernel, removendo-se especificamente como mantenedor da plataforma Apple/ARM. Ele citou uma perda de confiança no processo de desenvolvimento do kernel e na gestão da comunidade. Embora ele possa enviar patches independentemente no futuro, sua partida gera discussão sobre a gestão da comunidade do kernel Linux.

Desenvolvimento Gestão da comunidade

Google reCAPTCHA x GDPR: Riscos de privacidade e soluções

2025-02-07

A tecnologia reCAPTCHA do Google, usada para identificar visitantes de sites como humanos, entra em conflito com o GDPR. O reCAPTCHA analisa o comportamento do usuário (movimentos do mouse, pressionamentos de teclas, etc.) e coleta dados pessoais como endereços IP e informações do navegador para avaliar a identidade do usuário. Como o consentimento explícito não é obtido, os operadores de sites precisam justificar o uso do reCAPTCHA, o que é difícil devido às práticas de dados opacas do Google e aos riscos de privacidade incalculáveis. O artigo recomenda o uso de alternativas mais amigáveis à privacidade e enfatiza a transparência, a obtenção do consentimento do usuário e a minimização de dados.

Desenvolvimento

O 'Coletador de Lixo Nulo' em Software de Mísseis: Vazamentos de Memória? Não é um Problema!

2025-02-07
O 'Coletador de Lixo Nulo' em Software de Mísseis: Vazamentos de Memória? Não é um Problema!

Um desenvolvedor relata uma aplicação inteligente de um 'coletor de lixo nulo' em software de mísseis. Devido ao tempo de voo limitado e à memória de hardware abundante, vazamentos de memória no programa não eram uma preocupação. Os engenheiros calcularam o potencial vazamento de memória durante o voo e adicionaram o dobro dessa quantidade de memória para garantir que o programa não travasse antes da conclusão da missão. Essa abordagem utilizou de forma inteligente as restrições de tempo de execução do programa, resolvendo efetivamente o problema de vazamento de memória — uma espécie de 'coleta de lixo definitiva'.

Espaços em branco no HTML: Um mergulho profundo na bagunça e soluções potenciais

2025-02-07
Espaços em branco no HTML: Um mergulho profundo na bagunça e soluções potenciais

Este artigo mergulha profundamente nas complexidades do tratamento de espaços em branco no HTML. Através de numerosos exemplos, o autor revela as várias regras que regem o tratamento de espaços em branco no HTML, incluindo as diferenças entre elementos inline e de bloco, tags `

` e a propriedade CSS `white-space`, e como elas levam a resultados de renderização imprevisíveis. O artigo também analisa os desafios enfrentados por ferramentas de formatação automática, sistemas de gerenciamento de conteúdo e ferramentas de minificação ao lidar com espaços em branco no HTML. Uma solução potencial é proposta: usar uma sintaxe de aspas para distinguir entre espaços em branco de código e espaços em branco visíveis ao usuário, embora seja reconhecido que isso seria uma grande mudança radical. Finalmente, o autor sugere dicas práticas para mitigar problemas decorrentes do tratamento de espaços em branco no HTML e propõe a adição de uma nova entidade HTML `&ncsp;` para representar um espaço não colapsível.

Desenvolvimento espaços em branco

Acesso à câmera do Google Android XR: tão fácil quanto no seu telefone

2025-02-07
Acesso à câmera do Google Android XR: tão fácil quanto no seu telefone

Este artigo revela a abordagem do Google para o acesso à câmera em seu sistema Android XR. Semelhante aos telefones, os desenvolvedores podem acessar dados da câmera com a permissão do usuário, utilizando APIs padrão da câmera Android (como CameraX) para fluxos de imagem. Embora a câmera frontal seja acessível (mostrando um avatar do usuário), a câmera traseira fornece uma imagem reconstruída, não o fluxo de dados brutos. Isso espelha a estratégia do Apple Vision Pro, garantindo a portabilidade perfeita de aplicativos Android para dispositivos XR e mantendo solicitações de permissão consistentes entre telefones e headsets. O Android XR está atualmente em pré-visualização, portanto, alterações futuras são possíveis.

Experimento de Respostas de IA do Stack Overflow: Um Caminho para o Desastre?

2025-02-07
Experimento de Respostas de IA do Stack Overflow: Um Caminho para o Desastre?

O experimento planejado do Stack Overflow para incorporar respostas geradas por IA provocou uma forte reação negativa da comunidade. O autor argumenta que o experimento se baseia em uma premissa falha: tentar substituir respostas de alta qualidade de especialistas humanos por IA. Isso não apenas desperdiçará tempo e dinheiro, mas também danificará o valor central da plataforma — respostas confiáveis de especialistas. O artigo detalha os impactos negativos potenciais do experimento, incluindo: aumento da carga de trabalho dos moderadores, diminuição da participação de especialistas, incapacidade de garantir a precisão das respostas e possível êxodo de usuários. O autor conclui que os ganhos potenciais do experimento são extremamente baixos, enquanto os riscos são muito altos, resultando, em última análise, em um resultado contraproducente que prejudica a reputação e a vitalidade da comunidade do Stack Overflow.

Desenvolvimento

arXivLabs: Colaboração da comunidade em novos recursos do arXiv

2025-02-07
arXivLabs: Colaboração da comunidade em novos recursos do arXiv

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 de 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

Maria Montessori: Uma Revolução na Educação

2025-02-07
Maria Montessori: Uma Revolução na Educação

Maria Montessori, médica e educadora italiana, revolucionou a educação com seu método único. Inicialmente buscando a engenharia, ela desafiou as normas sociais para se tornar uma das primeiras médicas mulheres da Itália. Seu método Montessori, enfatizando a aprendizagem autodirigida e a exploração liderada pela criança por meio de materiais e ambientes especialmente projetados, ganhou reconhecimento global. De suas humildes origens em uma sala de aula romana, a abordagem Montessori continua a moldar a educação em todo o mundo, impactando inúmeras crianças e deixando um legado duradouro nas práticas pedagógicas.

Desenvolvimento Desenvolvimento Infantil

Padronização de Segurança de Memória: Um Caminho para Software Seguro

2025-02-07

Por décadas, vulnerabilidades endêmicas de segurança de memória em bases de computação confiáveis ​​de software (TCBs) alimentaram malware e ataques devastadores. Este artigo argumenta pela padronização de segurança de memória como um passo crucial para a segurança de memória forte universal. Avanços recentes em linguagens seguras para memória, proteções de hardware/software, métodos formais e compartimentalização oferecem soluções, mas a falta de terminologia compartilhada dificulta a adoção. A padronização melhoraria as melhores práticas da indústria e resolveria as falhas de mercado que impedem o uso generalizado dessas tecnologias, levando, em última análise, a um software mais seguro para todos.

Desenvolvimento Padronização

Linguagem de montagem 6502: Um guia para iniciantes em computação retrô

2025-02-07

Este pequeno e-book apresenta a linguagem de montagem 6502, um processador histórico que alimentou máquinas icônicas como o Commodore 64 e o Apple II. Aprender montagem oferece uma compreensão profunda da arquitetura do computador. O 6502, com seu design amigável ao usuário, o torna um ponto de partida ideal. O livro o guia através de registradores, flags, instruções, modos de endereçamento e a pilha, culminando em um jogo simples de Snake. Um montador e simulador online estão incluídos para aprendizagem prática.

Desenvolvimento

arXivLabs: Projetos Experimentais com Colaboradores da Comunidade

2025-02-07
arXivLabs: Projetos Experimentais com Colaboradores 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

Construindo sua 'Red Team' de desenvolvimento: Evitando erros embaraçosos

2025-02-06
Construindo sua 'Red Team' de desenvolvimento: Evitando erros embaraçosos

Embora a maioria das equipes de desenvolvimento esteja familiarizada com as 'red teams' de segurança cibernética, este artigo defende uma 'red team' mais ampla em cada equipe de desenvolvimento. Essa equipe deve incluir: alguém para verificar falhas de design (evitando imagens embaraçosas como um incidente passado com um outdoor do GitHub); alguém usando bloqueadores de anúncios (garantindo a funcionalidade do site apesar dos bloqueadores de anúncios); e alguém usando um gerenciador de senhas (para garantir um preenchimento automático suave para formulários de login). Esses papéis aparentemente simples podem evitar erros embaraçosos, resultando em um produto mais refinado e melhor experiência do usuário.

Desenvolvimento equipe de desenvolvimento
1 2 156 157 158 160 162 163 164 204 205