NASA revive propulsores de décadas de idade da Voyager 1 em uma aposta de alto risco

2025-05-16
NASA revive propulsores de décadas de idade da Voyager 1 em uma aposta de alto risco

Engenheiros da NASA reiniciaram com sucesso os propulsores primários da Voyager 1, considerados inoperantes por mais de duas décadas. A espaçonave de quase 50 anos enfrentava uma falha iminente devido a dutos de combustível entupidos em seus propulsores de backup. A manobra arriscada envolveu ligar aquecedores dormentes, com o potencial de uma pequena explosão se os aquecedores ainda estivessem desligados. O sucesso garante à Voyager 1 mais tempo para explorar o espaço interestelar, um testemunho da engenhosidade e perseverança humanas.

Leia mais
Tecnologia

Teal: Um dialeto Lua com tipagem estática

2025-05-16

Teal é um dialeto de Lua com tipagem estática, que adiciona anotações de tipo a Lua para arrays, mapas, registros, interfaces, tipos de união e genéricos. Tem como objetivo preencher um nicho semelhante ao do TypeScript no mundo JavaScript, mas mantendo o minimalismo, a portabilidade e a capacidade de incorporação do Lua. O compilador Teal, `tl`, compila código-fonte `.tl` em arquivos `.lua`. A instalação é feita via LuaRocks, com binários pré-compilados disponíveis para Linux e Windows. Para projetos maiores, recomenda-se o uso da ferramenta de construção Cyan. Extensões para VS Code e NeoVim também estão disponíveis. O projeto é de código aberto sob a licença MIT.

Leia mais
Desenvolvimento Tipado Estaticamente

FBI alerta sobre ataques de phishing de voz com IA direcionados a funcionários dos EUA

2025-05-16
FBI alerta sobre ataques de phishing de voz com IA direcionados a funcionários dos EUA

O FBI emitiu um alerta sobre cibercriminosos que usam deepfakes de áudio gerados por IA para se passar por funcionários de alto escalão do governo dos EUA em ataques de phishing de voz desde abril. Os atacantes usam táticas de smishing e vishing, enviando mensagens de texto e mensagens de voz geradas por IA para construir rapport antes de enganar as vítimas para que cliquem em links maliciosos. Isso compromete as contas, dando acesso às informações de contato de outros funcionários, levando a mais ataques de engenharia social para roubo de dados sensíveis ou transferências de fundos. Isso segue alertas e incidentes anteriores que destacam o uso crescente de deepfakes sofisticados em crimes cibernéticos.

Leia mais
Tecnologia

gkrellm: Um poderoso monitor de sistema Linux

2025-05-16

O gkrellm é uma ferramenta poderosa de monitoramento de sistema para Linux, exibindo nome do host, uso da CPU, temperatura, velocidade do ventilador, voltagem, uso do disco, conexões de rede, uso da memória e muito mais. Ele oferece alarmes e avisos personalizáveis e possui recursos de plug-in para monitoramento estendido. O gkrellm também suporta monitoramento remoto de sistemas por meio do modo cliente/servidor, fornecendo vários gráficos e modos de exibição para uma compreensão intuitiva do status do sistema.

Leia mais
Desenvolvimento

Microsoft Silenciosamente Descontinua o Surface Laptop Studio 2

2025-05-15
Microsoft Silenciosamente Descontinua o Surface Laptop Studio 2

A Microsoft interrompeu a produção do seu poderoso laptop dobrável, o Surface Laptop Studio 2. Este laptop híbrido, único por sua GPU dedicada, está sendo descontinuado silenciosamente, refletindo uma simplificação mais ampla na linha de hardware da Microsoft. A medida segue demissões recentes, a saída do ex-chefe da Surface, Panos Panay, e uma mudança de foco relatada para IA e produtos principais. Embora elogiado por desempenho e design, o alto preço e a GPU de potência relativamente baixa do Surface Laptop Studio 2 podem ter limitado seu sucesso.

Leia mais
Hardware

Armadilhas na Comparação de Ponto Flutuante: O que Você Precisa Saber

2025-05-15
Armadilhas na Comparação de Ponto Flutuante: O que Você Precisa Saber

Este artigo mergulha nas complexidades da comparação de números de ponto flutuante. O autor destaca a falta de confiabilidade das verificações de igualdade simples devido às limitações inerentes de precisão e erros de arredondamento acumulados. Dois métodos de comparação são detalhados: erro relativo (epsilon) e ULP (Unidades no Último Lugar), juntamente com seus pontos fortes e fracos. O artigo enfatiza a falha das comparações de erro relativo próximo a zero, propondo uma solução que combina erro absoluto. Um exemplo convincente usando `sin(π)` demonstra o cancelamento catastrófico e como erros de representação de ponto flutuante podem melhorar a precisão de π.

Leia mais
Desenvolvimento precisão

Easel: Desenvolvimento de Jogos Multiplayer Simplificado

2025-05-15
Easel: Desenvolvimento de Jogos Multiplayer Simplificado

Easel é uma linguagem de programação 2D que torna o desenvolvimento de jogos multiplayer tão fácil quanto o desenvolvimento de jogos para um único jogador. Seja você iniciante ou programador experiente, você vai adorar criar jogos com Easel! Sua linguagem de programação hierárquica, juntamente com seu modelo de comportamentos e estilo reativo, permitem que você expresse lógica de jogo complexa de maneira surpreendentemente simples. O Easel cuida de todos os aspectos complexos, como rede e sincronização, automaticamente, incluindo até mesmo uma implementação avançada de netcode de rollback para uma experiência multiplayer suave. Um sistema completo de desenvolvimento de jogos 2D, desde gráficos e áudio até física e interface do usuário, o Easel oferece um editor online e hospedagem de servidor para fácil implantação e compartilhamento.

Leia mais
Jogos

Armadilha de Inicialização em C++: As Sutilezas de `=default`

2025-05-15

Este artigo mergulha no mundo intrigante da inicialização em C++. Um exemplo simples revela o impacto significativo da colocação de `=default` na inicialização dos membros de uma struct: membros de struct com `=default` na declaração são inicializados com zero (valor 0), enquanto aqueles com `=default` na definição têm valores indeterminados, levando a comportamento indefinido se lidos. O artigo explica detalhadamente as diferenças entre inicialização padrão, inicialização por valor e inicialização com zero, e enfatiza a importância de inicializar explicitamente as variáveis para evitar bugs potenciais e riscos de segurança.

Leia mais
Desenvolvimento

IA da Anthropic gera citação errônea em processo de direitos autorais

2025-05-15
IA da Anthropic gera citação errônea em processo de direitos autorais

Em uma batalha legal em andamento com editoras de música, um advogado que representa a Anthropic admitiu ter usado uma citação incorreta gerada pelo chatbot Claude da empresa. A citação, com título e autores imprecisos, não foi detectada pela verificação manual da Anthropic. A Anthropic pediu desculpas, chamando-o de "erro honesto", e não uma invenção. Este incidente destaca os riscos do uso de IA em ambientes jurídicos e aumenta as preocupações crescentes em torno de questões de direitos autorais em IA generativa. Incidentes semelhantes envolvendo pesquisas jurídicas geradas por IA ocorreram recentemente, mas startups de tecnologia jurídica baseadas em IA continuam a atrair investimentos maciços.

Leia mais

Google aumenta a produtividade de desenvolvedores com preenchimento de código semântico híbrido de ML

2025-05-15
Google aumenta a produtividade de desenvolvedores com preenchimento de código semântico híbrido de ML

Pesquisadores do Google desenvolveram um novo sistema de preenchimento de código semântico híbrido baseado em Transformer que combina aprendizado de máquina (ML) e mecanismos semânticos baseados em regras (SEs) para melhorar significativamente a produtividade do desenvolvedor. O sistema integra ML e SEs de três maneiras: 1) reordenando sugestões de token único do SE usando ML; 2) aplicando preenchimentos de linha única e múltipla usando ML e verificando a correção com o SE; e 3) usando continuação de linha única e múltipla por ML de sugestões semânticas de token único. Um estudo de três meses com mais de 10.000 desenvolvedores internos do Google mostrou uma redução de 6% no tempo de iteração de codificação com preenchimento de ML de linha única. Atualmente, mais de 3% do novo código é gerado pela aceitação de sugestões de preenchimento de ML. O sistema suporta oito linguagens de programação e incorpora verificações semânticas para garantir a correção do código, aumentando significativamente a confiança e a eficiência do desenvolvedor.

Leia mais
Desenvolvimento

Verificação de Ano Bissexto em Três Instruções

2025-05-15

Este artigo apresenta um algoritmo surpreendentemente eficiente para determinar se um ano (0 ≤ y ≤ 102499) é bissexto usando apenas cerca de três instruções de CPU. Ele utiliza manipulação de bits e números mágicos cuidadosamente escolhidos para transformar as complexas regras de ano bissexto em uma operação aritmética simples e comparação. O autor explica meticulosamente a derivação do algoritmo, comparando-o com métodos tradicionais e destacando sua significativa vantagem de velocidade. Embora ligeiramente mais lento em casos extremos, sua eficiência em aplicações práticas é impressionante.

Leia mais
Desenvolvimento ano bissexto

LLMs estão matando o Stack Overflow?

2025-05-15

O Stack Overflow, o paraíso dos programadores, está enfrentando uma crise sem precedentes. O artigo revela um declínio constante nas perguntas feitas desde 2014, dramaticamente acelerado pelo advento do ChatGPT. A plataforma, que já foi uma tábua de salvação para inúmeros desenvolvedores, agora vê o volume de perguntas cair para níveis vistos pela última vez em 2009. Embora políticas de moderação mais rígidas e o surgimento de LLMs provavelmente tenham contribuído, o avanço rápido da IA está inegavelmente remodelando a maneira como os desenvolvedores buscam ajuda.

Leia mais
Desenvolvimento

Além do REST: Por que a sincronização de estado é o futuro dos aplicativos web

2025-05-15

Ao construir aplicativos web com React, Typescript e um backend Rust/Axum REST, o autor encontrou desafios significativos com a abordagem de transferência de estado do REST para o que são essencialmente problemas de sincronização de estado. Usando um exemplo simples de entrada de texto, o artigo destaca problemas como condições de corrida de solicitações concorrentes, indicadores de carregamento imprecisos e inconsistências em várias instâncias do aplicativo. O autor argumenta em favor de uma mudança para protocolos de sincronização de estado, como aqueles baseados em CRDTs, para melhorar a eficiência e eliminar bugs comuns relacionados ao REST.

Leia mais
Desenvolvimento Sincronização de Estado

O Desastre Pontilhado do Curl: Dois CVEs e uma Perseguição Sem Fim

2025-05-15
O Desastre Pontilhado do Curl: Dois CVEs e uma Perseguição Sem Fim

A equipe do curl enfrentou uma luta persistente com pontos finais em nomes de host em URLs. Inicialmente os ignorando, o curl posteriormente restabeleceu o suporte para sites que exigem pontos finais. No entanto, essa alteração inadvertidamente introduziu duas vulnerabilidades de segurança (CVE-2022-27779 e CVE-2022-30115) afetando o tratamento de cookies e o mecanismo HSTS, respectivamente. Essas vulnerabilidades decorreram do tratamento inadequado de pontos finais, levando a correspondências de domínio incorretas. O curl 7.83.1 corrige esses problemas, mas o autor suspeita que isso pode ser apenas o começo de uma batalha prolongada.

Leia mais
Desenvolvimento

O Renascimento da Tecnologia Pequena e Antiga: Simplicidade e Privacidade Reimaginadas

2025-05-15

Este artigo explora o conceito de 'tecnologia pequena', enfatizando sua compacidade, facilidade de uso, privacidade e sustentabilidade ambiental. Ao contrário das tecnologias inchadas dominadas por grandes empresas de tecnologia, a 'tecnologia pequena' defende a descentralização, a comunicação ponto a ponto, as provas de conhecimento zero e uma reavaliação de tecnologias mais antigas, como UUCP, Gopher e Usenet. Essas tecnologias mais antigas possuem baixo consumo de recursos, fácil operação em dispositivos de baixa potência, são mais ecológicas e protegem melhor a privacidade do usuário. O artigo também apresenta projetos modernos de 'tecnologia pequena', como NNCP e Gemini, e organizações dedicadas à ética da tecnologia pequena, com o objetivo de promover um retorno a uma tecnologia mais simples e focada na privacidade.

Leia mais

Telegram Desmantla Mercados de Cibercrime de US$ 35 Bilhões

2025-05-15
Telegram Desmantla Mercados de Cibercrime de US$ 35 Bilhões

O Telegram anunciou o fechamento de dois grandes mercados da darknet, Xinbi Guarantee e Huione Guarantee, que supostamente geraram mais de US$ 35 bilhões desde 2021 para cibercriminosos e golpistas. Isso supera a avaliação estimada de US$ 3,4 bilhões do notório Silk Road. O fechamento, após sanções do Tesouro dos EUA contra o Grupo Huione por lavagem de dinheiro, representa um golpe significativo para os fraudadores online, cortando seu acesso a dados roubados, serviços de lavagem de dinheiro e infraestrutura de telecomunicações. Essa ação destaca uma grande vitória na luta global contra o cibercrime.

Leia mais
Tecnologia mercados da darknet

Refatorando Clojure: Criando um Gerador de Texto Markov Elegante

2025-05-15
Refatorando Clojure: Criando um Gerador de Texto Markov Elegante

Este artigo descreve a refatoração de um código Clojure que gera um texto de Markov de primeira ordem em nível de palavra. Em vez de modificar o código original diretamente, o autor começa caracterizando seu comportamento com testes abrangentes. O código refatorado usa funções mais claras e uma estrutura mais compreensível, empregando `reduce` e chamadas de funções recursivas para geração de texto eficiente. O resultado é uma melhoria significativa na legibilidade e manutenibilidade, mantendo a funcionalidade original.

Leia mais
Desenvolvimento cadeia de Markov

Registro de Desenvolvimento do Software de Áudio Tengri: Vislumbre do Progresso Recente

2025-05-15
Registro de Desenvolvimento do Software de Áudio Tengri: Vislumbre do Progresso Recente

A equipe de desenvolvimento do software de áudio de código aberto Tengri atualizou recentemente seu log de projeto no GitHub, detalhando as atividades desde maio. Isso inclui uma refatoração significativa do arranjador, a reativação do suporte LV2, melhorias no processo de construção (como builds em contêineres Docker), atualizações de documentação e correções de bugs. O log reflete um processo de desenvolvimento iterativo, abordando ativamente problemas e mostrando o status de desenvolvimento ativo do projeto.

Leia mais
Desenvolvimento software de áudio

Além da Seleção Escalar: Processamento em Lote de Fluxos de Eventos para Eficiência

2025-05-15

O autor descreve a ineficiência do antipadrão de seleção escalar no design de serviços com estado, exemplificado por um servidor LSP. Processar eventos um de cada vez leva a atrasos e desperdício de recursos. A solução proposta é processar fluxos de eventos em lote. Uma função `batch_stream` mescla eventos recebidos em lotes, melhorando significativamente a eficiência. Sob baixa carga, ele se comporta como processamento de evento único, mas sob alta carga, reduz drasticamente a sobrecarga, aumentando o desempenho.

Leia mais
Desenvolvimento evento-driven

A Eficácia Surpreendente de um Loop de Agente LLM com Uso de Ferramentas

2025-05-15

O autor e sua equipe desenvolveram um assistente de programação de IA chamado Sketch, cujo núcleo é um loop surpreendentemente simples: o LLM recebe a entrada do usuário, executa ações (potencialmente envolvendo chamadas de ferramentas como bash) e retorna resultados. Esse loop simples, combinado com LLMs poderosos como o Claude 3.7 Sonnet, permite que o Sketch manipule eficientemente muitas tarefas de programação, como operações git, modificações de código e tratamento de erros. O autor acredita que essa abordagem de loop de agente LLM terá um uso generalizado na automação do dia a dia, melhorando drasticamente a eficiência.

Leia mais

Revolucionando o design do Mac: Uma entrevista com Jef Raskin

2025-05-15
Revolucionando o design do Mac: Uma entrevista com Jef Raskin

Esta entrevista de 1986 apresenta Jef Raskin, um designer inicial do Macintosh. Raskin critica fortemente o design de interface de usuário complexo, compartilhando sua filosofia por trás do SwyftCard (um aplicativo Apple II). O cerne de sua abordagem são 'ausência de modos' e 'monotonia': cada ação tem um resultado, e cada resultado tem uma ação, fomentando hábitos do usuário e eficiência. Ele critica a adoção final do Mac de um sistema operacional tradicional e do mouse, argumentando que um bom design de interface de usuário prioriza a velocidade e a experiência do usuário em vez da complexidade técnica. As ideias de Raskin permanecem relevantes para o design moderno de UI/UX.

Leia mais
Design

O Instituto de Trinta de Setembro: Uma Obsessão Singular

2025-05-15
O Instituto de Trinta de Setembro: Uma Obsessão Singular

Este artigo detalha o fascinante e peculiar Instituto de Trinta de Setembro, uma instituição localizada em Nova Orleans dedicada a arquivar todos os artefatos imagináveis ​​do dia 30 de setembro de 1939. Fundado pelo enigmático Vincent Rosier, um empreendedor multifacetado, a coleção do Instituto varia de jornais e diários a cardápios e brinquedos infantis, abrangendo até dados meteorológicos e astronômicos. Embora aparentemente díspares, esses itens fornecem insights inestimáveis ​​para historiadores, linguistas e sociólogos, oferecendo uma lente única sobre o tempo e a memória. A jornada do Instituto não é isenta de conflitos internos e desafios, incluindo debates sobre seu foco e digitalização. No entanto, sua dedicação singular atrai pesquisadores de todo o mundo, tornando-se um testemunho cativante da curiosidade humana e da preservação do passado.

Leia mais
Diversos arquivos

Um Novo Paradigma para a Psicologia: A Mente como uma Pilha de Sistemas de Controle

2025-05-15
Um Novo Paradigma para a Psicologia: A Mente como uma Pilha de Sistemas de Controle

Este artigo aborda a questão de longa data da falta de um paradigma unificador na psicologia, propondo uma nova estrutura baseada em sistemas de controle – psicologia cibernética. Argumenta que a mente é uma coleção de sistemas de controle, cada um regulando uma necessidade humana específica (por exemplo, nutrição, temperatura), com sinais de erro representando emoções. Esta abordagem oferece uma nova perspectiva sobre a personalidade e doenças mentais, deslocando a psicologia de descrições baseadas em sintomas para a exploração de mecanismos subjacentes, potencialmente revolucionando as abordagens de tratamento.

Leia mais

Revitalizando o TLA⁺: Um Chamado à Ação para o Desenvolvimento de Ferramentas

2025-05-15
Revitalizando o TLA⁺: Um Chamado à Ação para o Desenvolvimento de Ferramentas

O Evento da Comunidade TLA⁺ de 2025 destacou o estado atual e a direção futura das ferramentas TLA⁺. O autor argumenta que a facilidade de desenvolvimento dentro do ecossistema TLA⁺ é primordial. Os analisadores sintáticos, interpretadores e verificadores de modelos existentes são revisados, juntamente com os desafios, como código legado e lacunas na documentação. Estratégias para superar esses obstáculos incluem desenvolvimento orientado a testes, integração de desenvolvedores e subsídios. Direções futuras incluem testes gerativos e simplificação de sintaxe, culminando em um objetivo ambicioso: aumentar a taxa de transferência do TLC para 1 bilhão de estados por minuto.

Leia mais
Desenvolvimento

Construção Naval da Marinha dos EUA: Um Caso para Designs Mais Simples

2025-05-15
Construção Naval da Marinha dos EUA: Um Caso para Designs Mais Simples

A construção naval da Marinha dos EUA é atormentada por custos excessivos e atrasos no cronograma. Esta proposta de política argumenta que isso decorre da dependência da Marinha em projetos de navios complexos e multifuncionais e processos de projeto terceirizados. Os autores recomendam um retorno a projetos de navios mais simples e com uma única função e capacidades de projeto internas para melhorar a eficiência, reduzir custos e, finalmente, construir mais navios por menos. Estudos de caso do porta-aviões da classe Ford, do destroyer da classe Burke e do Littoral Combat Ship ilustram os problemas de projetos complexos. A proposta oferece projetos de navios alternativos e mais econômicos, focando em capacidades simplificadas e produção eficiente.

Leia mais

NumPy: Um relacionamento de amor e ódio com a biblioteca de arrays do Python

2025-05-15
NumPy: Um relacionamento de amor e ódio com a biblioteca de arrays do Python

Este artigo mergulha nos pontos problemáticos do uso do NumPy, a popular biblioteca de computação de arrays do Python, ao lidar com arrays multidimensionais. Embora o NumPy se destaque por sua simplicidade e eficiência para arrays de dimensões inferiores, seu mecanismo de broadcast e indexação se tornam incrivelmente complexos e difíceis de entender ao lidar com operações multidimensionais mais intrincadas. O autor argumenta que o problema central do NumPy decorre de seu mecanismo de broadcast substituir os índices, resultando em expressividade limitada. O artigo utiliza vários exemplos para destacar as dificuldades do NumPy com cálculos de arrays complexos, comparando os prós e contras do uso de loops e np.einsum, expressando, por fim, frustração com o NumPy e o desejo por uma linguagem de arrays mais amigável ao usuário.

Leia mais
Desenvolvimento arrays multidimensionais

Desvendando a Concorrência em Ruby: Processos, Ractors, Threads e Fibers

2025-05-15
Desvendando a Concorrência em Ruby: Processos, Ractors, Threads e Fibers

Ruby, conhecida por sua elegância e legibilidade, apresenta um modelo de concorrência que pode ser inicialmente confuso. Este artigo mergulha nas quatro principais maneiras de lidar com concorrência em Ruby: processos, Ractors, threads e fibers. Processos oferecem isolamento completo de memória, ideal para tarefas que precisam de separação absoluta; Ractors, introduzidos no Ruby 3, fornecem paralelismo dentro de um único processo, usando passagem de mensagens para evitar condições de corrida; threads são leves, mas são limitadas pelo GIL à concorrência, não ao verdadeiro paralelismo; e fibers, o mecanismo mais leve, oferecem multitarefa cooperativa por meio da troca manual de controle. Exemplos de código e explicações claras esclarecem as diferenças e casos de uso, fornecendo uma compreensão abrangente da paisagem complexa da concorrência em Ruby.

Leia mais
Desenvolvimento

Os Livros de Passagem: Um Relacionamento Ambivalente de uma Geração com Clássicos Literários

2025-05-15
Os Livros de Passagem: Um Relacionamento Ambivalente de uma Geração com Clássicos Literários

Este artigo explora a jornada pessoal do autor e uma experiência geracional mais ampla com um conjunto específico de obras literárias - muitas vezes chamadas de ' cânone de classe média branca masculina'. Esses livros, incluindo obras de Salinger, Vonnegut e Heller, inicialmente proporcionaram um senso de pertencimento e rebelião para jovens leitores, oferecendo uma fuga do mundano e um caminho para a autodescoberta intelectual. No entanto, à medida que o autor amadureceu, ele examinou criticamente as falhas inerentes a esses livros, particularmente a misoginia e o racismo, levando a um relacionamento complexo e ambivalente. Por meio de pesquisas e reflexões pessoais, o autor investiga o impacto duradouro desses livros e suas limitações no contexto contemporâneo, questionando se eles servem como degraus úteis para outras literaturas ou representam uma perspectiva limitada e, em última análise, problemática.

Leia mais

Navegador bloqueando a porta 6000? Vulnerabilidade de script entre protocolos!

2025-05-15
Navegador bloqueando a porta 6000? Vulnerabilidade de script entre protocolos!

Ao trabalhar em um projeto Docker e Flask, o autor encontrou um problema em que a porta 6000 era inacessível, enquanto a porta 8000 funcionava corretamente. A investigação revelou que os navegadores bloqueiam ativamente certas portas, incluindo a 6000, como medida de segurança contra vulnerabilidades de script entre protocolos (XSS). O Chrome exibe um erro ERR_UNSAFE_PORT, o Safari mostra uma página em branco e o Firefox fornece uma mensagem mais informativa "Este endereço é restrito". O navegador cancela as solicitações a essas portas antes mesmo de serem enviadas. O autor confirmou que o servidor estava funcionando corretamente usando o curl, isolando o problema nas políticas de segurança do navegador. O artigo lista as portas bloqueadas pelo Firefox e seus serviços, explicando como essa proteção funciona.

Leia mais
Desenvolvimento Segurança do navegador

Shaders de Assembly ARB: Um mergulho profundo antes do GLSL

2025-05-15
Shaders de Assembly ARB: Um mergulho profundo antes do GLSL

Este artigo mergulha nos shaders de assembly ARB, uma linguagem de sombreamento usada no OpenGL antes do advento do GLSL. Ele detalha a integração de shaders ARB, recursos de linguagem, conjuntos de instruções e comparações com GLSL. Embora agora esteja em grande parte obsoleto, a compreensão do assembly ARB fornece insights valiosos sobre a evolução da programação gráfica moderna e os mecanismos subjacentes das tecnologias de gráficos de baixo nível.

Leia mais
Desenvolvimento
1 2 234 235 236 238 240 241 242 595 596