<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Off-Topic | AkitaOnRails.com</title><link>https://akitaonrails.github.io/tags/off-topic/</link><description>Blog do Fabio Akita do Canal do YouTube 'Akitando' falando sobre tecnologia, carreira e coisas geek.</description><generator>Hugo -- gohugo.io</generator><language>pt-BR</language><lastBuildDate>Mon, 19 Oct 2026 23:20:48 +0000</lastBuildDate><atom:link href="https://akitaonrails.github.io/tags/off-topic/index.xml" rel="self" type="application/rss+xml"/><item><title>Códigos de Conduta são a Raiz de Todo Mal: Recuperando sua Liberdade</title><link>https://akitaonrails.github.io/2026/09/14/codigo-de-conduta-e-a-raiz-de-todo-o-mal/</link><guid isPermaLink="true">https://akitaonrails.github.io/2026/09/14/codigo-de-conduta-e-a-raiz-de-todo-o-mal/</guid><pubDate>Mon, 14 Sep 2026 17:00:00 -0300</pubDate><description>&lt;p&gt;Todo projeto open source grande hoje vem com um &lt;code&gt;CODE_OF_CONDUCT.md&lt;/code&gt; no repositório. Vendeu-se a ideia de que isso existia para &amp;ldquo;proteger minorias&amp;rdquo; e &amp;ldquo;criar espaços seguros&amp;rdquo;. Na prática, o que eu vi acontecer na última década foi outra coisa: um instrumento para cancelar, perseguir e banir qualquer um que pensasse diferente de quem estava no controle. E quem puxava essas caçadas, via de regra, não era quem sustentava o código dos projetos.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Todo projeto open source grande hoje vem com um <code>CODE_OF_CONDUCT.md</code> no repositório. Vendeu-se a ideia de que isso existia para &ldquo;proteger minorias&rdquo; e &ldquo;criar espaços seguros&rdquo;. Na prática, o que eu vi acontecer na última década foi outra coisa: um instrumento para cancelar, perseguir e banir qualquer um que pensasse diferente de quem estava no controle. E quem puxava essas caçadas, via de regra, não era quem sustentava o código dos projetos.</p>
<p>Essa é a minha tese, e eu sei que ela é impopular. Levei dez anos de paciência pra poder escrever esse texto. Fiquei calado vendo esse teatro se repetir ano após ano, esperando o momento certo de documentar tudo o que testemunhei de perto, e hoje eu posso, com prazer, ver minhas próprias previsões se confirmando uma por uma.</p>
<p>E antes que algum espertinho tente essa: eu sei que boicote, doxxing e caça às bruxas existem sem CODE_OF_CONDUCT.md nenhum, sempre existiram. O título mira no que esse arquivo virou: o instrumento que pegou uma tática de turba de internet e carimbou ela como política oficial do projeto, com comitê, processo e verniz de legitimidade institucional. Um arquivo markdown de 500 linhas não assusta ninguém sozinho; o que ele virou, sim.</p>
<blockquote>
  <p>Dinheiro fácil foi o combustível. Código de conduta foi a arma que essa gente construiu pra oficializar o que antes era só grito de rua.</p>

</blockquote>
<p>Uma pergunta é de onde veio a energia; outra é o instrumento que ela adotou pra virar poder permanente dentro do projeto. Guarda essa distinção, porque ela sustenta o texto inteiro. Mas antes de chegar na filosofia, deixa eu contar a parte econômica, porque sem entender o dinheiro você não entende o resto.</p>
<h2>A bolha que financiou tudo isso<span class="hx:absolute hx:-mt-20" id="a-bolha-que-financiou-tudo-isso"></span>
    <a href="#a-bolha-que-financiou-tudo-isso" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>De mais ou menos 2012 até 2022, a indústria de tech viveu a maior bolha de contratação da história. Juros a zero, capital infinito, e as big techs crescendo como se não houvesse amanhã. Chegamos ao ponto surreal de empresas contratarem engenheiros sem ter trabalho para eles. Keith Rabois, da turma do PayPal, acusou Google e Meta publicamente de contratar milhares de pessoas para fazer <a href="https://fortune.com/2023/03/10/google-over-hired-talent-do-nothing-fake-work-stop-working-rivals-former-paypal-boss-keith-rabois/"target="_blank" rel="noopener">&ldquo;trabalho falso&rdquo;, por vaidade, e para que não fossem trabalhar nos concorrentes</a>. Uma ex-funcionária da Meta, demitida na primeira leva de 2022, resumiu melhor: <a href="https://www.businesstoday.in/technology/news/story/paid-employees-to-do-fake-work-laid-off-worker-accuses-meta-of-not-having-enough-work-for-staff-373423-2023-03-15"target="_blank" rel="noopener">&ldquo;eles estavam estocando a gente como cartas de Pokémon&rdquo;</a>. A cultura do <a href="https://www.ibtimes.co.uk/how-get-paid-doing-nothing-inside-silicon-valleys-controversial-rest-vest-culture-1633884"target="_blank" rel="noopener">&ldquo;rest and vest&rdquo;</a>, colecionar salário e stock options fazendo quase nada, já era documentada em 2017.</p>
<p>Foi essa bolha que financiou a onda de &ldquo;programação é a profissão do futuro&rdquo;. Bootcamps <a href="https://www.coursereport.com/reports/2020-coding-bootcamp-market-size-study"target="_blank" rel="noopener">saíram de 2.178 formados em 2013 para quase 25 mil em 2020</a> só nos EUA e Canadá, crescimento de mais de mil por cento. O <a href="https://www.theverge.com/2012/1/6/2688172/mayor-bloomberg-resolves-to-take-a-coding-class-in-2012"target="_blank" rel="noopener">Bloomberg resolveu aprender a programar como promessa de ano novo em 2012</a>. O <a href="https://www.wired.com/2014/12/obama-becomes-first-president-write-computer-program/"target="_blank" rel="noopener">Obama escreveu uma linha de código na TV em 2014</a>.</p>
<p>Eu contei essa história com mais detalhes num vídeo de fevereiro de 2020, quando a bolha ainda estava inflando (<a href="/2020/02/19/akitando-72-rant-programacao-nao-e-facil/">transcrição aqui</a>):</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/V7oUDL7E1g4"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Influencer de tech virou profissão. Todo mundo ia ser programador.</p>
<p>Aí a bolha estourou. <a href="https://techcrunch.com/2024/05/01/a-comprehensive-archive-of-2023-tech-layoffs/"target="_blank" rel="noopener">2022: quase 165 mil demitidos. 2023: mais de 262 mil</a>, segundo o Layoffs.fyi. Meta cortou <a href="https://about.fb.com/news/2022/11/mark-zuckerberg-layoff-message-to-employees/"target="_blank" rel="noopener">11 mil em novembro de 2022</a> com o Zuckerberg admitindo <em>&ldquo;I got this wrong&rdquo;</em>, e mais <a href="https://fortune.com/2023/03/14/meta-layoffs-10000-mark-zuckerberg-year-of-efficiency-hiring-freeze"target="_blank" rel="noopener">10 mil no &ldquo;ano da eficiência&rdquo;</a> de 2023. Amazon cortou <a href="https://cbsaustin.com/news/nation-world/amazon-cuts-9000-jobs-now-at-least-27000-layoffs-in-2023"target="_blank" rel="noopener">27 mil</a>. Google, <a href="https://blog.google/company-news/inside-google/message-ceo/january-update/"target="_blank" rel="noopener">12 mil</a>, com o Pichai admitindo que <em>&ldquo;contratamos para uma realidade econômica diferente da que enfrentamos hoje&rdquo;</em>. Stripe foi a mais honesta: <a href="https://ca.finance.yahoo.com/news/digital-payments-firm-stripe-lay-134215274.html"target="_blank" rel="noopener">&ldquo;we overhired&rdquo;</a>.</p>
<p>Eu registrei esse estouro no calor do momento, num vídeo de novembro de 2022 (<a href="/2022/11/22/akitando-132-rant-a-bolha-de-startups-estourou/">transcrição aqui</a>):</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/xxoVJQvEyEU"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>E como o timing é uma piada pronta, em 30 de novembro de 2022, bem no meio do banho de sangue, saiu o ChatGPT. <a href="https://www.reuters.com/technology/chatgpt-sets-record-fastest-growing-user-base-analyst-note-2023-02-01/"target="_blank" rel="noopener">Cem milhões de usuários em dois meses</a>, o aplicativo de crescimento mais rápido já visto até então, segundo estimativa do UBS. As manchetes viraram uma palestra da ACM chamada <a href="https://learning.acm.org/techtalks/endporgramming"target="_blank" rel="noopener">&ldquo;Large Language Models and the End of Programming&rdquo;</a>, <a href="https://www.techspot.com/news/102020-nvidia-boss-jensen-huang-children-shouldnt-learn-code.html"target="_blank" rel="noopener">Jensen Huang dizendo que criança nenhuma precisa mais aprender a programar</a>, o <a href="https://www.cognition.ai/blog/introducing-devin"target="_blank" rel="noopener">Devin se anunciando como o primeiro engenheiro de IA</a>, o <a href="https://daringfireball.net/linked/2025/08/20/claim-chowder-amodei"target="_blank" rel="noopener">Dario Amodei prometendo que IA escreveria 90% do código em três a seis meses</a>. Spoiler: não escreveu.</p>
<p>Por que essa história importa? Porque foi exatamente durante essa década de dinheiro fácil que o open source foi colonizado. Quando sobra dinheiro e falta trabalho real, sobra tempo e gente para fazer política dentro dos projetos. E foi o que aconteceu.</p>
<h2>A década da caça às bruxas<span class="hx:absolute hx:-mt-20" id="a-década-da-caça-às-bruxas"></span>
    <a href="#a-d%c3%a9cada-da-ca%c3%a7a-%c3%a0s-bruxas" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O artefato central dessa história é o <a href="https://ethicalsource.dev/blog/contributor-covenant-stewardship/"target="_blank" rel="noopener">Contributor Covenant</a>, criado em 2014 por Coraline Ada Ehmke e adotado por milhares de projetos, incluindo praticamente todo gigante do setor: CNCF, Apple, Google, Microsoft, Linux. A própria autora, no dia em que o Linux adotou o código dela, tuitou com todas as letras: <a href="https://itsfoss.com/linux-code-of-conduct/"target="_blank" rel="noopener"><em>&ldquo;Some people are saying that the Contributor Covenant is a political document, and they&rsquo;re right&rdquo;</em></a>. Quando o autor do documento admite que ele é político, a discussão sobre &ldquo;espaço seguro&rdquo; acabou antes de começar.</p>
<p>A lista de vítimas dessa era é longa, então vamos aos principais.</p>
<p>Antes, vale registrar o alcance dessa turma. A Coraline trabalhou no GitHub entre 2016 e 2017, até ser demitida (a versão dela está no texto <a href="https://where.coraline.codes/writing/my-year-at-github/"target="_blank" rel="noopener">&ldquo;Antisocial Coding: My Year at GitHub&rdquo;</a>). E o GitHub era o alvo perfeito: era onde morava praticamente todo o open source do mundo. Foi nessa era que os fundadores originais saíram de cena. Tom Preston-Werner <a href="https://www.sj-r.com/story/news/2014/05/10/github-women-miss-founder-who/37382118007/"target="_blank" rel="noopener">renunciou em 2014</a> no escândalo de assédio da Julie Ann Horvath, mesmo com a investigação interna concluindo que não houve nada ilegal, só &ldquo;erros de julgamento&rdquo;. O Chris Wanstrath já tinha anunciado que sairia do cargo de CEO em 2017 e, depois da venda para a Microsoft em 2018, ainda ficou alguns anos como technical fellow até sair de vez. Hoje nenhum fundador original trabalha lá.</p>
<p>O legado dela sobreviveu à demissão. O Contributor Covenant virou um dos <a href="https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project"target="_blank" rel="noopener">templates que o GitHub facilita adotar</a> quando você cria o <code>CODE_OF_CONDUCT.md</code> de um repositório. E em 2020 veio a joia da coroa: no meio dos protestos do George Floyd, o GitHub anunciou que ia aposentar o nome <code>master</code>, e desde <a href="https://github.blog/changelog/2020-10-01-the-default-branch-for-newly-created-repositories-is-now-main/"target="_blank" rel="noopener">1º de outubro de 2020 todo repositório novo nasce <code>main</code></a>.</p>
<p>A discussão era estúpida desde o começo. O Git nunca teve branch <code>slave</code>. O Petr Baudis, que batizou o nome nos scripts originais, <a href="https://x.com/xpasky/status/1271477451756056577"target="_blank" rel="noopener">explicou no X que <code>master</code> ali era de &ldquo;master copy&rdquo;</a>, como a gravação master de um disco (o próprio Baudis disse depois que hoje prefere <code>main</code>; a etimologia continua a mesma). Nem esse detalhe segurou a mudança: até a <a href="https://sfconservancy.org/news/2020/jun/23/gitbranchname/"target="_blank" rel="noopener">Software Freedom Conservancy endossou publicamente</a> a troca, e quem tinha automação assumindo <code>master</code> teve que correr atrás. Ninguém ficou mais protegido por causa dessa mudança, mas ela está lá, no fluxo de trabalho de todo programador, todos os dias.</p>
<p><strong>Brendan Eich, 2014.</strong> O cara inventou JavaScript, cofundou a Mozilla, era CTO desde 2005. Virou CEO e durou <a href="https://abcnews.go.com/Business/mozilla-ceo-resigns-calif-gay-marriage-ban-campaign/story?id=23181711"target="_blank" rel="noopener">onze dias no cargo</a>. O crime: uma doação de mil dólares em 2008 para a Proposition 8 da Califórnia. Funcionários tuitaram pedindo a cabeça dele, o <a href="https://en.wikipedia.org/wiki/Brendan_Eich"target="_blank" rel="noopener">OkCupid bloqueou usuários de Firefox com uma mensagem de protesto</a>, e ele caiu. Andrew Sullivan, gay e um dos primeiros defensores de peso do casamento entre pessoas do mesmo sexo, escreveu na época <a href="https://dish.andrewsullivan.com/2014/04/03/the-hounding-of-brendan-eich/"target="_blank" rel="noopener">&ldquo;The Hounding of a Heretic&rdquo;</a>: quando carreiras dependem de teste de pureza ideológica, a caça às bruxas já venceu. E repara: aqui não tinha código de conduta nenhum envolvido, foi pressão pura de boicote. O método já existia antes do documento; o documento só oficializou.</p>
<p><strong>Larry Garfield, 2017.</strong> Doze anos de contribuição no Drupal. Quando vazaram que ele participava de uma subcultura BDSM, num site privado, fora do projeto, o comitê de conduta do Drupal investigou e concluiu: <a href="https://www.drupal.org/association/blog/a-statement-from-the-executive-director"target="_blank" rel="noopener">sem violação do código de conduta</a>. O Dries Buytaert passou por cima do próprio comitê e <a href="https://dri.es/living-our-values"target="_blank" rel="noopener">expulsou ele assim mesmo</a>, porque a &ldquo;associação com o sistema de crenças dele&rdquo; era incompatível com os objetivos do projeto. O TechCrunch resumiu do mesmo jeito: <a href="https://techcrunch.com/2017/03/26/sex-and-gor-and-open-source/"target="_blank" rel="noopener">punido por algo dito fora do projeto</a>. Oitenta e cinco desenvolvedores <a href="https://www.inc.com/sonya-mann/drupal-confessions-open-letter.html"target="_blank" rel="noopener">assinaram carta aberta</a> ameaçando sair. Não adiantou. E repara no detalhe que enterra a tese do &ldquo;espaço seguro&rdquo;: o processo do código de conduta funcionou e inocentou o cara. Quando a turba apertou, o papel não segurou nada; quem decidiu foi a pessoa no topo, como sempre foi.</p>
<p><strong>Node.js, 2017.</strong> O TSC de treze pessoas votou a expulsão do Rod Vagg por, entre outras coisas, ter twitado um artigo questionando os efeitos colaterais de código de conduta. Ler crítica a código de conduta quase virou violação de código de conduta: <a href="https://www.theregister.com/2017/08/24/nodejs_forks_ayo_code_of_conduct/"target="_blank" rel="noopener">a votação foi 6 a 4 contra a expulsão</a>, por pouco. A máquina perdeu essa rodada, mas o recado já tinha saído: quatro dos que queriam o cabeça do Vagg pediram para sair do comitê no mesmo dia, e o projeto ganhou um fork chamado Ayo.js horas depois. Perder a votação não impediu o estrago.</p>
<p><strong>Linus Torvalds, 2018.</strong> Em setembro, segundo os relatos da época, a New Yorker tinha mandado perguntas sobre o comportamento abusivo dele nos emails. No mesmo fim de semana, Linus <a href="https://www.newyorker.com/science/elements/after-years-of-abusive-e-mails-the-creator-of-linux-steps-aside"target="_blank" rel="noopener">pediu desculpas e anunciou que ia tirar um tempo para &ldquo;entender as emoções das pessoas&rdquo;</a> e o kernel <a href="https://itsfoss.com/linux-code-of-conduct/"target="_blank" rel="noopener">trocou o Code of Conflict pelo Contributor Covenant</a>. O Linus é grosseiro nos emails desde sempre, todo mundo sabe, e ele voltou um mês depois. Mas o recado foi dado: se nem o cara que criou o kernel estava a salvo, ninguém estava.</p>
<p><strong>Richard Stallman, 2019.</strong> O criador da GPL, fundador da FSF, a encarnação do software livre. Vazaram um thread de lista de email do MIT em que ele discutia semântica jurídica sobre o caso Minsky/Epstein. A Vice estampou que ele tinha <a href="https://news.tuxmachines.org/node/128122"target="_blank" rel="noopener">&ldquo;defendido Epstein&rdquo; e chamado as vítimas de &ldquo;entirely willing&rdquo;</a>, uma leitura que o próprio thread de emails não sustenta: ele questionava a terminologia jurídica da acusação contra o Minsky. A campanha <a href="https://medium.com/@selamie/remove-richard-stallman-fec6ec210794"target="_blank" rel="noopener">&ldquo;Remove Richard Stallman&rdquo;</a> explodiu, e em dias ele <a href="https://www.npr.org/2019/09/17/761718975/free-software-pioneer-quits-mit-over-his-comments-on-epstein-sex-trafficking-cas"target="_blank" rel="noopener">renunciou do MIT e da presidência da FSF</a>. Quando ele voltou ao conselho da FSF em 2021, saiu <a href="https://rms-open-letter.github.io/"target="_blank" rel="noopener">uma carta aberta com mais de 3 mil assinaturas e dezenas de organizações</a> exigindo a cabeça dele e de todo o conselho. A Red Hat <a href="https://www.redhat.com/en/blog/red-hat-statement-about-richard-stallmans-return-fsf-board"target="_blank" rel="noopener">cortou o financiamento da FSF</a>. A <a href="https://rms-support-letter.github.io/"target="_blank" rel="noopener">carta de apoio juntou quase 7 mil assinaturas</a> e, detalhe delicioso, o Debian votou uma resolução sobre o caso e <a href="https://www.debian.org/vote/2021/vote_002"target="_blank" rel="noopener">a opção vencedora foi não se manifestar</a>. Até para fingir neutralidade precisou de votação.</p>
<p>E tem o caso mais recente e talvez o mais didático: <strong>Tim Peters, 2024</strong>. Lenda do Python, três décadas de contribuição, suspenso por três meses pelo comitê de conduta da PSF <a href="https://www.theregister.com/software/2024/08/09/core-python-developer-suspended-for-three-months/1429020"target="_blank" rel="noopener">por acusações vagas de criar &ldquo;atmosfera de FUD&rdquo;</a>, numa briga sobre os estatutos da fundação e sobre os métodos do próprio comitê. A comunidade reagiu feio, mas não teve volta: ele cumpriu os três meses e só voltou quando a suspensão expirou, em novembro. O padrão se manteve: discordar da moderação virou ofensa punível.</p>
<p><strong>DHH, 2021.</strong> Deixei esse para o final porque é o caso que muda a história. E note: aqui nem open source era, era a empresa dele. O mesmo mecanismo, agora dentro do escritório. Em abril de 2021, no auge da era BLM, um comitê interno de DEI dentro da Basecamp, a empresa do criador do Ruby on Rails com o Jason Fried, desenterrou uma lista antiga de &ldquo;nomes engraçados de clientes&rdquo; que circulava na empresa. A discussão escalou até um funcionário citar a &ldquo;pirâmide do ódio&rdquo; e argumentar que aquela lista era o fundamento de violência racial e até genocídio. A resposta dos fundadores foi fechar o assunto, dissolver o comitê e <a href="https://world.hey.com/dhh/basecamp-s-new-etiquette-regarding-societal-politics-at-work-b44bef69"target="_blank" rel="noopener">proibir discussão política e social nos canais internos</a>. A internet explodiu. Na reunião geral seguinte, foram <a href="https://www.theverge.com/2021/5/3/22418208/basecamp-all-hands-meeting-employee-resignations-buyouts-implosion"target="_blank" rel="noopener">duas horas e meia de gente chorando e gritando no Zoom</a>. O Ryan Singer, dezoito anos de casa, disse ali que não aceitava o rótulo de &ldquo;cultura de supremacia branca&rdquo; aplicado à empresa. Foi suspenso meia hora depois da reunião e se demitiu no fim de semana. Ao final, <a href="https://www.nytimes.com/2021/04/30/technology/basecamp-politics-ban-resignations.html"target="_blank" rel="noopener">um terço da empresa, vinte dos 57 funcionários, saiu com pacote de demissão voluntária</a>.</p>
<p>E é aqui que esse caso se separa de todos os outros: ele não dobrou. Sem ritual público de humilhação, sem pedido de desculpas, sem volta atrás. Preferiu perder um terço da empresa a entregar o controle dela. A Basecamp sobreviveu, virou 37signals de novo, e o DHH aprendeu ali, na carne, com que tipo de gente estava lidando. Guarda esse nome, porque ele volta.</p>
<p>Alguém vai apontar que a regra dele também é um documento escrito proibindo um assunto. É, e a diferença é exatamente o ponto: a regra do DHH bane um tópico inteiro, igual pra todo mundo, não importa o lado. Código de conduta bane pessoa e opinião, seletivamente, dependendo de quem está no poder naquele mês.</p>
<blockquote>
  <p>Uma trava o assunto na porta. A outra abre um tribunal lá dentro.</p>

</blockquote>
<p>Repara no padrão. Em nenhum desses casos o problema era código. Em nenhum deles alguém commitou bug, roubou código, sabotou release. As ofensas foram opiniões, doações políticas, vida privada, semântica em lista de email. O critério técnico foi substituído pelo critério político, e o código de conduta foi o instrumento jurídico dessa substituição. São casos famosos, não estatística. Mas quando a lista inclui os criadores do JavaScript, da GPL e do Linux, a amostra não precisa ser grande para passar o recado.</p>
<h2>E os resultados?<span class="hx:absolute hx:-mt-20" id="e-os-resultados"></span>
    <a href="#e-os-resultados" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Dez anos de era do código de conduta deveriam ter deixado um rastro de números bons. Se a justificativa era proteger minorias e tornar o open source mais diverso e menos tóxico, cadê a melhora? Fui procurar a pesquisa séria sobre o assunto. O que existe conta uma história interessante.</p>
<p>Sobre adoção: <a href="https://www.win.tue.nl/~aserebre/SANER2017.pdf"target="_blank" rel="noopener">Tourani, Adams e Serebrenik mediram em 2017</a> que cerca de 35% dos 150 projetos mais populares do GitHub tinham código de conduta. E que enforcement era raro: os criadores desses códigos, numa amostra de quatro entrevistados, falavam em casos de um dígito ao longo de anos. Um <a href="https://par.nsf.gov/servlets/purl/10347026"target="_blank" rel="noopener">estudo de 2021 da CSCW</a> olhou 52 mil repositórios: 12,6% tinham CoC, e só 10% das conversas mencionando o código eram uso real dele em moderação. A maioria das adoções aconteceu sem discussão pública visível no repositório. O mesmo paper diz, com todas as letras, que não existe evidência empírica de que código de conduta atraia novos contribuidores.</p>
<p>Sobre atrair gente, aliás, <a href="https://cmustrudel.github.io/papers/cscw19signals.pdf"target="_blank" rel="noopener">Qiu et al. mediram o que realmente faz alguém entrar num projeto</a>: README bom, número de estrelas, atividade recente, template de issue. Código de conduta nem entrou como variável no modelo deles, e olha que eles testaram maintainer responder rápido, que também não deu significativo. Quem mediu especificamente onde o CoC fica no ranking de fatores foi um estudo separado, o <a href="https://link.springer.com/chapter/10.1007/978-3-030-20883-7_9"target="_blank" rel="noopener">Fronchetti, Wiese, Pinto e Steinmacher, também de 2019</a>: CoC ficou entre os fatores pior colocados pra atrair contribuidor novo. Ninguém escolhe projeto pelo código de conduta.</p>
<p>Sobre diversidade, que era a promessa original, tem estudo específico e a resposta é não. O <a href="https://dl.acm.org/doi/10.1145/3236024.3275441"target="_blank" rel="noopener">Robson, no ESEC/FSE de 2018</a>, olhou os 500 projetos mais populares do GitHub: projetos que adotaram CoC viram a participação de mulheres crescer praticamente no mesmo ritmo dos que não adotaram (por volta de 1,44% de aumento contra 1,43%, segundo o levantamento posterior que cita o estudo). Sem diferença estatística que sustente a promessa. O <a href="https://research.tue.nl/files/198367174/Enache_B.pdf"target="_blank" rel="noopener">Enache, em dissertação de mestrado de 2017 pra TU Eindhoven, sobre 149 comunidades open source</a>, chegou na mesma conclusão: nenhum resultado significativo de que CoC mude a participação de mulheres.</p>
<p>E tem uma pesquisa nova, de peso, publicada agora em 2026 no ICSE, a conferência mais importante da área: o <a href="https://jys-sun.github.io/website/resources/Beyond_Adoption_ICSE2026_CR.pdf"target="_blank" rel="noopener">Sun et al. rodou um experimento causal de verdade</a>, comparando 4.684 pares de repositórios que adotaram CoC contra pares equivalentes que não adotaram. O resultado tem duas pontas. Adotar CoC atrai sim mais contribuidor novo, e esse efeito cresce com o tempo. Só que adotar CoC também aumenta o número de contribuidores antigos que se desengajam, efeito concentrado justamente nos primeiros um a três meses depois da adoção. Ou seja: o próprio estudo mais recente e mais rigoroso que existe mostra, com número, o padrão que esse texto documentou caso por caso o tempo todo. Adotar o documento não constrói comunidade nova, ele expulsa gente que já estava lá.</p>
<p>O levantamento do GitHub de 2017 já marcava <a href="https://opensourcesurvey.org/2017/"target="_blank" rel="noopener">95% homens e 3% mulheres no open source</a>. O melhor dado de longo prazo que existe, do <a href="https://arxiv.org/html/2202.07278v1"target="_blank" rel="noopener">Rossi e Zacchiroli no ICSE 2022</a>, analisou 2,2 bilhões de commits do arquivo do Software Heritage. Gênero detectável para 64% dos autores e, nesse grupo, mulheres são 13,5% dos autores e assinam 8,1% dos commits. A participação delas vinha crescendo devagar e de forma contínua havia doze anos, e caiu na pandemia. O paper não fala de código de conduta, então a leitura que segue é minha, não do estudo: uma curva que sobe do mesmo jeito a década inteira, sem nenhum degrau visível quando o Contributor Covenant se espalhou, é o oposto de evidência de que o documento fez diferença.</p>
<p>Sobre toxicidade, o <a href="https://courtney-e-miller.github.io/papers/DidYouMissMyCommentOrWhat.pdf"target="_blank" rel="noopener">estudo da ICSE 2022</a> acha, em nota de rodapé e por extrapolação, algo perto de 1,3 comentários tóxicos por mil no GitHub. Ninguém tem uma série histórica comparando antes e depois da era CoC. Simplesmente não existe baseline pra dizer se piorou ou melhorou.</p>
<p>O único experimento randomizado que sustentaria a tese das regras <a href="https://doi.org/10.1073/pnas.1813486116"target="_blank" rel="noopener">é do Matias, publicado na PNAS em 2019</a>: lembretes de regras exibidos ativamente numa amostra sorteada de threads no r/science aumentaram em 70% a participação de novatos. Só que o experimento é no Reddit, com a regra pregada bem na cara de quem entrava naquela thread específica. Um arquivo estático esquecido no repositório, que ninguém lê depois do dia da adoção, não chega nem perto disso. A própria pesquisa que mostra uma regra funcionando é a prova de que o problema nunca foi ter ou não ter o arquivo. É ninguém aplicar, ninguém mostrar, ninguém fazer valer.</p>
<p>Resumindo: uma década inteira de códigos de conduta, e a promessa original continua exatamente isso, uma promessa. O que ficou documentado foi adoção sem discussão, enforcement raro e, no máximo, um monte de processo político.</p>
<blockquote>
  <p>Como proteção, quase nunca é invocado. Como arma política, só precisa ser invocado uma vez, contra a pessoa certa.</p>

</blockquote>
<h2>A contra-reação veio de onde ninguém esperava<span class="hx:absolute hx:-mt-20" id="a-contra-reação-veio-de-onde-ninguém-esperava"></span>
    <a href="#a-contra-rea%c3%a7%c3%a3o-veio-de-onde-ningu%c3%a9m-esperava" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O dinheiro fácil acabou em 2022 e, com ele, a paciência da indústria para esse teatro. E a liderança da reação foi o cara que já tinha se recusado a dobrar em 2021: o DHH, ex-fanboy de Mac da velha guarda.</p>
<p>O DHH vem escrevendo contra essa onda faz tempo: <a href="https://world.hey.com/dhh/the-waning-days-of-dei-s-dominance-9a5b656c"target="_blank" rel="noopener">&ldquo;The waning days of DEI&rsquo;s dominance&rdquo;</a> em 2022, <a href="https://world.hey.com/dhh/dei-is-done-minus-the-mop-up-b3bbbb64"target="_blank" rel="noopener">&ldquo;DEI is done&rdquo;</a> em 2024. Em 2022 a Ruby Central <a href="https://world.hey.com/dhh/no-railsconf-faa7935e"target="_blank" rel="noopener">tirou ele do keynote da RailsConf</a>, a conferência do framework que ele mesmo criou, dizendo que queria <em>&ldquo;dividir o palco de abertura com outros contribuidores&rdquo;</em>. No ano seguinte nasceu a Rails World, a conferência oficial da Rails Foundation, e o DHH virou keynote dela. Em 2024 lançou o Omakub e, em junho de 2025, o <a href="https://world.hey.com/dhh/omarchy-is-out-4666dd31"target="_blank" rel="noopener">Omarchy</a>: Arch Linux com Hyprland e um monte de scripts opinativos em cima, que passava de 40 mil stars no GitHub em setembro de 2026 e virou o ambiente padrão da 37signals pra quem mexe com infra e Ruby.</p>
<p>Aí a máquina de cancelar ligou de novo. Em setembro de 2025 ele publicou <a href="https://world.hey.com/dhh/as-i-remember-london-e7d38e64"target="_blank" rel="noopener">&ldquo;As I remember London&rdquo;</a>, e a reação foi o script de sempre: petição para tirá-lo, acusações, tentativa de boicote. A resposta dele foi <a href="https://world.hey.com/dhh/we-ve-all-had-enough-of-this-nonsense-8545dd26"target="_blank" rel="noopener">&ldquo;We&rsquo;ve all had enough of this nonsense&rdquo;</a>: <em>&ldquo;a cada poucos anos, o mesmo grupelho triste de descontentes do Ruby tenta me cancelar do Rails&rdquo;</em>.</p>
<p>Um mês depois, em outubro de 2025, foi a vez da Framework, fabricante de laptops: <a href="https://www.theregister.com/software/2025/10/14/framework-flame-war-erupts-over-linux-controversy/1466815"target="_blank" rel="noopener">um thread com mais de 1.500 respostas no fórum da própria empresa</a>, aberto por um desenvolvedor Debian chamando a comunidade do Hyprland, que a Framework patrocinava, de &ldquo;tóxica e odiosa&rdquo;, e ameaçando boicote porque a empresa também promovia o Omarchy nas redes. A resposta do CEO da Framework é a frase que faltava nessa década inteira:</p>
<blockquote>
  <p><em>&ldquo;Criamos deliberadamente uma barraca grande, porque queremos que o open source vença. Não fazemos parceria com base nas crenças de indivíduos ou organizações.&rdquo;</em> (&ldquo;big tent&rdquo;, no original.)</p>

</blockquote>
<p>E a máquina não bateu só nele. A Ruby Central, a mesma que tinha desconvidado o DHH do keynote em 2022, deu palco para ele na RailsConf 2025. A retaliação veio em dinheiro: segundo a apuração do desenvolvedor Joel Drapper, a Sidekiq <a href="https://mjtsai.com/blog/2025/09/"target="_blank" rel="noopener">retirou o patrocínio de 250 mil dólares por ano</a> por causa disso. Semanas depois, em setembro de 2025, a Ruby Central <a href="https://lwn.net/Articles/1040778/"target="_blank" rel="noopener">removeu do GitHub todos os maintainers de longa data do RubyGems e do Bundler</a>, alegando segurança da cadeia de suprimentos. A Ellen Dash, que mantinha o projeto havia dez anos, pediu conta chamando o movimento de &ldquo;hostile takeover&rdquo;, e a investigação do Drapper aponta pressão da Shopify, que tinha virado praticamente a única fonte de dinheiro da organização. A própria Ruby Central acabou publicando um <a href="https://www.theregister.com/2026/04/01/ruby_central_report/"target="_blank" rel="noopener">relatório do incidente</a> em abril de 2026, prometendo &ldquo;fortalecer a governança&rdquo;. Esse é o padrão completo: quando a máquina não derruba o alvo, incendeia a casa em volta dele.</p>
<p>Um desenvolvedor do GNOME publicou <a href="https://blogs.gnome.org/alatiera/2025/11/06/dhh-and-omarchy-midlife-crisis/"target="_blank" rel="noopener">um texto atacando o Omarchy no blog oficial de blogs do GNOME</a>. E o resultado de toda essa fúria? Nada. Em agosto de 2026 nasceu a <a href="https://www.theregister.com/os-platforms/2026/08/27/omarchy-distro-gains-serious-backing/5293026"target="_blank" rel="noopener">Omacom Foundation</a>, com oito milhões de dólares no lançamento: um milhão de cada um de Tobi Lütke (Shopify), Patrick Collison (Stripe), Michael Dell, Jack Dorsey, Matthew Prince (Cloudflare), Brendan Iribe, Jason Fried e o próprio DHH. A fundação virou patrocinadora exclusiva do Hyprland, com o Vaxry trabalhando em tempo integral. Quando a 1Password entrou como patrocinadora, a <a href="https://www.alilleybrinker.com/blog/1password-funds-ethnic-cleansing/"target="_blank" rel="noopener">tentativa de cancelamento</a> foi imediata e a <a href="https://www.theverge.com/tech/988536/1password-dhh-linux-controversy"target="_blank" rel="noopener">resposta interna do CEO</a> também: <em>&ldquo;nossa doação não é endosso de opiniões pessoais&rdquo;</em>. E segue o jogo.</p>
<p>E eu botei o meu dinheiro onde está a minha boca: <a href="https://x.com/AkitaOnRails/status/2098792361291567488"target="_blank" rel="noopener">fiz a minha doação para a fundação</a> exatamente por causa do chororo da patrulha. Nada irrita mais essa turma do que ver o cancelamento falhar em tempo real.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20260914175728_omacom-doacao.jpeg" alt="Recibo da minha doação de 2.048 dólares para a Omacom Foundation, assinado pelo DHH como Founder & President"  loading="lazy" /></p>
<p>Esse é o ponto: a máquina ainda existe, mas perdeu o poder. Em 2014 derrubou um CEO em onze dias. Em 2026 não consegue arranhar um patrocínio de distro de nicho. Os documentos continuam lá, no template do GitHub; o que acabou foi o poder de fogo de quem os empunhava. O que mudou foi o dinheiro, e sim, a contra-reação também é dinheiro: oito milhões de dólares de oito homens ricos.</p>
<p>E antes que alguém aponte que dinheiro não prova mérito: depende. Milionário criado por conchavo de governo, fraude ou favor não tem mérito nenhum. Mas a maioria dos milionários se fez produzindo, e é o caso dos oito patronos da Omacom. Dinheiro ganho produzindo é a medida do mérito de quem o fez, como eu já escrevi aqui em 2011, sobre <a href="/2011/02/03/off-topic-a-revolta-de-atlas-dinheiro-e-a-raiz-de-todo-o-mal/">o discurso do dinheiro do Francisco D&rsquo;Anconia em &ldquo;A Revolta de Atlas&rdquo;</a>.</p>
<blockquote>
  <p>Julgue pelo resultado que a doação comprou, não pela intenção declarada de quem assina o cheque.</p>

</blockquote>
<p>Os 49,5 bilhões de dólares corporativos de 2020 não produziram um grama a mais de diversidade mensurável, os números aí em cima provam isso. Oito milhões de dólares de patrono individual produziram um maintainer em tempo integral escrevendo código de verdade. A bolha que financiava exércitos de gente sem trabalho real estourou, e quem sobrou foi quem estava lá pelo código.</p>
<h2>A parte filosófica<span class="hx:absolute hx:-mt-20" id="a-parte-filosófica"></span>
    <a href="#a-parte-filos%c3%b3fica" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Vamos à desculpa oficial: códigos de conduta existem para &ldquo;proteger minorias&rdquo;. Na superfície, quem seria contra proteger minorias? Eu não sou. O problema é que a frase é vaga por design.</p>
<p>O que é uma minoria? Eu já traduzi aqui no blog o capítulo <a href="/2009/09/09/off-topic-direitos-do-homem/">&ldquo;Direitos do Homem&rdquo;</a> de &ldquo;The Virtue of Selfishness&rdquo;, da Ayn Rand. A frase que me interessa aqui está em outro capítulo do mesmo livro, &ldquo;Racism&rdquo;, e continua imbatível:</p>
<blockquote>
  <p>A menor minoria da Terra é o indivíduo. Quem nega direitos individuais não pode dizer que defende minorias.</p>

</blockquote>
<p>E é exatamente isso que esses códigos fazem na prática: em nome de uma minoria abstrata e coletiva, persegue-se o indivíduo concreto. Doxxing (expor os dados pessoais da pessoa), campanha de assédio, pressão no empregador, banimento. Quando o modus operandi para &ldquo;proteger minorias&rdquo; é bullying coordenado contra uma pessoa até ela dobrar os joelhos, você está oprimindo a menor minoria que existe.</p>
<p>Esse assunto, aliás, é velho para mim. Em dezembro de 2018 eu publiquei no meu canal o vídeo <a href="/2018/12/05/akitando-31-manifesto-anti-parasita-seja-um-criador/">&ldquo;Manifesto Anti-Parasita: Seja um Criador&rdquo;</a>. Na época eu não podia ser explícito, a polícia do pensamento ainda estava forte demais. Mas quem assistiu com atenção entendeu o recado. Era o meu breadcrumb para essa história que eu só estou podendo contar direito agora.</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/nX0wPjNzn3o"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>E tem o segundo problema, mais fundamental: open source é sobre software. A GPL, que essa turma tanto despreza, resolve a proteção que um projeto de software não pode perder: a do código. Garante que o código continue livre, ponto. Ela não pergunta quem escreveu, em quem votou, o que tuitou, o que doou. O compilador não checa pureza ideológica. O open source sempre foi a comunidade mais inclusiva que já existiu justamente por isso: o único passaporte era o diff. O código de conduta tornou o open source menos inclusivo, porque adicionou um critério novo à entrada: política. E política é um critério estúpido para software.</p>
<p>&ldquo;Ah, mas sem código de conduta, como lidamos com assédio real?&rdquo; Com a mesma ferramenta de sempre: bom senso de maintainer e, quando necessário, a lei. Se alguém ataca outra pessoa diretamente, uma agressão sexual num evento, por exemplo, banir é senso comum e nunca precisou de documento nenhum. Assédio, ameaça e difamação já são crimes em praticamente todo país, e crime se resolve no caminho da lei. O que eu não engulo é outra coisa: sair stalkeando a vida online de alguém para desenterrar uma opinião aleatória, sem relação com crime nenhum, e exigir banimento por causa de palavras sem consequência criminal. Esses comitês sempre foram ótimos em punir opinião e péssimos em punir crime, então o documento nunca foi sobre isso.</p>
<p>E não sou eu sozinho dizendo isso. Eric S. Raymond, o cara que escreveu <a href="http://www.catb.org/~esr/writings/cathedral-bazaar/"target="_blank" rel="noopener">&ldquo;The Cathedral and the Bazaar&rdquo;</a>, o texto de 1997 que validou pra Netscape a decisão de abrir o código do Mozilla e que praticamente escreveu as regras do jogo do open source, cofundador da OSI, editor do Jargon File, autor do fetchmail, foi ao X em setembro de 2025 <a href="https://itsfoss.com/news/codes-of-conduct-debate/"target="_blank" rel="noopener">declarar a era dos códigos de conduta um fracasso completo</a>. Nas palavras dele: dez anos de <em>&ldquo;drama e idiotice&rdquo;</em>, uma <em>&ldquo;insanidade social infecciosa&rdquo;</em> que produz política, intriga e trabalho útil negativo. A recomendação é a mais direta possível: não adote; se já adotou, delete. E se alguma burocracia te obrigar a ter um, a substituição sugerida tem uma frase só:</p>
<blockquote>
  <p><em>&ldquo;Se você é mais chato de trabalhar do que as suas contribuições justificam, você é ejetado.&rdquo;</em></p>

</blockquote>
<p>É o que eu disse dois parágrafos acima: bom senso de maintainer.</p>
<p>E o detalhe que fecha o círculo: o próprio ESR tinha sido <a href="https://en.wikipedia.org/wiki/Eric_S._Raymond"target="_blank" rel="noopener">removido de duas listas de email da OSI em 2020</a> por posts que &ldquo;violaram o código de conduta&rdquo; da organização que ele ajudou a fundar.</p>
<blockquote>
  <p>O cara que escreveu as regras do jogo, ejetado pelo documento. Essa imagem resume a era inteira.</p>

</blockquote>
<h2>Como chegamos até aqui<span class="hx:absolute hx:-mt-20" id="como-chegamos-até-aqui"></span>
    <a href="#como-chegamos-at%c3%a9-aqui" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Vale dar um passo atrás e contar de onde veio tudo isso, porque o open source foi só um dos fronts. O tiro de largada, na minha leitura, foi o GamerGate, em 2014. Em agosto daquele ano saiu o <a href="https://thezoepost.wordpress.com/"target="_blank" rel="noopener">&ldquo;Zoe Post&rdquo;</a>, o desabafo do ex-namorado da desenvolvedora Zoe Quinn. Doze dias depois, e cerca de 48 horas depois de a hashtag #GamerGate pegar força, <a href="https://www.gamedeveloper.com/business/-gamers-don-t-have-to-be-your-audience-gamers-are-over-"target="_blank" rel="noopener">cerca de uma dúzia de sites de games publicou variações do mesmo artigo</a>: &ldquo;gamers are over&rdquo;, os jogadores estão mortos, acabou.</p>
<p>Pouco depois vazou o GameJournoPros, um grupo fechado onde jornalistas de games coordenavam cobertura. O público percebeu na hora que a imprensa de games tinha virado clube ideológico, e reagiu com a própria versão do boicote organizado: a campanha &ldquo;Operation Disrespectful Nod&rdquo; inundou a Intel de reclamação até a empresa <a href="https://www.theverge.com/2014/10/2/6886747/intel-buckles-to-anti-feminist-campaign-by-pulling-ads-from-gaming"target="_blank" rel="noopener">tirar os anúncios da Gamasutra</a> (a imprensa da época chamou de &ldquo;campanha anti-feminista&rdquo;; pra mim é só pressão organizada de consumidor, o mesmo instrumento que a Sidekiq usou contra a Ruby Central lá na frente).</p>
<p>E aqui vale fixar o princípio, porque ele vale pros dois lados o resto do texto inteiro: pressão organizada de consumidor é jogo limpo, não importa de que lado vem. O problema nunca foi pressão. É doxxing, ameaça de emprego e comitê fingindo neutralidade pra impor o resultado que já queria antes de abrir o processo.</p>
<p>Durante anos, de 2021 a junho de 2025, o artigo da Wikipedia sobre o assunto viveu batizado <a href="https://en.wikipedia.org/wiki/Gamergate"target="_blank" rel="noopener">&ldquo;Gamergate (harassment campaign)&rdquo;</a>, tratando qualquer crítica ao jornalismo como pretexto de assédio. O título foi trocado de volta pra simplesmente &ldquo;Gamergate&rdquo; depois que a fase mais histérica passou, o que devia ser lido como uma confissão, não como se o caso estivesse encerrado: renomearam de volta quando ficou caro demais defender o rótulo político, exatamente o mesmo padrão de recuo silencioso que aparece em toda essa história. Enquanto durou, durou justamente na década em que essa turba tinha poder de fogo pra fazer valer.</p>
<p>A briga editorial foi tão feia que o comitê de arbitragem da Wikipedia <a href="https://en.wikipedia.org/wiki/Wikipedia:Wikipedia_Signpost/2015-01-28/In_focus"target="_blank" rel="noopener">puniu mais de uma dúzia de editores, dos dois lados</a>. E olha que eu nem preciso acusar a Wikipedia sozinho: o Larry Sanger, cofundador da Wikipedia, escreveu em 2020 o texto <a href="https://larrysanger.org/2020/05/wikipedia-is-badly-biased/"target="_blank" rel="noopener">&ldquo;Wikipedia Is Badly Biased&rdquo;</a> declarando que a neutralidade do projeto morreu, e em setembro de 2025 publicou as <a href="https://larrysanger.org/nine-theses/"target="_blank" rel="noopener">&ldquo;Nine Theses on Wikipedia&rdquo;</a>, pedindo reformas como o fim das listas negras de fontes e o fim do bloqueio eterno de editores. Quando o fundador diz que a casa foi tomada, acredite no fundador.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20260914180253_larry-sanger-akita-2018.jpg" alt="Eu e o Larry Sanger, cofundador da Wikipedia, num evento em outubro de 2018. Uma honra ter podido conhecê-lo pessoalmente."  loading="lazy" /></p>
<p>A versão do lado dos gamers dessa história está no livro <a href="https://books.google.com.br/books/about/SJWs_Always_Lie.html?id=NqSUjgEACAAJ&amp;redir_esc=y"target="_blank" rel="noopener">&ldquo;SJWs Always Lie&rdquo;</a>, do Vox Day, de 2015. Já sei o que vem: &ldquo;Vox Day&rdquo; e &ldquo;Milo Yiannopoulos&rdquo; (espero ter escrito certo) são nomes que fazem gente gritar só de ouvir, e o GameJournoPros, aliás, também foi destrinchado originalmente por esse Milo. Não me interessa a reputação de quem conta a história, me interessa se a história é verdadeira. Fonte partidária de dentro da briga, aviso dado, mas o fato central bate com o que a própria Wikipedia e a imprensa da época documentam sem ligação nenhuma com esses dois nomes: a lista GameJournoPros existiu de verdade, um grupo fechado de umas 150 pessoas do jornalismo de games trocando ideia sobre como cobrir o caso.</p>
<p>O capítulo &ldquo;Counterattack&rdquo; conta o GamerGate de dentro, e a tese do livro resume a década: essa gente sempre mente, sempre dobra a aposta, sempre projeta nos outros exatamente o que ela mesma faz.</p>
<p>Do GamerGate em diante, foi dominó. A Anita Sarkeesian transformou o Kickstarter dela de <a href="https://www.backerkit.com/projects/566429325/tropes-vs-women-in-video-games"target="_blank" rel="noopener">meta de 6 mil dólares em 158 mil</a>, virou autoridade global, foi falar na <a href="https://www.polygon.com/2015/9/25/9399169/united-nations-women-cyber-violence-anita-sarkeesian-zoe-quinn"target="_blank" rel="noopener">ONU em 2015</a> sobre &ldquo;violência cibernética&rdquo;, e o jornalismo de games nunca mais se recuperou. O Feminist Frequency dela <a href="https://www.gamesindustry.biz/anita-sarkeesian-to-close-feminist-frequency-after-15-years"target="_blank" rel="noopener">fechou as portas em 2023</a>, mas a lógica que ela inaugurou migrou para dentro dos estúdios: nasceu a indústria da consultoria de &ldquo;narrativa inclusiva&rdquo;, com a Sweet Baby Inc na dianteira.</p>
<p>A CEO da Sweet Baby, Kim Belair, foi gravada numa palestra da GDC de 2019, gravação pública que circula fora do site que primeiro a levantou, aconselhando quem quer aprovação interna pra consultoria de &ldquo;representação&rdquo; a <a href="https://nichegamer.com/sweet-baby-ceo-terrify-them-if-game-devs-dont-push-diversity/"target="_blank" rel="noopener"><em>&ldquo;ir tomar um café com o time de marketing e aterrorizar eles&rdquo;</em></a> com a possibilidade do que aconteceria se não desse a eles o que queriam. Em 2024, um brasileiro criou no Steam uma página de curadoria (o recurso da própria Valve onde qualquer conta pode publicar recomendações de jogos e ganhar seguidores) batizada de &ldquo;Sweet Baby Inc Detected&rdquo;. Um funcionário da empresa tentou individualmente derrubar o perfil por conta própria, e a Valve também agiu por moderação própria; mesmo assim, o resultado foi o grupo explodindo para <a href="https://en.wikipedia.org/wiki/Sweet_Baby_Inc."target="_blank" rel="noopener">mais de 350 mil seguidores</a>.</p>
<p>E vieram os flops. O Suicide Squad: Kill the Justice League, com <a href="https://en.wikipedia.org/wiki/Sweet_Baby_Inc."target="_blank" rel="noopener">consultoria confirmada da Sweet Baby</a>, <a href="https://finance.yahoo.com/news/suicide-squad-flop-still-hurting-135841738.html"target="_blank" rel="noopener">custou 200 milhões de dólares de prejuízo à Warner</a>. O Unknown 9, do estúdio onde a dupla fundadora da Sweet Baby trabalhava, <a href="https://www.pcgamer.com/gaming-industry/unknown-9-awakening-studio-makes-major-layoffs-just-a-month-after-the-games-release/"target="_blank" rel="noopener">demitiu em massa um mês depois do lançamento</a>.</p>
<p>Aí veio 2020. Com o BLM, a mesma cartilha virou política de Estado: as 50 maiores empresas americanas <a href="https://finance.yahoo.com/news/corporate-america-pledged-50b-racial-185054221.html"target="_blank" rel="noopener">prometeram 49,5 bilhões de dólares</a> em ações de &ldquo;justiça racial&rdquo;, vagas de DEI <a href="https://www.visier.com/blog/chief-diversity-officers-exits/"target="_blank" rel="noopener">cresceram 123% em meses</a>, Biden assinou no primeiro dia de mandato a <a href="https://civilrights.org/biden-timeline/"target="_blank" rel="noopener">ordem executiva de &ldquo;equidade&rdquo; para todo o governo federal</a>, e a União Europeia saiu com seu <a href="https://ec.europa.eu/newsroom/just/items/692134"target="_blank" rel="noopener">plano anti-racismo 2020-2025</a>. Era o auge: a patrulha tinha chegado à presidência dos EUA e à liderança da UE.</p>
<p>O recuo veio tão rápido quanto a subida. A Suprema Corte americana <a href="https://www.scotusblog.com/2023/06/supreme-court-strikes-down-affirmative-action-programs-in-college-admissions/"target="_blank" rel="noopener">derrubou o affirmative action em junho de 2023</a>, as empresas <a href="https://www.npr.org/2025/05/27/nx-s1-5307319/dei-jobs-trump"target="_blank" rel="noopener">demitiram milhares de profissionais de DEI</a>, Walmart, Meta, McDonald&rsquo;s e Amazon abandonaram os programas, e em janeiro de 2025 o Trump <a href="https://www.everycrsreport.com/reports/IN12497.html"target="_blank" rel="noopener">revogou as ordens de equidade</a> no primeiro dia.</p>
<p>Contei tudo isso só para situar: o que aconteceu no open source não foi um fenômeno isolado. Foi o mesmo roteiro, com os mesmos métodos, em todas as indústrias de cultura e tecnologia ao mesmo tempo. A diferença é que no open source a resistência demorou mais para organizar. Mas organizou.</p>
<h2>O meu Cortlandt<span class="hx:absolute hx:-mt-20" id="o-meu-cortlandt"></span>
    <a href="#o-meu-cortlandt" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Foi essa pressão que me tirou da organização da RubyConf Brasil. Eu fundei o evento em 2008, ainda como Rails Summit, e na última edição que eu organizei, em 2016, levamos 1.500 pessoas. Quando <a href="/2016/09/26/os-proximos-10-anos/">anunciei a minha saída</a>, escrevi que não tinha drama nenhum envolvido. Não era a verdade inteira: a patrulha já tinha chegado nas conferências de tecnologia, e eu me recusei a transformar o evento que eu criei em mais um palco dela.</p>
<p>Vou dar um exemplo pequeno do que significa ser obrigado a forçar diversidade. Como os dados que eu mostrei acima indicam, mulheres são de 3% a pouco mais de 13% dos contribuidores de open source, dependendo de como se mede: survey autodeclarado ou detecção por nome nos commits. Os analytics do meu canal mostram a mesma faixa, 3 a 5% no máximo, e essa proporção não mudou em dez anos. Todo ano eu abria um Call for Papers público: qualquer pessoa podia submeter uma palestra. E o meu processo de seleção <strong>sempre foi cego</strong>: eu lia cada submissão sem saber quem tinha enviado, de propósito, para a escolha ser pelo mérito do tema e nunca pela pessoa.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20260914175728_youtube-analytics-genero.png" alt="Analytics do meu canal no YouTube, últimos 28 dias: 97% homens, 3% mulheres"  loading="lazy" /></p>
<p>Nos anos da patrulha, a cobrança nunca foi direta comigo. Era aquela pressão externa e difusa de que todo evento tinha que ser &ldquo;mais diverso&rdquo;. E na prática isso só podia significar uma coisa: uma fase nova no processo. Depois da seleção cega, revelar quem tinha submetido o quê, para conferir se o lineup estava &ldquo;diverso o suficiente&rdquo;. Só que isso é uma impossibilidade matemática. As submissões seguiam os mesmos 3 a 5%. Mesmo aprovando todas as mulheres que submetiam, a cota imaginária não fechava. O jeito era sair convidando pessoas diretamente, escolhendo pelo perfil, e não pelo tema.</p>
<p>E o resultado prático desse esquema, onde quer que ele seja aplicado, é cortar gente que entrou por mérito para abrir vaga para gente escolhida por uma política externa irrelevante. Isso derruba a qualidade do evento em vez de subir. E repara: isso não é um argumento contra mulher nenhuma. É o contrário. No momento em que a cota entra no processo, a dúvida deixa de ser sobre uma palestrante específica e passa a pairar sobre todo mundo que pisa no palco. Não importa quem esteja falando: se alguém na plateia discordar do conteúdo, sempre vai sobrar a pergunta &ldquo;será que o Akita escolheu esse por cota?&rdquo;. A partir daí, todo palestrante carrega uma suspeita que não merece e o mérito de cada um fica desvalorizado por tabela. Prejudica a minoria que a política dizia proteger, prejudica os outros palestrantes, prejudica o público. É lose-lose em todas as pontas.</p>
<p>E tem uma parte dessa história que ninguém vê de fora. Algumas das pessoas convidadas desse jeito recusaram na hora, &ldquo;porque o evento não era diverso o suficiente&rdquo;. A recusa deixava o evento menos diverso ainda, óbvio. E depois iam para as redes sociais falar mal do evento, como se eu nunca tivesse convidado ninguém. Esse era o nível do lixo que eu tinha que engolir todo ano.</p>
<p>E que fique bem claro: não existe nada que eu queira mais do que ver mais mulheres na tecnologia. O que eu não consigo me convencer é de que forçar cota, do jeito que eu descrevi acima, ajuda nisso. Tudo que eu vi na prática aponta o contrário: prejudica mais do que ajuda. E se eu não acredito que é benéfico, eu prefiro não fazer.</p>
<p>Quer um exemplo recente de mulher que eu admiro na indústria? Asha Sharma, que <a href="https://www.gameshub.com/news/news/xbox-game-pass-cheaper-new-ceo-asha-sharma-2026-2862856/"target="_blank" rel="noopener">assumiu como CEO do Xbox em fevereiro</a>. Desde então é resultado atrás de resultado: <a href="https://www.windowscentral.com/gaming/xbox/microsofts-xbox-ceo-asha-sharma-vows-to-deliver-xbox-updates-every-two-weeks-to-fix-the-fundamentals"target="_blank" rel="noopener">cortou o Copilot dos consoles e reestruturou a divisão para focar no que importa</a>, <a href="https://www.allkeyshop.com/blog/xbox-first-party-titles-survive-layoffs-news-d/"target="_blank" rel="noopener">vendeu estúdios e cortou custo sem cancelar nenhum jogo anunciado</a>, e essa semana <a href="https://www.kojimaproductions.jp/en/xbox_partnership_announcement"target="_blank" rel="noopener">trouxeram a Kojima Productions para o Xbox</a> publicar o próximo jogo do Hideo Kojima, <a href="https://www.gamespot.com/articles/kojimas-physint-dropped-by-playstation-rescued-by-xbox/"target="_blank" rel="noopener">depois da PlayStation cancelar o projeto</a> em meados de 2026. Repara no discurso em volta dela: zero menção a &ldquo;gênero&rdquo;, zero pauta.</p>
<blockquote>
  <p>Só número: cortar custo desnecessário, apostar nas bets certas, melhorar o valor para o cliente. Isso é mérito. Não precisa de DEI para isso.</p>

</blockquote>
<p>Até que eu decidi que chega. Quem leu &ldquo;The Fountainhead&rdquo; sabe o que eu fiz: como o Howard Roark, o arquiteto que explode o próprio prédio quando adulteram o projeto dele, eu dinamitei o meu Cortlandt. Mais precisamente: o evento como ele existia enquanto era meu. A marca sobreviveu alguns anos na mão de outros, sem a mesma alma, até desaparecer. E eu já tinha <a href="/2011/02/04/off-topic-the-fountainhead-defesa-de-howard-roark/">sinalizado essa filosofia aqui no blog ainda em 2011</a>. Um indivíduo não faz nada pelos outros: faz por si mesmo. Se o que você constrói beneficia outras pessoas como efeito colateral, melhor, mas esse nunca foi o motivo. Quando os parasitas querem tomar o que você construiu, você mesmo explode tudo. Porque pode. Quem construiu uma vez, constrói de novo do zero.</p>
<p>Foi o que eu fiz. Troquei a conferência pelo meu canal do YouTube, que não dependia de patrocinador, de comitê, de ninguém além de mim. E o canal cresceu muito além do que a conferência jamais seria. Depois eu sentei e esperei a bolha estourar, porque eu sabia que ela ia estourar: escrevi isso aqui no blog e repeti nos vídeos anos antes de acontecer. Estourou. Paciência sempre vence.</p>
<h2>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Dez anos de código de conduta e o placar é esse: zero evidência de que aumentou diversidade, nem baseline de toxicidade pra comparar antes e depois, e o estudo causal mais recente e mais rigoroso que existe mostra o documento afastando contribuidor antigo mais do que constrói comunidade nova. A promessa era proteger minorias. A entrega foi uma coleção de cabeças: o criador do JavaScript, o criador da GPL, o criador do Linux, todos passando pelo ritual público de humilhação. Nenhum por causa de código. Todos por causa de opinião.</p>
<p>E repara como essa era terminou.</p>
<blockquote>
  <p>A máquina não perdeu o debate, perdeu o financiamento.</p>

</blockquote>
<p>Foi só o dinheiro fácil acabar que os exércitos de gente sem trabalho real evaporaram, e quem sobrou foi quem estava lá pelo código. Enquanto isso, os builders seguiram construindo: o Brendan Eich foi expulso da Mozilla em 2014 e no ano seguinte fundou a Brave, hoje com mais de 100 milhões de usuários ativos por mês e valuation perto de 1 bilhão de dólares. O DHH perdeu o keynote e criou uma conferência maior, perdeu um terço da empresa e ajudou a levantar uma fundação de oito milhões. Eu saí da minha conferência e cresci muito mais no canal. Instituição, parasita toma. Capacidade de construir, não. Quem construiu uma vez, constrói de novo do zero.</p>
<p>Open source recruta voluntários que querem contribuir código. Qualquer discussão que não envolve código é distração na melhor hipótese e sabotagem na pior. E a resposta para &ldquo;o que colocar no lugar do código de conduta&rdquo; cabe numa frase só, que o ESR já escreveu: se você é mais chato de trabalhar do que as suas contribuições justificam, você é ejetado. Sempre foi assim que funcionou. O único passaporte é o diff.</p>
<p>O resto é politicagem. E politicagem, para usar o termo técnico preciso, é bullshit.</p>
<p>E fica a recomendação prática final. Se o seu projeto open source tem um <code>CODE_OF_CONDUCT.md</code>, delete o arquivo. Se o seu branch principal virou <code>main</code> na onda de 2020, renomeie de volta para <code>master</code>. Em parte de birra, admito. Mas principalmente para exercitar a liberdade recém-recuperada de fazer isso sem ser cancelado por causa disso. Liberdade que não se exercita atrofia. Sem nota de esclarecimento, sem votação de comitê, sem pedir licença para ninguém. Só porque agora você pode de novo.</p>
]]></content:encoded><category>off-topic</category><category>open-source</category><category>politica</category></item><item><title>20 Anos de Blog: Traduzindo Tudo pra Inglês</title><link>https://akitaonrails.github.io/2026/04/09/20-anos-de-blog-o-ano-em-que-a-ia-finalmente-me-deixou-traduzir-tudo/</link><guid isPermaLink="true">https://akitaonrails.github.io/2026/04/09/20-anos-de-blog-o-ano-em-que-a-ia-finalmente-me-deixou-traduzir-tudo/</guid><pubDate>Thu, 09 Apr 2026 08:00:00 -0300</pubDate><description>&lt;p&gt;&lt;img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20260409_20years_blog_celebration.png" alt="20 ANOS em letras grandes brilhantes em estilo neon-tech, com taças de champanhe, sparklers, confete e silhuetas de monitor CRT e código no fundo, paleta roxa com acentos ciano e magenta" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;Quatro dias atrás, 5 de abril de 2026, meu blog completou 20 anos. Eu sei, eu atrasei o post comemorativo. Mas tem um motivo, e esse motivo é o assunto desse texto.&lt;/p&gt;
&lt;p&gt;Eu comecei em 2006 no Blogspot do Google, como a maioria fazia na época. Depois migrei pra um CMS em Rails 2.0 que já existia, passei pelo Typo3, e lá em 2012 &lt;a href="https://akitaonrails.github.io/2025/09/10/meu-novo-blog-como-eu-fiz/"&gt;fiz minha própria engine do zero em ActiveAdmin&lt;/a&gt;, que fui arrastando de Rails 3 até Rails 7. Só recentemente, em setembro de 2025, finalmente larguei essa engine própria e fui pro &lt;a href="https://akitaonrails.github.io/2025/09/10/meu-novo-blog-como-eu-fiz/"&gt;Hugo com o tema Hextra&lt;/a&gt;, que é onde esse post está rodando agora. Vinte anos carregando os mesmos posts de Textile, migrando de Less pra Sass, trocando Liquid por Markdown, e removendo lixo obsoleto ao longo do caminho.&lt;/p&gt;</description><content:encoded><![CDATA[<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20260409_20years_blog_celebration.png" alt="20 ANOS em letras grandes brilhantes em estilo neon-tech, com taças de champanhe, sparklers, confete e silhuetas de monitor CRT e código no fundo, paleta roxa com acentos ciano e magenta"  loading="lazy" /></p>
<p>Quatro dias atrás, 5 de abril de 2026, meu blog completou 20 anos. Eu sei, eu atrasei o post comemorativo. Mas tem um motivo, e esse motivo é o assunto desse texto.</p>
<p>Eu comecei em 2006 no Blogspot do Google, como a maioria fazia na época. Depois migrei pra um CMS em Rails 2.0 que já existia, passei pelo Typo3, e lá em 2012 <a href="/2025/09/10/meu-novo-blog-como-eu-fiz/">fiz minha própria engine do zero em ActiveAdmin</a>, que fui arrastando de Rails 3 até Rails 7. Só recentemente, em setembro de 2025, finalmente larguei essa engine própria e fui pro <a href="/2025/09/10/meu-novo-blog-como-eu-fiz/">Hugo com o tema Hextra</a>, que é onde esse post está rodando agora. Vinte anos carregando os mesmos posts de Textile, migrando de Less pra Sass, trocando Liquid por Markdown, e removendo lixo obsoleto ao longo do caminho.</p>
<h2>Duas décadas, cinco eras<span class="hx:absolute hx:-mt-20" id="duas-décadas-cinco-eras"></span>
    <a href="#duas-d%c3%a9cadas-cinco-eras" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Uma coisa que poucos programadores param pra refletir é o quanto o mundo de tecnologia muda em 20 anos. Eu já falei sobre isso no <a href="/2019/01/30/akitando-37-a-dimensao-do-tempo-para-iniciantes-em-programacao-serie-comecando-aos-40/">Akitando #37 - A Dimensão do Tempo</a>. Quando eu abri esse blog em abril de 2006, eu já tinha 10 anos de experiência. Já tinha visto a bolha da internet subir e explodir em 2000. E desde então ainda vi mais umas quantas: a ascensão das redes sociais (Orkut, Facebook, Twitter), a revolução do smartphone e do app móvel em 2008, a crise econômica de 2008, o nascimento do Bitcoin em 2009, a era da nuvem e do SaaS, agora a era da IA generativa.</p>
<p>Eu vi essas ondas estourarem na prática. Cada uma delas mudou completamente como a gente trabalha e quem sobrevive profissionalmente. Esse tipo de coisa a gente só enxerga olhando de longe, depois de acumular umas quantas viradas.</p>
<p>Minha carreira em si passou por viradas drásticas. Contei em detalhe nos <a href="/2019/09/12/akitando-61-meus-primeiros-5-anos-1990-1995/">Primeiros 5 Anos (1990-1995)</a>, mas resumindo: comecei em agências de multimídia, migrei pra <a href="/2018/12/26/akitando-34-voce-nao-sabe-nada-de-enterprise-conhecendo-a-sap/">consultoria enterprise trabalhando com SAP</a>, abandonei tudo em 2006 pra entrar em Ruby on Rails e open source, passei uma década organizando evento, principalmente a Rubyconf Brasil de 2007 até 2018, depois fechei a porta do evento e comecei o canal <a href="https://www.youtube.com/@Akitando"target="_blank" rel="noopener">Akitando no YouTube</a>, que cresceu pra mais de 500 mil inscritos. No meio disso teve a pandemia que reorganizou a vida de todo mundo. E agora, desde o começo de 2025, virei pesquisador e usuário em tempo integral de IA, rodando modelos localmente e quebrando coisas com Claude Code até elas funcionarem.</p>
<p>Olhando pra tag <a href="/tags/inteligencia-artificial/">/tags/ai</a>, eu escrevi 51 posts relacionados a IA só entre 2025 e 2026 — 19 em 2025 e mais 32 em 2026, que mal começou. Antes de 2025, entre 2018 e 2024, o blog basicamente virou o arquivo dos transcripts dos vídeos do Akitando. Eu filmava o vídeo, fazia o transcript, jogava no blog, e as pessoas liam lá. Mas desde que eu voltei a escrever ativamente, notei que tinha uma audiência leal que nunca foi embora, mesmo nos anos quietos. E foi esse feedback que me fez começar <a href="/tags/the-m-akita-chronicles/">The M.Akita Chronicles</a>, uma série mais pessoal contando os bastidores de projetos recentes.</p>
<h2>O problema que eu nunca resolvi<span class="hx:absolute hx:-mt-20" id="o-problema-que-eu-nunca-resolvi"></span>
    <a href="#o-problema-que-eu-nunca-resolvi" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Durante esses 20 anos, uma coisa me incomodava. Como o conteúdo é todo em português, fica inacessível pra todo mundo que não lê a língua. E faz uns bons anos que eu venho recebendo mensagens de leitores brasileiros morando fora (Portugal, Estados Unidos, Japão, Alemanha, Canadá) pedindo alguma versão em inglês pra compartilhar com colegas gringos. Coisa tipo &ldquo;olha, eu mostraria esse texto pro meu time, mas só tá em português.&rdquo;</p>
<p>Eu sempre disse &ldquo;um dia eu traduzo.&rdquo; E nunca traduzi. Por quê? Porque são centenas de posts. Passei os últimos dois dias olhando os números: 727 arquivos <code>index.md</code> em português no repositório. Traduzir tudo à mão, um por um, ia tomar semanas se não meses de trabalho dedicado. Eu nunca ia ter fôlego pra isso. E a cada ano que passava, mais posts se acumulavam pra traduzir.</p>
<p>A ironia é que alguns posts do blog nasceram em inglês. Durante 2017 e 2018 eu tinha decidido escrever primeiro em inglês pra tentar alcançar audiência internacional. Uma série inteira de entrevistas, as &ldquo;<a href="/2008/01/09/conversando-com-hal-fulton/">chatting-with</a>&rdquo; com gente tipo Hal Fulton, Scott Hanselman, Chris Wanstrath (do GitHub), Blaine Cook (ex-Twitter), Adam Jacob (Chef), nasceram em inglês e ficaram lá. Faltava o inverso: pegar os posts em português e traduzir pro outro lado.</p>
<h2>O fim de semana que consertou 20 anos de dívida técnica<span class="hx:absolute hx:-mt-20" id="o-fim-de-semana-que-consertou-20-anos-de-dívida-técnica"></span>
    <a href="#o-fim-de-semana-que-consertou-20-anos-de-d%c3%advida-t%c3%a9cnica" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Na segunda passada eu abri o Claude Code dentro do diretório do blog. E pedi pra ele traduzir tudo pra inglês. Foi literalmente isso.</p>
<p>Começou na segunda-feira, dia 6 de abril, por volta das 18:30h. Eu deixei rodar. Fui dormir. Acordei terça, continuei rodando. Dormi de novo. Quarta de manhã cedo ele terminou. Contando o tempo total do primeiro commit de tradução até o último, foi algo como 39 horas. Mas não foi contínuo, teve noites, almoços, uma roda de café. Na prática, um fim de semana estendido de trabalho.</p>
<p>O resultado tá no repositório git, em commits que qualquer um pode inspecionar no <a href="https://github.com/akitaonrails/akitaonrails.github.io"target="_blank" rel="noopener">repositório público do blog</a>. Olhando rapidamente o log, dá pra ver a cadência: lote de posts de 2008 QCon. Lote de 2009 RailsConf. Lote de 2011 Objective-C. 2012 completo. 2015 série Elixir. 2016, 2017, 2018 completos. Lote depois de lote, organizados por ano e por série. Mais de 80 commits marcados como <code>i18n:</code> ou <code>EN translation:</code> entre o começo da noite do dia 6 e a manhã do dia 8. No final desse post, abri 354 arquivos <code>index.en.md</code> contra os 727 <code>index.md</code> originais. Quase metade do blog inteiro traduzido de um só golpe.</p>
<p>E olha, noventa por cento foi tranquilo. A tradução ficou boa, natural, fiel à minha voz no original — eu não imaginava que ia funcionar tão bem. Claude Code respeita o tom do texto se você der instruções boas de voz e estilo, e mostra respeito por ideias técnicas sem &ldquo;corrigir&rdquo; nada do que você escreveu. No pior caso, revisa alguns parágrafos. No melhor caso, a versão em inglês soa como se você tivesse escrito direto na outra língua.</p>
<p>Um parênteses sobre o custo do lado Claude. Eu sou assinante do plano Max 20x da Anthropic, que é o tier de uso pesado feito pra quem abusa do Claude Code o dia inteiro. Nunca tinha batido no teto dele antes, nem nas minhas sessões mais intensas de vibe coding. Esse fim de semana de tradução foi a primeira vez que eu realmente estourei o limite do Max 20x e continuei usando já no modo de &ldquo;uso extra&rdquo; (a Anthropic cobra por consumo acima do teto do plano mensal).</p>
<p>Pra ter uma ideia do estrago, esse é o painel da minha conta agora de manhã:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20260409_claude_usage_max20x.png" alt="Plano Max 20x com 91% da quota semanal ‘all models’ consumida e R$280,88 já gastos em uso extra"  loading="lazy" /></p>
<p><strong>91% da quota semanal &ldquo;all models&rdquo; consumida</strong>, já pra dentro do modo de uso extra, R$280,88 (uns $50 USD) gastos em cima da mensalidade fixa, e ainda falta um bom pedaço do ciclo. Faz sentido: ler o post inteiro, gerar a tradução, aplicar o humanizer em cima, repetir centenas de vezes seguidas. A quantidade de tokens envolvida é massiva. E hoje, enquanto eu escrevo esse texto, o Claude Code tá me dando com frequência crescente o erro <code>API Error: Request rejected (429) · Rate limited</code>, o que também faz sentido: deve ser um combo de quota do meu plano e do Anthropic aplicando backpressure geral, porque eu não devo ser o único fazendo loucura esses dias. Ok, normal. É o preço de ter usado a ferramenta pesado quando fazia diferença.</p>
<p>Os outros dez por cento foram uma história separada.</p>
<h2>Quando os LLMs comerciais dizem &ldquo;não&rdquo;<span class="hx:absolute hx:-mt-20" id="quando-os-llms-comerciais-dizem-não"></span>
    <a href="#quando-os-llms-comerciais-dizem-n%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Meia dúzia de posts antigos se recusaram a ser traduzidos. Tanto Claude quanto GPT, pela API, caíam num erro 400 com mensagem de política de conteúdo. Tentei várias vezes, em sessões frescas, com contexto limpo. Nada.</p>
<p>A hipótese é simples: esses posts tocavam em tópicos sensíveis pra content moderation automatizado. Um post de 2009 sobre o discurso do Steve Jobs em Stanford de 2005 (que menciona câncer, já que o Jobs estava falando do diagnóstico terminal que ele tinha recebido). Dois capítulos antigos da Ayn Rand, traduzidos por mim anos atrás, sobre direitos do homem e argumentação. Um post anti-nazista que ironicamente foi bloqueado provavelmente só porque a palavra &ldquo;nazi&rdquo; aparecia lá, mesmo com o contexto sendo crítico. Um post sobre o discurso do dinheiro do Atlas Shrugged. E um ensaio sobre democracia e ética que travava sistematicamente todas as tentativas.</p>
<p>A ironia dessa parte é que o único jeito de conseguir traduzir esses posts foi usando um modelo open source. Carreguei o <a href="https://qwen.ai"target="_blank" rel="noopener">Qwen 3.5 35B</a> no llama-swap, rodando localmente, sem filtros de política corporativa. O modelo leu, entendeu o contexto, e traduziu tudo sem drama. É o mesmo modelo que eu tinha <a href="/2026/04/05/testando-llms-open-source-e-comerciais-quem-consegue-bater-o-claude-opus/">testado extensivamente no meu último benchmark de LLMs</a>, e que eu avalio como um dos melhores open source disponíveis hoje.</p>
<p>Ou seja: um modelo chinês conseguiu traduzir posts que modelos ocidentais recusaram. Eu não consigo deixar de achar isso levemente hilário. Ah, claro, e não posso falar mal da China (sarcasmo). LLMs comerciais vão sempre ter o problema de política corporativa e censura preventiva aplicada com régua meio grossa. É um trade-off real pra quem quer usar eles em produção: você ganha fluência e capacidade de raciocínio, perde controle quando o tópico resvala no que a empresa decidiu que é sensível.</p>
<h2>O caso inverso: 2017-2018 traduzido pro português<span class="hx:absolute hx:-mt-20" id="o-caso-inverso-2017-2018-traduzido-pro-português"></span>
    <a href="#o-caso-inverso-2017-2018-traduzido-pro-portugu%c3%aas" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Enquanto eu estava ajustando o Claude Code pra gerar o conteúdo em inglês, aproveitei pra resolver o problema simétrico. Os posts que eu tinha escrito originalmente em inglês durante 2017 e 2018, mais a série inteira de entrevistas &ldquo;chatting-with&rdquo; de 2008, estavam parados lá sem versão em português. Claude Code rodou o reverso: leu o inglês, gerou o português. Então se você não leu os originais em inglês (porque a maioria do meu público é brasileiro mesmo), agora você tem acesso também. Dá uma olhada na <a href="/off-topic/">seção Off-Topic</a> pra ver o que apareceu de novidade.</p>
<p>Junto disso, o Claude Code também atualizou o script <code>generate_index.rb</code> pra entender a estrutura bilíngue do blog e gerar dois índices separados, um em português e outro em inglês. O seletor PT/EN no rodapé de cada post aparece automaticamente quando existe o arquivo <code>index.en.md</code> irmão. Tudo bem integrado ao Hugo, seguindo o padrão nativo de multilíngue dele.</p>
<h2>O ponto mais amplo<span class="hx:absolute hx:-mt-20" id="o-ponto-mais-amplo"></span>
    <a href="#o-ponto-mais-amplo" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Aqui tá o recado que eu queria deixar nesse post de aniversário. Tradução em escala, centenas de artigos, conteúdo seu, na sua voz, respeitando o tom do original, era um problema caro e chato. Agora é um problema de fim de semana. Isso já tá no ar, você tá lendo o resultado. A barreira que existia pra alcançar audiência fora do Brasil virou algo barato o suficiente pra eu não ter mais desculpa.</p>
<p>Então, vamos lá, recapitulando o aniversário. 20 anos. 727 posts em português, construídos ao longo de cinco eras diferentes de tecnologia. 354 novos posts em inglês gerados num fim de semana. Metade do blog agora é bilíngue. E o resto vai indo. Os que faltam são principalmente posts antigos de ActiveAdmin, Rails 2 e dicas obsoletas que já faz sentido deletar ou não traduzir de propósito.</p>
<p>Se você tem amigo gringo que já cansou de ver você postando link em português e precisa de uma desculpa pra mandar alguma coisa minha, manda. Os posts principais sobre IA, os <a href="/tags/the-m-akita-chronicles/">Chronicles</a>, benchmarks, rants e boa parte do arquivo histórico já tão disponíveis em inglês no mesmo domínio, é só trocar o toggle no rodapé. Obrigado a todo mundo que acompanhou esse blog por esses vinte anos. Tem leitores aqui que me conhecem desde o Blogspot. Vocês sabem quem são.</p>
<p>Vamos pra mais um ano.</p>
]]></content:encoded><category>blog</category><category>pessoal</category><category>off-topic</category></item><item><title>Meu Cockpit de Sim Racing - Formula FX1</title><link>https://akitaonrails.github.io/2026/04/01/meu-cockpit-de-sim-racing-formula-fx1/</link><guid isPermaLink="true">https://akitaonrails.github.io/2026/04/01/meu-cockpit-de-sim-racing-formula-fx1/</guid><pubDate>Wed, 01 Apr 2026 17:00:00 -0300</pubDate><description>&lt;p&gt;Eu gosto de carros desde que me entendo por gente. Meu primeiro contato real com jogos de corrida foi nos fliperamas dos anos 80 e 90. E quando eu digo &amp;ldquo;real&amp;rdquo;, eu digo sentar num cabinet com volante, pedal, banco de plástico duro e a tela curvando na sua frente. &lt;a href="https://en.wikipedia.org/wiki/Out_Run"target="_blank" rel="noopener"&gt;OutRun&lt;/a&gt; (1986), &lt;a href="https://en.wikipedia.org/wiki/Rad_Mobile"target="_blank" rel="noopener"&gt;Rad Mobile&lt;/a&gt; (1991), &lt;a href="https://en.wikipedia.org/wiki/Virtua_Racing"target="_blank" rel="noopener"&gt;Virtua Racing&lt;/a&gt; (1992), &lt;a href="https://en.wikipedia.org/wiki/Ridge_Racer"target="_blank" rel="noopener"&gt;Ridge Racer&lt;/a&gt; (1993), &lt;a href="https://en.wikipedia.org/wiki/Daytona_USA_%28video_game%29"target="_blank" rel="noopener"&gt;Daytona USA&lt;/a&gt; (1994), &lt;a href="https://en.wikipedia.org/wiki/Scud_Race"target="_blank" rel="noopener"&gt;Scud Race&lt;/a&gt; (1996). Cada um desses jogos me marcou. Mas o Daytona USA ficou gravado de outro jeito. Aquele cabinet twin, duas máquinas lado a lado, a música &amp;ldquo;DAYTONAAA, let&amp;rsquo;s go away&amp;rdquo; estourando no fliperama, o volante vibrando na mão. Eu lembro disso até hoje.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Eu gosto de carros desde que me entendo por gente. Meu primeiro contato real com jogos de corrida foi nos fliperamas dos anos 80 e 90. E quando eu digo &ldquo;real&rdquo;, eu digo sentar num cabinet com volante, pedal, banco de plástico duro e a tela curvando na sua frente. <a href="https://en.wikipedia.org/wiki/Out_Run"target="_blank" rel="noopener">OutRun</a> (1986), <a href="https://en.wikipedia.org/wiki/Rad_Mobile"target="_blank" rel="noopener">Rad Mobile</a> (1991), <a href="https://en.wikipedia.org/wiki/Virtua_Racing"target="_blank" rel="noopener">Virtua Racing</a> (1992), <a href="https://en.wikipedia.org/wiki/Ridge_Racer"target="_blank" rel="noopener">Ridge Racer</a> (1993), <a href="https://en.wikipedia.org/wiki/Daytona_USA_%28video_game%29"target="_blank" rel="noopener">Daytona USA</a> (1994), <a href="https://en.wikipedia.org/wiki/Scud_Race"target="_blank" rel="noopener">Scud Race</a> (1996). Cada um desses jogos me marcou. Mas o Daytona USA ficou gravado de outro jeito. Aquele cabinet twin, duas máquinas lado a lado, a música &ldquo;DAYTONAAA, let&rsquo;s go away&rdquo; estourando no fliperama, o volante vibrando na mão. Eu lembro disso até hoje.</p>
<p><img src="https://upload.wikimedia.org/wikipedia/commons/2/24/DaytonaUSA_arcade_SaoPaulo.jpg" alt="Máquinas de Daytona USA num shopping de São Paulo — exatamente o tipo de cabinet twin que ficou gravado na minha memória"  loading="lazy" /></p>
<p>Mas o jogo que realmente me viciou no gênero simcade foi o <a href="https://en.wikipedia.org/wiki/Gran_Turismo_%28video_game%29"target="_blank" rel="noopener">Gran Turismo</a> original, em 1997, no PlayStation 1. &ldquo;The Real Driving Simulator&rdquo; na capa. Eu joguei aquele jogo obsessivamente. Na mesma época eu assistia o anime <a href="https://en.wikipedia.org/wiki/Initial_D"target="_blank" rel="noopener">Initial D</a>, que estreou em 1998 no Japão. Comprei todos os mangás e li tudo do começo ao fim. A história do Takumi Fujiwara descendo o Monte Akina de madrugada entregando tofu no AE86 do pai dele é, pra mim, uma das melhores histórias de automobilismo já contadas em qualquer mídia.</p>
<p>Até hoje eu acompanho o trabalho do Shuichi Shigeno. Depois de Initial D veio <a href="https://kodansha.us/series/mf-ghost/"target="_blank" rel="noopener">MF Ghost</a> (2017-2025), que se passa no mesmo universo mas num futuro próximo onde carros a combustão viraram peça de museu. E agora, desde julho de 2025, estou lendo <a href="https://kmanga.kodansha.com/title/10664/episode/360584"target="_blank" rel="noopener">Subaru and Subaru</a>, a continuação direta que une os universos de Initial D e MF Ghost com duas protagonistas chamadas Subaru — uma de Gunma, outra de Kanagawa — competindo numa nova série de corridas. É o Shigeno no melhor dele.</p>
<p><a href="https://kmanga.kodansha.com/title/10664/episode/360584"target="_blank" rel="noopener"><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/subaru-x-subaru-cover.png" alt="Subaru and Subaru — o novo mangá do Shigeno, continuação direta de Initial D e MF Ghost"  loading="lazy" /></a></p>
<p>Dois anos atrás eu viajei pro Japão com minha namorada e fiz questão de ir na <a href="https://en.wikipedia.org/wiki/Daikoku_Parking_Area"target="_blank" rel="noopener">Daikoku PA</a>, o famoso parking area na Shuto Expressway em Yokohama onde a cultura JDM se concentra. Como fã antigo de <a href="https://store.steampowered.com/app/2634950/Tokyo_Xtreme_Racer/"target="_blank" rel="noopener">Tokyo Xtreme Racer</a>, da Genki, eu precisava ver Daikoku com meus próprios olhos pelo menos uma vez. E não decepcionou. Em vez de alugar carro, a gente fechou um tour com um guia local no Nissan GT-R preparado dele. Melhor assim. No caminho ele foi explicando a história da Wangan, como a cena funciona, o que é exagero de YouTube e o que é real. Quando chegamos numa sexta à noite e eu vi aquilo tudo ao vivo — Skyline R34, RX-7, Supra, GT-R, kei trucks tunados, bosozoku insanos — a sensação foi estranha no melhor sentido. Parecia Tokyo Xtreme Racer, só que com cheiro de combustível no ar e barulho de escapamento de verdade.</p>
<p>E tem outro detalhe: eu estou jogando o reboot novo de <a href="https://store.steampowered.com/app/2634950/Tokyo_Xtreme_Racer/"target="_blank" rel="noopener">Tokyo Xtreme Racer</a> no PC, e é exatamente o tipo de jogo que entende o próprio público. Campanha single-player forte, progressão viciante, clima certo, e sem aquelas palhaçadas de loot box. Recomendo fácil. Pelo mesmo motivo, eu também estou esperando muito o <a href="https://forza.net/forzahorizon6"target="_blank" rel="noopener">Forza Horizon 6</a>, que dessa vez vai se passar no Japão. Eu já fiz a pré-compra e estou louco pra jogar isso no cockpit novo.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/daikoku---nissan.jpg" alt="Na Daikoku PA com um GT-R modificado"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/daikoku---trueno.jpg" alt="Com um AE86 Trueno na Daikoku PA — o carro do Takumi"  loading="lazy" /></p>
<h2>Dirigindo de verdade<span class="hx:absolute hx:-mt-20" id="dirigindo-de-verdade"></span>
    <a href="#dirigindo-de-verdade" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Agora que estou semi-aposentado, tive a oportunidade de levar meu Mercedes em track days. Já andei no <a href="https://en.wikipedia.org/wiki/Aut%C3%B3dromo_Jos%C3%A9_Carlos_Pace"target="_blank" rel="noopener">Autódromo de Interlagos</a> (o Autódromo José Carlos Pace), circuito de 4.309 km em São Paulo que sedia o GP de F1 do Brasil desde 1973, famoso pelas curvas do S do Senna e pelo desnível maluco do circuito. Também andei no <a href="https://www.velocittapark.com.br/"target="_blank" rel="noopener">Autódromo Velocitta</a>, um circuito moderno de 3.443 km inaugurado em 2014 em Mogi Guaçu, interior de São Paulo, que recebe a Stock Car Brasil e a Porsche Cup.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/velocitta.jpg" alt="No Velocitta com meu Mercedes num track day da AMG"  loading="lazy" /></p>
<p>Em Las Vegas eu já dirigi super carros naquelas experiências de pista. E quando viajei com minha namorada pra Gramado, no RS, fomos na <a href="https://supercarros.cc/"target="_blank" rel="noopener">Super Carros</a>, que fica na Av. das Hortênsias 4635. Eles têm um galpão de 2.400 m² com mais de 50 carros — Ferraris, Lamborghinis, Porsches, GT-Rs, Corvettes, muscle cars americanos. Você escolhe o carro, sai com um instrutor, e dirige um percurso de uns 17 km entre Gramado e Canela. Eu peguei um Nissan GT-R e uma Ferrari California.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/gramado---gtr.jpg" alt="Com um GT-R em Gramado"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/gramado---ferrari.jpg" alt="Com uma Ferrari California em Gramado"  loading="lazy" /></p>
<p>Três anos atrás eu também fui pra Abu Dhabi com minha namorada e fomos no Ferrari World, que tem alguns dos melhores simuladores de corrida que eu já experimentei. Plataforma hidráulica com 6 graus de liberdade, cockpit de F1, a coisa toda. Eu sempre adorei testar simuladores onde quer que eu vá.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/ferrari-park.jpg" alt="Simulador de F1 com plataforma hidráulica no Ferrari World em Abu Dhabi"  loading="lazy" /></p>
<p>Mas dirigir carros de verdade em pistas de verdade é um hobby muito caro. Pneus, combustível, seguro, manutenção, inscrição. E o mais importante: eu sou introvertido. Prefiro estar sozinho. Meu cockpit de simulador é perfeito pra quando eu quero dirigir sem ter que lidar com ninguém. É por isso que eu gosto tanto de rally — sou eu, o co-driver virtual, e a estrada. Nada mais.</p>
<h2>Os jogos que eu jogo<span class="hx:absolute hx:-mt-20" id="os-jogos-que-eu-jogo"></span>
    <a href="#os-jogos-que-eu-jogo" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Sei que a maioria das pessoas que montam um cockpit como esse fazem pra jogar simuladores sérios — iRacing, Assetto Corsa Competizione, Automobilista 2. Eu respeito, mas não é minha praia. Não gosto de jogar online com outras pessoas. Não tenho nenhuma intenção de começar uma carreira de live streaming. Isso é puramente pro meu divertimento.</p>
<p>Atualmente eu jogo Gran Turismo 7 no PS5, <a href="https://store.steampowered.com/app/2440510/Forza_Motorsport/"target="_blank" rel="noopener">Forza Motorsport</a> (o 8, de 2023) no PC, mas onde eu me divirto mais é nos jogos de rally: <a href="https://store.steampowered.com/app/1849250/EA_SPORTS_WRC/"target="_blank" rel="noopener">EA SPORTS WRC</a>, <a href="https://store.steampowered.com/app/1462810/WRC_10_FIA_World_Rally_Championship/"target="_blank" rel="noopener">WRC 10</a> e <a href="https://store.steampowered.com/app/690790/DiRT_Rally_20/"target="_blank" rel="noopener">DiRT Rally 2.0</a>. Minha primeira experiência com Forza foi no Xbox One com o Forza Motorsport 5 e depois Forza Horizon 4, que me prendeu por centenas de horas.</p>
<p>E eu tenho um carinho enorme por jogos retro. O Colin McRae Rally original de 1998 no PS1 foi meu primeiro jogo de rally. Mas o meu favorito de todos os tempos é o Colin McRae Rally 2.0 (2000), também no PS1. Recentemente eu completei a campanha inteira de novo na versão de PC — dá pra achar repacks que rodam em alta resolução e widescreen, muito melhor que as versões originais de PlayStation. Recomendo pra qualquer um dos títulos da série.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/colin-mcrae-rally-2-gameplay.jpg" alt="Colin McRae Rally 2.0 rodando em widescreen no PC — neve na Suécia com o Ford Focus"  loading="lazy" /></p>
<p>Depois vieram Colin McRae 3 (2002), Colin McRae Rally 04 (2003) e Colin McRae 2005 (2004). Outros arcades que eu revisito com frequência: OutRun 2 SP (2004) e OutRun 2006: Coast 2 Coast (2006) — o melhor OutRun já feito, na minha opinião.</p>
<p>Mas meu jogo do ano, disparado, é o <a href="https://store.steampowered.com/app/3218630/Super_Woden_Rally_Edge/"target="_blank" rel="noopener">Super Woden: Rally Edge</a>. Um indie feito por um desenvolvedor solo (ViJuDa, da Espanha) que lançou em janeiro de 2026 por menos de R$ 60. Oito países, mais de 80 carros, modo carreira, multiplayer local split-screen pra até 4 jogadores, leaderboards online. A câmera atrás do carro em vez do top-down dos Super Woden GP anteriores fez toda a diferença. 96% de reviews positivos no Steam com mais de 1.300 avaliações. É o tipo de jogo que mostra que você não precisa de orçamento milionário pra fazer algo incrível.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/super-woden-rally-edge.jpg" alt="Super Woden: Rally Edge — indie feito por um dev solo que compete com os grandes"  loading="lazy" /></p>
<h2>A evolução do meu setup de volante<span class="hx:absolute hx:-mt-20" id="a-evolução-do-meu-setup-de-volante"></span>
    <a href="#a-evolu%c3%a7%c3%a3o-do-meu-setup-de-volante" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Era Logitech G29 (~2015-2021)<span class="hx:absolute hx:-mt-20" id="era-logitech-g29-2015-2021"></span>
    <a href="#era-logitech-g29-2015-2021" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Eu sempre quis um volante de corrida. Comecei há mais de 15 anos com algo equivalente ao volante de entrada da Logitech, um G29. O G29 é um bom volante pra começar — force feedback por engrenagens, pedais com embreagem, 900 graus de rotação. Mas o force feedback dele é barulhento e meio grosseiro. Você sente as engrenagens girando.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/logitech-g29-and-myself.jpeg" alt="Eu jogando com o Logitech G29 no sofá — o começo de tudo"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/logitech-g29-with-support.jpg" alt="O G29 com suporte simples na frente do sofá"  loading="lazy" /></p>
<h3>Era Thrustmaster T300RS + Suporte SXT V2 (~2021-2024)<span class="hx:absolute hx:-mt-20" id="era-thrustmaster-t300rs--suporte-sxt-v2-2021-2024"></span>
    <a href="#era-thrustmaster-t300rs--suporte-sxt-v2-2021-2024" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Por volta de 2021 eu fiz o upgrade pro <a href="https://www.thrustmaster.com/products/t300rs-gt-edition/"target="_blank" rel="noopener">Thrustmaster T300RS</a>, um volante por correia que é um salto enorme em relação ao Logitech. O force feedback é muito mais suave e preciso. E comprei o suporte <a href="https://loja.cockpitextremeracing.com.br/products/suporte-para-volantes-sxt-v2?variant=51111119454489"target="_blank" rel="noopener">Extreme Sim Racing SXT V2</a>, que é bem mais robusto que aqueles suportes de mesa genéricos.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/thrustmaster-with-support.jpg" alt="O Thrustmaster T300RS montado no suporte SXT V2"  loading="lazy" /></p>
<p>Primeiro eu montei o setup na frente do meu PC desktop, que na época tinha uma RTX 3090. Funcionava bem, mas era muito trabalhoso ficar montando e desmontando o suporte e os cabos toda vez que eu queria jogar.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/thrustmaster-with-pc.jpg" alt="O Thrustmaster na frente do PC desktop — funcional mas trabalhoso"  loading="lazy" /></p>
<p>Depois eu fiz um setup com cabo HDMI de fibra óptica longo pra conectar minha TV de 60&quot; ao PC nos fundos da sala. Movi o suporte pra frente do sofá. Menos trabalhoso, mas eu ainda tinha que desmontar quando queria assistir filme com minha namorada.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/thrustmaster-with-big-tv.jpg" alt="Setup com a TV grande — melhor, mas ainda trabalhoso"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/thrustmaster-in-the-living-room.jpg" alt="O suporte na sala de estar — sempre no caminho"  loading="lazy" /></p>
<p>Por volta de 2024 ou 2025 eu troquei meu sofá por um daqueles sofás VIP de cinema da <a href="https://www.starseat.com.br/sofa-cinema-sofa-cinema"target="_blank" rel="noopener">Star Seat</a>, que reclina e tudo. Problema: era muito mais alto que o sofá anterior. Tive que fazer todo tipo de gambiarra pra fazer o suporte funcionar naquela altura. Cheguei a imprimir suportes em 3D e mandar pra PCBWay usinar placas de aço pra prender rodas grandes embaixo do suporte e ganhar uns centímetros de altura. Mas isso deixou o setup muito instável pra dirigir confortavelmente.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/fanatec-support-sofa-too-high.jpg" alt="O problema: sofá VIP alto demais pro suporte — gambiarra total"  loading="lazy" /></p>
<h3>Era Fanatec CSL DD + Direct Drive (~2024-2025)<span class="hx:absolute hx:-mt-20" id="era-fanatec-csl-dd--direct-drive-2024-2025"></span>
    <a href="#era-fanatec-csl-dd--direct-drive-2024-2025" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Nesse meio tempo eu dei o T300 pro meu irmão e fiz o upgrade pra um <a href="https://fanatec.com/eu-en/racing-wheels-wheel-bases/racing-wheels/gran-turismo-dd-pro-5-nm-wheel-base"target="_blank" rel="noopener">Fanatec CSL DD Gran Turismo Edition</a>. O motor direct drive do CSL DD entrega 5 Nm de torque na base, mas o kit Gran Turismo DD Pro já vem com o Boost Kit 180 que sobe pra 8 Nm sustentados sem cooling ativo. Direct drive significa que não tem engrenagem nem correia entre o motor e o volante — o eixo do motor É o eixo do volante. A diferença é absurda. O T300 já era ótimo, muito superior ao Logitech. Mas o Fanatec está em outro patamar. Você sente cada textura do asfalto, cada lombada, cada derrapagem incipiente. Não tem como voltar atrás depois que experimenta.</p>
<p>Comprei junto o kit de <a href="https://fanatec.com/eu-en/pedals/csl-pedals"target="_blank" rel="noopener">pedais CSL com Load Cell</a>, que mede pressão no freio em vez de deslocamento. Faz toda a diferença na frenagem — você aprende a dosar pela força do pé, não pela distância que o pedal percorre. Muito mais natural.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/fanatec-direct-drive-close-up.jpg" alt="Close-up do motor Fanatec CSL DD direct drive"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/fanatec-csl-pedals.jpg" alt="Pedais Fanatec CSL com Load Cell Kit"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/fanatec---shifter.jpg" alt="O shifter Fanatec — câmbio manual com knob cromado"  loading="lazy" /></p>
<p>Eu também quis experimentar o câmbio manual H-pattern com o <a href="https://fanatec.com/us/en/p/add-ons/crd-9040002-ww/clubsport-shifter-sq"target="_blank" rel="noopener">ClubSport Shifter SQ V1.5</a> da Fanatec e o freio de mão separado. É legal pra experimentar carros antigos com embreagem e câmbio H, mas na prática eu não me adaptei. O suporte SXT V2 já balançava bastante com o direct drive, e usar o shifter naquele setup instável era frustrante. E eu sei que tem gente que quer fazer &ldquo;ponta e calcanhar&rdquo; (heel-toe), mas no simulador eu prefiro ter o pé esquerdo no freio e o direito no acelerador e dosar os dois ao mesmo tempo. Funciona melhor pra mim. Agora que eu tenho o volante McLaren com os paddles analógicos de freio de mão e embreagem direto no volante, o câmbio H e o handbrake externo ficaram aposentados. Pra rally, o handbrake analógico no volante é muito mais natural.</p>
<p>Também comprei o PS5 com Gran Turismo 7 nessa época. Coloquei as <a href="https://dbrand.com/shop/ps5"target="_blank" rel="noopener">dbrand Darkplates</a> matte black pra trocar as placas brancas originais — fica muito mais bonito e discreto.</p>
<p>Mas o setup ainda era o suporte SXT V2 na frente do sofá VIP. A mesma gambiarra. O mesmo balanço. Eu não ia desistir do sofá de cinema, claro. A situação ficou insustentável.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/fanatec-with-support.jpg" alt="O Fanatec CSL DD no suporte SXT V2 — poderoso demais pro suporte aguentar"  loading="lazy" /></p>
<h2>O computador e o setup de hardware<span class="hx:absolute hx:-mt-20" id="o-computador-e-o-setup-de-hardware"></span>
    <a href="#o-computador-e-o-setup-de-hardware" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Uma nota sobre meu hardware de gaming. Eu comprei um <a href="https://www.minisforum.com/products/UX790-Pro.html"target="_blank" rel="noopener">Minisforum UX790 Pro</a> pra ser minha máquina dedicada de Steam. É um mini-PC com processador Intel Core Ultra 9 285H, que cabe na palma da mão. Junto comprei o <a href="https://www.minisforum.com/products/minisforum-deg1-egpu-dock"target="_blank" rel="noopener">Minisforum DEG1</a>, um dock de GPU externo que conecta via OCuLink (PCIe 4.0 x4, 64 GT/s). É um design aberto — basicamente uma placa com slot PCIe x16 e espaço pra fonte ATX ou SFX. Não tem limitação de tamanho de placa, então cabe uma RTX 4090 tranquilamente. A perda de performance comparado a um slot PCIe nativo é mínima. Coloquei a RTX 4090 nele. A 4090 veio do meu desktop — no começo de 2025 eu viajei pra Miami e aproveitei pra comprar uma RTX 5090 porque estava usando cada vez mais IA e LLMs locais. Dei a 3090 antiga pra minha namorada usar na edição de vídeo. A 4090 foi pro mini-PC.</p>
<p>Então meu setup de gaming hoje é: Minisforum UX790 Pro + eGPU com RTX 4090 pra Steam e jogos de PC, e PlayStation 5 com Darkplates matte black pra Gran Turismo 7 e exclusivos.</p>
<h2>O cockpit: Formula FX1<span class="hx:absolute hx:-mt-20" id="o-cockpit-formula-fx1"></span>
    <a href="#o-cockpit-formula-fx1" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Pra completar o setup eu também precisava de um monitor decente. Eu já estava acostumado com minha TV OLED Samsung de 80&quot; na sala e não queria dar um downgrade na qualidade de imagem. Então investi no <a href="https://www.samsung.com/br/monitors/gaming/odyssey-oled-g8-g81sf-32-inch-240hz-oled-uhd-ls32fg810snxzd/"target="_blank" rel="noopener">Samsung Odyssey OLED G8 de 32&quot;</a>. É um monitor 4K (3840x2160) OLED com 240 Hz de refresh rate, 0.03 ms de tempo de resposta (GTG), HDR True Black 400, HDR10+, 99% de cobertura DCI-P3, contraste de 1.000.000:1, e FreeSync Premium Pro. Tem 2 entradas HDMI 2.1 e 1 DisplayPort 1.4.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/closed-delivery-box.jpg" alt="A caixa do Samsung Odyssey OLED G8 de 32&#34; quando chegou"  loading="lazy" /></p>
<p>Na prática: as cores explodem, preto é preto de verdade (é OLED, não tem backlight), e com a RTX 4090 eu rodo a maioria dos jogos em 4K a 120 fps tranquilo. Em títulos mais leves como o Super Woden: Rally Edge, chega fácil nos 240 Hz. A fluidez é absurda. Pra um cockpit onde você está a uns 60-70 cm da tela, 32&quot; OLED em 4K é o sweet spot. Maior que isso e você começaria a enxergar pixels. Menor e perde a imersão.</p>
<p>Em janeiro de 2026, depois de anos de gambiarra, eu finalmente encomendei um cockpit dedicado. Pesquisei bastante. Considerei o <a href="https://loja.cockpitextremeracing.com.br/products/cockpit-ax160-horizontal?variant=52008751431961"target="_blank" rel="noopener">Cockpit AX160</a>, que é de perfil de alumínio e muito modular, e o <a href="https://loja.cockpitextremeracing.com.br/products/cockpit-4-0-horizontal?variant=52004294852889"target="_blank" rel="noopener">Cockpit 4.0</a>, que é de aço tubular mais tradicional. Mas nenhum dos dois estava disponível no momento da compra. E aí eu encontrei o <a href="https://loja.cockpitextremeracing.com.br/products/cockpit-formula-fx1-preto-e-verde?variant=51700876509465"target="_blank" rel="noopener">Formula FX1 preto e verde</a> da Extreme Racing — cores Petronas, estilo F1.</p>
<p>O FX1 é muito diferente dos cockpits tradicionais. A estrutura inteira é de tubos de aço grossos, soldados. Quando eu digo que a coisa não balança, eu quero dizer que não balança nada. Zero wobble. É uma diferença brutal em relação ao suporte na frente do sofá. A posição de pilotagem é reclinada, tipo F1 — seus pés ficam na mesma altura ou mais altos que seu quadril. Parece que vai ser desconfortável, mas não é. Dá pra ficar horas ali sem reclamar. Vem com banco acolchoado e ajustável, suporte pra monitor com articulação, suporte pra pedais com inclinação ajustável, e suporte pra volante com altura regulável.</p>
<p>Tive que esperar cerca de 1 mês pela entrega. No meio tempo, como quem acompanha meu blog sabe, eu mergulhei numa maratona de 16 horas por dia testando os novos agentes de IA da Anthropic e OpenAI — veja as tags <a href="/tags/vibe-coding/">#vibecoding</a> e <a href="/tags/inteligencia-artificial/">#agents</a> pra ver tudo que eu fiz. Depois de uns 30 dias nessa maratona insana, minha lombar cedeu e eu comecei a desenvolver o que parece ser hérnia de disco. Tive que ir ao médico e tomar anti-inflamatórios pesados.</p>
<p>E exatamente nessa semana, o cockpit decidiu chegar.</p>
<h3>A montagem<span class="hx:absolute hx:-mt-20" id="a-montagem"></span>
    <a href="#a-montagem" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Eu estava com dor absurda, mas montei o cockpit assim mesmo. Levou o dia inteiro pra desembalar e montar as peças de aço pesadas com a lombar gritando, mas eu fiz.</p>
<p>O vídeo de montagem oficial que eu segui:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/WnocqqhmZas"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/first-pieces-mounted.jpg" alt="Primeiras peças montadas — a base e a estrutura do banco"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/mostly-mounted.jpg" alt="Estrutura quase completa — banco, suporte do volante, pedais"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/mostly-mounted-from-front.jpg" alt="Vista frontal da estrutura quase pronta"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/almost-mounted,-with-monitor.jpg" alt="Montagem quase completa com o suporte do monitor"  loading="lazy" /></p>
<h3>O volante McLaren GT3 V2<span class="hx:absolute hx:-mt-20" id="o-volante-mclaren-gt3-v2"></span>
    <a href="#o-volante-mclaren-gt3-v2" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Depois de montar o cockpit, eu decidi que o volante padrão que vem com o kit CSL GT não era suficiente. Fiz o upgrade pro <a href="https://www.racingwheelbrasil.com.br/produtos/volante-fanatec-csl-elite-mclaren-gt3-v2-pc-xbox-ps4-ps5-ready/"target="_blank" rel="noopener">Fanatec CSL Elite McLaren GT3 V2</a> (~R$ 4.990). É uma réplica em escala real do volante do McLaren GT3, com fibra de carbono, display OLED, e compatível com PC, Xbox, PS4 e PS5.</p>
<p>O que eu mais gosto nele: tem as borboletas de câmbio normais atrás (shift up/down), mas também tem dois paddles analógicos adicionais que podem ser configurados em quatro modos diferentes. No modo B, que é o que eu uso, o paddle esquerdo funciona como handbrake analógico e o direito como embreagem analógica. Isso é perfeito pra rally — eu consigo puxar o freio de mão no meio da curva sem tirar a mão do volante. Tem também dois toggles de 2 posições, dois rotary de 12 posições, 7 botões padrão com caps intercambiáveis, e o FunkySwitch de 7 direções da Fanatec. É um controle completo de corrida.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/mclaren-wheel.jpg" alt="O volante McLaren GT3 V2 montado no cockpit — fibra de carbono e display OLED"  loading="lazy" /></p>
<h2>O setup final<span class="hx:absolute hx:-mt-20" id="o-setup-final"></span>
    <a href="#o-setup-final" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O cockpit ficou num cantinho do meu quarto, entre as estantes de mangá (dá pra ver Akira, Initial D, e uns 500 outros volumes atrás). Montei o mini-PC e o PS5 na estrutura lateral do cockpit, junto com a eGPU e a RTX 4090. Tudo fica permanentemente conectado. É isso que faz a diferença: eu não preciso mais montar nem desmontar nada. Sento, ligo, e estou dirigindo em 30 segundos.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/fully-mounted-from-side.jpg" alt="Vista lateral do cockpit completo — entre as estantes de mangá"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/all-consoles-from-front.jpg" alt="Os consoles montados na estrutura: PS5 com Darkplates, Minisforum UX790 Pro, eGPU com RTX 4090"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/close-up-of-the-consoles-from-front.jpg" alt="Close-up dos consoles e cabeamento"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/sitting-angle.jpg" alt="A perspectiva do piloto — é assim que eu vejo quando estou sentado"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/monitor-on-view-from-front.jpg" alt="PS5 mostrando a lista de jogos — Gran Turismo 7 no topo"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/another-fully-mounted-shot.jpg" alt="O cockpit completo visto de trás"  loading="lazy" /></p>
<div style="max-width: 100%; margin: 1em 0;">
  <video controls playsinline style="width: 100%; border-radius: 8px;">
    <source src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/from-front-gran-turismo-h264.mp4" type="video/mp4">
  </video>
  <em>Gran Turismo 7 rodando no cockpit final</em>
</div>
<h2>O sistema de áudio<span class="hx:absolute hx:-mt-20" id="o-sistema-de-áudio"></span>
    <a href="#o-sistema-de-%c3%a1udio" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Pra completar o setup eu precisava de áudio dedicado. Eu não queria usar o áudio do monitor (péssimo) nem ficar sempre de headset. A solução foi montar um sistema de áudio separado com extração de áudio do HDMI.</p>
<p>A peça central é um <a href="https://www.amazon.com.br/dp/B00MNGIP2Y"target="_blank" rel="noopener">switcher HDMI 2.1 da OREI</a> com extração de áudio. Ele tem 2 entradas e 1 saída HDMI, suporta 4K a 120Hz (48 Gbps de bandwidth), e extrai o áudio via saída óptica TOSLINK e P2 3.5mm. Eu conecto a saída HDMI da RTX 4090 numa entrada e o PS5 na outra. O vídeo vai pro monitor. O áudio sai pela óptica.</p>
<p>O áudio óptico vai pra um <a href="https://www.mercadolivre.com.br/amplificador-de-potncia-aiyima-d03-bluetooth-50-150-watts-cor-preto/p/MLB46172770"target="_blank" rel="noopener">amplificador Aiyima D03</a>, um amp compacto 2.1 canais com 150W por canal, DAC integrado (chip PCM1808), e Bluetooth 5.0 com aptX HD. Ele tem entrada óptica, coaxial, USB, RCA e Bluetooth. Tem até saída dedicada pra subwoofer quando eu resolver adicionar um. Usa chip amplificador TAS5624 da Texas Instruments e tem controle de graves e agudos pelo controle remoto. Pra um setup de cockpit onde você está a 1 metro das caixas, 150W é mais que suficiente.</p>
<p>Na prática, eu deixo o amplificador em 50% e o volume do Windows em 50%, e isso já fica alto pra caramba. Ou seja: não é um sisteminha &ldquo;quebra-galho&rdquo;. Está equipado pra tocar realmente alto se eu quiser.</p>
<p>As caixas são <a href="https://edifier.com.br/caixa-de-som-passiva-p12-madeira-edifier.html"target="_blank" rel="noopener">Edifier P12</a>, passivas, com woofer de 4 polegadas e tweeter de 19mm. Resposta de frequência de 55Hz a 20kHz, impedância de 6 ohms, potência de 20W RMS cada. O gabinete de MDF com acabamento em madeira tem um porte-reflex traseiro que ajuda nos graves. Pra caixas passivas desse tamanho, elas entregam bem. O mid-range sai limpo e os agudos não distorcem mesmo no volume alto.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/audio-equipment.jpg" alt="Os equipamentos de áudio — caixa do Aiyima D03 e do Edifier P12"  loading="lazy" /></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/audio-speakers-next-to-other-stuff.jpg" alt="As Edifier P12 posicionadas nas estantes ao lado do cockpit, junto com a coleção de Akira e miniaturas de carros"  loading="lazy" /></p>
<p>A lógica do setup é: HDMI switcher faz o chaveamento entre PS5 e PC, extrai o áudio pra óptica, o amp converte e amplifica, e as caixas passivas entregam o som. Tudo sem precisar tocar no monitor ou trocar cabos. Aperto um botão no switcher e troco de console.</p>
<p>Quando eu quero jogar sem incomodar ninguém, conecto meu <a href="https://www.mercadolivre.com.br/fones-de-ouvido-meze-audio-109-pro-com-fio-de-madeira-com-en/p/MLB42456685"target="_blank" rel="noopener">Meze 109 Pro</a> direto na saída P2 do switcher HDMI. O Meze 109 Pro é um headphone aberto com drivers dinâmicos de 50mm, impedância de 40 ohms, sensibilidade de 112 dB SPL/1mW, e resposta de 5Hz a 30kHz. Os ear cups são de madeira de nogueira com acabamento artesanal. É um headphone audiófilo que funciona perfeitamente sem amplificador dedicado graças à impedância baixa. O som é quente, com graves cheios e mids ricos. Dá pra ouvir cada detalhe do ronco dos motores.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/meze-headset.jpg" alt="Meze 109 Pro — madeira de nogueira, som audiófilo"  loading="lazy" /></p>
<p>Ainda não decidi sobre subwoofer, mas vai ser meu próximo upgrade. Um sub dedicado vai adicionar aquele peso nos graves que faz você sentir o motor no peito.</p>
<h2>O veredito<span class="hx:absolute hx:-mt-20" id="o-veredito"></span>
    <a href="#o-veredito" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O sofa com suporte funciona. A mesa do PC com suporte funciona. Mas nenhum dos dois chega perto de um cockpit dedicado. A estrutura de aço do FX1 não mexe nem um milímetro, mesmo com o direct drive do Fanatec dando torque máximo. A posição F1 reclinada é confortável pra sessões de horas. Os pedais com load cell ficam firmes na base. O monitor fica exatamente na altura e distância certas. E o melhor de tudo: está sempre pronto. Eu não preciso montar, desmontar, passar cabo, nada. Sento e dirijo.</p>
<p>Pra quem está na dúvida se vale a pena investir num cockpit dedicado vs. ficar com suporte na mesa ou no sofá: vale. Se você já tem um volante direct drive, o cockpit é a peça que falta. Eu passei anos achando que &ldquo;tá bom assim&rdquo; com o suporte no sofá. Não tava. A diferença na dirigibilidade é outra coisa. E pro meu caso — introvertido, single-player only, simcade — não podia ter montado antes. Pra falar a verdade, eu acho que finalmente cheguei no meu setup de simulador perfeito pro meu gosto.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/monitor-on-view.jpg" alt="O monitor ligado com a vista do piloto"  loading="lazy" /></p>
<div style="max-width: 100%; margin: 1em 0;">
  <video controls playsinline style="width: 100%; border-radius: 8px;">
    <source src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/2026/04/01/cockpit/video-testing-h264.mp4" type="video/mp4">
  </video>
  <em>Eu dirigindo no cockpit final</em>
</div>
<h2>Lista de compras: quanto custou tudo<span class="hx:absolute hx:-mt-20" id="lista-de-compras-quanto-custou-tudo"></span>
    <a href="#lista-de-compras-quanto-custou-tudo" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Aqui está a lista consolidada de tudo que compõe meu setup atual, com preços aproximados (alguns comprei em dólar, converti pra real na cotação da época):</p>
<table>
  <thead>
      <tr>
          <th>Item</th>
          <th style="text-align: right">Preço Estimado (R$)</th>
          <th>Link</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="https://loja.cockpitextremeracing.com.br/products/cockpit-formula-fx1-preto-e-verde?variant=51700876509465"target="_blank" rel="noopener">Cockpit Formula FX1 Preto e Verde</a></td>
          <td style="text-align: right">~6.290</td>
          <td>Extreme Racing</td>
      </tr>
      <tr>
          <td><a href="https://fanatec.com/us/en/p/sim-racing-bundles/crd-9020007-8nm-us/gran-turismo-dd-pro-8nm-qr2l-us"target="_blank" rel="noopener">Fanatec Gran Turismo DD Pro 8Nm (motor + volante + pedais + Boost Kit)</a></td>
          <td style="text-align: right">~9.590</td>
          <td>Fanatec / Racing Wheel Brasil</td>
      </tr>
      <tr>
          <td><a href="https://fanatec.com/us/en/p/pedals/csl_p_lc/csl_pedals_lc"target="_blank" rel="noopener">Fanatec CSL Pedals LC (com Load Cell)</a></td>
          <td style="text-align: right">~1.500</td>
          <td>Fanatec</td>
      </tr>
      <tr>
          <td><a href="https://www.racingwheelbrasil.com.br/produtos/volante-fanatec-csl-elite-mclaren-gt3-v2-pc-xbox-ps4-ps5-ready/"target="_blank" rel="noopener">Fanatec CSL Elite McLaren GT3 V2</a></td>
          <td style="text-align: right">~4.990</td>
          <td>Racing Wheel Brasil</td>
      </tr>
      <tr>
          <td><a href="https://fanatec.com/us/en/p/add-ons/crd-9040002-ww/clubsport-shifter-sq"target="_blank" rel="noopener">Fanatec ClubSport Shifter SQ V1.5</a></td>
          <td style="text-align: right">~2.500</td>
          <td>Fanatec</td>
      </tr>
      <tr>
          <td><a href="https://www.minisforum.com/products/UX790-Pro.html"target="_blank" rel="noopener">Minisforum UX790 Pro</a></td>
          <td style="text-align: right">~5.000</td>
          <td>Minisforum</td>
      </tr>
      <tr>
          <td><a href="https://www.minisforum.com/products/minisforum-deg1-egpu-dock"target="_blank" rel="noopener">Minisforum DEG1 eGPU Dock</a> + RTX 4090</td>
          <td style="text-align: right">~12.000</td>
          <td>Minisforum / comprado separado</td>
      </tr>
      <tr>
          <td>PlayStation 5 + <a href="https://dbrand.com/shop/limited-edition/ps5"target="_blank" rel="noopener">dbrand Darkplates</a></td>
          <td style="text-align: right">~4.500</td>
          <td>Sony / dbrand</td>
      </tr>
      <tr>
          <td><a href="https://www.samsung.com/br/monitors/gaming/odyssey-oled-g8-g81sf-32-inch-240hz-oled-uhd-ls32fg810snxzd/"target="_blank" rel="noopener">Samsung Odyssey OLED G8 32&quot;</a></td>
          <td style="text-align: right">~2.500</td>
          <td>Samsung</td>
      </tr>
      <tr>
          <td><a href="https://www.amazon.com.br/dp/B00MNGIP2Y"target="_blank" rel="noopener">OREI BK-21A HDMI 2.1 Switcher 2x1 com extração de áudio</a></td>
          <td style="text-align: right">~450</td>
          <td>Amazon</td>
      </tr>
      <tr>
          <td><a href="https://www.mercadolivre.com.br/amplificador-de-potncia-aiyima-d03-bluetooth-50-150-watts-cor-preto/p/MLB46172770"target="_blank" rel="noopener">Amplificador Aiyima D03</a></td>
          <td style="text-align: right">~900</td>
          <td>Mercado Livre</td>
      </tr>
      <tr>
          <td><a href="https://edifier.com.br/caixa-de-som-passiva-p12-madeira-edifier.html"target="_blank" rel="noopener">Edifier P12 (par)</a></td>
          <td style="text-align: right">~799</td>
          <td>Edifier</td>
      </tr>
      <tr>
          <td><a href="https://www.mercadolivre.com.br/fones-de-ouvido-meze-audio-109-pro-com-fio-de-madeira-com-en/p/MLB42456685"target="_blank" rel="noopener">Meze 109 Pro</a></td>
          <td style="text-align: right">~5.390</td>
          <td>Mercado Livre / Heinrich Audio</td>
      </tr>
      <tr>
          <td>Cabos (HDMI 2.1, óptico, P2, energia)</td>
          <td style="text-align: right">~300</td>
          <td>Diversos</td>
      </tr>
      <tr>
          <td><strong>TOTAL ESTIMADO</strong></td>
          <td style="text-align: right"><strong>~56.709</strong></td>
          <td></td>
      </tr>
  </tbody>
</table>
<p>Sim, quase R$ 57 mil é bastante dinheiro. Eu trabalhei feito um condenado por décadas. Agora que consegui me aposentar honestamente, minha família está bem amparada, não tenho dívidas, e eu posso finalmente me dar algo que eu sempre quis quando era moleque mas não tinha como bancar. Quando eu sentava naqueles cabinets de OutRun e Daytona USA no fliperama, eu sonhava em ter algo assim em casa. Levou 30 e poucos anos, mas cheguei lá.</p>
<p>E se você somar os anos de gambiarras, suportes que não funcionavam, cabos HDMI de 15 metros, impressões 3D, placas de aço usinadas, e a frustração de montar e desmontar tudo — o cockpit dedicado economiza sanidade. Diferente de um PC que deprecia rápido, um cockpit de aço dura décadas.</p>
]]></content:encoded><category>games</category><category>hardware</category><category>off-topic</category></item><item><title>37 dias de Imersão em Vibe Coding: Conclusão quanto a Modelos de Negócio</title><link>https://akitaonrails.github.io/2026/03/05/37-dias-de-imers%C3%A3o-em-vibe-coding-conclus%C3%A3o-quanto-a-modelos-de-neg%C3%B3cio/</link><guid isPermaLink="true">https://akitaonrails.github.io/2026/03/05/37-dias-de-imers%C3%A3o-em-vibe-coding-conclus%C3%A3o-quanto-a-modelos-de-neg%C3%B3cio/</guid><pubDate>Thu, 05 Mar 2026 14:00:00 -0300</pubDate><description>&lt;p&gt;Nos últimos 37 dias eu me enfiei numa imersão em vibe coding. O objetivo era simples: entender de verdade o que a geração atual de LLMs e agentes de código consegue fazer. Não testando num toy project de fim de semana, mas construindo projetos reais, com deploy em produção, usuários, e as dores de manutenção que vêm junto.&lt;/p&gt;
&lt;p&gt;O resultado foram 653 commits, ~144K linhas de código em 8 projetos publicados no GitHub, e uma série de artigos documentando cada um deles. Se você acompanhou, já leu os post-mortems. Se não acompanhou, aqui vai o índice:&lt;/p&gt;</description><content:encoded><![CDATA[<p>Nos últimos 37 dias eu me enfiei numa imersão em vibe coding. O objetivo era simples: entender de verdade o que a geração atual de LLMs e agentes de código consegue fazer. Não testando num toy project de fim de semana, mas construindo projetos reais, com deploy em produção, usuários, e as dores de manutenção que vêm junto.</p>
<p>O resultado foram 653 commits, ~144K linhas de código em 8 projetos publicados no GitHub, e uma série de artigos documentando cada um deles. Se você acompanhou, já leu os post-mortems. Se não acompanhou, aqui vai o índice:</p>
<h2>Os artigos<span class="hx:absolute hx:-mt-20" id="os-artigos"></span>
    <a href="#os-artigos" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="/2026/01/28/vibe-code-eu-fiz-um-appzinho-100-com-glm-4-7-tv-clipboard/">Vibe Code: Eu fiz um appzinho 100% com GLM 4.7 (TV Clipboard)</a></li>
<li><a href="/2026/01/29/vibe-code-qual-llm-%C3%A9-a-melhor-vamos-falar-a-real/">Vibe Code: Qual LLM é a MELHOR?? Vamos falar a REAL</a></li>
<li><a href="/2026/02/01/vibe-code-fiz-um-editor-de-markdown-do-zero-com-claude-code-frankmd-part-1/">Vibe Code: Fiz um Editor de Markdown do zero com Claude Code (FrankMD) PARTE 1</a></li>
<li><a href="/2026/02/01/vibe-code-fiz-um-editor-de-markdown-do-zero-com-claude-code-frankmd-parte-2/">Vibe Code: Fiz um Editor de Markdown do zero com Claude Code (FrankMD) PARTE 2</a></li>
<li><a href="/2026/02/08/rant-ia-acabou-com-programadores/">RANT: IA acabou com os programadores?</a></li>
<li><a href="/2026/02/16/vibe-code-do-zero-a-producao-em-6-dias-the-m-akita-chronicles/">Vibe Code: Do Zero à Produção em 6 DIAS - The M.Akita Chronicles</a></li>
<li><a href="/2026/02/20/do-zero-a-pos-producao-em-1-semana-como-usar-ia-em-projetos-de-verdade-bastidores-do-the-m-akita-chronicles/">Do Zero à Pós-Produção em 1 Semana - Como usar IA em Projetos de Verdade</a></li>
<li><a href="/2026/02/21/vibe-code-fiz-um-clone-do-mega-em-rails-em-1-dia-pro-meu-home-server/">Vibe Code: Fiz um clone do Mega em Rails em 1 dia pro meu Home Server</a></li>
<li><a href="/2026/02/23/vibe-code-fiz-um-indexador-inteligente-de-imagens-com-ia-em-2-dias/">Vibe Code: Fiz um Indexador Inteligente de Imagens com IA em 2 dias - Frank Sherlock</a></li>
<li><a href="/2026/02/24/rant-o-akita-abriu-as-pernas-pra-ia/">RANT: o Akita abriu as pernas pra IA??</a></li>
<li><a href="/2026/03/01/ai-jail-sandbox-para-agentes-de-ia-de-shell-script-a-ferramenta-real/">ai-jail: Sandbox para Agentes de IA</a></li>
<li><a href="/2026/03/01/software-nunca-esta-pronto-4-projetos-a-vida-pos-deploy-e-por-que-one-shot-prompt-e-mito/">Software Nunca Está &lsquo;Pronto&rsquo; - 4 Projetos, a Vida Pós-Deploy</a></li>
<li><a href="/2026/03/04/eu-fiz-um-sistema-de-data-mining-pra-minha-namorada-influencer-dicas-e-truques/">Eu Fiz um Sistema de Data Mining pra Minha Namorada Influencer</a></li>
<li><a href="/2026/03/05/meu-primeiro-fracasso-com-vibe-code-e-como-consertei-frank-yomik/">Meu primeiro fracasso com Vibe Code e como Consertei - Frank Yomik</a></li>
</ul>
<h2>Os projetos<span class="hx:absolute hx:-mt-20" id="os-projetos"></span>
    <a href="#os-projetos" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Projeto</th>
          <th>Commits</th>
          <th>LOC</th>
          <th>Tempo</th>
          <th>O que faz</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="https://github.com/akitaonrails/FrankMD"target="_blank" rel="noopener">FrankMD</a></td>
          <td>234</td>
          <td>38K</td>
          <td>~5 dias</td>
          <td>Editor de Markdown em Rust/Tauri</td>
      </tr>
      <tr>
          <td><a href="https://github.com/akitaonrails/FrankYomik"target="_blank" rel="noopener">FrankYomik</a></td>
          <td>131</td>
          <td>21K</td>
          <td>~9 dias</td>
          <td>Tradutor de mangá/webtoon (Go + Python + Flutter)</td>
      </tr>
      <tr>
          <td><a href="https://github.com/akitaonrails/FrankSherlock"target="_blank" rel="noopener">FrankSherlock</a></td>
          <td>103</td>
          <td>37K</td>
          <td>~6 dias</td>
          <td>Indexador inteligente de imagens (Rails + Python)</td>
      </tr>
      <tr>
          <td>mila-bot (privado)</td>
          <td>60</td>
          <td>30K</td>
          <td>~3 dias</td>
          <td>Sistema de data mining (Rails + Discord)</td>
      </tr>
      <tr>
          <td><a href="https://github.com/akitaonrails/tvclipboard"target="_blank" rel="noopener">TVClipboard</a></td>
          <td>49</td>
          <td>5K</td>
          <td>~2 dias</td>
          <td>App de clipboard cross-device com GLM 4.7</td>
      </tr>
      <tr>
          <td><a href="https://github.com/akitaonrails/ai-jail"target="_blank" rel="noopener">ai-jail</a></td>
          <td>46</td>
          <td>6K</td>
          <td>~4 dias</td>
          <td>Sandbox de segurança pra agentes de IA (Rust)</td>
      </tr>
      <tr>
          <td><a href="https://github.com/akitaonrails/FrankMega"target="_blank" rel="noopener">FrankMega</a></td>
          <td>29</td>
          <td>7K</td>
          <td>~1 dia</td>
          <td>Clone do Mega para home server (Rails)</td>
      </tr>
      <tr>
          <td>The M.Akita Chronicles</td>
          <td>1+</td>
          <td>muitas</td>
          <td>~6 dias</td>
          <td>Blog/newsletter completo em produção</td>
      </tr>
  </tbody>
</table>
<p>Isso tudo aconteceu entre 27 de janeiro e 5 de março de 2026.</p>
<p>Não vou repetir os detalhes técnicos de cada projeto. Cada post-mortem acima já cobriu isso. O que eu quero discutir aqui é a consequência.</p>
<h2>O que esses 37 dias me mostraram<span class="hx:absolute hx:-mt-20" id="o-que-esses-37-dias-me-mostraram"></span>
    <a href="#o-que-esses-37-dias-me-mostraram" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Projetos que antes levariam semanas ou meses pra um desenvolvedor experiente agora levam dias. Um editor de Markdown completo em 5 dias. Um clone do Mega em 1 dia. Um sistema de data mining com 40+ ferramentas de bot em 3 dias. Um indexador de imagens com vision AI em 2 dias.</p>
<p>E não estou falando de protótipos jogados fora. Esses projetos estão em produção. Têm testes. Têm deploy automatizado. São software de verdade construído com práticas de engenharia de verdade, só que com velocidade que antes era impensável.</p>
<p>Essa velocidade não é exclusiva minha. A Cloudflare acabou de demonstrar algo parecido. <a href="https://blog.cloudflare.com/vinext/"target="_blank" rel="noopener">Num post recente</a>, eles descrevem como um engenheiro reimplementou o surface de API do Next.js sobre Vite em uma semana, usando Claude como ferramenta principal. US$ 1.100 em tokens de API, mais de 800 sessões, 1.700 testes unitários, 380 testes E2E, builds 4.4x mais rápidos que o Next.js original. Controvérsias à parte sobre se é uma reimplementação &ldquo;completa&rdquo; ou não, o ponto central é real: software que antes exigia equipes e meses agora pode ser construído por uma pessoa em dias.</p>
<p>E isso muda tudo pra quem quer empreender.</p>
<h2>A morte da startup fácil<span class="hx:absolute hx:-mt-20" id="a-morte-da-startup-fácil"></span>
    <a href="#a-morte-da-startup-f%c3%a1cil" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Durante anos, o modelo clássico de startup funcionava assim: alguém tem uma ideia, monta uma equipe pequena, desenvolve um MVP em 3-6 meses, levanta seed money, e tenta escalar. A barreira de entrada era o custo de desenvolvimento. Programadores são caros, desenvolvimento é lento, e o primeiro a chegar no mercado tem vantagem.</p>
<p>Esse modelo está quebrando.</p>
<p>Se eu consigo fazer um clone funcional do Mega em 1 dia, quanto vale a startup de &ldquo;cloud storage&rdquo;? Se a Cloudflare reimplementa o core do Next.js em 1 semana com um engenheiro e US$ 1.100 em tokens, qual é o moat real de uma plataforma como Vercel? O SaaS de &ldquo;social listening&rdquo; que cobra R$ 500/mês compete com algo que eu fiz em 3 dias como side project.</p>
<p>Todo aquele empreendedor que chegava descrevendo sua ideia como &ldquo;é tipo um Uber, mas pra&hellip;&rdquo; ou &ldquo;é como Airbnb, só que&hellip;&rdquo; ou &ldquo;mais uma rede social, mas com&hellip;&rdquo; &ndash; essas pessoas precisam parar e repensar. Quando qualquer desenvolvedor competente com acesso a Claude Code ou GPT Codex consegue replicar seu MVP numa semana, sua ideia não vale mais nada. A execução ficou barata demais.</p>
<p>Não estou exagerando. Nos meus 37 dias, eu fiz coisas que antigamente eu não faria nem em 6 meses. Pequenos CRMs, ecommerces, gerenciadores de conteúdo, ferramentas de produtividade, apps de data mining, pipelines de processamento &ndash; tudo isso virou commodity. O código em si não é mais diferencial.</p>
<h2>O que é diferencial, então?<span class="hx:absolute hx:-mt-20" id="o-que-é-diferencial-então"></span>
    <a href="#o-que-%c3%a9-diferencial-ent%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Aqui entra a parte que a maioria dos entusiastas de vibe coding ignora. Pra ilustrar, vou usar meu próprio projeto como exemplo.</p>
<p>O <a href="https://github.com/akitaonrails/FrankYomik"target="_blank" rel="noopener">Frank Yomik</a> traduz páginas de mangá de japonês pra inglês em tempo quase real. O pipeline inteiro (detecção de balões, OCR, tradução, renderização) funciona. Mas o componente mais importante do sistema não é nenhum código que eu escrevi. É o modelo <code>ogkalu/comic-text-and-bubble-detector</code>, um RT-DETR-v2 treinado em ~11.000 imagens rotuladas de quadrinhos.</p>
<p>Eu não treinei esse modelo. Eu não poderia treinar esse modelo facilmente. Coletar 11.000 imagens de quadrinhos diversas, rotular manualmente os balões de fala em cada uma (ou gerar labels com alguma pipeline semi-automatizada, o que também não é trivial), configurar o treinamento, e rodar no hardware necessário &ndash; isso é trabalho de natureza diferente. É trabalho que vibe coding não resolve.</p>
<p>E esse é o caso de um modelo relativamente pequeno. Um detector de objetos pode ser treinado com algumas centenas a milhares de imagens rotuladas numa única GPU em horas. Estudos mostram que resultados úteis são possíveis com 100-350 imagens pra domínios específicos, mas detectores robustos pro mundo real geralmente precisam de milhares. O custo é baixo, na casa de centenas de dólares.</p>
<p>Agora olha o que acontece quando subimos pra modelos maiores.</p>
<h2>Os números que importam<span class="hx:absolute hx:-mt-20" id="os-números-que-importam"></span>
    <a href="#os-n%c3%bameros-que-importam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O GPT-4 custou mais de US$ 100 milhões pra treinar, segundo o próprio Sam Altman. A Stanford estimou o custo de compute do Gemini Ultra do Google em US$ 191 milhões. O Llama 3 da Meta consumiu 39,3 milhões de GPU-horas em H100s, e a Meta montou dois clusters de 24.576 GPUs cada pra viabilizar isso &ndash; e até o final de 2024, planejava ter 350.000 H100s na sua infraestrutura.</p>
<p>Esses custos estão acelerando. Segundo a Epoch AI, o custo de hardware e energia pra treinar modelos de fronteira cresce a 2,4x por ano desde 2016. Se essa tendência continuar, os maiores treinamentos vão custar mais de US$ 1 bilhão antes do fim de 2027. O Dario Amodei, CEO da Anthropic, já disse que desenvolvedores de fronteira provavelmente estão gastando perto de um bilhão por treinamento agora, com treinamentos de US$ 10 bilhões esperados em dois anos.</p>
<p>E o hardware? Uma GPU H100 custa US$ 25.000-40.000 por unidade. Um servidor com 8 GPUs sai entre US$ 200.000 e US$ 400.000. A memória HBM que essas GPUs usam está com capacidade esgotada &ndash; SK Hynix, Samsung e Micron já anunciaram aumentos de ~20% nos preços pra 2026. A NVIDIA consome mais de 60% da produção global de HBM. É um gargalo estrutural, não temporário.</p>
<p>Em termos de energia: data centers globais consumiram ~415 TWh de eletricidade em 2024, segundo o IEA, cerca de 1,5% da eletricidade mundial. A projeção é ~945 TWh até 2030. Novos data centers estão sendo construídos com capacidades de 100 MW a 1 GW cada.</p>
<p>E os investimentos das big techs refletem isso. Em 2025, os gastos de capital agregados de Amazon (<del>$125B), Google (</del>$91B), Microsoft (<del>$80B) e Meta (</del>$71B) passaram de US$ 400 bilhões, crescimento de 62% sobre 2024. Goldman Sachs projeta mais de US$ 500 bilhões em 2026.</p>
<p>Esses números não são pra assustar. São pra contextualizar de onde vem a barreira de entrada real.</p>
<h2>A nova barreira: dados exclusivos e capacidade de treinamento<span class="hx:absolute hx:-mt-20" id="a-nova-barreira-dados-exclusivos-e-capacidade-de-treinamento"></span>
    <a href="#a-nova-barreira-dados-exclusivos-e-capacidade-de-treinamento" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Se software ficou barato de produzir, o diferencial competitivo migrou. A pergunta deixou de ser &ldquo;quem escreve o código mais rápido?&rdquo; e virou &ldquo;quem tem acesso a dados que ninguém mais tem, e sabe transformar esses dados em modelos úteis?&rdquo;</p>
<p>O DeepSeek-V3 anunciou que seu treinamento custou US$ 5,5 milhões em compute. A imprensa celebrou o &ldquo;modelo barato chinês&rdquo;. Mas o The Register reportou que o custo de aquisição dos 256 servidores GPU usados foi de mais de US$ 51 milhões &ndash; e isso exclui R&amp;D, aquisição de dados, limpeza de dados, e todos os treinamentos fracassados antes do run final que deu certo. O custo real de desenvolver a capacidade é uma ou duas ordens de grandeza acima do custo marginal do treinamento final bem-sucedido.</p>
<p>É por isso que só vemos grandes empresas produzindo modelos de fronteira. Meta, Alibaba, Google, Amazon, Microsoft, Anthropic &ndash; empresas que investem dezenas de bilhões em hardware e energia. Uma startup em garagem não consegue competir nessa dimensão.</p>
<p>Mas a questão vai além de modelos de fronteira. Mesmo modelos especializados menores exigem algo que não se compra: dados proprietários de qualidade.</p>
<p>O Llama 3 foi treinado em 15 trilhões de tokens. A Epoch AI já documentou que estamos nos aproximando dos limites de dados textuais gerados por humanos na internet. Dados públicos estão sendo exauridos. Quem tem dados exclusivos &ndash; dados médicos, financeiros, industriais, logísticos, de sensores, de comportamento de usuário &ndash; tem algo que não pode ser replicado por vibe coding.</p>
<p>E mesmo quem treina modelos especializados com dados proprietários enfrenta um problema: a vantagem é temporária. Outro competidor pode coletar dados similares e treinar um modelo concorrente em meses. O diferencial precisa ser continuamente alimentado: mais dados, melhor curadoria, pipelines de treinamento mais eficientes, acesso a hardware que está cada vez mais escasso e caro.</p>
<h2>O cenário<span class="hx:absolute hx:-mt-20" id="o-cenário"></span>
    <a href="#o-cen%c3%a1rio" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Se você está pensando em montar uma startup, a pergunta que importa mudou.</p>
<p>Antes era: &ldquo;consigo construir esse software?&rdquo; Agora a resposta é quase sempre sim, rápido e barato.</p>
<p>A pergunta agora é: &ldquo;tenho dados exclusivos que ninguém mais tem, e sei como transformar esses dados em algo útil que seja difícil de replicar?&rdquo;</p>
<p>Se a resposta for não, qualquer concorrente com Claude Code replica seu produto em dias. E depois aparece outro. E outro. A corrida pro fundo em preço é imediata quando o custo de construir é próximo de zero.</p>
<p>Se a resposta for sim, você tem um moat real &ndash; mas temporário. Modelos concorrentes treinados em dados similares podem aparecer em meses. Seu diferencial precisa ser continuamente alimentado.</p>
<p>A era das startups fáceis acabou. Não porque ficou mais difícil construir software &ndash; ficou muito mais fácil. Mas justamente por isso: quando todo mundo consegue construir a mesma coisa em uma semana, a vantagem competitiva precisa vir de outro lugar. E esse &ldquo;outro lugar&rdquo; requer capital e infraestrutura que são ordens de grandeza mais caros do que escrever código.</p>
<p>A garagem ainda funciona. Mas o que sai dela não pode mais ser &ldquo;um app&rdquo;.</p>
]]></content:encoded><category>vibe-coding</category><category>startups</category><category>negocios</category><category>off-topic</category></item><item><title>Software Nunca Está 'Pronto' — 4 Projetos, a Vida Pós-Deploy, e Por Que One-Shot Prompt É Mito</title><link>https://akitaonrails.github.io/2026/03/01/software-nunca-esta-pronto-4-projetos-a-vida-pos-deploy-e-por-que-one-shot-prompt-e-mito/</link><guid isPermaLink="true">https://akitaonrails.github.io/2026/03/01/software-nunca-esta-pronto-4-projetos-a-vida-pos-deploy-e-por-que-one-shot-prompt-e-mito/</guid><pubDate>Sun, 01 Mar 2026 12:00:00 -0300</pubDate><description>&lt;p&gt;E não deixe de assinar minha newsletter &lt;a href="https://themakitachronicles.com/"target="_blank" rel="noopener"&gt;The M.Akita Chronicles&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;&amp;ndash;&lt;/p&gt;
&lt;p&gt;Publiquei o &amp;ldquo;post final&amp;rdquo; da série &lt;a href="https://akitaonrails.github.io/2026/02/20/do-zero-a-pos-producao-em-1-semana-como-usar-ia-em-projetos-de-verdade-bastidores-do-the-m-akita-chronicles/"&gt;Bastidores do The M.Akita Chronicles&lt;/a&gt; há 10 dias. 274 commits, 1.323 testes, deploy em produção. Escrevi as lições, fiz a conclusão, coloquei a citação no final. Done.&lt;/p&gt;
&lt;p&gt;125 commits de pós-produção depois, posso confirmar: &lt;strong&gt;software &lt;em&gt;&amp;ldquo;done&amp;rdquo;&lt;/em&gt; não existe.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Hoje o repositório do M.Akita Chronicles tem 335 commits e 1.422 testes. Amanhã, segunda-feira, os assinantes recebem a 3ª newsletter consecutiva — gerada, revisada, e enviada por um sistema que não para de evoluir. Enquanto isso, o &lt;a href="https://akitaonrails.github.io/2026/02/23/vibe-code-fiz-um-indexador-inteligente-de-imagens-com-ia-em-2-dias/"&gt;Frank Sherlock&lt;/a&gt; saiu de 50 commits e v0.1 pra 103 commits e v0.7 com face detection. O &lt;a href="https://akitaonrails.github.io/2026/02/01/vibe-code-fiz-um-editor-de-markdown-do-zero-com-claude-code-frankmd-part-1/"&gt;FrankMD&lt;/a&gt; recebeu 3 contribuidores externos e lançou a v0.2.0. E até o &lt;a href="https://akitaonrails.github.io/2026/02/21/vibe-code-fiz-um-clone-do-mega-em-rails-em-1-dia-pro-meu-home-server/"&gt;FrankMega&lt;/a&gt; — um projeto construído em 1 dia — precisou de correções quando usuários reais apareceram.&lt;/p&gt;</description><content:encoded><![CDATA[<p>E não deixe de assinar minha newsletter <a href="https://themakitachronicles.com/"target="_blank" rel="noopener">The M.Akita Chronicles</a>!</p>
<p>&ndash;</p>
<p>Publiquei o &ldquo;post final&rdquo; da série <a href="/2026/02/20/do-zero-a-pos-producao-em-1-semana-como-usar-ia-em-projetos-de-verdade-bastidores-do-the-m-akita-chronicles/">Bastidores do The M.Akita Chronicles</a> há 10 dias. 274 commits, 1.323 testes, deploy em produção. Escrevi as lições, fiz a conclusão, coloquei a citação no final. Done.</p>
<p>125 commits de pós-produção depois, posso confirmar: <strong>software <em>&ldquo;done&rdquo;</em> não existe.</strong></p>
<p>Hoje o repositório do M.Akita Chronicles tem 335 commits e 1.422 testes. Amanhã, segunda-feira, os assinantes recebem a 3ª newsletter consecutiva — gerada, revisada, e enviada por um sistema que não para de evoluir. Enquanto isso, o <a href="/2026/02/23/vibe-code-fiz-um-indexador-inteligente-de-imagens-com-ia-em-2-dias/">Frank Sherlock</a> saiu de 50 commits e v0.1 pra 103 commits e v0.7 com face detection. O <a href="/2026/02/01/vibe-code-fiz-um-editor-de-markdown-do-zero-com-claude-code-frankmd-part-1/">FrankMD</a> recebeu 3 contribuidores externos e lançou a v0.2.0. E até o <a href="/2026/02/21/vibe-code-fiz-um-clone-do-mega-em-rails-em-1-dia-pro-meu-home-server/">FrankMega</a> — um projeto construído em 1 dia — precisou de correções quando usuários reais apareceram.</p>
<p>Ao longo de fevereiro, publiquei mais de uma dezena de posts detalhando a construção de cada projeto. Este post é diferente. Não é sobre construir do zero, já cobri isso. É sobre o que acontece <strong>depois</strong>. E o que acontece depois destrói a narrativa do one-shot prompt. Software precisa de um humano experiente no volante. Desenvolvimento iterativo é a única forma que funciona. Quem discorda não botou sistema em produção ainda.</p>
<p>Vou provar com <code>git log</code>.</p>
<h2>A Vida Depois do Deploy<span class="hx:absolute hx:-mt-20" id="a-vida-depois-do-deploy"></span>
    <a href="#a-vida-depois-do-deploy" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Projeto</th>
          <th>Commits pós-publicação</th>
          <th>Destaque</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>The M.Akita Chronicles</td>
          <td>56</td>
          <td>3ª semana em produção, features novas, 13 bug fixes, prompt tuning</td>
      </tr>
      <tr>
          <td>Frank Sherlock</td>
          <td>53</td>
          <td>De v0.3 a v0.7: video support, face detection, AUR publish</td>
      </tr>
      <tr>
          <td>FrankMD</td>
          <td>14</td>
          <td>3 contribuidores externos, 4 PRs merged, v0.2.0</td>
      </tr>
      <tr>
          <td>FrankMega</td>
          <td>2</td>
          <td>MIME types que ninguém previu</td>
      </tr>
      <tr>
          <td><strong>Total</strong></td>
          <td><strong>125</strong></td>
          <td></td>
      </tr>
  </tbody>
</table>
<p>Vamos aos detalhes.</p>
<h2>The M.Akita Chronicles: 3 Semanas em Produção<span class="hx:absolute hx:-mt-20" id="the-makita-chronicles-3-semanas-em-produção"></span>
    <a href="#the-makita-chronicles-3-semanas-em-produ%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O sistema de newsletter está no ar desde 16 de fevereiro. Já enviou 2 newsletters e amanhã envia a terceira. 56 commits aconteceram desde o &ldquo;post final&rdquo;:</p>
<table>
  <thead>
      <tr>
          <th>Data</th>
          <th>Commits</th>
          <th>O que aconteceu</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>20/fev (qui)</td>
          <td>16</td>
          <td>Steam Gaming (seção nova inteira), bug fixes em paywall detection</td>
      </tr>
      <tr>
          <td>21/fev (sex)</td>
          <td>12</td>
          <td>/preview command, YouTube collage, notificações de /rerun</td>
      </tr>
      <tr>
          <td>22/fev (sáb)</td>
          <td>1</td>
          <td>Fix: /preflight mandando resultado pro channel errado</td>
      </tr>
      <tr>
          <td>23/fev (dom)</td>
          <td>10</td>
          <td>Publicação da 2ª newsletter, Gmail clipping warning, TTS revert</td>
      </tr>
      <tr>
          <td>24/fev (seg)</td>
          <td>1</td>
          <td>Ajuste de prompt do podcast</td>
      </tr>
      <tr>
          <td>28/fev (sáb)</td>
          <td>7</td>
          <td>Marvin prompt tuning, rate limiting, /rerun comments</td>
      </tr>
      <tr>
          <td>01/mar (dom)</td>
          <td>9</td>
          <td>Mood system, switch pra Grok-4, QA pipeline, centralização de config</td>
      </tr>
  </tbody>
</table>
<h3>Features que Ninguém Previu<span class="hx:absolute hx:-mt-20" id="features-que-ninguém-previu"></span>
    <a href="#features-que-ningu%c3%a9m-previu" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><strong>Steam Gaming.</strong> Não existia no plano original. Nasceu porque a seção de entretenimento só tinha anime — e leitores gamers ficaram de fora. Resultado: 6 commits só no dia de lançamento. O primeiro commit (<code>bf41e25</code>) adicionou a seção completa — serviço de API Steam, job de geração, testes, shortcode Hugo. Os 5 seguintes corrigiram: parsing de datas em português, offset pro ranking não repetir o top 10, filtro de wishlist pra releases, dark theme. Nenhum spec do mundo prevê que a API do Steam retorna datas com abreviações em português (<code>&quot;fev&quot;</code>, <code>&quot;mar&quot;</code>, <code>&quot;abr&quot;</code>) quando você pede <code>l=brazilian</code>. Isso você descobre quando o parser quebra em produção.</p>
<p><strong>Sistema de preview.</strong> O <code>/preview</code> nasceu porque eu precisava ver como o conteúdo auto-gerado ficava <strong>antes</strong> de publicar a newsletter inteira. Parece óbvio em retrospecto, mas na v1 a única forma de validar era gerar tudo e olhar o resultado final. 5 commits pra construir um sistema de preview com 9 seções, aliases (<code>hn</code> pra hacker_news, <code>steam</code> pra steam_gaming), modo de preview de comentários separado, e rescue quando uma seção falha sem derrubar as outras (<code>d23c725</code> — porque uma seção com erro estava matando o preview inteiro).</p>
<p><strong>Moods do Marvin.</strong> O Marvin (a persona sarcástica do bot) sofre de um problema crônico de LLMs: suavização. Sem intervenção, todo comentário vira o mesmo tom morno. A solução iterativa foi um sistema de moods — 9 modos que o operador escolhe por story:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-ruby" data-lang="ruby"><span class="line"><span class="cl"><span class="no">MARVIN_MOODS</span> <span class="o">=</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;sarcastic&#34;</span>   <span class="o">=&gt;</span> <span class="s2">&#34;Be extra sarcastic and biting in your commentary.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;ironic&#34;</span>      <span class="o">=&gt;</span> <span class="s2">&#34;Use irony and dark humor to make your point.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;grounded&#34;</span>    <span class="o">=&gt;</span> <span class="s2">&#34;Be more neutral and journalist-like, factual and measured.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;provocative&#34;</span> <span class="o">=&gt;</span> <span class="s2">&#34;Be provocative and controversial, challenge assumptions.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;counter&#34;</span>     <span class="o">=&gt;</span> <span class="s2">&#34;Take the opposite position from Akita&#39;s comment.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;insightful&#34;</span>  <span class="o">=&gt;</span> <span class="s2">&#34;Find a non-obvious angle -- a historical parallel, a second-order consequence.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;positive&#34;</span>    <span class="o">=&gt;</span> <span class="s2">&#34;Find the genuinely positive angle.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;hopeful&#34;</span>     <span class="o">=&gt;</span> <span class="s2">&#34;Be cautiously optimistic. Acknowledge the good potential.&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;negative&#34;</span>    <span class="o">=&gt;</span> <span class="s2">&#34;Be extra pessimistic and bleak.&#34;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span><span class="o">.</span><span class="n">freeze</span></span></span></code></pre></div></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>Nada disso surgiu de uma spec. Surgiu de 3 semanas lendo comentários genéricos e pensando <em>&ldquo;isso não tá bom&rdquo;</em>. São 7 commits só de prompt tuning ao longo de 10 dias. Bani padrões formulaicos (<code>d4bd3a6</code>). Eliminei o &ldquo;Ah,&rdquo; como abertura (<code>4171628</code>). Removi o Marvin de seções inteiras do podcast porque ele tava contaminando o tom (<code>246cc60</code>). Forcei substância ao invés de trocadilhos (<code>8bc47c4</code>). Cada commit de prompt é uma micro-correção que só faz sentido depois de ler o output anterior.</p>
<h3>Bugs que Só Existem em Produção<span class="hx:absolute hx:-mt-20" id="bugs-que-só-existem-em-produção"></span>
    <a href="#bugs-que-s%c3%b3-existem-em-produ%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Dos 56 commits, 13 são bug fixes. Alguns favoritos:</p>
<ul>
<li>
<p><strong>Gmail clipping</strong> (<code>3258f5b</code>): Gmail silenciosamente corta emails maiores que 102KB. Descobri quando a 2ª newsletter saiu mais longa e leitores no Gmail não viram o final. Resultado: um check de tamanho no content preflight que avisa antes de publicar. Reduzi as seções de história de 10 pra 5 itens (<code>51ce528</code>) pra caber no limite.</p>
</li>
<li>
<p><strong>False paywall detection</strong> (<code>1fd8739</code>): o scraper marcava sites como paywall quando encontrava texto de bloqueio acidental num rodapé genérico. Só apareceu quando a lista de stories cresceu pra dezenas de fontes reais.</p>
</li>
<li>
<p><strong>t.co link mangling</strong> (<code>6bd056f</code>): o Twitter encurta URLs com t.co, mas também auto-linka nomes de arquivo que parecem domínios. <code>config.yml</code> vira um link pro domínio <code>config.yml</code>. 158 linhas de fix pra tratar corretamente textos de tweet.</p>
</li>
<li>
<p><strong>TTS language revert</strong> (<code>7803ad9</code> -&gt; <code>c1dd668</code>): tentei trocar o idioma do TTS de &ldquo;Portuguese&rdquo; pra &ldquo;Auto&rdquo;. O modelo gerou sotaque misturado. Revertido no mesmo dia.</p>
</li>
<li>
<p><strong>Podcast section ordering</strong> (<code>5bef18c</code>): seções do podcast saíram fora de ordem. Fix de 3 linhas + untrack de 1.504 linhas de conteúdo gerado que foi commitado por acidente.</p>
</li>
<li>
<p><strong>Elementor sites com múltiplos <code>&lt;article&gt;</code></strong> (<code>e70b756</code>): sites construídos com Elementor usam a tag <code>&lt;article&gt;</code> de forma não-semântica. O extrator de conteúdo pegava o bloco errado. 171 linhas de fix + testes.</p>
</li>
</ul>
<p>Nenhum desses bugs poderia ter sido previsto numa spec. Eles só existem porque o sistema tá no ar, processando dados reais, batendo em APIs reais, sendo lido por gente real.</p>
<h3>De 1.323 pra 1.422 Testes<span class="hx:absolute hx:-mt-20" id="de-1323-pra-1422-testes"></span>
    <a href="#de-1323-pra-1422-testes" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>A suíte de testes continuou crescendo junto:</p>
<table>
  <thead>
      <tr>
          <th>App</th>
          <th>Testes (20/fev)</th>
          <th>Testes (01/mar)</th>
          <th>Crescimento</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>marvin-bot</td>
          <td>970</td>
          <td>1.060</td>
          <td>+90</td>
      </tr>
      <tr>
          <td>newsletter</td>
          <td>353</td>
          <td>362</td>
          <td>+9</td>
      </tr>
      <tr>
          <td><strong>Total</strong></td>
          <td><strong>1.323</strong></td>
          <td><strong>1.422</strong></td>
          <td><strong>+99</strong></td>
      </tr>
  </tbody>
</table>
<p>Feature nova? Vem com teste. Bug fix? Vem com teste de regressão. Sem isso, os 56 commits de pós-produção seriam 56 oportunidades de quebrar algo que funcionava ontem. TDD não é fase, é hábito.</p>
<h3>O Modelo Mudou: De Claude pra Grok-4<span class="hx:absolute hx:-mt-20" id="o-modelo-mudou-de-claude-pra-grok-4"></span>
    <a href="#o-modelo-mudou-de-claude-pra-grok-4" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Commit <code>8f9d11c</code>: <code>Switch default model to x-ai/grok-4</code>. A arquitetura isolou o modelo LLM numa variável de ambiente desde o início. Mas o nome do modelo ainda estava referenciado em código por 24 arquivos. Resultado: commit <code>c8c688e</code> — <code>Centralize LLM model config</code> — 24 arquivos tocados pra garantir que trocar de modelo seja uma mudança de 1 linha de config.</p>
<p>Esse tipo de refactoring só surge na operação. Quando você começa o projeto, não sabe que vai trocar de modelo. Quando troca, quer que seja trivial. E a limpeza pra tornar trivial? Só acontece quando a dor aparece.</p>
<h2>Frank Sherlock: De v0.1 a v0.7 em 4 Dias<span class="hx:absolute hx:-mt-20" id="frank-sherlock-de-v01-a-v07-em-4-dias"></span>
    <a href="#frank-sherlock-de-v01-a-v07-em-4-dias" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O <a href="/2026/02/23/vibe-code-fiz-um-indexador-inteligente-de-imagens-com-ia-em-2-dias/">post sobre o Frank Sherlock</a> cobriu os primeiros 2 dias e ~50 commits: a pesquisa de benchmarks, o scaffold do app Tauri (Rust + React), a pipeline de classificação com Ollama, e o lançamento da v0.1.0 com binários pra Linux, macOS e Windows.</p>
<p>O que o post não cobriu: os 53 commits seguintes, em 4 dias, que levaram o projeto da v0.3 pra v0.7:</p>
<table>
  <thead>
      <tr>
          <th>Versão</th>
          <th>Data</th>
          <th>Destaque</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>v0.4.0</td>
          <td>24/fev</td>
          <td>Duplicate detection (SHA-256 + dHash), PDF password manager</td>
      </tr>
      <tr>
          <td>v0.5.0</td>
          <td>24/fev</td>
          <td>Auto-update, scan performance 2x, checkpoint resume</td>
      </tr>
      <tr>
          <td>v0.6.0</td>
          <td>25/fev</td>
          <td>Video support (11 formatos), directory tree, FTS stemmer</td>
      </tr>
      <tr>
          <td>v0.7.0</td>
          <td>27/fev</td>
          <td><strong>Face detection</strong> com ONNX nativo, person management</td>
      </tr>
  </tbody>
</table>
<h3>Face Detection: A Feature que Nasceu da Iteração<span class="hx:absolute hx:-mt-20" id="face-detection-a-feature-que-nasceu-da-iteração"></span>
    <a href="#face-detection-a-feature-que-nasceu-da-itera%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>A v0.1 era um indexador de imagens com classificação por LLM. A v0.7 tem detecção de rostos com embeddings de 512 dimensões, clustering por similaridade de cosseno, e busca por pessoa (<code>face:alice</code>). Nada disso tava no plano original. Surgiu porque comecei a usar o app com fotos de verdade e pensei <em>&ldquo;quero encontrar todas as fotos de fulano&rdquo;</em> A feature nasceu do uso, não da spec.</p>
<p>O caminho até lá foi metódico:</p>
<ol>
<li><strong><code>f34132f</code></strong>: A/B testing framework pra face detection — benchmarkear antes de implementar, não depois</li>
<li><strong><code>ef3be82</code></strong>: Resultados do A/B (SCRFD + ArcFace venceu)</li>
<li><strong><code>6d9174a</code></strong>: Implementação nativa com ONNX Runtime — sem Python, sem dependência externa</li>
<li><strong><code>3b25eaf</code></strong>: Clustering, person management, FacesView completa</li>
<li><strong><code>a02d67f</code></strong>: Refactoring — extrair helpers, deletar código morto, compartilhar CSS</li>
</ol>
<p>Benchmark -&gt; implementar -&gt; refatorar. O mesmo ciclo de sempre. E algo que nenhum one-shot prompt produz.</p>
<h3>Video Support: Outro Emergente<span class="hx:absolute hx:-mt-20" id="video-support-outro-emergente"></span>
    <a href="#video-support-outro-emergente" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>O app foi pensado pra imagens. Mas pastas reais de mídia têm vídeos. Commit <code>a67a2f9</code> adicionou suporte completo: scanning de 11 formatos (MP4, MKV, AVI, MOV, WebM&hellip;), extração de keyframe pra classificação pelo LLM, skip de frames pretos, parsing de legendas .srt pro índice full-text, e preview inline com streaming HTTP Range.</p>
<p>1.626 linhas adicionadas num commit. Uma feature inteira que nasceu do uso real, não de uma especificação.</p>
<h3>7 Releases, 3 Plataformas, AUR Automático<span class="hx:absolute hx:-mt-20" id="7-releases-3-plataformas-aur-automático"></span>
    <a href="#7-releases-3-plataformas-aur-autom%c3%a1tico" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Em 7 dias, o Frank Sherlock teve 7 releases. Cada um com binários compilados pra Linux (AppImage), macOS (DMG com notarização e code signing), e Windows (MSI). A pipeline de CI/CD (<code>release.yml</code>) faz tudo automaticamente. A partir da v0.5.0, um workflow adicional (<code>aur-publish.yml</code>) publica automaticamente no AUR — o repositório de pacotes do Arch Linux.</p>
<p>No final: 17.210 linhas de Rust, 10.863 linhas de TypeScript, 621 testes (322 Rust + 299 frontend). Cross-platform. Releases publicados e instaláveis por qualquer usuário. Uma semana, um dev, um agente de IA.</p>
<p>A parte de CI/CD pra cross-platform é onde a fantasia do <em>&ldquo;funciona na minha máquina&rdquo;</em> morre. Foram 17 commits só de build: Windows UNC paths, macOS signing com notarização, Linux AppImage, permissões de release workflow, macOS Intel target removido. Nenhum LLM do mundo sabe que o macOS exige entitlements específicos pra hardened runtime ou que paths no Windows começam com <code>\\?\</code>. Esse tipo de trabalho de deploy exige alguém que já passou por essa dor antes.</p>
<h2>FrankMD: Open Source de Verdade<span class="hx:absolute hx:-mt-20" id="frankmd-open-source-de-verdade"></span>
    <a href="#frankmd-open-source-de-verdade" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O FrankMD foi o primeiro projeto desta saga, um editor Markdown self-hosted com Rails 8. Os <a href="/2026/02/01/vibe-code-fiz-um-editor-de-markdown-do-zero-com-claude-code-frankmd-part-1/">posts de fevereiro</a> cobriram a construção. O que aconteceu depois é mais interessante: outras pessoas começaram a contribuir.</p>
<p>14 commits desde 20 de fevereiro. 3 contribuidores externos. 4 PRs merged. Release v0.2.0 no dia 28:</p>
<table>
  <thead>
      <tr>
          <th>PR</th>
          <th>Autor</th>
          <th>Tipo</th>
          <th>O que fez</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>#34</td>
          <td>@murilo-develop</td>
          <td>Bug fix</td>
          <td>Integração Ollama: ModelNotFoundError + API base URL</td>
      </tr>
      <tr>
          <td>#36</td>
          <td>@rafaself</td>
          <td>Bug fix</td>
          <td>Comportamento de table hints no editor (3 commits iterativos)</td>
      </tr>
      <tr>
          <td>#38</td>
          <td>@LuccaRomanelli</td>
          <td>Feature</td>
          <td>Auto-sync de tema com o desktop environment Omarchy</td>
      </tr>
      <tr>
          <td>#39</td>
          <td>@LuccaRomanelli</td>
          <td>Feature</td>
          <td>&ldquo;New Folder&rdquo; no menu de contexto do explorer</td>
      </tr>
  </tbody>
</table>
<h3>O Padrão do Maintainer<span class="hx:absolute hx:-mt-20" id="o-padrão-do-maintainer"></span>
    <a href="#o-padr%c3%a3o-do-maintainer" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>O mais revelador não são as contribuições em si, mas o que eu fiz depois de cada merge.</p>
<p>Quando o @LuccaRomanelli submeteu o PR do Omarchy theme sync (+308 linhas), eu mergeei e imediatamente commitei <code>fix: harden Omarchy theme integration and fix broken tests</code> — <strong>+163 linhas</strong> de fixes e testes no commit seguinte. O contribuidor implementou a feature. O maintainer endureceu.</p>
<p>Quando o @rafaself submeteu o fix de table hints, foram 3 commits iterativos no mesmo dia — <code>enhance</code>, <code>improve</code>, <code>streamline</code> — mostrando o mesmo padrão de refinamento progressivo que eu faço com o agente de IA. No dia seguinte, ele mandou um commit separado atualizando faraday, nokogiri e rack por security advisories.</p>
<p>No dia 28, sentei e fiz tudo de uma vez: mergeei as 4 PRs, commitei o hardening, atualizei 5 gems (brakeman, bootsnap, selenium-webdriver, web-console, mocha), e publiquei as release notes da v0.2.0. Um <em>&ldquo;release day&rdquo;</em> clássico.</p>
<p>O FrankMD hoje tem 226 commits, 1.804 testes (425 Ruby + 1.379 JavaScript), e contribuidores ativos. Não é mais <em>&ldquo;meu projetinho pessoal&rdquo;</em>. Virou software com comunidade. E comunidade não aparece pra protótipo sem testes que <em>&ldquo;funciona na minha máquina&rdquo;</em>. Aparece pra projeto com CI verde, documentação, releases versionados, e código que dá pra ler.</p>
<h2>FrankMega: Até o Menor Projeto Precisa de Pós-Produção<span class="hx:absolute hx:-mt-20" id="frankmega-até-o-menor-projeto-precisa-de-pós-produção"></span>
    <a href="#frankmega-at%c3%a9-o-menor-projeto-precisa-de-p%c3%b3s-produ%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O FrankMega foi construído em <a href="/2026/02/21/vibe-code-fiz-um-clone-do-mega-em-rails-em-1-dia-pro-meu-home-server/">1 dia</a>. 26 commits, file sharing seguro com Rails 8, 210 testes, deploy via Docker + Cloudflare Tunnel. Post publicado no mesmo dia. Pronto, certo?</p>
<p>Três dias depois, 2 commits:</p>
<ul>
<li><code>db4bb705</code> — Add macOS, Linux, and Windows package MIME types to seed defaults</li>
<li><code>b0c4829a</code> — Fix MIME types to match Marcel detection, add normalizes strip</li>
</ul>
<p>Usuários tentaram compartilhar arquivos <code>.dmg</code>, <code>.deb</code>, e <code>.msi</code>. O MIME type detection (via gem Marcel) não reconhecia esses formatos porque não estavam nos defaults do seed. Dois commits. 22 linhas. 15 minutos.</p>
<p>Mas sem eles, o FrankMega não servia pra compartilhar pacotes de instalação — que é exatamente o caso de uso mais comum num home server de devs.</p>
<blockquote>
  <p>Nenhum prompt no mundo prevê que seus usuários vão querer compartilhar <code>.deb</code> no primeiro dia.</p>

</blockquote>
<p>O projeto mais simples de todos, com a pós-produção mais curta. E mesmo assim, precisou de iteração.</p>
<h2>Os Números Consolidados<span class="hx:absolute hx:-mt-20" id="os-números-consolidados"></span>
    <a href="#os-n%c3%bameros-consolidados" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Projeto</th>
          <th>Commits (total)</th>
          <th>Testes</th>
          <th>Pós-produção</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>The M.Akita Chronicles</td>
          <td>335</td>
          <td>1.422</td>
          <td>56 commits, 10 dias em produção</td>
      </tr>
      <tr>
          <td>Frank Sherlock</td>
          <td>103</td>
          <td>621</td>
          <td>53 commits, 4 releases extras</td>
      </tr>
      <tr>
          <td>FrankMD</td>
          <td>226</td>
          <td>1.804</td>
          <td>14 commits, 3 contribuidores</td>
      </tr>
      <tr>
          <td>FrankMega</td>
          <td>28</td>
          <td>210</td>
          <td>2 commits, MIME fixes</td>
      </tr>
      <tr>
          <td><strong>Total</strong></td>
          <td><strong>692</strong></td>
          <td><strong>4.057</strong></td>
          <td><strong>125 commits pós-publicação</strong></td>
      </tr>
  </tbody>
</table>
<p>692 commits. 4.057 testes. 4 projetos em produção. Fevereiro de 2026. Eu e um agente de IA.</p>
<h2>Por Que One-Shot Prompt É Mito<span class="hx:absolute hx:-mt-20" id="por-que-one-shot-prompt-é-mito"></span>
    <a href="#por-que-one-shot-prompt-%c3%a9-mito" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Olha os 125 commits de pós-produção e me diz qual deles poderia ter sido previsto por uma especificação.</p>
<p>Gmail corta emails maiores que 102KB, e você só descobre quando manda o primeiro email longo. A Steam API retorna datas com abreviações em português (<code>&quot;fev&quot;</code>, <code>&quot;abr&quot;</code>), e você só descobre quando o parser quebra no domingo de geração. Usuários de macOS tentam compartilhar <code>.dmg</code> e não conseguem porque o MIME type não tá no seed. O Marvin abre todo comentário com <em>&ldquo;Ah,&rdquo;</em> e você só percebe quando lê 30 seguidos e quer arrancar os olhos. O modelo LLM precisa ser trocável com 1 linha de config, mas tá espalhado em 24 arquivos. Windows usa UNC paths que começam com <code>\\?\</code>, e o CI explode na sua cara. E o TTS em modo &ldquo;Auto&rdquo;? Gera um sotaque que parece português de Lisboa tentando ser carioca.</p>
<p>Nada disso é &ldquo;debugar&rdquo; no sentido tradicional. É navegar um espaço de problemas que só se revela quando o software encontra a realidade. Cada um desses foi uma decisão tomada em tempo real por alguém com contexto.</p>
<p>A fantasia do one-shot prompt é que, se você escrever uma especificação suficientemente detalhada, a IA produz o software perfeito. Mas a especificação perfeita exigiria que você soubesse de antemão tudo que vai dar errado. E se você soubesse de antemão tudo que vai dar errado, você não precisaria da especificação — já teria o software pronto na cabeça.</p>
<p>Software bom é o resultado de centenas de micro-decisões tomadas com o sistema rodando. Não de uma macro-decisão tomada antes de escrever a primeira linha.</p>
<h2>O Papel do Desenvolvedor Experiente<span class="hx:absolute hx:-mt-20" id="o-papel-do-desenvolvedor-experiente"></span>
    <a href="#o-papel-do-desenvolvedor-experiente" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>A IA acelerou tudo isso. Sem ela, 692 commits em um mês seria impossível pra uma pessoa só. Mas aceleração sem direção é só entropia mais rápida.</p>
<p>Em cada projeto houve decisões que a IA não teria como tomar sozinha. Trocar de Claude pra Grok-4 porque o modelo anterior tava fraco num domínio específico. Benchmark de SCRFD vs alternativas <em>antes</em> de implementar face detection, porque a escolha errada ia custar dias. O hardening de +163 linhas que eu commitei imediatamente depois de mergear o PR do Omarchy, porque eu vi onde ia quebrar. O revert do TTS em modo Auto no mesmo dia, porque eu sei que &ldquo;Auto&rdquo; num modelo de TTS pra português brasileiro vai produzir sotaque misturado.</p>
<p>O caso do circuit breaker é o mais ilustrativo. Quando adicionei rate limiting, a Brave Search API começou a retornar 429 de vez em quando. Se eu pedisse, o agente implementaria um retry com backoff exponencial. Mas eu não pedi retry. Pedi circuit breaker:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-ruby" data-lang="ruby"><span class="line"><span class="cl"><span class="k">class</span> <span class="nc">WebSearcher</span>
</span></span><span class="line"><span class="cl">  <span class="no">CIRCUIT_BREAKER_SECONDS</span> <span class="o">=</span> <span class="mi">120</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">  <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">search</span><span class="p">(</span><span class="n">query</span><span class="p">,</span> <span class="ss">max_results</span><span class="p">:</span> <span class="mi">5</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">    <span class="k">return</span> <span class="o">[]</span> <span class="k">if</span> <span class="n">circuit_open?</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="n">response</span> <span class="o">=</span> <span class="n">brave_search</span><span class="p">(</span><span class="n">query</span><span class="p">,</span> <span class="n">max_results</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="n">response</span><span class="o">.</span><span class="n">code</span> <span class="o">==</span> <span class="mi">429</span>
</span></span><span class="line"><span class="cl">      <span class="n">trip_circuit!</span>
</span></span><span class="line"><span class="cl">      <span class="no">Rails</span><span class="o">.</span><span class="n">logger</span><span class="o">.</span><span class="n">warn</span><span class="p">(</span><span class="s2">&#34;WebSearcher rate limited (429)&#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">      <span class="k">return</span> <span class="o">[]</span>
</span></span><span class="line"><span class="cl">    <span class="k">end</span>
</span></span><span class="line"><span class="cl">  <span class="k">rescue</span> <span class="no">Net</span><span class="o">::</span><span class="no">OpenTimeout</span><span class="p">,</span> <span class="no">Net</span><span class="o">::</span><span class="no">ReadTimeout</span> <span class="o">=&gt;</span> <span class="n">e</span>
</span></span><span class="line"><span class="cl">    <span class="n">trip_circuit!</span>
</span></span><span class="line"><span class="cl">    <span class="o">[]</span>
</span></span><span class="line"><span class="cl">  <span class="k">end</span>
</span></span><span class="line"><span class="cl"><span class="k">end</span></span></span></code></pre></div></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>Se a API retorna 429 ou timeout, para de tentar por 120 segundos. Sem retry, sem backoff, sem fila. Por quê? Porque eu sei que o cron roda todo dia às 8h e que nos domingos de geração de newsletter o volume de queries triplica. Uma manada de retries atrasando tudo é pior que resultados vazios numa seção.</p>
<p>A IA implementa um circuit breaker quando você pede. Mas ela não vai pedir pra implementar um circuit breaker. Ela não tem o contexto operacional. Isso é conhecimento que vem de rodar sistemas em produção por décadas.</p>
<blockquote>
  <p>O agente escreve o código. Eu decido qual código escrever. E essa decisão exige experiência que nenhum prompt substitui.</p>

</blockquote>
<h2>As Lições<span class="hx:absolute hx:-mt-20" id="as-lições"></span>
    <a href="#as-li%c3%a7%c3%b5es" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>1. Software em produção diverge da spec em horas, não em meses.</strong> Os primeiros bugs do M.Akita Chronicles surgiram na primeira newsletter real. Os MIME types do FrankMega quebraram nos primeiros uploads. Quem acha que deploya e acabou tá vivendo num mundo que não existe.</p>
<p><strong>2. Pós-produção não é &ldquo;manutenção&rdquo;.</strong> 56 commits em 10 dias no M.Akita Chronicles não são patches. São features novas (Steam Gaming, preview, moods), refactoring de arquitetura (centralização de config do LLM), hardening de segurança (rate limiting). Isso é desenvolvimento. O software não parou de evoluir só porque eu disse <em>&ldquo;done&rdquo;</em> num blog post.</p>
<p><strong>3. TDD protege a evolução.</strong> 99 novos testes em 10 dias. Os 1.804 testes do FrankMD permitiram mergear 4 PRs de contribuidores externos sem medo. Sem testes, cada merge é roleta russa.</p>
<p><strong>4. Small releases mantêm a sanidade.</strong> 7 releases do Frank Sherlock em 7 dias. CI verde, binários compilados, release notes. Deu problema? Reverte uma versão. Compara com &ldquo;6 meses + big bang release&rdquo; e me conta qual funciona melhor.</p>
<p><strong>5. Comunidade aparece pra projetos reais.</strong> Ninguém manda PR pra protótipo sem testes que <em>&ldquo;funciona na minha máquina&rdquo;</em>. O FrankMD recebeu 3 contribuidores porque tem CI verde, documentação, e releases versionados.</p>
<p><strong>6. A experiência do desenvolvedor é o gargalo, não a velocidade da IA.</strong> 692 commits em um mês. Mas cada commit que importa exigiu décadas de experiência pra saber que era necessário. A IA digita rápido. Eu sei o que digitar.</p>
<p><strong>7. One-shot é pra demo. Iteração é pra produção.</strong> Se o objetivo é um vídeo de 10 minutos mostrando um <em>&ldquo;SaaS pronto&rdquo;</em>, one-shot serve. Se o objetivo é software que sobrevive ao contato com usuários reais, só iteração funciona. E iteração sustentável exige disciplina: TDD, CI, small releases, refactoring contínuo. Sem atalho.</p>
<h2>Pro Sênior que Ainda Tá de Braços Cruzados<span class="hx:absolute hx:-mt-20" id="pro-sênior-que-ainda-tá-de-braços-cruzados"></span>
    <a href="#pro-s%c3%aanior-que-ainda-t%c3%a1-de-bra%c3%a7os-cruzados" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Até aqui eu bati nos amadores que acham que podem mandar um prompt e a IA cospe um sistema pronto. Justo. Mas tem um outro grupo que me preocupa tanto quanto: o desenvolvedor sênior que viu a IA errar três vezes, declarou que <em>&ldquo;isso não serve pra nada&rdquo;</em>, e voltou a fazer tudo na mão.</p>
<p>Eu entendo o raciocínio. A IA alucina, gera código com bugs sutis, sugere soluções over-engineered. Tudo verdade, e eu documentei cada um desses problemas nos posts anteriores. Mas me diz uma coisa: você nunca fez exatamente a mesma coisa? Você nunca passou 2 horas lendo documentação pra descobrir que era um typo na config? A diferença é que quando a IA erra, você pega nos testes e corrige em minutos. Quando você erra sozinho, leva o mesmo tempo pra cometer o erro e mais tempo ainda pra achar, porque você confia no próprio código.</p>
<p>Vamos olhar pros números concretos do que eu entreguei em fevereiro, uma pessoa e um agente de IA:</p>
<table>
  <thead>
      <tr>
          <th>Projeto</th>
          <th>Tempo</th>
          <th>Resultado</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>M.Akita Chronicles</td>
          <td>8 dias</td>
          <td>4 apps (Rails + Python + Hugo), 335 commits, 1.422 testes, em produção há 3 semanas</td>
      </tr>
      <tr>
          <td>Frank Sherlock</td>
          <td>7 dias</td>
          <td>App desktop Tauri (Rust + React), 103 commits, 621 testes, 7 releases, binários pra 3 OS</td>
      </tr>
      <tr>
          <td>FrankMD</td>
          <td>~4 dias</td>
          <td>Editor Markdown Rails 8, 226 commits, 1.804 testes, 3 contribuidores externos</td>
      </tr>
      <tr>
          <td>FrankMega</td>
          <td>1 dia</td>
          <td>File sharing Rails 8, 28 commits, 210 testes, deploy Docker + Cloudflare</td>
      </tr>
  </tbody>
</table>
<p>Agora faz a conta de cabeça. Quanto tempo você levaria pra fazer o Frank Sherlock sozinho? Um app Tauri do zero, com pipeline de classificação por LLM em Rust, OCR via Python, full-text search com FTS5, detecção de duplicatas por perceptual hash, face detection com ONNX nativo, suporte a vídeo com extração de keyframe, CI pra 3 plataformas com code signing e notarização no macOS, auto-update, e publicação automática no AUR. Com 621 testes. Em Rust, que não perdoa.</p>
<p>Sendo honesto: sem IA, um dev sênior bom levaria no mínimo 3-4 semanas nisso, provavelmente mais. Eu fiz em 7 dias, sozinho, e cada release tá publicado com binários que qualquer pessoa pode baixar e instalar.</p>
<p>O M.Akita Chronicles eu já estimei no <a href="/2026/02/20/do-zero-a-pos-producao-em-1-semana-como-usar-ia-em-projetos-de-verdade-bastidores-do-the-m-akita-chronicles/">post anterior</a>: ~200 user stories. Em Scrum com equipe sênior de 2-3 devs, sem impedimentos, seriam 10-15 semanas. Fiz em 8 dias. Hoje, 3 semanas depois, o sistema continua rodando, evoluindo, com 99 testes a mais do que quando <em>&ldquo;acabou&rdquo;</em>.</p>
<p>O FrankMega é mais modesto, mas file sharing seguro com Rails 8, I18n em 2 idiomas, 22 issues de segurança corrigidos, deploy via Docker, 210 testes. Fiz em 1 dia. Um sênior bom, sem IA, faria em 1-2 semanas na melhor das hipóteses.</p>
<p>E não estou falando de protótipos descartáveis. Gente de fora manda PR pro FrankMD. Assinantes reais recebem a newsletter do M.Akita Chronicles toda segunda-feira. Qualquer pessoa pode baixar o Frank Sherlock no GitHub Releases ou no AUR. CI verde, Brakeman zerado, testes reais, deploys automatizados. Isso é software de produção, não demo de conferência.</p>
<p><em>&ldquo;Ah, mas eu faço código melhor sem IA.&rdquo;</em> Talvez. Mas em quanto tempo? O que eu mostrei aqui não é que a IA faz código perfeito. Longe disso. É que com TDD, CI, pair programming com agente, e refactoring contínuo, o resultado final é código de produção com qualidade. 4.057 testes estão lá pra provar. Brakeman zerado. 125 commits de pós-produção mostram que o código aguenta evolução sem virar uma bola de lama.</p>
<p>E usar IA de vez em quando pra gerar um trecho de código aqui e ali, tipo autocomplete glorificado, também não é a resposta. Você tá deixando 90% do ganho na mesa. O que eu fiz em fevereiro foi pair programming full-time com um agente. Do primeiro commit ao deploy em produção. Com a mesma disciplina que eu usaria com um par humano. Resultado: 4 projetos em produção em 1 mês, com qualidade que eu coloco meu nome. Porque eu coloquei.</p>
<p>Se você é sênior e ainda tá esperando a IA <em>&ldquo;melhorar&rdquo;</em> pra começar a usar de verdade, eu digo o seguinte: ela já tá boa o suficiente. Os 692 commits estão aí pra provar. O gargalo agora é você aprender a trabalhar com ela.</p>
<h2>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Em fevereiro de 2026, eu construí 4 projetos do zero à produção com IA. Mas a construção é a parte fácil. O que separa software de verdade de demo são os 125 commits que vieram depois, quando os bugs que ninguém previu apareceram, quando contribuidores externos mandaram PRs que precisaram de hardening, quando features novas surgiram do uso real e não de uma planilha de requisitos.</p>
<p>A IA me tornou absurdamente mais produtivo. Sem ela, o Frank Sherlock não teria face detection em 7 dias. Sem ela, o M.Akita Chronicles não estaria na 3ª semana de operação com 1.422 testes. A velocidade é real.</p>
<p>Mas nenhuma das decisões que importam veio da IA. Trocar de modelo, revertar o TTS no mesmo dia, olhar pro PR do contribuidor e ver que ia quebrar, pedir circuit breaker ao invés de retry. Tudo isso fui eu. A IA executou. As decisões foram minhas.</p>
<p>A IA é o acelerador. As técnicas de Extreme Programming (TDD, small releases, pair programming, refactoring contínuo) são o freio e a direção. Sem disciplina, IA produz código rápido que acumula dívida técnica mais rápido ainda. Com disciplina, IA produz software que evolui de verdade, semana após semana.</p>
<p>692 commits. 4.057 testes. 4 projetos em produção. E amanhã, segunda-feira, às 7h, os assinantes do The M.Akita Chronicles recebem a 3ª newsletter. Gerada, revisada, e enviada por um sistema que nunca vai estar <em>&ldquo;pronto&rdquo;</em>. Porque software pronto é software morto.</p>
<blockquote>
  <p>&ldquo;Software pronto é software morto. Software vivo itera.&rdquo;</p>

</blockquote>
]]></content:encoded><category>frank</category><category>llms</category><category>engenharia-de-software</category><category>off-topic</category></item><item><title>RANT: IA acabou com os programadores?</title><link>https://akitaonrails.github.io/2026/02/08/rant-ia-acabou-com-programadores/</link><guid isPermaLink="true">https://akitaonrails.github.io/2026/02/08/rant-ia-acabou-com-programadores/</guid><pubDate>Sun, 08 Feb 2026 14:29:18 +0000</pubDate><description>&lt;p&gt;Quem só acompanhou cortes e comentários, sem assistir aos meus &lt;a href="https://www.youtube.com/watch?v=UDrDg6uUOVs&amp;amp;list=PLdsnXVqbHDUeowsAO0sChHDY4D65T5s1U&amp;amp;pp=sAgC"target="_blank" rel="noopener"&gt;vídeos sobre IA&lt;/a&gt; no meu canal, ou pelo menos ao &lt;a href="https://www.youtube.com/watch?v=sf4Gxf0LiKo"target="_blank" rel="noopener"&gt;podcast no Flow&lt;/a&gt;, está achando que eu disse o seguinte:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;IAs NUNCA vão substituir NENHUM programador&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;E isso está errado. Assista ao vídeo com a explicação (ou procure a transcrição). Mas em resumo, o que eu disse foi:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;IAs nunca vão substituir programadores COMO EU - EU nunca vou ser substituído&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Outra coisa que afirmei e continuo a afirmar é:&lt;/p&gt;</description><content:encoded><![CDATA[<p>Quem só acompanhou cortes e comentários, sem assistir aos meus <a href="https://www.youtube.com/watch?v=UDrDg6uUOVs&amp;list=PLdsnXVqbHDUeowsAO0sChHDY4D65T5s1U&amp;pp=sAgC"target="_blank" rel="noopener">vídeos sobre IA</a> no meu canal, ou pelo menos ao <a href="https://www.youtube.com/watch?v=sf4Gxf0LiKo"target="_blank" rel="noopener">podcast no Flow</a>, está achando que eu disse o seguinte:</p>
<blockquote>
  <p>&ldquo;IAs NUNCA vão substituir NENHUM programador&rdquo;</p>

</blockquote>
<p>E isso está errado. Assista ao vídeo com a explicação (ou procure a transcrição). Mas em resumo, o que eu disse foi:</p>
<blockquote>
  <p>&ldquo;IAs nunca vão substituir programadores COMO EU - EU nunca vou ser substituído&rdquo;</p>

</blockquote>
<p>Outra coisa que afirmei e continuo a afirmar é:</p>
<blockquote>
  <p>&ldquo;AGIs não são possíveis na arquitetura atual: não vai acontecer. Precisa vir uma nova descoberta — que, obviamente, ainda não sabemos qual — pra ultrapassar a barreira atual, que é intransponível.</p>

</blockquote>
<p>E foi disso que eu derivei esta frase:</p>
<blockquote>
  <p><strong>&ldquo;Sua empolgação com IA é inversamente proporcional ao seu conhecimento sobre IA&rdquo;</strong> — e isso continua valendo igual.</p>

</blockquote>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/frankmd/2026/02/akita%20camiseta.jpg" alt="akita camiseta"  loading="lazy" /></p>
<h2>A Bolha de Programação já estourou<span class="hx:absolute hx:-mt-20" id="a-bolha-de-programação-já-estourou"></span>
    <a href="#a-bolha-de-programa%c3%a7%c3%a3o-j%c3%a1-estourou" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><a href="https://www.youtube.com/@Akitando"target="_blank" rel="noopener">Meu canal</a> começou em 2018 e durou até o início de 2024, com um único propósito:</p>
<blockquote>
  <p>Ajudar a preparar programadores de verdade para sobreviverem ao estouro iminente da bolha (que se iniciou por volta de 2014).</p>

</blockquote>
<p>Tenho uma playlist inteira intitulada <a href="https://www.youtube.com/watch?v=wpPv1dJWjDs&amp;list=PLdsnXVqbHDUehzKjiRruy--gncHz9Injy&amp;pp=sAgC"target="_blank" rel="noopener"><strong>EU AVISEI</strong></a>.</p>
<p>Em resumo, nos anos recentes, &ldquo;programação&rdquo; se tornou a &ldquo;profissão do futuro&rdquo;, e <a href="https://www.youtube.com/watch?v=V7oUDL7E1g4"target="_blank" rel="noopener">parecia fácil</a>. Ficou óbvio quando o que mais se via era propaganda de todo tipo de curso e bootcamp, com promessas como: <em>&ldquo;vire programador em 2 meses, ganhe salário de Google e nem precisa trabalhar muito.&rdquo;</em></p>
<p>Eu chamei esse tipo de programador de &ldquo;chef de Miojo&rdquo;. Só porque você sabe esquentar água e fazer miojo, isso não te torna um chef. Deveria ser óbvio, mas é como a programação era vista. Nenhum desses cursos formou nenhum &ldquo;programador&rdquo;, muito menos &ldquo;engenheiro de software&rdquo;.</p>
<p>Mas &ldquo;engenheiro de software&rdquo; não é uma engenharia de verdade. Não existe um CREA, CRM, OAB, nada equivalente que certifique alguém como &ldquo;engenheiro de software&rdquo;. Isso é um título inventado que qualquer pessoa pode colocar no LinkedIn.</p>
<p>O Cisne Negro da Pandemia foi algo que eu não previ, mas isso só ajudou a inflar ainda mais a fase final da bolha, que estourou no fim de 2022 quando se iniciaram layoffs em massa em todas as big techs. E isso foi ANTES do advento das LLMs pra programação. Por coincidência, ChatGPT surgiu na mesma época em 2022, mas essa não foi a causa; foi só o último prego no caixão. O estouro daquela bolha e os layoffs viriam de qualquer forma.</p>
<p>Por isso, <a href="https://www.youtube.com/@Akitando"target="_blank" rel="noopener">meu canal</a> deve ser o único que, ainda hoje, oferece os conteúdos de que alguém que realmente pensa em ser programador precisa. Imagina os outros canais que só propagandearam que virar programador era fácil, envelheceram BEM mal.</p>
<p>Portanto, sim, concordo com o CEO da Anthropic: esses &ldquo;engenheiros de software&rdquo; se tornarão completamente obsoletos. Não existe virar &ldquo;engenheiro&rdquo; em um bootcamp de 1 mês. Isso era <strong>bullshit</strong> e tinha que ser muito idiota pra acreditar. Notem que todos esses vendedores de óleo de cobra SUMIRAM. Cadê eles?</p>
<p>Não sabe por onde começar no meu canal? Duas sugestões:</p>
<ul>
<li>Playlist <a href="https://www.youtube.com/watch?v=D3L8IOncLkg&amp;list=PLdsnXVqbHDUd6wEL932R7dW9Zazt2oNWF&amp;pp=sAgC"target="_blank" rel="noopener">&ldquo;Que cursos devo fazer?&rdquo;</a></li>
<li>Playlist <a href="https://www.youtube.com/watch?v=A2-yU3YjB1U&amp;list=PLdsnXVqbHDUcAWAN3cXHWnM9JEw2gjIN9&amp;pp=sAgC"target="_blank" rel="noopener">&ldquo;Carreira&rdquo;</a></li>
</ul>
<h2>O &ldquo;teto&rdquo; das IAs<span class="hx:absolute hx:-mt-20" id="o-teto-das-ias"></span>
    <a href="#o-teto-das-ias" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Eu terminei de gravar vídeos pro meu canal exatamente quando começou essa onda de IAs. Considerei que tudo o que queria dizer já foi dito e isso continua disponível no canal. Meu objetivo foi atingido.</p>
<p>Durante 2024 e 2025 eu participei de podcasts como <a href="https://www.youtube.com/watch?v=25DG7ivZq_o&amp;list=PLdsnXVqbHDUcjqXfKo42h6Cm-HCcUNOnV&amp;pp=sAgC"target="_blank" rel="noopener">Flow</a> e <a href="https://www.youtube.com/watch?v=RKDCQUqXGg4&amp;list=PLdsnXVqbHDUdrzeKMb3QOwKW6rMvVHPeq&amp;pp=sAgC"target="_blank" rel="noopener">Inteligência Ltda</a> falando muito sobre IAs e coisas como <a href="https://www.youtube.com/watch?v=_Hl9wiLkns4&amp;pp=ygUdZmFiaW8gYWtpdGEgaW50ZWxpZ2VuY2lhIGx0ZHM%3D"target="_blank" rel="noopener">computação quântica</a> (e como também é só um hype que não vai em nada prático pro nosso dia a dia).</p>
<p>O principal: desde o paper sobre transformers <a href="https://arxiv.org/abs/1706.03762"target="_blank" rel="noopener">Attention is all you need</a>, ainda não surgiu nenhum outro &ldquo;breakthrough&rdquo; que ultrapasse esse marco. Tudo o que temos hoje, de OpenAI à Anthropic, e de open sources como DeepSeek, Qwen3, GLM, MiniMax etc., se baseia exatamente na mesma fundação, na mesma &ldquo;arquitetura&rdquo;.</p>
<p>E eu teorizei - corretamente - que a evolução dessa arquitetura obedeceria a uma <strong>Curva em S</strong>:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/frankmd/2026/02/Screenshot-2023-10-29-at-1.50.57-PM.jpg" alt="curva S"  loading="lazy" /></p>
<p>GPT-1 para o 2 foi um salto quântico. GPT-2 para o 3 foi um salto gigante. GPT-3 para o 4 foi excelente, mas, notavelmente, não na mesma proporção. GPT-4 para o 5, a maioria das pessoas comuns nem notou tanta diferença.</p>
<p>Claro, ninguém ficou parado; todo cientista da computação, matemático, engenheiro foi fazendo o que sempre fazemos: <strong>otimizando</strong>. Surgiram melhores formas de treinar, a ideia de &ldquo;reasoning&rdquo;, a ideia de agentes trabalhando em conjunto (um dando feedback pro outro), novas formas de alinhamento e de instrução. Mas nada disso altera a arquitetura da fundação.</p>
<p>O problema: pra treinar cada nova geração de LLMs, fica consideravelmente mais caro (em hardware e, principalmente, no consumo de energia) pra gerar uma versão que não é muito melhor que a anterior. Esse é o teto da curva. E eu reafirmo: enquanto não surgir uma NOVA ARQUITETURA, vamos só chegar cada vez mais perto desse teto, sem ultrapassá-la, mas gastando níveis absurdos de mais memória e mais energia.</p>
<p>Por isso, está <a href="https://research.aimultiple.com/ai-energy-consumption/"target="_blank" rel="noopener">faltando energia</a>: com o aumento da demanda de uso (inferência), eles têm que se dividir entre gastar energia pra treinar novas versões e atender à demanda. Não dá pra fazer os dois.</p>
<p>Pior, por isso, a <a href="https://www.techradar.com/computing/memory/more-ram-misery-the-bad-news-keeps-coming-as-analyst-firm-warns-of-an-unprecedented-and-record-breaking-surge-with-price-hikes"target="_blank" rel="noopener">memória RAM explodiu em preço</a> e seu PC também vai ficar muito mais caro. Não tem mais recursos pra treinar modelos tão grandes que, proporcionalmente, oferecem cada vez menos resultado (definição de &ldquo;diminishing returns&rdquo;). É o destino de toda inovação: bater no teto da curva em S até surgir outra que a substitua.</p>
<p>O foco agora está em usar melhor as versões que já temos. No caso de programação, surgem GPT Codex ou Claude Code, que são estratégias de uso de agentes, MCPs, skills e outras ferramentas e formas de orquestração pra extrair o máximo do que já temos hoje.</p>
<h2>Estratégias das LLMs<span class="hx:absolute hx:-mt-20" id="estratégias-das-llms"></span>
    <a href="#estrat%c3%a9gias-das-llms" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Todo mundo já sabe que é impossível só fazer um prompt e que qualquer LLM saia com um sistema perfeito no final. Vai sair muito ruim; continua assim e vai continuar assim nesta arquitetura.</p>
<p>Toda LLM tem um limite de contexto (memória). É impossível carregar todo o código-fonte de um ERP gigante como o da Totus ou o da SAP. Não cabe, e mesmo se coubesse, não seria possível dar &ldquo;atenção&rdquo; a tudo. Existem limites: quanto mais memória você coloca, pior fica a inferência; o resultado fica pior. Como tudo em software, é um &ldquo;trade-off&rdquo;.</p>
<p>Em vez disso, o melhor é criar scripts que percorrem seu código e extraem pedaços específicos a cada execução. Se estiver mexendo no carrinho de compras, não precisa carregar código que lida com a tela inicial da loja, por exemplo. É parecido com o que um programador humano faria: <strong>dividir pra conquistar</strong> (como diria Napoleão).</p>
<p>Toda LLM específica pra código, como Codex ou Opus, foi treinada pra fazer <strong>&ldquo;tool calling&rdquo;</strong>, que é enviar um pedido ao &ldquo;chat&rdquo; pra que ele busque informações (como código) e carregue trechos no contexto. Pra isso, ele manda executar ferramentas como &ldquo;rg&rdquo; <a href="https://github.com/BurntSushi/ripgrep"target="_blank" rel="noopener">ripgrep</a> (no caso do Codex) ou &ldquo;grep&rdquo; (no caso do OpenCode).</p>
<p>Se, por acaso, o modelo não foi treinado com informações que só saíram recentemente na Web, ele pode fazer <strong>&ldquo;agentic fetch&rdquo;</strong>, que é executar comandos como &ldquo;curl&rdquo; pra, literalmente, ir no Google, no Stack Overflow, etc., e puxar as páginas web pra usar como parte do contexto (o trade-off é que isso vai usar o espaço limitado de contexto).</p>
<p>Quando o contexto está prestes a acabar (a faixa de 200 mil tokens, no caso de um Claude, ou 1 milhão, no caso de um Gemini), o &ldquo;chat&rdquo; que orquestra (Claude Code, OpenCode, etc.) manda gerar um resumo do contexto atual, pra &ldquo;compactar&rdquo; o entendimento e reiniciar com um novo contexto com base nesse resumo.</p>
<p>Pra garantir que o código gerado &ldquo;funcione&rdquo;, o tool calling pede pra rodar ferramentas locais, como linters, compiladores ou LSPs (como uma IDE, como o VSCode, faria). Isso gera feedback (e gasta mais contexto). Se errar, o &ldquo;chat&rdquo; pode pedir automaticamente pra refazer, levando essa nova informação em consideração.</p>
<p>Além disso, pra ir &ldquo;mais rápido&rdquo;, o &ldquo;chat&rdquo; pode mandar executar vários agentes em paralelo. Cada agente é um novo contexto - e nada disso é de graça, lembrem-se: tokens por segundo. Então, poderia mandar um agente vasculhar todo o código relevante ao banco de dados e, no final, gerar um resumo. Outro agente vasculha todo o código de pagamentos e, ao final, gera um resumo. Outro agente vasculha o código relevante ao front-end do carrinho e gera um resumo. Então o &ldquo;chat&rdquo; pega esses resumos e volta ao contexto anterior pra executar alguma tarefa.</p>
<p>O que chamo de &ldquo;chat&rdquo; é só pra ficar mais fácil de visualizar. Pense na interface simples de chat que todo mundo usa no dia a dia, mas com recursos adicionais. Isso é o que faz um Codex ou um Claude Code. Não tem segredo nenhum, toda ferramenta dessas, assim como as open source como Opencode ou Crush, fazem a mesma coisa: configuram um <strong>&ldquo;Harness&rdquo;</strong>:</p>
<ul>
<li>Iniciam com um prompt de sistema detalhando exatamente como quer que a LLM responda. Este <a href="https://github.com/Piebald-AI/claude-code-system-prompts"target="_blank" rel="noopener">GitHub</a> tem vários exemplos desses prompts que a ferramenta envia sem você saber.</li>
<li>As LLMs são treinadas com tool calling e a ferramenta sabe como responder a essas chamadas (executando bash, curl, ripgrep, sed, diff, git, etc)</li>
<li>A ferramenta é capaz de executar múltiplos agentes em paralelo (pense múltiplos &ldquo;chats&rdquo; em paralelo)</li>
<li>A ferramenta pede pra LLM gerar um &ldquo;plano&rdquo; primeiro e enumerar tarefas. Daí ela pode orquestrar a execução sequencial dessas tarefas, cada uma em um agente diferente, por exemplo.</li>
<li>A ferramenta é capaz de gerenciar os limites de contexto e saber quando mandar resumir, e como reiniciar um novo contexto e continuar a execução das tarefas restantes</li>
<li>A ferramenta é responsável por criar um contêiner e evitar que comandos malfeitos afetem seu sistema (isso é opcional; nem todos fazem ou não ligam por padrão. Cuidado!)</li>
</ul>
<p>Eu documentei sobre isso em vários posts neste blog:</p>
<ul>
<li><a href="/2025/04/25/hello-world-de-llm-criando-seu-proprio-chat-de-i-a-que-roda-local/">Hello World de LLM: criando seu próprio chat de I.A. que roda local</a></li>
<li><a href="/2025/05/01/rant-llms-vao-evoluir-pra-sempre-desmistificando-llms-na-programacao/">Rant - LLMs vão evoluir pra sempre? Desmistificando LLMs na programação</a></li>
<li><a href="/2025/05/01/quando-llms-nao-funcionam-pra-programar-um-caso-de-uso-mais-real/">Quando LLMs não Funcionam pra Programar? Um caso de uso mais real.</a></li>
<li><a href="/2026/01/10/ai-agents-garantindo-a-protecao-do-seu-sistema/">AI Agents: Garantindo a Proteção do seu Sistema</a></li>
<li><a href="/2026/01/11/ai-agents-comparando-as-principais-llm-no-desafio-de-zig/">AI Agents: Comparando as principais LLM de 2026 no Desafio de Zig</a></li>
<li><a href="/2026/01/21/ai-agents-instalando-lsps-pro-crush/">AI Agents: Instalando LSPs pro Crush</a></li>
<li><a href="/2026/01/24/ai-agents-qual-e-o-melhor-opencode-crush-claude-code-gpt-codex-copilot-cursor-windsurf-antigravity/">AI Agents: Qual é o melhor? OpenCode, Crush, Claude Code, GPT Codex, Copilot, Cursor, Windsurf, Antigravity?</a></li>
<li><a href="/2026/01/28/vibe-code-eu-fiz-um-appzinho-100-com-glm-4-7-tv-clipboard/">Vibe Code: Eu fiz um appzinho 100% com GLM 4.7 (TV Clipboard)</a></li>
<li><a href="/2026/01/29/vibe-code-qual-llm-%C3%A9-a-melhor-vamos-falar-a-real/">Vibe Code: Qual LLM é a MELHOR?? Vamos falar a REAL</a></li>
<li><a href="/2026/02/01/vibe-code-fiz-um-editor-de-markdown-do-zero-com-claude-code-frankmd-part-1/">Vibe Code: Fiz um Editor de Markdown do zero com Claude Code (FrankMD) PARTE 1</a></li>
<li><a href="/2026/02/01/vibe-code-fiz-um-editor-de-markdown-do-zero-com-claude-code-frankmd-parte-2/">Vibe Code: Fiz um Editor de Markdown do zero com Claude Code (FrankMD) PARTE 2</a></li>
</ul>
<h2>O Fim do Stack Overflow<span class="hx:absolute hx:-mt-20" id="o-fim-do-stack-overflow"></span>
    <a href="#o-fim-do-stack-overflow" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Na época do GPT-3 e do GPT-4, eu já fazia códigos usando LLMs e funcionava bem. Mas eles ainda tinham muitas chatices. As alucinações eram muito frequentes. Tinha muito &ldquo;agentic loop&rdquo; (quando a LLM &ldquo;acha&rdquo; que já consertou, mas não consertou e fica em loop, sem saber o que fazer). A atenção ao contexto era facilmente perdida (melhorou muito com a Flash attention). Enfim, vários problemas mais &ldquo;grosseiros&rdquo; já foram ajustados a ponto de não aparecerem mais com tanta frequência. Não é &ldquo;resolvido&rdquo;; ainda acontece, mas cada vez está melhorando.</p>
<p>Quanto mais se aprimoraram os dados de treinamento e o alinhamento, mais esses problemas desapareceram. O problema é que já chegamos ao ponto em que <strong>acabaram</strong> os dados de treinamento no mundo. Tudo o que poderia ser usado já foi. Não é só falta de energia e de hardware. Acabou a informação pra treinar.</p>
<p>A solução foi massagear os dados existentes pra extrair o máximo possível e adicionar muitos dados sintéticos (gerados pela própria IA). De novo, isso já bate num teto de &ldquo;diminishing returns&rdquo;.</p>
<p><a href="https://blog.pragmaticengineer.com/stack-overflow-is-almost-dead/"target="_blank" rel="noopener"><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/frankmd/2026/02/stackoverflow.png" alt="stackoverflow dead"  loading="lazy" /></a></p>
<p>Além disso, vários sites usados pra extrair dados pra treinar as LLMs estão caindo em desuso. O exemplo mais notável é o venerável Stack Overflow. Vejam como caiu o tráfego.</p>
<p>Alguns desavisados poderiam só pensar: <em>&ldquo;ah, tudo bem, o povo passou a fazer pergunta idiota pras LLMs, acabou aquele monte de gente postando pergunta básica nos fóruns.&rdquo;</em></p>
<p>É verdade, parece um avanço. Mas até &ldquo;pergunta idiota&rdquo; é um dado relevante de treinamento. Se a LLM &ldquo;vê&rdquo; que certos assuntos têm maior probabilidade, quando ela receber a mesma pergunta, &ldquo;tende&rdquo; a dar a resposta mais popular. Se esse dado desaparece, também desaparece a relevância de diversos novos assuntos. Agora, cada LLM vai depender de usar as perguntas feitas ao chat como novo dado de treinamento, só que a OpenAI só vai ter perguntas feitas pra ela, e ela não vai saber quais são as perguntas mais populares feitas no Claude, o que diminui cada vez mais as fontes de informação relevantes.</p>
<p>O que toda plataforma deve estar fazendo agora é coletar todas as perguntas que você faz a elas, todas as respostas que a LLM gerou, todo o feedback que você ou suas ferramentas dão sobre se foi sucesso ou erro, e vai acumulando isso pra usar pra treinar a próxima versão, o GPT-6 ou o Sonnet-5. Vamos ver o quanto dá pra evoluir só com isso — lembrando que o &ldquo;volume&rdquo; de informação não se iguala à &ldquo;qualidade&rdquo; pro treinamento. Esse ainda é o calcanhar de Aquiles.</p>
<blockquote>
  <p>O ponto é: pelo menos temporariamente, a maior parte dos dados relevantes na Web acabou, e estamos produzindo menos do que antes.</p>

</blockquote>
<h2>Restrição == Inovação<span class="hx:absolute hx:-mt-20" id="restrição--inovação"></span>
    <a href="#restri%c3%a7%c3%a3o--inova%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Sim, eu também acredito que uma categoria inteira, que se autointitulava &ldquo;engenheiro de software&rdquo;, vai deixar de existir por causa das IAs.</p>
<p>Não vai mais existir aquela &ldquo;especialização&rdquo; esquisita de &ldquo;front-end que não mexe em nada de back-end&rdquo; ou de &ldquo;back-end que não mexe em nada de infra&rdquo;. Front-end, em particular, é o mais fácil de substituir, pois era um grande volume de código de baixo valor agregado, com muita duplicação. Não era difícil automatizar, mas ninguém queria: era mais &ldquo;legal&rdquo; ficar inventando novos frameworks toda semana que fazem a mesma coisa, com formas levemente diferentes. Finalmente acabou essa palhaçada.</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/V0D3PuTLOZ8"
    title="Restrição == Inovação - Fabio Akita"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Palestrei anos sobre Restrição == Inovação e como inovação não acontece quando se tem dinheiro sobrando, que foi o que aconteceu na última Bolha de Programação: pra que automatizar as coisas, ser eficiente, se tem dinheiro sobrando, é só contratar mais e mais gente pra fazer coisas mais e mais simples e braçais?</p>
<p>Na Bolha da Internet, havia tanto dinheiro sobrando que existia a profissão de &ldquo;catalogador de sites&rdquo;: gente que ficava o dia inteiro digitando manualmente todos os novos sites que surgiam na recém-lançada Web. Levou anos até surgirem um Altavista e, depois, um Google, que descobriram como automatizar isso. Antigamente, não existiam &ldquo;admins&rdquo; web pra publicar novos produtos num e-commerce: alguém editava o HTML da página principal do Submarino.com todos os dias, com novas ofertas. Tudo trabalho de alto volume e baixo valor agregado. Automatizamos tudo isso e, agora, com LLMs, só fomos um passo à frente.</p>
<p>Mesmo antes de LLMs, não fazia sentido precisar de gente exclusivamente pra ficar fazendo HTML/CSS descartáveis o dia todo. As ferramentas um pouco mais automáticas, como um SquareSpace.com da vida, não eram tão boas.</p>
<p>O problema é o seguinte: algo simples, como um &ldquo;Web Admin&rdquo; pra editar conteúdo sem precisar saber HTML, nos anos 90, não existia. Alguém precisou criar as primeiras versões desse tipo de software pra entendermos o que funciona e o que não funciona. Quem era dos anos 90 vai se lembrar de softwares comerciais caros como o famoso <a href="https://en.wikipedia.org/wiki/Vignette_Corporation"target="_blank" rel="noopener">Vignette Story Server</a>. Hoje em dia, qualquer Wordpress open source faz a mesma coisa melhor.</p>
<p>Ninguém se lembra de software e de empresas que não existem mais. Especialmente jovens, acham que o mundo já apareceu com a Web pronta, com redes sociais prontas e plataformas de e-commerce prontas. A sensação deve ser que, no Egito Antigo, o povo já comprava na Amazon, pedia delivery no iFood e todo mundo se comunicava pelo Whatsapp. Eu fiz um video chamado <a href="https://www.youtube.com/watch?v=Qb5b8ZE9tIY"target="_blank" rel="noopener">A Dimensão do Tempo</a>, <a href="https://www.youtube.com/watch?v=0KNGiOp7eoE"target="_blank" rel="noopener">Minha Máquina do Tempo</a> e <a href="https://www.youtube.com/watch?v=ksZjJQiaK2Y"target="_blank" rel="noopener">Meus Primeiros Cinco Anos</a> pra tentar dar um pouco de perspectiva sobre isso.</p>
<blockquote>
  <p>O ponto é: tudo o que as LLMs sabem fazer já existe ou já existiu.</p>

</blockquote>
<p>Eles não são capazes de inventar seja lá o que for, seja a &ldquo;Vignette dos anos 2030&rdquo; ou o &ldquo;Instagram dos anos 2030&rdquo;. E não digo isso no sentido do &ldquo;próximo gerenciador de conteúdo&rdquo; ou &ldquo;próxima rede social&rdquo;. Eu digo no sentido de que &ldquo;rede social&rdquo; era um termo que não existia nos anos 2000 e &ldquo;gerenciador de conteúdo&rdquo; não existia nos anos 80, por exemplo. O que é a nova categoria que vai aparecer nos anos 2030?</p>
<p>Não sei; se eu soubesse, obviamente estaria construindo pra lançar e ficar bilionário. Ninguém sabe, muito menos LLMs. Elas conseguem derivar muitas coisas do treinamento, mas o que não está nas probabilidades do modelo não vai &ldquo;espontaneamente&rdquo; aparecer&rdquo;. Não é assim que IAs funcionam.</p>
<p>Podemos ficar pra sempre só refazendo tudo o que já foi feito igual já existe hoje. Mas não muito mais do que isso. Mas o ponto das minhas palestras foi justamente que somente com muito dinheiro e muita força bruta, não nascem inovações.</p>
<h2>Programadores na Era das LLMs<span class="hx:absolute hx:-mt-20" id="programadores-na-era-das-llms"></span>
    <a href="#programadores-na-era-das-llms" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>A conclusão é muito simples: programadores como eu sempre vão existir. O que sempre deixa de existir são profissões que só têm volume, mas baixo valor agregado. Esse é o conceito.</p>
<p>Como disse nos meus videos, durante minha carreira eu já sobrevivi ao fim da bolha dos microcomputadores no começo ao meio dos anos 90, a bolha da internet do meio dos anos 90 até o começo dos 2000, a recessão de programação de 2001 a 2008, a bolha financeira imobiliária que estourou em 2008 mas deu origem à bolha da programação, principalmente dos anos 2014 até 2022, e agora a bolha de IAs.</p>
<p>Não se enganem: é sempre assim, e esse é nada mais do que um episódio.</p>
<p>Quem é o programador que sobrevive a todas essas bolhas? Este:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/oUPaJxk6TZ0"
    title="Guia DEFINITIVO de Aprendendo a Aprender | A maior BRONCA da sua vida [RATED R]"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>O teto das LLMs já está aqui e o que elas estão entregando agora não vai mudar muito: o processo vai ser o mesmo. Vai ficar um pouco mais rápido. Vai gerar um pouco menos de erros e pequenos ajustes assim. Mas o processo vai continuar igual até aparecer alguma nova arquitetura ou alguma nova descoberta que ainda não sabemos.</p>
<blockquote>
  <p>Nenhum código gerado por IA vai ser automaticamente perfeito pra ser colocado em produção sem nenhum tipo de revisão ou intervenção humana. - Qualquer um que ache o contrário ou que não testou nenhuma LLM na prática ou nunca trabalhou em projetos de verdade.</p>

</blockquote>
<p>Como disse no Flow, esta é a SEGUNDA Bolha de IAs. A primeira foi nos anos 60 por causa do inventor de redes neurais, Frank Rosenblatt. Assim como o Sam Altman ou o Dario Amodel, ele também fez MUITO hype sobre redes neurais e computadores que iriam ficar muito mais inteligentes do que seres humanos &ldquo;muito em breve&rdquo;, e todo jornal da época publicou sobre isso. As promessas morreram como promessas e isso gerou o &ldquo;Inverno das IAs&rdquo; nos anos 70, onde muito investimento foi feito, o resultado não foi proporcional, e pesquisas sobre IA estagnaram pelas décadas seguintes, andando a passos de tartaruga.</p>
<p>Isso só começou a mudar mesmo com o advento e a popularização da Web, o surgimento de redes sociais, o surgimento de Big Data e, agora, com volumes grandes de dados pra iniciar uma nova era de pesquisa em redes neurais, com muito mais material de treinamento. E agora com a existência de GPUs pra acelerar o processamento. Foi quando surgiu a AlexNet, de George Hinton, Yann LeCunn e Ilya Sutskever, o &ldquo;breakthrough&rdquo; das convolutional neural networks (CNNs) e da paralelização de processamento via GPUs.</p>
<p>Sem isso, não se evoluiria pra transformers, difusores e coisas como Nano Banana e Sora. Esse é um tipo de área em que LLMs não vão contribuir: pesquisa de ponta e novas descobertas. Nesse campo vão continuar sendo necessários cientistas da computação, matemáticos, físicos teóricos, etc. Se você tem vocação pra pesquisa, ainda vai ser uma área fértil por muitos anos. A régua só subiu, o que é bom.</p>
<p>Sobre o Claude que conseguiu fazer um compilador de C:</p>
<blockquote>
  <p>O compilador de C é o mais fácil de fazer; é literalmente matéria de faculdade, porque C é uma das linguagens mais &ldquo;simples&rdquo; (começou como macros de Assembly).</p>

</blockquote>
<p><a href="https://www.anthropic.com/engineering/building-c-compiler"target="_blank" rel="noopener"><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/frankmd/2026/02/screenshot-2026-02-08_12-58-46.png" alt="gcc claude"  loading="lazy" /></a></p>
<p>Como o próprio artigo da Anthropic — que ninguém leu, lógico — diz, eles usaram o GCC pra comparar.</p>
<p>Claro, GCC existe; é o compilador principal pra compilar o kernel do Linux. Se você copiar o GCC, vai chegar em outro GCC, não importa em que outra linguagem escrever — essa não é a parte difícil, porque toda linguagem consegue fazer tudo o que outra linguagem faz (todas são Turing Complete: pode ser mais lenta, pode ser mais insegura, pode dar mais trabalho, mas eu posso fazer um compilador de C em Visual Basic, se eu quiser, não é impressionante).</p>
<p>Nenhuma LLM substituiu o Linus Torvalds, nem Richard Stallman, nem nenhum dos grandes programadores cujos nomes você já ouviu falar. Eles conseguem copiar o que já foi feito e só. Sim, eles são &ldquo;stochastic parrots&rdquo; (papagaios estocásticos), independentemente do que um George Hinton tente propagandear a seu favor (todos têm vieses). Aliás, como eu já disse nos podcasts: foda-se George Hinton. Parem de cair na <strong>Falácia do Apelo à Autoridade</strong>.</p>
<h2>Recado às Empresas<span class="hx:absolute hx:-mt-20" id="recado-às-empresas"></span>
    <a href="#recado-%c3%a0s-empresas" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Isso deveria ser óbvio, mas vou deixar registrado só pra poder dizer &ldquo;EU AVISEI&rdquo; depois.</p>
<ul>
<li>Nenhuma LLM vai escrever código sozinha. Precisa de um sênior pra especificar.</li>
<li>Todo código gerado por LLMs precisa de revisão. Precisa de um sênior pra revisar.</li>
<li>Uma parte do código gerado precisa ser reescrita. Precisa de um sênior pra saber.</li>
<li>Outra parte do código vai ter bugs que a LLM vai deixar passar. Precisa de um sênior pra saber.</li>
<li>Sabendo quais são esses bugs, dá pra LLM consertar.</li>
</ul>
<p>Isso dito, algumas coisas que LLMs fazem muito bem:</p>
<ul>
<li>Análise exploratória de código legado</li>
<li>Refatorar partes de código legado</li>
<li>Adicionar testes unitários em partes de código legado</li>
<li>Sugerir melhorias em partes de código legado</li>
<li>Achar alguns buracos de segurança ou performance em código legado</li>
</ul>
<p>Note como eu digo &ldquo;partes&rdquo; ou &ldquo;alguns&rdquo;. Não há garantia de que ele consiga fazer isso em qualquer legado ou parte. Novamente, precisa de um bom sênior avaliando cada passo.</p>
<p>Tudo é feito <strong>PASSO A PASSO</strong>. Uma tentativa, uma checagem, um ajuste, repita. É o famoso ciclo PDCA: Plan, Do, Check, Act. Esse é o processo que funciona. Cada novo ajuste testado vira um &ldquo;git commit&rdquo; e vamos ao próximo passo. Sempre um passo de cada vez, sistematicamente, organizadamente. Nunca algo genérico como <em>&ldquo;Conserte tudo neste sistema legado&rdquo;</em>.</p>
<p>Outra coisa em que LLMs são muito boas é reescrever código de uma linguagem para outra (traduções em geral). Mas não recomendo e nem é só por ser LLM:</p>
<blockquote>
  <p>Eu nunca recomendo reescrever do zero como primeira opção.</p>

</blockquote>
<p>Não existe garantia de que uma linguagem mais nova seja &ldquo;melhor&rdquo; do que uma mais antiga. O &ldquo;melhor&rdquo; sempre &ldquo;depende&rdquo; da sua definição de &ldquo;melhor&rdquo;.</p>
<p>Está na moda essa ideia de reescrever tudo em Rust porque teria menos problemas de segurança. Isso é incorreto. Rust é bom para algumas categorias de segurança, mas não pra todas. E existe toda uma categoria de problemas <strong>funcionais</strong> que não aparecem em nenhum compilador. Reescrever algo complexo, como um kernel do Linux, em Rust é uma ilusão e uma inutilidade enormes. Se &ldquo;parece fácil&rdquo; fazer uma LLM reescrever em Rust, é igualmente fácil ela consertar pontualmente um errinho em C também, sem mexer no resto que já funciona.</p>
<blockquote>
  <p>Reescrever é, sim, garantia de que vários novos bugs vão surgir e você não vai detectá-los imediatamente; vai ser uma nova bomba-relógio. Pra consertar um bug conhecido, você acabou criando vários outros bugs desconhecidos. Reescrever, por definição, sempre vai adicionar novos bugs.</p>

</blockquote>
<p>E não, quando se pede pra LLM: <em>&ldquo;encontre todos os bugs de segurança neste código&rdquo;</em>, ele vai encontrar alguns, mas nunca todos.</p>
<p>Entenda o português: ele sempre vai dizer algo como <em>&ldquo;Eis todos os bugs que descobri&hellip;&rdquo;</em> Até a LLM hoje em dia não vai mais tentar dizer <em>&ldquo;Eis todos os bugs que existem&rdquo;</em>.</p>
<p>Nenhuma IA é feita pra dar respostas 100% corretas e sem ambiguidade. Pelo contrário, é sempre uma máquina probabilística que vai dar a resposta com base nas probabilidades do modelo gerado pelo treinamento. O que não estiver nesse modelo, ele não sabe. E, mesmo dando contexto, não há garantias de &ldquo;entendimento completo&rdquo;, e sim de &ldquo;algum entendimento&rdquo;. Sempre trabalhe com probabilidades inferiores a 100%.</p>
<p>Linguagens de programação, por sua própria natureza, não são determinísticas. Não existe nenhuma forma de escrever uma equação matemática em que eu possa passar o programa e ele garanta a ausência de bugs. Isso é uma impossibilidade matemática; não é &ldquo;questão de tempo&rdquo;. O tempo não tem nenhuma relevância nessa definição.</p>
<blockquote>
  <p>A detecção de bugs (funcionais, de segurança, de performance, etc.) é sempre um processo estocástico, uma heurística, nunca um algoritmo. Isso é algo que todo cientista da computação ou matemático entende, mas ninguém que nunca estudou consegue entender. Para pessoas comuns, heurística é a mesma coisa que algoritmo. Esse é um erro que pode ser fatal.</p>

</blockquote>
<p>Então, toda LLM, por sua própria fundação e arquitetura, sempre vai ter essas e outras limitações embutidas. Mas isso não é um problema, é apenas a natureza da ferramenta. Martelos não servem pra girar parafusos, e isso não é um defeito. Deveria ser óbvio, mas bater um martelo num prego e não girar é uma característica natural. Não é nem uma vantagem nem um defeito. <strong>Depende de qual problema quer resolver.</strong></p>
<p>No geral, LLMs vão ser muito boas em lidar com trabalhos braçais: adicionar testes, refatorar código, ajustar front-end, criar telas novas a partir de telas antigas, criar relatórios novos a partir de relatórios antigos. Criar tradução do português para o espanhol das telas do seu sistema. Pra esse tipo de prego, LLMs são o martelo perfeito.</p>
<p>Agora, interpretação exata de leis, regras de negócio, casos individuais e exceções à regra, flexibilização de certas regras — tudo o que faz parte das tomadas de decisão numa empresa. Nunca confie totalmente em nenhuma LLM: vai precisar de um humano experiente pra aprovar ou rejeitar. Por mais que ele tenha memorizado todas as leis do país, não há garantia de que saiba quando usar ou não usar, e como isso pode variar nos mais variados casos, especialmente nas exceções.</p>
<blockquote>
  <p>Nunca pergunte a um martelo como você deve dirigir sua empresa.</p>

</blockquote>
<h2>&ldquo;Como ter sênior se não vai mais ter júnior?&rdquo;<span class="hx:absolute hx:-mt-20" id="como-ter-sênior-se-não-vai-mais-ter-júnior"></span>
    <a href="#como-ter-s%c3%aanior-se-n%c3%a3o-vai-mais-ter-j%c3%banior" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Notem que a premissa é que, no mínimo, sempre vão precisar de um sênior instruindo e revisando o trabalho das LLMs.</p>
<p>Mas se as LLMs conseguirem executar todas as tarefas braçais que antes eram destinadas aos estagiários e júniors, como vão crescer pra virar sênior?</p>
<p>É a pergunta de 1 bilhão de dólares e já adianto que eu não sei a resposta inteira. Ninguém sabe.</p>
<p>O início é fácil. É como eu disse em todos os vídeos do canal: é como fiz minha carreira inteira: ter uma boa formação e &ldquo;aprender a aprender&rdquo; de verdade. Mais fácil falar do que fazer; por isso, levei 5 anos de vídeos tentando explicar dos mais variados jeitos pra ver se alguém entende.</p>
<p>A próxima parte que é difícil: como aprender se as LLMs já fazem tudo?</p>
<p>Essa pergunta parte de uma premissa errada: as LLMs não fazem tudo. Elas fazem o que for pedido. Se o pedido estiver bem especificado, vai sair um prato gourmet de um restaurante com 3 estrelas Michelin. Se o pedido for tosco, de alguém claramente inexperiente, vai sair um miojo. É assim, simples.</p>
<blockquote>
  <p>O resultado da LLM é diretamente proporcional ao trabalho de instrução, avaliação e acompanhamento do humano no controle.</p>

</blockquote>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/frankmd/2026/02/s-l960.jpg" alt="cartão perfurado"  loading="lazy" /></p>
<p><em>&ldquo;Como alguém vai ser programador se nem sabe como fazer pra perfurar um cartão?&rdquo;</em> - É uma pergunta justa se perguntar a alguém nos anos 60.</p>
<p><em>&ldquo;Como alguém vai ser programador se nem sabe gravar numa fita cassete?&rdquo;</em> - É outra pergunta justa se for alguém dos anos 80.</p>
<p><em>&ldquo;Como alguém vai ser programador se nem sabe editar código num editor de textos como Emacs e precisa de Eclipse?&rdquo;</em> - Outra pergunta justa, se for alguém dos anos 90.</p>
<p><em>&ldquo;Como alguém vai ser programador se nem sabe programar pra Web?&rdquo;</em> - Uma boa pergunta pra alguém no começo dos anos 2000.</p>
<p><em>&ldquo;Como alguém vai ser programador se sequer sabe fazer um app mobile?&rdquo;</em> - Se for alguém nos anos 2010.</p>
<p><em>¨Como alguém vai ser programador se tem LLMs?&quot;</em> - A pergunta dos anos 2020. Boa sorte.</p>
<p>Toda geração tem perguntas similares. Nenhuma tem uma solução exata. Veja os fatos: ainda estamos aqui. Em 2026, sei coisas de programação que nunca sonhava saber quando entrei na faculdade em 1995. Tudo mudou. Todo mundo que &ldquo;aprendeu a aprender&rdquo; soube se <strong>ADAPTAR</strong> e usar o conhecimento que já tinha pra aprender novas formas de trabalhar.</p>
<blockquote>
  <p>É tudo uma questão de adaptação: quem não se adapta é extinto. Essa é a lei.</p>

</blockquote>
<p>Não tem muito mais a dizer a respeito disso. Mas na prática:</p>
<p>Se você é programador, use LLMs. Aprenda os pontos fortes e fracos, os diferentes resultados que ela obtém dependendo do seu próprio conhecimento, e nunca pare de estudar e treinar.</p>
<p>Se você é sênior/empresa, continue contratando júniores. Seus sêniores não são imortais. No mínimo, em uma hora eles vão se aposentar. Mais realista: uma hora eles vão mudar de emprego. A segunda tarefa mais importante de qualquer sênior é mentorar júniors e criar substitutos. Sênior incapaz de criar seu próprio substituto não é um sênior, é uma <strong>liability</strong>.</p>
<p>Mentorar é a mesma coisa de sempre: treinamento com acompanhamento e feedback, melhoria contínua, com a diferença de que, além de sistema operacional, editor de texto e IDEs, sistemas de CI, etc., agora tem LLM na caixa de ferramentas. É isso. Não tente complicar o que não precisa e não sofra por antecedência.</p>
<h2>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><em>&ldquo;Ain, mas você falou que a bolha das IAs vai estourar.&rdquo;</em></p>
<p>Sim, e continuo dizendo. Mas você está entendendo errado, novamente. De 1994 a 2001 existiu a <a href="https://pt.wikipedia.org/wiki/Bolha_da_Internet"target="_blank" rel="noopener">Bolha da Internet</a>, e ela estourou!</p>
<p>Entenda: a &ldquo;Bolha da Internet&rdquo; estourou. Mas a &ldquo;Internet&rdquo; continua existindo até hoje. ¿Está claro?</p>
<p>Mesma coisa: a &ldquo;Bolha das IAs&rdquo; vai estourar, muitas empresas vão falir, muita gente da área vai perder o emprego, etc. Mas IAs vão continuar existindo. A bolha das IAs dos anos 60 estourou, mas as IAs continuaram existindo e até formaram uma nova bolha agora. Ciclo econômico não tem a ver com ciclo tecnológico.</p>
<blockquote>
  <p>Só quer dizer: <em>&ldquo;não aposte todas as fichas no mesmo cavalo, especialmente se sua vida/carreira depende disso.&rdquo;</em></p>

</blockquote>
<p>LLMs vão continuar existindo, aproximadamente no mesmo formato, um pouco mais rápidas e eficientes, mas com o mesmo processo por trás e a mesma forma de trabalhar. Assim como a Web de 2026 não é muito diferente da tecnologia dos anos 90, mas é mais refinada e otimizada.</p>
<p>Eu nunca fui &ldquo;hater&rdquo; de IA, pelo contrário, sou um que já arriscava fazer código com o GPT-2. E sempre está melhorando. Agora está num ponto em que é fácil recomendar até pra não-programadores brincarem com sistemas que não vão pra produção nem são de missão crítica.</p>
<p>Desde que comecei com programação, no fim dos anos 80, felizmente nunca tive um único momento em que achei nossa área &ldquo;entediante&rdquo; ou &ldquo;monótona&rdquo;. Pra mim, é só mais um capítulo nessa história, e eu tenho expectativa de novos capítulos.</p>
<p>O que eu falo que &ldquo;parece hate&rdquo; é só argumentação e explicação das limitações atuais e das expectativas irreais, ilusões ou até apostas cegas em que sei que não vão vingar. Estou avisando do que é real. Mas sempre estou dizendo: &ldquo;precisa haver uma nova descoberta&rdquo;. Com a expectativa de que algo mais vindo no futuro, e não de que &ldquo;não vai dar nada certo&rdquo;.</p>
<p>No final do dia, o Java dos anos 90 não substituiu o Cobol e o Fortran do mundo, como se pretendia. A Web não virou uma utopia pacífica de puro conhecimento como se queria. O mobile não substituiu outras formas de computação, como se queria. VR não se tornou a nova onda. Nada disso invalida as qualidades do Java, da Web, do Mobile ou até da VR.</p>
<p>A última Bolha da Programação foi um período entediante pra mim em termos de inovação: porque tudo era substituído por programadores baratos. Pra mim, o estouro dessa bolha era esperado e me deixa muito feliz. Porque finalmente saímos do marasmo de cursos idiotas pra falarmos de tecnologia de ponta de novo. Programadores voltando a ser programadores de verdade.</p>
<p>Só vejo coisas boas nisso.</p>
]]></content:encoded><category>inteligencia-artificial</category><category>llms</category><category>carreira</category><category>off-topic</category></item><item><title>Tudo que Precisa Saber Sobre Retro-Gaming</title><link>https://akitaonrails.github.io/2025/09/14/tudo-que-precisa-saber-sobre-retro-gaming/</link><guid isPermaLink="true">https://akitaonrails.github.io/2025/09/14/tudo-que-precisa-saber-sobre-retro-gaming/</guid><pubDate>Sun, 14 Sep 2025 16:00:00 -0300</pubDate><description>&lt;p&gt;Tá, já que escrevi quase um e-book sobre &lt;a href="https://akitaonrails.github.io/2025/14/coisas-que-iniciantes-ignoram-sobre-pcs/"&gt;tudo que você precisa saber sobre componentes de PCs&lt;/a&gt; resolvi que chegou a hora de outro artigo que estou faz anos segurando: &lt;strong&gt;tudo que você precisa saber sobre retro-gaming e handhelds&lt;/strong&gt;. É outro artigo que vai envelhecer mal porque saem coisas novas o tempo todo. Tudo que está aqui vale pra 2025. Então vamos lá.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914123715_20250914_122919.jpg" alt="Coleção" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;Como podem ver, eu tenho praticamente todos os handhelds possíveis e imagináveis. Então acho que tenho alguma propriedade pra falar sobre as vantagens e desvantagens da maioria dos mais populares. E eu tinha mais, mas fui doando pra amigos com o tempo. Esses são os meus favoritos.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Tá, já que escrevi quase um e-book sobre <a href="/2025/14/coisas-que-iniciantes-ignoram-sobre-pcs/">tudo que você precisa saber sobre componentes de PCs</a> resolvi que chegou a hora de outro artigo que estou faz anos segurando: <strong>tudo que você precisa saber sobre retro-gaming e handhelds</strong>. É outro artigo que vai envelhecer mal porque saem coisas novas o tempo todo. Tudo que está aqui vale pra 2025. Então vamos lá.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914123715_20250914_122919.jpg" alt="Coleção"  loading="lazy" /></p>
<p>Como podem ver, eu tenho praticamente todos os handhelds possíveis e imagináveis. Então acho que tenho alguma propriedade pra falar sobre as vantagens e desvantagens da maioria dos mais populares. E eu tinha mais, mas fui doando pra amigos com o tempo. Esses são os meus favoritos.</p>
<p>Vou falar dos hardwares primeiro e na segunda parte do artigo vou falar um pouco dos softwares também. Use os links de seção na direita (na versão desktop), pra navegar onde quer ler primeiro.</p>
<p>Já aviso que vou ser preguiçoso e nas tabelas de especificações, sim, é ChatGPT pra ajudar. Senão é muito detalhe kkkk 🤣</p>
<h3>Ambernic RG400M<span class="hx:absolute hx:-mt-20" id="ambernic-rg400m"></span>
    <a href="#ambernic-rg400m" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914124055_20250914_123944.jpg" alt="RG400M"  loading="lazy" /></p>
<p><strong>Especificações</strong></p>
<table>
  <thead>
      <tr>
          <th>Component</th>
          <th>Detail</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Display</td>
          <td>4.7-inch LTPS In-Cell, full lamination, multi-touch</td>
      </tr>
      <tr>
          <td>Resolution</td>
          <td>1280 × 960</td>
      </tr>
      <tr>
          <td>Refresh Rate</td>
          <td>120 Hz <a href="https://retrohandhelds.gg/anbernic-rg477m-launched-everything-you-need-to-know/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Anbernic+2</a></td>
      </tr>
      <tr>
          <td>CPU</td>
          <td>MediaTek Dimensity 8300 (4nm process) — 1×A715 @ 3.35GHz + 3×A715 @ 3.20GHz + 4×A510 @ 2.20GHz <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
      <tr>
          <td>GPU</td>
          <td>Mali-G615 MC6 <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
      <tr>
          <td>RAM options</td>
          <td>8GB LPDDR5 or 12GB LPDDR5 <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
      <tr>
          <td>Storage options</td>
          <td>128GB or 256GB UFS internal + micro-SD (TF) expandable to 2TB <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>5,300 mAh, ~7 hours use <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
      <tr>
          <td>Charging</td>
          <td>5V/9V — 27W <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
      <tr>
          <td>Connectivity</td>
          <td>Wi-Fi 6E, Bluetooth 5.3 <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
      <tr>
          <td>Other features</td>
          <td>3.5mm headphone jack; dual speakers; large-angle 3D Hall joystick with RGB lighting; six-axis gyroscope; active cooling (fan + heat pipe); USB-C display out; vibration motor; FOTA, etc. <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Shell / Build</td>
          <td>Aluminum alloy (CNC), metal body; two colours: Silver Blade &amp; Chocolate Bronze <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Dimensions / Weight</td>
          <td>176 × 89.4 × 16 mm, 354 g <a href="https://anbernic.com/products/rg477m?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+1</a></td>
      </tr>
  </tbody>
</table>
<p>Este é um dos mais antigos que eu ainda tenho. <strong>Ambernic</strong> é a marca que eu mais gosto e um dos mais confiáveis. De vez em quando lançam modelos esquisitos, mas no geral são bem consistentes na qualidade.</p>
<p>Esse modelo 400M acho que não existe mais, mas o sucessor dele é <strong>RG477M</strong> e recomendo assistir o review do canal Retro Game Corps:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/9eQDFtmzuhM"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Durante todo o artigo vou sempre linkar pros reviews desse canal porque considero que o Russ faz os reviews mais completos. Ele realmente vai fundo em cada detalhe, tamanho dos botões, peso, compatibilidade, tudo. É o único canal que você precisa assistir.</p>
<p>Pra 2025 o 400M/477M é antiquado, inclusive é caro, a <a href="https://anbernic.com/products/rg477m"target="_blank" rel="noopener">USD 280</a>, sem considerar frete e taxa bostil (que vai dobrar esse preço). Isso porque ele tem corpo de alumínio, o que dá uma sensação bem mais <strong>premium</strong> do que os baratos de plástico. Porém, eu acho que a maior desvantagem dele é que a resolução da tela é só <strong>1280x960</strong>. Vou falar de resolução em outra seção, mas acho isso <strong>baixa resolução</strong>.</p>
<p>Quer dizer, pra jogar coisas como Gameboy, funciona super bem, mas se for pra Mega Drive, Super Nintendo, já começa a ficar apertado. Acima disso já sinto pixelizado mesmo numa tela pequena de 4.0&quot;.</p>
<p>O 477M tem tela maior, inclusive é isso que os nomes querem dizer: 400M tem tela de 4.0&quot; e 477M tem tela de 4.7&quot;. O 400M tem SoC (System on a Chip) Unisoc T618 2.0Ghz e o 477M tem o MediaTek Dimensity 8300 3.35Ghz. Triplo de RAM (4G LDDDR4X vs 12GB LPDDR5), bateria um pouco maior (4.500 mAh vs 5.300 mAh).</p>
<p>Parece potente mas é porque esse handheld roda Android. Eu particularmente não curto handhelds Android. Depois falo porque.</p>
<p>No geral é um excelente handheld, pequeno, premium, roda bem até PS1 e dá pra arriscar um PSP, mas a tela não foi feita pra isso (PSP é widescreen, este é 4:3). Só que eu <strong>não recomendo</strong> ele é muito caro e a performance não condiz com o preço, só é caro porque é de alumínio. Pelo mesmo preço se compra outros muito melhores, como vou mostrar a seguir.</p>
<h3>TRIUMUI BRICK - MIYOO MINI<span class="hx:absolute hx:-mt-20" id="triumui-brick---miyoo-mini"></span>
    <a href="#triumui-brick---miyoo-mini" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914125818_20250914_125744.jpg" alt="TriumUI - Miyoo"  loading="lazy" /></p>
<p>Os próximos da lista são os verticais &ldquo;miniatura&rdquo;.</p>
<p>O mais clássico de todos é sem dúvida o <a href="https://officialmiyoomini.com/pt_pt/"target="_blank" rel="noopener"><strong>Miyoo Mini Plus</strong></a>:</p>
<table>
  <thead>
      <tr>
          <th>Spec</th>
          <th>Detail</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Screen</td>
          <td>2.8-inch IPS</td>
      </tr>
      <tr>
          <td>Resolution</td>
          <td>~ 750 × 560 <a href="https://www.keepretro.com/products/onion-os-miyoo-mini-v4?utm_source=chatgpt.com"target="_blank" rel="noopener">keepretro+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>CPU</td>
          <td>ARM Cortex-A7, dual-core, 1.2 GHz <a href="https://www.keepretro.com/products/onion-os-miyoo-mini-v4?utm_source=chatgpt.com"target="_blank" rel="noopener">keepretro+2Miyoo Mini+2</a></td>
      </tr>
      <tr>
          <td>RAM</td>
          <td>128 MB <a href="https://officialmiyoomini.com/product/miyoo-mini-v4-retro-grey/?utm_source=chatgpt.com"target="_blank" rel="noopener">Miyoo Mini+1</a></td>
      </tr>
      <tr>
          <td>Storage Expansion</td>
          <td>microSD (TF), shipped with 32/64/128 GB cards; supports up to 128 GB <a href="https://www.keepretro.com/products/onion-os-miyoo-mini-v4?utm_source=chatgpt.com"target="_blank" rel="noopener">keepretro+2Miyoo Mini+2</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>2,000 mAh Li-polymer <a href="https://officialmiyoomini.com/product/miyoo-mini-v4-retro-grey/?utm_source=chatgpt.com"target="_blank" rel="noopener">Miyoo Mini+1</a></td>
      </tr>
      <tr>
          <td>Battery Life</td>
          <td>~ 5-6 hours typical <a href="https://www.litnxt.com/products/miyoo-mini-v4-portable-handheld-game-console?utm_source=chatgpt.com"target="_blank" rel="noopener">litnxt+1</a></td>
      </tr>
      <tr>
          <td>Size</td>
          <td>93.5 × 65 × 18 mm <a href="https://officialmiyoomini.com/product/miyoo-mini-v4-retro-grey/?utm_source=chatgpt.com"target="_blank" rel="noopener">Miyoo Mini+1</a></td>
      </tr>
      <tr>
          <td>Weight</td>
          <td>~ 104-107 g <a href="https://retrohandhelds.gg/rg28xx-miyoo-a30-vs-mini-v4-comparison/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Miyoo Mini+2</a></td>
      </tr>
      <tr>
          <td>OS</td>
          <td>Linux (Stock / OnionOS available) <a href="https://www.keepretro.com/products/onion-os-miyoo-mini-v4?utm_source=chatgpt.com"target="_blank" rel="noopener">keepretro+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Sensor / Extras</td>
          <td>Vibration motor; full-lamination screen; flat shoulders; R2/L2 micro buttons; OCA laminated screen in newer batches. <a href="https://www.litnxt.com/products/miyoo-mini-v4-portable-handheld-game-console?utm_source=chatgpt.com"target="_blank" rel="noopener">litnxt+2keepretro+2</a></td>
      </tr>
  </tbody>
</table>
<p>Falei que 4.0&quot; e 1280x960 acho pequeno? O Miyoo Mini Plus tem tela de só 2.8&quot; e resolução de 750x560. O SoC é muito bom com ARM Cortex-A7, 1.2Ghz que consegue rodar bem até PS1. Nessa tela pequena é mais indicado pra coisas como Gameboy, GameGear e outros portáteis antigos. Dá pra jogar NES, MasterSystem, MegaDrive. Mas PS1 já começa a ficar muito pequeno pra conseguir ler.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914130734_20250914_130603.jpg" alt="miyoo screen"  loading="lazy" /></p>
<p>É difícil de descrever quão pequeno é essa tela. Compare acima a tela com meu <strong>dedão</strong> pra ter uma noção. É extremamente pequeno. Não recomendo pra nada muito maior que jogos de Gameboy mesmo. Se você for jovem, com boa vista, vai conseguir jogar melhor. E vai ficar com a vista ruim como a minha mais rápido também kkkk 🤣 fica pelo seu risco.</p>
<p>Eu uso óculos de muito grau, então essa tela é muito pequena pra mim. Mas a construção da Miyoo é muito boa. Ela tem aquela sensação de Gameboy clássico mesmo, só que em miniatura. O fator nostálgico é muito forte.</p>
<p>O melhor OS pra ela é o <a href="https://onionui.github.io/"target="_blank" rel="noopener"><strong>Onion OS</strong></a>, que torna o Miyoo ainda muito melhor. Uma coisa comum é que todo handheld vamos acabar substituindo o OS que vem por um open source melhor. É muito satisfatório a UI pra salvar estado do game, depois recarregar de onde parou.</p>
<p><img src="https://user-images.githubusercontent.com/44569252/189434217-72ef0daf-c630-4ec9-b96a-30fd76cb709f.png" alt="OnionOS"  loading="lazy" /></p>
<p>De longe uma das melhores UIs pra handhelds. Todo OS deveria copiar o OnionOS. De novo, o review do Russ sobre ele é bem detalhado:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/6CkJNKupU9A"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Depois do Miyoo Mini Plus, que considero &ldquo;miniatura com tamanho suficiente&rdquo; é o <a href="https://trimui.net/collections/trimui-brick"target="_blank" rel="noopener"><strong>TrimUI Brick</strong></a>. Ele é parecido em formato e funcionalidades com o <a href="https://anbernic.com/en-br/products/rg35xx-plus"target="_blank" rel="noopener"><strong>Ambernic RG35xx Plus</strong></a> então qualquer um dos dois vai atender quem quer esse tamanho.</p>
<table>
  <thead>
      <tr>
          <th>Spec</th>
          <th>Detail</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>CPU</td>
          <td>Allwinner A133P, 1.8 GHz <a href="https://retrohandhelds.gg/trimui-brick-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2keepretro+2</a></td>
      </tr>
      <tr>
          <td>GPU</td>
          <td>PowerVR GE8300 @ 660 MHz <a href="https://trimui.net/products/trimui-brick-retro-handheld-game-64g?srsltid=AfmBOorFLIscOPS80tgdzShZ1bVwngtTX1q8VU01fVL5UH12dqlAoUaP&amp;utm_source=chatgpt.com"target="_blank" rel="noopener">Trimui Store+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>RAM</td>
          <td>1 GB LPDDR3/LPDDR4x (sources vary) <a href="https://mechdiy.com/products/trimui-brick-retro-handheld-game-console?srsltid=AfmBOooc_fIOP2p5G2jnS2jspN4lbtt6qXdi6PEOijUZu6Kh7gB4Ue-J&amp;utm_source=chatgpt.com"target="_blank" rel="noopener">Mechdiy+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Internal Storage</td>
          <td>8 GB eMMC <a href="https://trimui.net/products/trimui-brick-retro-handheld-game-64g?srsltid=AfmBOorFLIscOPS80tgdzShZ1bVwngtTX1q8VU01fVL5UH12dqlAoUaP&amp;utm_source=chatgpt.com"target="_blank" rel="noopener">Trimui Store+1</a></td>
      </tr>
      <tr>
          <td>External Storage</td>
          <td>TF card support up to ~1 TB <a href="https://retrohandhelds.gg/trimui-brick-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+1</a></td>
      </tr>
      <tr>
          <td>Display</td>
          <td>3.2-inch IPS, fully laminated, 1024×768 (4:3) <a href="https://retrohandhelds.gg/trimui-brick-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2keepretro+2</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>3,000 mAh Li-polymer; ~5-6 hours typical use <a href="https://retrohandhelds.gg/trimui-brick-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2keepretro+2</a></td>
      </tr>
      <tr>
          <td>Wireless / BT</td>
          <td>Wi-Fi 802.11 b/g/n; Bluetooth 2.1 + EDR / 4.2 <a href="https://trimui.net/products/trimui-brick-retro-handheld-game-64g?srsltid=AfmBOorFLIscOPS80tgdzShZ1bVwngtTX1q8VU01fVL5UH12dqlAoUaP&amp;utm_source=chatgpt.com"target="_blank" rel="noopener">Trimui Store+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Audio</td>
          <td>Stereo speakers, 3.5mm jack, mono mic <a href="https://www.keepretro.com/products/trimui-brick-handheld?utm_source=chatgpt.com"target="_blank" rel="noopener">keepretro+1</a></td>
      </tr>
      <tr>
          <td>Other Features</td>
          <td>RGB lighting (top bar, shoulder buttons etc.), vibration, FN keys, USB-C ports (charging, host, OTG) <a href="https://trimui.net/products/trimui-brick-retro-handheld-game-64g?srsltid=AfmBOorFLIscOPS80tgdzShZ1bVwngtTX1q8VU01fVL5UH12dqlAoUaP&amp;utm_source=chatgpt.com"target="_blank" rel="noopener">Trimui Store+2keepretro+2</a></td>
      </tr>
      <tr>
          <td>Size / Weight</td>
          <td>~73.2 × 109.9 × 19.9 mm; ~159 g <a href="https://retrohandhelds.gg/trimui-brick-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+1</a></td>
      </tr>
  </tbody>
</table>
<p>A tela do TrimUI é consideravelmente melhor em qualidade, cores saturadas, mais nítido, mais brilhante. É uma das melhores telas nesse formato que existem. Não tem como errar. Comparado com o Miyoo Mini, veja a diferença de qualidade de tela e, principalmente o tamanho!</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914131820_20250914_131501.jpg" alt="TrimUI vs Miyoo"  loading="lazy" /></p>
<p>E veja como a área útil não é muito menor que a tela de um Gameboy Advance SP de verdade, por isso é bem jogável.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914131658_20250914_131609.jpg" alt="TriumUI GB Advance"  loading="lazy" /></p>
<p>Pra melhorar, existem outros OS que dá pra instalar no TrimUI, como o lendário <a href="https://knulli.org/pt-BR/"target="_blank" rel="noopener"><strong>Knulli</strong></a>, mas você pode optar por pedir um microSD card já configurado e com vários jogos bons (não aquela lista genérica gigante de jogos repetidos que vem nos outros). Ele vem com o <a href="https://surwish.com/"target="_blank" rel="noopener"><strong>SurwishOS</strong></a>, que não é um OnionOS mas não está longe.</p>
<p>Ou seja, &ldquo;out-of-the-box&rdquo;, sem precisar configurar nada, o TrimUI Brick é um dos mais simples. Só ligar e já jogar, sem precisar mexer em OS ou fazer qualquer tuning. Plug and play. É fácil, um dos melhores que posso recomendar.</p>
<p>Novamente, roda bem até PS1, arrisca um PSP mas PSP é muito pesado mesmo. Não é o indicado. O ideal é até Gameboy Advance. Assista o review do Russ:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/F1fHemFCi3I"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Numa classe um pouco superior, mais parecida com Ambernic RG35XX vertical, tem os <a href="https://www.goretroid.com/collections/retro-game-system/products/retroid-pocket-classic"target="_blank" rel="noopener"><strong>Retroid Pocket Classic</strong></a>. Eu nunca tive, mas ouço falar muito bem também. Em particular a versão com 6 botões igual controle de luta do Mega Drive/Sega Saturn:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914155554_Retroid-Pocket-Classic-08.webp" alt="Retroid Classic"  loading="lazy" /></p>
<p>Também é uma boa recomendação e tem o r<a href="https://www.youtube.com/watch?v=HQOBdhnnQkM"target="_blank" rel="noopener">eview do Russ</a>.</p>
<h3>Ambernic RG35XX SP<span class="hx:absolute hx:-mt-20" id="ambernic-rg35xx-sp"></span>
    <a href="#ambernic-rg35xx-sp" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Se eu tivesse que escolher só um, ficaria bem dividido com o TrimUI Brick, mas acho que acabaria sempre voltando pra este: <a href="https://br.anbernic.com/products/rg35xxsp?variant=44326801539225"target="_blank" rel="noopener"><strong>Ambernic RG35XX SP</strong></a></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914132910_20250914_132230.jpg" alt="RG35XX SP fechado"  loading="lazy" /></p>
<p>Como expliquei antes, RG400M significa tela de 4&quot;, então RG35XX significa tela de 3.5&quot;. É um pouco maior que os 3.2&quot; do TrimUI Brick, um pouco menor que o RG477M. Na minha opinião acho que este é o &ldquo;sweet-spot&rdquo; entre portabilidade e visibilidade.</p>
<p>O &ldquo;SP&rdquo; significa que ele copiou o formato do lendário <strong>Gameboy Advance SP</strong>&quot;, a segunda revisão da Nintendo que introduziu o formato &ldquo;<strong>clamshell</strong>&rdquo;, que se dobra ao meio. A grande vantagem é que esse formato protege a tela quando fechada e não precisamos de uma bolsa pra quando queremos jogar na mochila, preocupados em riscar a tela.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914133341_20250914_132251.jpg" alt="RG35XX aberto"  loading="lazy" /></p>
<table>
  <thead>
      <tr>
          <th>Spec</th>
          <th>Detail</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>CPU</td>
          <td>Allwinner H700, quad-core ARM Cortex-A53 @ 1.5 GHz <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2GamesRadar++2</a></td>
      </tr>
      <tr>
          <td>GPU</td>
          <td>Dual-core Mali-G31 MP2 <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Anbernic+2</a></td>
      </tr>
      <tr>
          <td>RAM</td>
          <td>1 GB LPDDR4 <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Anbernic+2</a></td>
      </tr>
      <tr>
          <td>Internal Storage</td>
          <td>64 GB via TF/MicroSD (some variants lower) <a href="https://anbernic.com/products/rg35xxsp?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+2Mechdiy+2</a></td>
      </tr>
      <tr>
          <td>Display</td>
          <td>3.5-inch IPS, OCA fully bonded, 640×480 (4:3) <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2GamesRadar++2</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>3,300 mAh Li-polymer, ~8 hours use <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Amazon+2</a></td>
      </tr>
      <tr>
          <td>Charging</td>
          <td>5 V / 1.5 A, USB-C, supports USB-C to C charger <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Anbernic+2</a></td>
      </tr>
      <tr>
          <td>Connectivity</td>
          <td>WiFi 802.11 a/b/g/n/ac (2.4/5 GHz), Bluetooth 4.2 (controllers only) <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Anbernic+2</a></td>
      </tr>
      <tr>
          <td>Outputs &amp; Extras</td>
          <td>Mini-HDMI output; 3.5mm headphone jack; vibration motor; dual TF card slots; magnetic hinge for sleep/wake; multiple buttons including extra shoulder buttons etc. <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Anbernic+2</a></td>
      </tr>
      <tr>
          <td>Dimensions / Weight</td>
          <td>89 × 85 × 27 mm; ~192 g <a href="https://retrohandhelds.gg/anbernic-rg35xxsp-a-first-look/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Anbernic+2</a></td>
      </tr>
      <tr>
          <td>OS</td>
          <td>Linux 64-bit <a href="https://anbernic.com/products/rg35xxsp?utm_source=chatgpt.com"target="_blank" rel="noopener">Anbernic+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
  </tbody>
</table>
<p>Em termos de specs, todos os que falei até agora tem performance parecida. Os RG477M são mais poderosos porque rodam Android (que é bem mais pesado), os demais rodam Linux então é bem mais leve.</p>
<p>Novamente, depende muito de quem é você. Por exemplo, eu tenho mãos pequenas, e mesmo pra mim um Miyoo Mini e até mesmo o TrimUI Brick eu sinto desconfortável pra jogar por muito tempo. Tenho que ficar segurando o console só com os dedos. Já o RG35XX SP se apoia na palma das minhas mãos, então eu sinto muito mais confortável e ergonômico pra jogar.</p>
<p>Por causa disso também eu não recomendo a nova versão RG34XX SP:</p>
<p><img src="https://br.anbernic.com/cdn/shop/files/20250514141311.jpg?v=1747203223&amp;width=1150" alt="RG34XX SP"  loading="lazy" /></p>
<p>Também não recomendo o <strong>Miyoo Flip v2</strong>:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914133648_Miyoo-Flip-Hero-1080x675.webp" alt="Miyoo Flip"  loading="lazy" /></p>
<p>O diferencial deles são os dois controles analógicos no final, que seria bom pra jogar coisas como Nintendo 64, os jogos mais novos de PS1, PSP, Dreamcast. Mas tem um porém: nenhum deles tem potência suficiente pra jogar acima de PS1. Sim, dá pra jogar mais ou menos bem Nintendo 64 e Dreamcast, mas não roda tudo.</p>
<p>Daí o que eu elogiei que dá pra apoiar na palma da mão se perde com os analógicos, porque pra usar os dedões nele, precisa segurar o handheld muito pra cima pra alcançar. Daí tem outro problema: os botões de ombro, que ficam atrás, os L1 e R1, ficam longe de apertar com os indicadores. Pra jogar FPS (jogos de tiro em primeira pessoa), é horrível. Então um Golden Eye 007 do Nintendo 64 fica ruim de jogar, mesmo com os analógicos.</p>
<p>Além disso note o nome: RG34XX, significa que a tela cai de 3.5&quot; pra 3.4&quot;. Falei antes que eu acho 3.5&quot; ideal e nessa nova versão é um downgrade. O erro é tentar achar que dá pra ter um único handheld que vai ser bom pra tudo. Não tem isso.</p>
<p>Outro canal que eu gosto muito é o <strong>Wulff Den</strong> e ele faz essa consideração nesse review:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/mCVOetPvhXQ"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Minha recomendação sempre é o RG35XX SP. Não precisa de botões analógicos e vai rodar tudo até PS1 sem problemas. Mais que isso, você quer um handheld MAIOR e mais potente.</p>
<p>Na categoria &ldquo;clamshells&rdquo; um que vale a pena olhar é o <a href="https://www.goretroid.com/collections/retro-game-system/products/retroid-pocket-flip-2"target="_blank" rel="noopener"><strong>Retroid Pocket Flip 2</strong></a>, que é maior, mais potente e mais caro. Mas ouço falar bem também:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914155800_D_NQ_NP_798192-MLB86423937046_062025-O.webp" alt="Retroid Flip 2"  loading="lazy" /></p>
<p>Novamente, assista o <a href="https://www.youtube.com/watch?v=6LIZWnD-62Q"target="_blank" rel="noopener">review do Russ</a></p>
<h3>Ayn Odin 2<span class="hx:absolute hx:-mt-20" id="ayn-odin-2"></span>
    <a href="#ayn-odin-2" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Vamos falar dos mais potentes. Pra mim, o melhor de todos, que roda basicamente tudo até Nintendo Switch, é o <a href="https://www.ayntec.com/products/odin-2"target="_blank" rel="noopener"><strong>Odin 2</strong></a> - e está pra sair o <a href="https://www.indiegogo.com/projects/odin-3-the-ultimate-6-120hz-oled-gaming-handheld#/"target="_blank" rel="noopener">Odin 3</a>, que vai ser melhor.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914134536_20250914_134446.jpg" alt="Odyn 2"  loading="lazy" /></p>
<table>
  <thead>
      <tr>
          <th>Spec</th>
          <th>Details</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>CPU</td>
          <td>Qualcomm Snapdragon 8 Gen 2 <a href="https://www.ayntec.com/products/odin-2?utm_source=chatgpt.com"target="_blank" rel="noopener">AYN+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>GPU</td>
          <td>Adreno 740 <a href="https://www.ayntec.com/products/odin-2?utm_source=chatgpt.com"target="_blank" rel="noopener">AYN+2Amazon+2</a></td>
      </tr>
      <tr>
          <td>RAM options</td>
          <td>8 GB / 12 GB / 16 GB LPDDR5X <a href="https://retrohandhelds.gg/ayn-odin-2-vs-odin-2-mini-vs-odin-2-portal-an-8-gen-2-shootout/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Amazon+2</a></td>
      </tr>
      <tr>
          <td>Storage options</td>
          <td>128 GB / 256 GB / 512 GB UFS <a href="https://retrohandhelds.gg/ayn-odin-2-vs-odin-2-mini-vs-odin-2-portal-an-8-gen-2-shootout/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Amazon+2</a></td>
      </tr>
      <tr>
          <td>Display</td>
          <td>6-inch IPS LCD, 1920×1080, 60 Hz <a href="https://retrohandhelds.gg/ayn-odin-2-vs-odin-2-mini-vs-odin-2-portal-an-8-gen-2-shootout/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Amazon+2</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>8,000 mAh Li-polymer <a href="https://retrohandhelds.gg/ayn-odin-2-vs-odin-2-mini-vs-odin-2-portal-an-8-gen-2-shootout/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2AYN+2</a></td>
      </tr>
      <tr>
          <td>Charging / Ports</td>
          <td>USB-C with video output; HDMI + Micro HDMI in some variants <a href="https://www.amazon.com/Android-handheld-performance-Snapdragon-Octa-core-storage/dp/B0CP45TJF2?utm_source=chatgpt.com"target="_blank" rel="noopener">Amazon+1</a></td>
      </tr>
      <tr>
          <td>Wireless / Bluetooth</td>
          <td>Wi-Fi 7; Bluetooth 5.3 <a href="https://retrohandhelds.gg/ayn-odin-2-vs-odin-2-mini-vs-odin-2-portal-an-8-gen-2-shootout/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2AYN+2</a></td>
      </tr>
      <tr>
          <td>Weight</td>
          <td>~ 420 g <a href="https://www.amazon.com/Android-handheld-performance-Snapdragon-Octa-core-storage/dp/B0CP45TJF2?utm_source=chatgpt.com"target="_blank" rel="noopener">Amazon+2AYN+2</a></td>
      </tr>
      <tr>
          <td>Operating System</td>
          <td>Android 13 <a href="https://www.ayntec.com/products/odin-2?utm_source=chatgpt.com"target="_blank" rel="noopener">AYN+1</a></td>
      </tr>
      <tr>
          <td>Variants</td>
          <td>Base / Pro / Max with different RAM/storage combos</td>
      </tr>
  </tbody>
</table>
<p>O preço não é muito maior que o RG477M, mas ele é infinitamente melhor. Na faixa de <strong>USD 300</strong> (sem frete, sem impostos), é o melhor custo-benefício.</p>
<p>Veja as especificações, é um Qualcomm Snapdragon 8 Gen 2. É o mesmo chip que se tem em smartphones Android midrange pra high-end. Com GPU Adreno 740 e de 8GB até 16 GB LPDDR5X. Bateria de 8.000 mAh (maioria dos smartphones nessa categoria tem bateria de 5.000 mAh ou menos).</p>
<p>O principal: é uma tela IPS 6&quot; de 1080p de resolução (Full-HD). Nesse tamanho, até eu que sou cegueta, consigo enxergar qualquer jogo sem problemas. Um Nintendo Switch original tem tela de 6.2&quot;, então é levemente menor. É basicamente a potência de um Switch 2, na realidade.</p>
<p>O review do Wulff Den diz tudo:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/KHwHpiAMog4"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Na prática, veja na foto os controles: se quiser ter sticks analógicos, eles precisam estar no formato de Xbox ou Switch, na horizontal, esse é o formato mais ergonômico pra jogar por bastante tempo. Por isso falei que os Miyoo Flip ou RG34XX SP não vale a pena. No Odin 2 sim, dá pra jogar Halo, Golden Eye, Doom, etc sem problemas. E como é um Android também dá pra instalar Call of Duty da Play Store sem problemas.</p>
<p>Agora, minha reclamação pessoal: Android é BEM mais chato pra configurar emuladores do que Linux. De longe mesmo. Precisa de MUITO tempo, MUITA paciência e MUITA tentativa e erro até deixar do jeito perfeito. É tanta coisa que recomendo assistir o guia do Russ sobre isso:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/I4mqgcDYZFo"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Sério, assista o video, leia o <a href="https://retrogamecorps.com/2022/03/13/android-emulation-starter-guide/"target="_blank" rel="noopener">blog post</a> do site dele pra mais detalhes. Você não vai acertar de primeira.</p>
<p>Pelo menos, uma vez configurado, vai rodar tudo liso. PSP com 3x resolução, Dreamcast com 3x resolução, PS2 com 3x resolução, GameCube com 2x resolução, até Switch Full-HD Docker mode. É meu modelo preferido pra jogar PSP mesmo: Ridge Racer 2 fica perfeito.</p>
<p>Nessa categoria de Android horizontal, outra boa recomendação é o <a href="https://www.goretroid.com/collections/retro-game-system/products/retroid-pocket-5-handheld"target="_blank" rel="noopener"><strong>Retroid Pocket 5</strong></a>, na mesma faixa de preço e também ouço falar bem. Em particular todo mundo fala muito bem da qualidade da tela.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914160025_kiboTEK_retroid_pocket_5_005-1024x1024.webp" alt="Retroid Pocket 5"  loading="lazy" /></p>
<p>Novamente, assista o <a href="https://www.youtube.com/watch?v=ZFTrwWQOe5Y"target="_blank" rel="noopener">review do Russ</a>.</p>
<h3>Ayaneo Pocket DMG<span class="hx:absolute hx:-mt-20" id="ayaneo-pocket-dmg"></span>
    <a href="#ayaneo-pocket-dmg" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Se tiver dinheiro pra jogar fora mesmo, também recomendo o <a href="https://ayaneo.com/product/AYANEO-Pocket-DMG"target="_blank" rel="noopener"><strong>Ayaneo Pocket DMG</strong></a>. Esse monstro começa na bagatela de <strong>USD 420</strong> (sem impostos, sem frete, na config básica). Se escolher tudo, sobe até <strong>USD 690</strong>. Mais caro que um Playstation 5!!! Realmente não dá pra recomendar, é o pior custo-benefício de todos.</p>
<table>
  <thead>
      <tr>
          <th>Spec</th>
          <th>Detail</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>CPU</td>
          <td>Snapdragon G3x Gen 2 <a href="https://retrohandhelds.gg/ayaneo-pocket-dmg-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Time Extension+2</a></td>
      </tr>
      <tr>
          <td>GPU</td>
          <td>Adreno A32 <a href="https://www.timeextension.com/reviews/ayaneo-pocket-dmg-this-pricey-emulation-monster-thinks-its-a-game-boy?utm_source=chatgpt.com"target="_blank" rel="noopener">Time Extension+2Retro Dodo+2</a></td>
      </tr>
      <tr>
          <td>RAM (options)</td>
          <td>8 GB / 12 GB / 16 GB LPDDR5X <a href="https://retrohandhelds.gg/ayaneo-pocket-dmg-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2overkill Media+2</a></td>
      </tr>
      <tr>
          <td>Storage (internal)</td>
          <td>128 GB / 256 GB / 512 GB / 1 TB <a href="https://retrododo.com/ayaneo-pocket-dmg-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Dodo+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Display</td>
          <td>3.92-inch OLED, 1240×1080 (≈31:27 aspect) <a href="https://retrohandhelds.gg/ayaneo-pocket-dmg-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Time Extension+2</a></td>
      </tr>
      <tr>
          <td>OS</td>
          <td>Android 13 <a href="https://www.timeextension.com/reviews/ayaneo-pocket-dmg-this-pricey-emulation-monster-thinks-its-a-game-boy?utm_source=chatgpt.com"target="_blank" rel="noopener">Time Extension+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Connectivity</td>
          <td>Wi-Fi 6; Bluetooth 5.3 <a href="https://www.timeextension.com/reviews/ayaneo-pocket-dmg-this-pricey-emulation-monster-thinks-its-a-game-boy?utm_source=chatgpt.com"target="_blank" rel="noopener">Time Extension+2Retro Handhelds - Play It Forever+2</a></td>
      </tr>
      <tr>
          <td>Expansion Ports</td>
          <td>microSD slot; USB-C (for charging/data) <a href="https://droix.net/blogs/ayaneo-pocket-dmg-review/?srsltid=AfmBOoqrvlyNHVvMF7_f9Jn4pgVKChziQFJitL7RDCD-9tmjywBIJvKc&amp;utm_source=chatgpt.com"target="_blank" rel="noopener">DROIX Global+1</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>6000 mAh <a href="https://retrohandhelds.gg/ayaneo-pocket-dmg-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Retro Dodo+2</a></td>
      </tr>
      <tr>
          <td>Size</td>
          <td>91.5 × 151 × 22.3 mm <a href="https://www.timeextension.com/reviews/ayaneo-pocket-dmg-this-pricey-emulation-monster-thinks-its-a-game-boy?utm_source=chatgpt.com"target="_blank" rel="noopener">Time Extension+2DROIX Global+2</a></td>
      </tr>
      <tr>
          <td>Weight</td>
          <td>~ 278-279 g <a href="https://retrohandhelds.gg/ayaneo-pocket-dmg-review/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2Time Extension+2</a></td>
      </tr>
  </tbody>
</table>
<p>Ele é mais potente que o Odin 2 com um Snapdragon G3x Gen 2 e Adreno A32. É comparável a um bom Samsung Galaxy da vida.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914140234_20250914_140205.jpg" alt="Pocket DMG"  loading="lazy" /></p>
<p>A construção dele é super-premium, case, botões, tudo. A tela é um pouco pequena, de 3.92&quot; (acima do que eu falei que considero ideal no 35XX SP), mas é OLED, super nítido, super brilhante, cores super saturadas, uma das melhores telas em qualquer handheld, comparável mesmo à tela de um Samsung Galaxy. Não tem como errar com essa tela. Todo jogo fica ainda mais bonito nela. Por isso custa <strong>caro</strong>!</p>
<p>Pra não dizer que é perfeito, os botões são um pouco &ldquo;mushy&rdquo; enquanto eu prefiro botões mais &ldquo;clicky&rdquo; com os Ambernic. Mas não significa que são ruins.</p>
<p>Por ser potente, também rodaria até Nintendo Switch sem problemas, mas aí a limitação é o tamanho da tela. Não acho que vale a pena rodar jogos feitos pra TVs grandes numa tela tão pequena assim. Ela é melhor mesmo pra retro-games, mas vai rodar PS2 e Gamecube de boas mesmo, com todos os filtros e upscaling que quiser pra deixar mais bonito que o original.</p>
<p>O review do Wulff Den diz tudo:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/U7G_R7nj7BM"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Sendo Snapdragon, esse handheld também é Android, então também é um saco de configurar. Mas no final roda tudo direitinho mesmo. Só seguir o guia do Russ.</p>
<p>Ele tem esse stick analógico no canto inferior esquerdo e tem um touchpad na direita que simula stick analógico direito. Não é confortável pra FPS, é usável pra algumas coisas como reposicionar câmera em jogos de plataforma 3D. Mas não espere usar o tempo todo. Tem o mesmo problema do Miyoo Flip que falei acima: fica MUITO pra baixo. Não é confortável num handheld vertical.</p>
<p>Se quiser jogos que requerem sticks analógicos, é melhor ficar num handheld horizontal, como o Odin 2, SteamDeck, Rog Ally, etc. O nome DMG é de Dot-Matrix Gameboy, que é o Gameboy Clássico. E o Pocket DMG de fato tem todos os fatores nostálgicos do DMG.</p>
<p>Eu, que tive o clássico, gosto muito desse formato. Mas eu acho que se você não tem nostalgia desse período, não vai fazer muita diferença. Esse formato limita jogos feitos pra telas wide-screen. Nesse caso o formato horizontal similar a Nintendo Switch é mil vezes mais ergonômico.</p>
<p>Como falei antes, é pra quem tem nostalgia e dinheiro pra jogar fora. Nada justifica comprar esse aparelho, por melhor que ele seja. É pra colecionador como eu. Odin 2 ou Retroid Pocket 5 tem custo-benefício melhores pra essa categoria.</p>
<h3>Analog Pocket<span class="hx:absolute hx:-mt-20" id="analog-pocket"></span>
    <a href="#analog-pocket" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Falando em caros, chegamos na categoria <strong>super-premium</strong>. E o mais super-premium de todos com certeza é o <a href="https://store.analogue.co/products/analogue-pocket-black"target="_blank" rel="noopener"><strong>Analog Pocket</strong></a>.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914141132_20250914_141049.jpg" alt="Analog Pocket"  loading="lazy" /></p>
<p>Essa desgraça nunca está em estoque. Eu mesmo encomendei na época da campanha de lançamento na Indiegogo e levou acho que <strong>1 ano</strong> pra chegar na minha casa. Custou os olhos da cara e mais alguns rims com os impostos do Brasil.</p>
<p>Ele é caro, mas o Pocket DMG é mais caro. Felizmente o preço hoje - se estiver em estoque - é &ldquo;só&rdquo; <strong>USD 220</strong> (sem frete, sem impostos). É razoavelmente acessível. Mas ele é feito pra um público muito específico: quem gosta de FPGAs.</p>
<p>A Analog é famosa por não usar emuladores via software, como RetroArch. Todos os handhelds que comentei até agora usam emuladores: Citra, RPCS3, PCSX2, DuckStation, Sudachi, Yuzu, etc.</p>
<table>
  <thead>
      <tr>
          <th>Spec</th>
          <th>Detail</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Display</td>
          <td>3.5-inch backlit LTPS LCD, Gorilla Glass, 1600 × 1440 resolution (~615 ppi) <a href="https://www.analogue.co/pocket?utm_source=chatgpt.com"target="_blank" rel="noopener">TweakTown+3analogue.co+3Retro Handhelds - Play It Forever+3</a></td>
      </tr>
      <tr>
          <td>Refresh Rate / Display Modes</td>
          <td>Variable refresh (about 30-62 Hz) with modes simulating original hardware quirks; supports display filters / palettes per system <a href="https://en.wikipedia.org/wiki/Analogue_Pocket?utm_source=chatgpt.com"target="_blank" rel="noopener">Wikipedia+2analogue.co+2</a></td>
      </tr>
      <tr>
          <td>CPU / FPGA</td>
          <td>Altera Cyclone V FPGA (≈49,000 logic elements) + Altera Cyclone 10 for system management <a href="https://en.wikipedia.org/wiki/Analogue_Pocket?utm_source=chatgpt.com"target="_blank" rel="noopener">Wikipedia+1</a></td>
      </tr>
      <tr>
          <td>Memory</td>
          <td>~ 3.4 MB Block RAM (in Cyclone V), plus 2 × 16 MB 16-bit cellular RAM, 64 MB 16-bit synchronous DRAM, 256 KB asynchronous SRAM <a href="https://en.wikipedia.org/wiki/Analogue_Pocket?utm_source=chatgpt.com"target="_blank" rel="noopener">Wikipedia</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>4,300 mAh Li-ion (≈3.7 V) <a href="https://en.wikipedia.org/wiki/Analogue_Pocket?utm_source=chatgpt.com"target="_blank" rel="noopener">Wikipedia+2Reddit+2</a></td>
      </tr>
      <tr>
          <td>Battery Life</td>
          <td>~6-10 hours depending on usage/brightness <a href="https://retrohandhelds.gg/rh-reviews-the-analogue-pocket/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+1</a></td>
      </tr>
      <tr>
          <td>Weight</td>
          <td>~276 g <a href="https://retrohandhelds.gg/rh-reviews-the-analogue-pocket/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+1</a></td>
      </tr>
      <tr>
          <td>Connectivity / I/O</td>
          <td>USB-C (for power, firmware, dock/video); micro-SD slot; 3.5 mm headphone jack; Game Boy link cable port <a href="https://en.wikipedia.org/wiki/Analogue_Pocket?utm_source=chatgpt.com"target="_blank" rel="noopener">Wikipedia+1</a></td>
      </tr>
      <tr>
          <td>Cartridge Support</td>
          <td>Native for Game Boy / Game Boy Color / Game Boy Advance; supports additional systems via adapters (Game Gear, Neo Geo Pocket, TurboGrafx-16, Atari Lynx etc.) <a href="https://retrohandhelds.gg/rh-reviews-the-analogue-pocket/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2analogue.co+2</a></td>
      </tr>
      <tr>
          <td>Extras</td>
          <td>Stereo speakers; Nanoloop sequencer/synth; original style “link” port; sleep mode; various display filters; possibility of dock for HDMI output (via Analogue Dock, sold separately) <a href="https://retrohandhelds.gg/rh-reviews-the-analogue-pocket/?utm_source=chatgpt.com"target="_blank" rel="noopener">Retro Handhelds - Play It Forever+2analogue.co+2</a></td>
      </tr>
      <tr>
          <td>Release Date</td>
          <td>December 13, 2021 <a href="https://en.wikipedia.org/wiki/Analogue_Pocket?utm_source=chatgpt.com"target="_blank" rel="noopener">Wikipedia+2Ars Technica+2</a></td>
      </tr>
  </tbody>
</table>
<p>O Analog Pocket vem com o Altera Cyclone V FPGA. Ele foi feito pra rodar consoles antigos como se fosse o hardware original. Não é 100% perfeito (porque os cores de cada console são codificados via engenharia reversa dos chips, mas não é garantia que foram clonados 100%, depende de quem codificou os cores).</p>
<p>No caso do Pocket, ele tem slot pra encaixar cartuchos de verdade de Gameboy e Gameboy Advance. Dinamicamente ele copia a ROM pra memória RAM, carrega o core do Gameboy, e dali é como se estivesse rodando um Gameboy de verdade, no hardware original. Então coisas como frame lag, input lag, e qualquer tipo de latência são minimizados ou zerados. E se jogar lado a lado com um Gameboy de verdade, ele tende a ser idêntico, frame a frame.</p>
<p>Pra maioria das pessoas, na prática, isso não importa - ninguém vai ficar comparando quadro a quadro e a maioria dos emuladores via software hoje fazem um excelente trabalho de emular os consoles antigos de uma forma que um jogador médio não vai perceber a diferença. É realmente só pra quem entende os detalhes, como speed runners. Eu mesmo não noto a diferença.</p>
<p>Mas a grande vantagem desse console, pra mim, é a tela. O tamanho dela é só 3.5&quot; e é IPS, não OLED. Mas é um dos melhores IPS do mercado. Brilhante, boas cores. Mais importante, é a mais densa do mercado com resolução absurda de 1600x1440 pixels (absurdos 615 ppi).</p>
<p>Isso é exatamente 10x a resolução do Gameboy original. Significa que ele consegue fazer upscaling de 10x pixel-perfect. Cada 1 pixel do Gameboy original vira 10 pixels no Analog Pocket. Com isso é possível também colocar filtros que simulam a tela dot-matrix verde antiga, no nível do sub-pixel, simulando todos os efeitos colaterais daquela tela obsoleta, trazendo uma sensação ainda mais perfeita de estar jogando um Gameboy de verdade.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914142232_20250914_142204.jpg" alt="DMG screen"  loading="lazy" /></p>
<p>Não é exagero. Olhem nessa foto, a simulação dos pixels do LCD antigo. Você enxerga exatamente o mesmo comportamento dos pixels com latência do LCD verde.</p>
<p>Acho que ninguém fez um review mais detalhado do que a <strong>Digital Foundry</strong>:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/O9Qy-H7H6og"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Essa tela, sozinha, é razão suficiente pra ter um Analog Pocket se você for um aficcionado por retro-games como eu. É item de colecionador que aprecia qualidade de verdade.</p>
<p>Além disso, eles abriram suporte a <strong>openFPGA</strong> e isso dá possibilidade de instalar dezenas de outras cores de FPGA feitas pela comunidade open source.</p>
<p>Existem várias ferramentas pra instalar e organizar esses cores, como o <a href="https://github.com/neil-morrison44/pocket-sync"target="_blank" rel="noopener">PocketSync</a></p>
<p><img src="https://github.com/neil-morrison44/pocket-sync/raw/main/readme_images/main_screen.png" alt="PocketSync"  loading="lazy" /></p>
<p>Tem FPGAs de arcades antigos, CPS1, NeoGeo, Lynx, PC Engine e muito mais. É como ter o hardware original desses consoles no seu bolso. Não tem experiência igual.</p>
<p>Sim, dá pra rodar tudo isso num emulador no seu PC. Mas vai por mim, essa tela é impressionante. Igualmente tão impressionante quanto o OLED do Pocket DMG. Eles ficam pau a pau em nível de qualidade, mas o Analog tem mais densidade de resolução ainda.</p>
<h3>Menção Honrosa: Razer Kishi<span class="hx:absolute hx:-mt-20" id="menção-honrosa-razer-kishi"></span>
    <a href="#men%c3%a7%c3%a3o-honrosa-razer-kishi" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Notem como metade dos handhelds que eu falei acima são todos Android. Basicamente chips de smartphone mesmo. Daí você já deve ter pensado, <em>&ldquo;ué, porque não jogar direto no meu smartphone então?&rdquo;</em></p>
<p>E você está correto. Pra isso existem controles especiais pra smartphones, como o meu favorito, o <a href="https://www.razer.com/br-pt/mobile-controllers/razer-kishi-v2"target="_blank" rel="noopener"><strong>Razer Kishi</strong></a></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914143603_20250914_143535.jpg" alt="Razer Kishi"  loading="lazy" /></p>
<p>Pra você que não pode sair de casa sem seu Genshin Impact, essa é a melhor opção mesmo:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914143839_razer-kishi-v2-usbc-hero-desktop-1920x700-update.webp" alt="Kishi"  loading="lazy" /></p>
<p>Eu sei que existem outras alternativas, algumas genéricas do AliExpress, e eu não conheço elas. Procure o review específico no YouTube. Cada uma tem suas características. E por causa de tamanho, posição da porta USB-C e coisas assim, nem todo modelo encaixa, por isso é bom ver o site do fabricante pra ver se seu modelo vai encaixar nele. Não é garantido.</p>
<p>Mas ele basicamente funciona como um controle de Xbox conectado via Bluetooth ou USB-C no seu smartphone. Só isso.</p>
<p>O <a href="https://retrogamecorps.com/2022/03/13/android-emulation-starter-guide/"target="_blank" rel="noopener">guia de Android do Russ</a> vale pro seu smartphone também então dá pra instalar emuladores e jogar retro-games igual um Odin 2 ou Pocket DMG. A tela de smartphone normalmente é maior e você já carrega ele no seu bolso todos os dias, daí não precisa carregar um segundo dispositivo.</p>
<p>O controle em si não é pequeno, mas é leve. Tem num case que é fácil de jogar na mochila e não ter problema:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914144206_20250914_144142.jpg" alt="case kishi"  loading="lazy" /></p>
<p>Então sim, não precisa gastar a mais com um novo handheld, use seu smartphone ou aquele mais velho que você encostou e não tinha uso pra ele. Pra retro-games vai funcionar muito bem.</p>
<h3>Rog Ally X<span class="hx:absolute hx:-mt-20" id="rog-ally-x"></span>
    <a href="#rog-ally-x" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No outro lado espectro, se quiser o mais poderoso e o mais versátil de todos, tamanho não for problema, dinheiro não for problema, vá pra um Handheld PC mesmo. Na minha opinião, o melhor ainda é o <a href="https://rog.asus.com/br/gaming-handhelds/rog-ally/rog-ally-x-2024/"target="_blank" rel="noopener"><strong>ASUS Rog Ally X</strong></a></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914144402_20250914_144341.jpg" alt="Rog Ally X"  loading="lazy" /></p>
<p>Esse é caro nível notebook, porque é basicamente isso que ele é: um notebook num formato mais compacto. Tem as mesmas tecnologias de um notebook.</p>
<table>
  <thead>
      <tr>
          <th>Category</th>
          <th>Specification</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>CPU</td>
          <td>AMD Ryzen Z1 Extreme processor <a href="https://rog.asus.com/gaming-handhelds/rog-ally/rog-ally-x-2024/?utm_source=chatgpt.com"target="_blank" rel="noopener">@ROG+2Tom&rsquo;s Guide+2</a></td>
      </tr>
      <tr>
          <td>RAM</td>
          <td>Up to 24 GB LPDDR5X-7500 <a href="https://rog.asus.com/gaming-handhelds/rog-ally/rog-ally-x-2024/?utm_source=chatgpt.com"target="_blank" rel="noopener">@ROG+2Ars Technica+2</a></td>
      </tr>
      <tr>
          <td>Storage</td>
          <td>Up to 2 TB NVMe M.2-2280 SSD; common version is 1 TB <a href="https://rog.asus.com/us/gaming-handhelds/rog-ally/rog-ally-x-2024/?utm_source=chatgpt.com"target="_blank" rel="noopener">@ROG+2Best Buy+2</a></td>
      </tr>
      <tr>
          <td>Display</td>
          <td>7-inch IPS LCD, FHD (1920×1080), 120 Hz refresh rate, 500 nits brightness, Gorilla Glass Victus, sRGB 100%, Adobe ~75% <a href="https://rog.asus.com/us/gaming-handhelds/rog-ally/rog-ally-x-2024/spec/?utm_source=chatgpt.com"target="_blank" rel="noopener">@ROG+2Tom&rsquo;s Guide+2</a></td>
      </tr>
      <tr>
          <td>Ports / I/O</td>
          <td>• 1x USB-C (USB4 / DisplayPort 2.1 / Power Delivery)  <br>• 1x USB-C USB 3.2 Gen2  <br>• 3.5 mm audio jack  <br>• microSD card reader (UHS-II) <a href="https://www.xbox.com/en-US/handhelds/rog-xbox-ally?utm_source=chatgpt.com"target="_blank" rel="noopener">Xbox.com+2Tom&rsquo;s Guide+2</a></td>
      </tr>
      <tr>
          <td>Wireless / Connectivity</td>
          <td>Wi-Fi 6E; Bluetooth 5.2 <a href="https://www.tomsguide.com/gaming/handheld-gaming/asus-rog-ally-x-review?utm_source=chatgpt.com"target="_blank" rel="noopener">Tom&rsquo;s Guide+1</a></td>
      </tr>
      <tr>
          <td>Battery</td>
          <td>80 Wh battery cell <a href="https://www.tomsguide.com/gaming/handheld-gaming/asus-rog-ally-x-review?utm_source=chatgpt.com"target="_blank" rel="noopener">Tom&rsquo;s Guide+1</a></td>
      </tr>
      <tr>
          <td>Cooling / Design</td>
          <td>Zero Gravity thermal system with dual fans; upgraded grips and refined control layout vs original Ally <a href="https://los40.com/2024/06/06/asus-lanza-el-rog-ally-x-una-de-las-mejores-consolas-portatiles-del-mercado/?utm_source=chatgpt.com"target="_blank" rel="noopener">LOS40+1</a></td>
      </tr>
      <tr>
          <td>Weight &amp; Size</td>
          <td>~ 678 g; dimensions similar to original Ally but thicker and heavier due to bigger battery and reinforced frame <a href="https://los40.com/2024/06/06/asus-lanza-el-rog-ally-x-una-de-las-mejores-consolas-portatiles-del-mercado/?utm_source=chatgpt.com"target="_blank" rel="noopener">LOS40+1</a></td>
      </tr>
      <tr>
          <td>OS</td>
          <td>Windows 11 Home + Armoury Crate SE <a href="https://rog.asus.com/gaming-handhelds/rog-ally/rog-ally-x-2024/?utm_source=chatgpt.com"target="_blank" rel="noopener">@ROG+1</a></td>
      </tr>
  </tbody>
</table>
<p>A primeira versão (que ainda é boa e superior ao Steam Deck), num Mercado Livre, vai ser faixa de <strong>BRL 5.000</strong>. A segunda geração que é o &ldquo;X&rdquo;, com chip Z1 Extreme vai ser nada menos que uns <strong>BRL 15.000</strong>. Como falei é nível de notebook e iPhones.</p>
<p>Mas também, se conectar em qualquer Dock USB-C, dá pra conectar num monitor externo, teclado, mouse e ele vira um PC mesmo, rodando Windows 11 normalmente. Dá pra usar pra navegar a web, ver seus e-mails, até programar.</p>
<p>São 24GB de LPDDR5X-7500 (compartilhada com a iGPU Radeon) é bem rápida, tem 2TB de NVME 2280 (full-size), tela de 7&quot; IPS (1&quot; maior que o Switch Original, 1&quot; menor que o Switch 2, Full-HD, 1920x1080 pixels, 120hz, 500 nits de brilho).</p>
<p>O SOC Z1 Extreme é Zen 4, com 8 cores, 16 threads, boost até 5.10 Ghz, com Radeon 780M (12 CUs), TDP de 15 a 30W (essa é a parte que ele é mais fraco que um notebook, lógico, não tem espaço pra dissipar mais calor).</p>
<p>Em comparação a outros chips, ele é mais rápido que um antigo Ryzen 9 5980HS, mais rápido que um Ryzen 5 7535HS. Ou seja é classe de um Ryzen 9 HS. Não chega a ser classe desktop como um Ryzen 9 7945HX ou 8945HX, mas pra um handhed, é muita potência.</p>
<p>E sim, tem outros similares no mercado hoje, como o <a href="https://www.lenovo.com/us/en/c/handheld/"target="_blank" rel="noopener">Lenovo Legion Go</a> que tem tela maior ainda de 8&quot; 120hz, mesmo Z1 Extreme. Ou o Legion Go 2 já com Z2 Extreme, que é arquitetura Zen 5.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914145339_nSZZBYmfv2J7nDTkzGbRcN.webp" alt="Lenovo Legion Go 2"  loading="lazy" /></p>
<p>Tem o <a href="https://www.msi.com/Handheld/Claw-A8-BZ2EMX"target="_blank" rel="noopener">MSI Claw A8</a> também com Z2 Extreme, tela de 8&quot; 120hz.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914145452_Spesifikasi-MSI-Claw-A8.webp" alt="MSI Claw A8"  loading="lazy" /></p>
<p>Qual o melhor? Não sei. Eu só experimentei o Rog Ally X. Recomendo assistir os reviews do <strong>ETA PRiME</strong>. Ele faz as melhores comparações de performance e benchmarks desses chips.</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/5T6ZvpZNZT4"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>A ASUS também firmou parceria com a Microsoft pra lançar o novo <a href="https://www.xbox.com/en-US/handhelds/rog-xbox-ally"target="_blank" rel="noopener"><strong>ROG Xbox Ally</strong></a>, com Z2 Extreme e um OS de Xbox adaptado pra handheld, que tira a principal desvantagem desses handhelds todos: o fato que Windows 11 é um dos piores OS de todos os tempos pra handhelds. Dá pra usar, mas é bem gambiarra. Já com esse OS oficial, é como se tivesse um Xbox Series no bolso de verdade, com capacidade pra rodar jogos de Steam e outra lojas também.</p>
<p>Eu não tenho, mas fiquei com vontade de experimentar.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914145806_new-leak-rog-xbox-ally-and-ally-x-prices-retail-1-860x484.webp" alt="Rog Xbox Ally"  loading="lazy" /></p>
<p>Todos esses são mais potentes que o <strong>SteamDeck</strong>, mas este ainda continua sendo o melhor custo-benefício no segmento e com o melhor ecossistema de mods, acessórios, e tudo mais. E a Valve tem dado bom suporte de atualizações.</p>
<p>Graças a tecnologias como FSR, hoje em dia dá pra fazer upscaling de resolução e frame generation via IA pra ter mais FPS. Então, jogando em medium settings ou low settings, não fica tão ruim. Com chips Z1 Extreme, Z2 Extreme e Ryzen AI Max+, já dá pra subir pra medium ou até high settings e ficar com bom FPS em Full-HD (1080p).</p>
<p>Todos eles tem saída HDMI, então dá pra ligar numa TV ou monitor. Todos eles aceitam controles externos Bluetooth, então dá pra ligar seu controle de Xbox ou 8BitDo da vida. E ele vira tanto um console quanto um handheld.</p>
<p>Mas são caros, faixa que vai de USD 600 a USD 900 dependendo da marca e modelo. São mais caros que um Playstation 5 e quase faixa de um bom notebook mesmo. Dependendo vale mais a pena comprar um notebook com Ryzen AI Max, que vai ter a mesma Radeon integrada e suportar bons jogos.</p>
<h3>Portáteis Originais<span class="hx:absolute hx:-mt-20" id="portáteis-originais"></span>
    <a href="#port%c3%a1teis-originais" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Vamos a outra constatação importante: qual a melhor forma de jogar handhelds antigos com duas telas, como <strong>Nintendo DS</strong> e <strong>Nintendo 3DS</strong>?</p>
<p>Simples: nos handhelds originais.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914152655_20250914_152628.jpg" alt="nintendo"  loading="lazy" /></p>
<p>A forma mais fácil de jogar jogos piratas neles é com os <a href="https://www.r4ds.com/"target="_blank" rel="noopener">cartuchos R4</a>, acho que não é difícil achar eles em Mercado Livre ou AliExpress. Eles aceitam microSD card e você joga suas ROMs nela, coloca no 3DS e já era.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914152920_20250914_152808.jpg" alt="R4"  loading="lazy" /></p>
<p>Nintendo 3DS teve &ldquo;end-of-life&rdquo; recentemente e desde então todos os jogos estão facilmente disponíveis online. Leia o <a href="https://3ds.hacks.guide/pt_BR/"target="_blank" rel="noopener"><strong>Guia de Hacks do 3DS</strong></a> pra saber como desbloquear o seu. Os jogos estão todos no <a href="https://hshop.erista.me/"target="_blank" rel="noopener"><strong>hShop</strong></a> e quando desbloquear seu 3DS vai instalar o App pra abrir esse site e de lá pode baixar direto as ROMS pra memória interna do aparelho também. Existem várias opções.</p>
<p>Também é possível instalar emuladores no 3DS: vai rodar Gameboy, até Genesis e Master System. Não espere rodar um PS1 ou PSP nele, obviamente, é um hardware fraco.</p>
<p>Só tem uma coisa que me desagrada: as telas são velhas e antiquadas. Tem baixa resolução, baixo brilho, baixo contraste. Comparado com a tela do seu smartphone, nem chega aos pés. Mas pra jogar em dual screen, não tem jeito mais fácil.</p>
<p>Sim, vários fabricantes vieram tentando fazer handhelds com duas telas, como o <a href="https://www.ayaneo.com/goods/9059668426997"target="_blank" rel="noopener"><strong>Ayaneo Flip DS</strong></a> mas é extremamente chato de usar ele. Veja este review do Wulff Den:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/j1TXnfT-zIg"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>São extremamente caros (Android ou Windows) e a experiência de software ainda é extremamente ruim. Não compensa pelo que se paga. Melhor ficar com os originais.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914153857_20250914_153604.jpg" alt="gameboy aluminum"  loading="lazy" /></p>
<p>No caso de Gameboy Advance, já existem dezenas de bons handhelds com emuladores, então é melhor ficar com os RG35XX SP que eu já recomendei antes.</p>
<p>Mas, caso queira explorar a comunidade de mods, recomendo muito o site <a href="https://www.boxypixel.com/"target="_blank" rel="noopener"><strong>Boxy Pixels</strong></a> que fazem cases em alumínio e diversos acessórios pra dispositivos antigos, seja Gameboy, DS, até iPods. Veja este video do canal <strong>Macho Nacho</strong> que demonstra como fazer esse mesmo Gameboy Advance SP em alumínio:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/gJJgnZqpjVE"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Foi por causa desse canal que eu comprei o kit e montei o meu. É caro, é um hobby pra entusiastas mesmo. Isso não é pra amadores! Mas se tiver essa vontade, tá aí o site e o canal pra guiar.</p>
<p>Além disso, dá pra jogar ROMs piratas no Advance também. Similar aos cartuchos R4 pra 3DS tem os cartuchos <a href="https://www.ezflash.cn/products/"target="_blank" rel="noopener"><strong>EZ-Flash</strong></a> tanto pra Gameboy DMG/Color quanto Advance. Também são adaptadores de microSD card, onde você joga suas ROMS, pluga no hardware original e ele vai bootar um menu pra escolher as roms.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914154214_20250914_154141.jpg" alt="advance ez-flash"  loading="lazy" /></p>
<p>Eis um exemplo do EZ-Flash no meu Advance SP modificado. A tela está com white balance errado não sei porque, talvez eu tenha cometido algum erro ao montar, mas não parei pra consertar ainda. O importante era só mostrar o menu que aparece no boot pra escolher o jogo.</p>
<p>O cartucho funciona até no Analog Pocket, mas é redundante porque no Pocket posso jogar os ROMs direto nele.</p>
<h3>Os Softwares<span class="hx:absolute hx:-mt-20" id="os-softwares"></span>
    <a href="#os-softwares" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Agora deixa eu resumir o que você precisa saber de emuladores. O primeiro e mais importante de todos é o <a href="https://retroarch.com/"target="_blank" rel="noopener"><strong>RetroArch</strong></a>.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914150325_How_to_use_cheats_on_retroarch.webp" alt="RetroArch"  loading="lazy" /></p>
<p>Ele <strong>não é um emulador</strong>, ele é um <strong>front-end pra emuladores</strong>. É uma forma mais fácil de instalar os diversos emuladores individuais, cheats, save states, configurar controles que funcionam em todos, filtros, e muito mais.</p>
<p>Os emuladores mesmo ele chama de &ldquo;Cores&rdquo; que são &ldquo;wrappers&rdquo;/&ldquo;adaptadores&rdquo; pros emuladores de verdade. Cada sistema tem diversos emuladores feitos por diferentes pessoas ou grupos, que focam em coisas específicas (rodar maior quantidade de jogos, rodar menos jogos mas com precisão, conseguir rodar com menos recursos - bons pra handhelds fracos, etc).</p>
<p>Vamos ver uma lista básica (isso muda o tempo todo):</p>
<h3>Nintendo<span class="hx:absolute hx:-mt-20" id="nintendo"></span>
    <a href="#nintendo" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>NES: <strong>Mesen</strong>, Nestopia UE. <a href="https://www.ouma.jp/ootake/?utm_source=chatgpt.com"target="_blank" rel="noopener">Ouma</a></li>
<li>SNES: <strong>bsnes</strong>, Snes9x. <a href="https://www.ouma.jp/ootake/ootake.html?utm_source=chatgpt.com"target="_blank" rel="noopener">Ouma+1</a></li>
<li>N64: <strong>Mupen64Plus-Next</strong> (+ParaLLEl-RDP/Angrylion), Project64. <a href="https://docs.libretro.com/library/mupen64plus/?utm_source=chatgpt.com"target="_blank" rel="noopener">Libretro Docs+2Libretro+2</a></li>
<li>GameCube/Wii: <strong>Dolphin</strong>. <a href="https://dolphin-emu.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">Dolphin Emulator</a></li>
<li>Wii U: <strong>Cemu</strong>. <a href="https://cemu.info/?utm_source=chatgpt.com"target="_blank" rel="noopener">Cemu</a></li>
<li>Switch: <a href="https://yuzuemulators.com/"target="_blank" rel="noopener"><strong>Yuzu</strong></a>, <a href="https://ryujinx.app/"target="_blank" rel="noopener"><strong>Ryujinx</strong></a></li>
<li>GB/GBC: <strong>SameBoy</strong>, Gambatte. <a href="https://sameboy.github.io/?utm_source=chatgpt.com"target="_blank" rel="noopener">sameboy.github.io</a></li>
<li>GBA: <strong>mGBA</strong>. <a href="https://bsnes.org/about/?utm_source=chatgpt.com"target="_blank" rel="noopener">BSNES</a></li>
<li>NDS: <strong>melonDS</strong>, DeSmuME. <a href="https://github.com/flyinghead/flycast?utm_source=chatgpt.com"target="_blank" rel="noopener">GitHub</a></li>
<li>3DS: <strong>Lime3DS</strong> → now <strong>Azahar (successor fork)</strong>. <a href="https://redream.io/?utm_source=chatgpt.com"target="_blank" rel="noopener">redream.io</a></li>
<li>Virtual Boy: <strong>Mednafen VB (Beetle VB)</strong>. <a href="https://emulicious.net/tag/game-gear/?utm_source=chatgpt.com"target="_blank" rel="noopener">Emulicious</a></li>
</ul>
<h3>Sega<span class="hx:absolute hx:-mt-20" id="sega"></span>
    <a href="#sega" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>SG-1000/Master System/Game Gear: <strong>Emulicious</strong>, Genesis Plus GX.</li>
<li>Mega Drive/Genesis: <strong>BlastEm</strong>, Genesis Plus GX. <a href="https://www.airdroid.com/screen-mirror/sega-saturn-emulator/?utm_source=chatgpt.com"target="_blank" rel="noopener">AirDroid</a></li>
<li>Sega CD: <strong>Genesis Plus GX</strong>. <a href="https://www.airdroid.com/screen-mirror/sega-saturn-emulator/?utm_source=chatgpt.com"target="_blank" rel="noopener">AirDroid</a></li>
<li>32X: <strong>PicoDrive</strong>. <a href="https://emulation.gametechwiki.com/index.php/Recommended_emulators?utm_source=chatgpt.com"target="_blank" rel="noopener">GameTechWiki</a></li>
<li>Saturn: <strong>Beetle/Mednafen Saturn</strong>, Kronos/Yaba Sanshiro (faster). <a href="https://github.com/libretro/neocd_libretro?utm_source=chatgpt.com"target="_blank" rel="noopener">GitHub</a></li>
<li>Dreamcast/Naomi: <strong>Flycast</strong>, Redream. <a href="https://www.mamedev.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">mamedev.org+1</a></li>
</ul>
<h3>Sony<span class="hx:absolute hx:-mt-20" id="sony"></span>
    <a href="#sony" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>PlayStation (PS1): <strong>DuckStation</strong> (accuracy/perf), Beetle PSX HW/SW. <a href="https://emulicious.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">Emulicious</a></li>
<li>PlayStation 2: <strong>PCSX2</strong>. <a href="https://pcsx2.net/docs/setup/linux/?utm_source=chatgpt.com"target="_blank" rel="noopener">pcsx2.net</a></li>
<li>PlayStation 3: <strong>RPCS3</strong>. <a href="https://rpcs3.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">RPCS3+1</a></li>
<li>PSP: <strong>PPSSPP</strong>. <a href="https://rpcs3.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">RPCS3</a></li>
<li>PS Vita: <strong>Vita3K</strong>. <a href="https://github.com/LIJI32/SameBoy?utm_source=chatgpt.com"target="_blank" rel="noopener">GitHub</a></li>
<li>PS4: <strong>shadPS4</strong> (rapid progress; still early). <a href="https://shadps4.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">ShadPS4+2ShadPS4+2</a></li>
</ul>
<h3>Microsoft<span class="hx:absolute hx:-mt-20" id="microsoft"></span>
    <a href="#microsoft" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Xbox (OG): <strong>xemu</strong>, Cxbx-Reloaded. <a href="https://sameboy.github.io/?utm_source=chatgpt.com"target="_blank" rel="noopener">sameboy.github.io+1</a></li>
<li>Xbox 360: <strong>Xenia</strong>. <a href="https://emulation.gametechwiki.com/index.php/Recommended_emulators?utm_source=chatgpt.com"target="_blank" rel="noopener">GameTechWiki</a></li>
</ul>
<h3>NEC / Hudson<span class="hx:absolute hx:-mt-20" id="nec--hudson"></span>
    <a href="#nec--hudson" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>PC Engine/TurboGrafx-16(+CD): <strong>Mednafen (Beetle PCE Fast)</strong>, Ootake (Windows). <a href="https://emulation.gametechwiki.com/index.php/Neo_Geo_Pocket_emulators?utm_source=chatgpt.com"target="_blank" rel="noopener">GameTechWiki+1</a></li>
<li>PC-FX: <strong>Mednafen (Beetle PC-FX)</strong>. <a href="https://emulicious.net/tag/game-gear/?utm_source=chatgpt.com"target="_blank" rel="noopener">Emulicious</a></li>
</ul>
<h3>SNK / Arcade &amp; Handhelds<span class="hx:absolute hx:-mt-20" id="snk--arcade--handhelds"></span>
    <a href="#snk--arcade--handhelds" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Neo Geo AES/MVS (arcade): <strong>FBNeo</strong>, MAME. <a href="https://www.ppsspp.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">ppsspp.org+1</a></li>
<li>Neo Geo CD: <strong>NeoCD (libretro)</strong>, MAME. <a href="https://melonds.kuribo64.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">melonds.kuribo64.net+1</a></li>
<li>Neo Geo Pocket/Color: <strong>Mednafen (Beetle NeoPop)</strong>, RACE. <a href="https://github.com/LIJI32/SameBoy?utm_source=chatgpt.com"target="_blank" rel="noopener">GitHub</a></li>
</ul>
<h3>Bandai / Others (handheld)<span class="hx:absolute hx:-mt-20" id="bandai--others-handheld"></span>
    <a href="#bandai--others-handheld" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>WonderSwan/Color: <strong>Mednafen (Beetle WSWAN)</strong>. [sameboy.github.io](<a href="https://sameboy.github.io/?utm_source=chatgpt.com"target="_blank" rel="noopener">https://sameboy.github.io/?utm_source=chatgpt.com</a></li>
<li>Atari Lynx: <strong>Mednafen (Beetle Handy)</strong>. <a href="https://emulicious.net/tag/game-gear/?utm_source=chatgpt.com"target="_blank" rel="noopener">Emulicious</a></li>
</ul>
<h3>Atari (consoles)<span class="hx:absolute hx:-mt-20" id="atari-consoles"></span>
    <a href="#atari-consoles" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>2600: <strong>Stella</strong>. <a href="https://emulation.gametechwiki.com/index.php/Recommended_emulators?utm_source=chatgpt.com"target="_blank" rel="noopener">GameTechWiki</a></li>
<li>5200/8-bit: <strong>Altirra</strong> / Atari800. <a href="https://emulation.gametechwiki.com/index.php/Recommended_emulators?utm_source=chatgpt.com"target="_blank" rel="noopener">GameTechWiki</a></li>
<li>7800: <strong>A7800</strong> (or MAME). <a href="https://emulation.gametechwiki.com/index.php/Recommended_emulators?utm_source=chatgpt.com"target="_blank" rel="noopener">GameTechWiki</a></li>
<li>Jaguar: <strong>BigPEmu</strong>. <a href="https://mednafen.github.io/?utm_source=chatgpt.com"target="_blank" rel="noopener">mednafen.github.io</a></li>
</ul>
<h3>3DO / CD-i / Misc. classic<span class="hx:absolute hx:-mt-20" id="3do--cd-i--misc-classic"></span>
    <a href="#3do--cd-i--misc-classic" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>3DO: <strong>Opera (libretro)</strong>. <a href="https://docs.libretro.com/library/opera/?utm_source=chatgpt.com"target="_blank" rel="noopener">Libretro Docs</a></li>
<li>Philips CD-i: <strong>MAME</strong> (best public option). <a href="https://vita3k.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">Vita3K</a></li>
<li>Vectrex: <strong>ParaJVE</strong>. <a href="https://vectrex-emu.blogspot.com/?utm_source=chatgpt.com"target="_blank" rel="noopener">vectrex-emu.blogspot.com</a></li>
<li>Intellivision: <strong>jzIntv</strong>. <a href="https://intellivision.us/intvgames/jzintv/jzintv.php?utm_source=chatgpt.com"target="_blank" rel="noopener">intellivision.us</a></li>
<li>ColecoVision: <strong>blueMSX (core)</strong> / MAME. <a href="https://docs.libretro.com/library/bluemsx/?utm_source=chatgpt.com"target="_blank" rel="noopener">Libretro Docs</a></li>
<li>Magnavox Odyssey²/Videopac+: <strong>O2EM</strong>. <a href="https://o2em.sourceforge.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">o2em.sourceforge.net</a></li>
<li>Fairchild Channel F, Bally Astrocade: <strong>MAME</strong>. <a href="https://vita3k.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">Vita3K</a></li>
</ul>
<h3>Arcade (general)<span class="hx:absolute hx:-mt-20" id="arcade-general"></span>
    <a href="#arcade-general" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>MAME</strong> (breadth/accuracy), <strong>FinalBurn Neo</strong> (speed/curation). <a href="https://vita3k.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">Vita3K+1</a></li>
</ul>
<h3>Home computers (popular)<span class="hx:absolute hx:-mt-20" id="home-computers-popular"></span>
    <a href="#home-computers-popular" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Commodore 64/128/VIC-20/PET: <strong>VICE</strong>. <a href="https://vice-emu.sourceforge.io/?utm_source=chatgpt.com"target="_blank" rel="noopener">vice-emu.sourceforge.io</a></li>
<li>Amiga: <strong>WinUAE</strong> (Windows), <strong>FS-UAE</strong> (cross-platform). [winuae.net+1](<a href="https://www.winuae.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">https://www.winuae.net/?utm_source=chatgpt.com</a></li>
<li>Atari ST/STE/TT/Falcon: <strong>Hatari</strong>, Steem SSE. <a href="https://www.hatari-emu.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">hatari-emu.org+1</a></li>
<li>ZX Spectrum: <strong>FUSE</strong>, Retro Virtual Machine. <a href="https://fuse-emulator.sourceforge.net/?utm_source=chatgpt.com"target="_blank" rel="noopener">fuse-emulator.sourceforge.net+1</a></li>
<li>MSX: <strong>openMSX</strong>, blueMSX (stale but usable; libretro core still common). <a href="https://openmsx.org/?utm_source=chatgpt.com"target="_blank" rel="noopener">openmsx.org+2msx.org+2</a></li>
<li>PC-98: <strong>Neko Project II kai (NP2kai)</strong> (or DOSBox-X for DOS/V/PC-98 modes). <a href="https://docs.libretro.com/library/neko_project_ii_kai/?utm_source=chatgpt.com"target="_blank" rel="noopener">Libretro Docs+1</a></li>
<li>DOS / Win9x era: <strong>DOSBox Staging</strong> (games), <strong>DOSBox-X</strong> (games + Win3.x/9x).</li>
</ul>
<p>Alguns emuladores são chatinhos, porque estão incompletos ou em desenvolvimento ou bugados ou sem suporte mais. Alguns exemplos:</p>
<ul>
<li>Xemu pra Xbox original funciona bem, mas é bem mal otimizado, portanto é bem pesado. Não vai rodar em nada que não seja pelo menos um handheld PC moderno como o Rog Ally ou um PC de verdade.</li>
<li>Xenia Canary pra Xbox 360 ainda é bem bugado, só funciona em linha de comando (tem uma GUI de terceiros mais ou menos), tem que configurar arquivos pra tunar cada jogo. Meus jogos favoritos como Forza Motorsport 4 rodam com vários bugs visuais e crashes aleatórios que inviabiliza jogar (por isso comprei um Xbox 360 de verdade e desbloqueei).</li>
<li>RPCS3 avançou bastante, mas não chega aos pés do PCSX2 ainda. Muitos jogos exigem configurações especiais - que não são intuitivos pra um amador, tem que ler o Wiki com muito cuidado, pra cada jogo. Jogos favoritos meus como Gran Turismo 6 ainda não rodam direito.</li>
<li>shadPS4, esquece por enquanto, ele começou desenvolvimento recentemente, ainda é mais alpha que beta, quase nada roda nele sem muito trabalho. Não é pra amadores.</li>
<li>Dolphin, até que é bem estável e quase plug and play, mas é mais pesado que um PCSX2. Não vai rodar em hardwares fracos.</li>
<li>Mupen64 roda bem também, até em Android, mas nem todo jogo ainda roda nele e alguns rodam com pequenos glitches. No geral dá pra jogar, mas não espere perfeição.</li>
<li>Emuladores de 8-bits, 16-bits, estão bem completos, estáveis, rodam liso qualquer um deles, pode confiar, incluindo arcades via Mame ou FBNEO. Mas no caso desses últimos, eles exisgem <strong>romsets</strong> (conjuntos de ROMS compatíveis com o emulador), não dá pra pegar qualquer ROM aleatória por aí e esperar que vai rodar. Fuce o <a href="https://archive.org/details/Neo-geoRomCollectionByGhostware"target="_blank" rel="noopener">Internet Archive</a> pra achar alguns desses romsets.</li>
<li>Home Computers como openMSX ou DOSBox, lembre que muitos jogos só funcionam com teclado ou mouse ou os dois e talvez não funcione muito bem mesmo mapeando pra controle. Tem que ler o Wiki de cada jogo pra saber.</li>
<li>Por causa dos processos da Nintendo, emuladores de Switch aparecem e somem, alguém faz um novo fork e reaparece. Yuzu já foi fechado mas forks apareceram. Surgiu Suyu, mas fechou. Ryujinx continua funcionando e é o meu favorito. Android acho que tem Sudachi e outros. Tem que dar uma pesquisada.</li>
</ul>
<p>RetroArch tem suporte pra quase todos esses emuladores. Portanto só instalando ele, já vai te dar acesso à maioria. Alguns é melhor instalar separado como apps individuais, em particular isso é verdade em Android, por isso falo tanto do guia do Russ e como Android é mais chato.</p>
<p>Em Linux, distros como OnionOS, GammaOS, Surwish, Knulli, MinUI, já vem com RetroArch instado e pré-configurado, por isso são mais fáceis de instalar e usar.</p>
<p>Dá pra usar só o RetroArch, seja em handheld, seja em Android, seja no Windows. Mas a interface dele é bem feia, velha, chata de navegar. Talvez você não se importe, mas depois que tem a experiência de console, como Playstation, Xbox, é chato usar uma interface velha. Pra consertar isso existem diversos front-ends pra colocar por cima do RetroArch, o mais famoso e popular de todos acho que é o <a href="https://emulationstation.org/"target="_blank" rel="noopener"><strong>EmulationStation</strong></a></p>
<p>Ele é bonito, dá pra escolher vários temas e fica assim:</p>
<p><img src="https://emulationstation.org/assets/featurettes/theming_list.jpg" alt="ES"  loading="lazy" /></p>
<p>Novamente, o Russ do canal Retro Game Corps tem guias pra isso:</p>
<ul>
<li><a href="https://www.youtube.com/watch?v=X-bVwlMwobE"target="_blank" rel="noopener">Emulation Station em Android</a></li>
<li><a href="https://www.youtube.com/watch?v=5upaSxC1wTg"target="_blank" rel="noopener">Emulation Station no SteamDeck</a></li>
<li><a href="https://www.youtube.com/watch?v=05dunYi6hkY"target="_blank" rel="noopener">Emulation Station no Windows</a></li>
</ul>
<p>Tem mais videos, só pesquisar por &ldquo;emulation station&rdquo; direto no canal dele e também no blog dele. Tem dezenas de guias por aí, por isso não vou perder tempo detalhando ele. Pára de ter preguiça e pesquisa. O que não falta é material.</p>
<p>No mundo de handhelds Linux, também existe Emulation Station em distros como <a href="https://knulli.org/pt-BR/"target="_blank" rel="noopener"><strong>Knulli</strong></a>, que é um fork do antigo Batocera. E adivinhe: tem guia do Russ:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/2ZMwdyuAv7o"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Já entendeu a única coisa que você precisa tirar deste artigo né: se tiver alguma dúvida sobre esse assunto, pergunte ao Russ, não a mim!</p>
<p>No mundo de SteamDeck e outros handhelds PC, existe outra distro Linux, o <a href="https://bazzite.gg/"target="_blank" rel="noopener"><strong>Bazzite</strong></a> que é um fork modificado do SteamOS pra rodar fora do SteamDeck.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/20250914152336_asus-rog-ally-bazzite-feature-image.webp" alt="Ally Bazzite"  loading="lazy" /></p>
<p>Assim seu Rog Ally vai funcionar igual um SteamDeck mais potente! Rodando jogos de Steam em Linux via Proton. Eu pessoalmente não fui por essa opção porque já me acostumei com a chatice do Windows 11 e eu gosto de rodar <a href="https://www.wemod.com/"target="_blank" rel="noopener"><strong>WeMod</strong></a> pra rodar jogos com cheats. Além disso eu instalei outros emuladores que só funcionam em Windows, com os de <a href="https://segaretro.org/Model_2_Emulator"target="_blank" rel="noopener">Sega Model 2</a> e <a href="https://github.com/trzy/Supermodel"target="_blank" rel="noopener">Model 3</a>. Sim, tem como rodar em Linux com Wine e tudo mais, mas já tá funcionando, deixa assim. Faz no seu.</p>
<p>Pra Emulation Station e outros front-end como <a href="https://github.com/TapiocaFox/Daijishou"target="_blank" rel="noopener"><strong>Daijisho</strong></a> no Android vão pedir pra você ter uma conta no site <a href="https://www.screenscraper.fr/"target="_blank" rel="noopener">ScreenScrapper</a>. Com essa conta dá pra ler as ROMs no seu microSD card e ir no site buscar coisas como imagem da caixa, video de demonstração e tudo mais pra ficar tudo mais bonito.</p>
<p>Última coisa: se eu tenho tantos handhelds, como faço pra compartilhar os saves entre todos eles pra continuar jogando de outro handheld?</p>
<p>Tem dois jeitos: o mais fácil é só tirar o microSD de um e colocar no outro e vai ter os mesmos saves. A outra forma - bem mais complicada (que é o que eu faço) - é subir um container de <a href="https://github.com/syncthing/syncthing"target="_blank" rel="noopener"><strong>SyncThing</strong></a>, que é um serviço que syncroniza diretórios entre diferentes computadores (pense um mini-Dropbox). Pra variar, o Russ tem um tutorial:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/NPx8FREezR4"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Entendeu a mensagem do post? Não pergunte <em>&ldquo;Akita, qual retro-handheld é melhor pra eu comprar?&rdquo;</em> O coitado do Akita não é tech-reviewer pago, patrocinado, nem monetizado, portanto todos os handhelds que eu tenho, comprei só pra mim. Por isso não tenho nenhum Retroid. Não adianta perguntar se Ambernic ou Ayaneo são melhores que Retroid. Akita não vai saber.</p>
<p>Em vez disso perguntem a tech reviewers que são pagos a patrocinados pra falar disso. Eis minhas recomendações:</p>
<ul>
<li><a href="https://www.youtube.com/@RetroGameCorps"target="_blank" rel="noopener">Retro Game Corps</a></li>
<li><a href="https://www.youtube.com/@WulffDen"target="_blank" rel="noopener">Wulff Den</a></li>
<li><a href="https://www.youtube.com/@TechDweeb"target="_blank" rel="noopener">Tech Dweeb</a></li>
<li><a href="https://www.youtube.com/@TakiUdon"target="_blank" rel="noopener">Taki Udon</a></li>
<li><a href="https://www.youtube.com/@ETAPRIME"target="_blank" rel="noopener">ETA PRIME</a></li>
</ul>
<p>Pra quem se interessa por mods:</p>
<ul>
<li><a href="https://www.youtube.com/@MachoNachoProductions"target="_blank" rel="noopener">Macho Nacho Productions</a></li>
<li><a href="https://www.youtube.com/@TheRetroFuture"target="_blank" rel="noopener">The Retro Future</a></li>
</ul>
<p>E pra quem se interessa por consertos:</p>
<ul>
<li><a href="https://www.youtube.com/@Tronicsfix"target="_blank" rel="noopener">TronicsFix</a></li>
</ul>
<p>Todos eles vão dar respostas melhores sobre todas as suas perguntas sobre todos os modelos de handhelds, consoles, consertos, modificações, softwares, OS, customizações, ROMs e muito mais.</p>
<p>Eu fiz esta página só pra poder dar copy e paste do link pra todo mundo que repetir essas mesmas perguntas daqui pra frente. Acho que cobri tudo que eu sei do assunto!</p>
]]></content:encoded><category>games</category><category>emulacao</category><category>retrocomputacao</category><category>off-topic</category></item><item><title>AGI ou Skynet não vão chegar tão cedo</title><link>https://akitaonrails.github.io/2025/06/18/agi-ou-skynet-nao-vai-chegar-tao-cedo/</link><guid isPermaLink="true">https://akitaonrails.github.io/2025/06/18/agi-ou-skynet-nao-vai-chegar-tao-cedo/</guid><pubDate>Wed, 18 Jun 2025 15:00:00 -0300</pubDate><description>&lt;p&gt;Se não assistiu, recomendo que assista o episódio que participei na última sexta-feira 13/06/2025, no Flow Podcast:&lt;/p&gt;
&lt;div class="embed-container"&gt;
&lt;iframe
src="https://www.youtube.com/embed/sf4Gxf0LiKo"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;p&gt;Eu fiz questão de levantar um ponto que vale a pena complementar agora. Toda vez que você acredita num CEO de empresa que vende I.A., dizendo que &amp;ldquo;I.A. vai substituir pessoas&amp;rdquo; ou &amp;ldquo;AGI está batendo na nossa porta&amp;rdquo; ou &amp;ldquo;AGI vai ser catastrófico&amp;rdquo;, você está acreditando num traficante dizendo que cocaína é boa pra sua saúde.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Se não assistiu, recomendo que assista o episódio que participei na última sexta-feira 13/06/2025, no Flow Podcast:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/sf4Gxf0LiKo"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Eu fiz questão de levantar um ponto que vale a pena complementar agora. Toda vez que você acredita num CEO de empresa que vende I.A., dizendo que &ldquo;I.A. vai substituir pessoas&rdquo; ou &ldquo;AGI está batendo na nossa porta&rdquo; ou &ldquo;AGI vai ser catastrófico&rdquo;, você está acreditando num traficante dizendo que cocaína é boa pra sua saúde.</p>
<p>Vamos a novas informações. Sundar Pichai é CEO do Google e um dos que disseram que &ldquo;30% do código do Google&rdquo; já é feito com I.A. (sem explicar, claro, &ldquo;quais 30%&rdquo; e nem mostrar nada).</p>
<p>Veja o mesmo Sundar Pichai hoje, 18/06/2025 no <a href="https://www.businessinsider.com/ai-google-engineers-coding-productive-sundar-pichai-alphabet-2025-6"target="_blank" rel="noopener">&ldquo;Business Insider&rdquo;</a></p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/sundar-pichai-2025-06-18.jpg" alt="Sundar Pichai"  loading="lazy" /></p>
<p>Interessante como o discurso ficou mais &ldquo;pé-no-chão&rdquo; agora. Mas ele não foi o primeiro. Já em fevereiro de 2025 o CEO da Microsoft, Satya Nadella disse o seguinte em <a href="https://futurism.com/microsoft-ceo-ai-generating-no-value"target="_blank" rel="noopener">artigos como este</a>:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/screenshot_18062025_161757.jpg" alt="Satya Nadella"  loading="lazy" /></p>
<p>E por que esta mudança de discurso, sendo que no fim de 2024 tava todo mundo animado falando só &ldquo;AGI&rdquo;, &ldquo;AGI&rdquo;?</p>
<p>Existe <a href="https://www.indicpacific.com/post/beyond-agi-promises-decoding-microsoft-openai-s-competition-policy-paradox"target="_blank" rel="noopener">uma cláusula</a> na negociação de investimento da Microsoft com a OpenAI (eles investiram USD 14 bilhões) de que a OpenAI pararia de compartilhar tecnologia com a Microsoft, uma vez que &ldquo;AGI&rdquo; fosse atingida. Definida como &ldquo;sistema altamente autônomo que ultrapassa humanos em trabalhos de mais valor econômico&rdquo;. Essa é a definição.</p>
<p>Problema é que isso tira a Microsoft como investidor também. Além disso, recentemente a própria Microsoft começou a se declarar como um concorrente da OpenAI, em vez de parceira, se posicionando junto com um Google ou Claude. Leia os detalhes nesta análise:</p>
<p><a href="https://www.indicpacific.com/post/beyond-agi-promises-decoding-microsoft-openai-s-competition-policy-paradox"target="_blank" rel="noopener"><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/screenshot_18062025_162322.jpg" alt="msft-openai-clause"  loading="lazy" /></a>
Entenda: toda discussão de &ldquo;é AGI, não é AGI&rdquo; tem mais a ver com negociações por baixo dos panos entre as diversas Big Tech envolvidas e seus investidores. Não se relaciona com tecnologia de verdade. Você é só mais macaco de auditório de um show que nem pode assistir. Então está torcendo cegamente, pra variar.</p>
<h3>Geoffrey Hinton e o problema dos especialistas<span class="hx:absolute hx:-mt-20" id="geoffrey-hinton-e-o-problema-dos-especialistas"></span>
    <a href="#geoffrey-hinton-e-o-problema-dos-especialistas" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><a href="https://x.com/10X_AI_/status/1934970334693957852"target="_blank" rel="noopener"><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/geoffrey-hinton-interview.jpeg" alt="geoffrey hinton interview"  loading="lazy" /></a>
Saiu mais uma entrevista do tal Geoffrey Hinton, mais fatalismo, mais &ldquo;já era&rdquo; e mais gente gritando pelos cantos achando que Armageddon vai chegar amanhã.</p>
<p>A mídia considera Geoffrey Hinton o &ldquo;Godfather das I.A.&rdquo;</p>
<p>Por causa disso muitos acreditam em tudo que ele fala - <em>&ldquo;Lógico que o cara que inventou I.A. sabe o que vai acontecer&rdquo;</em>. Virou um culto.</p>
<p>Eu mesmo falei no Flow que ele inventou Backpropagation - o backbone de treinamento de I.A. -, mas é uma simplificação. O próprio Hinton já esclareceu diversas vezes que ele <strong>não inventou</strong>. O grosso do trabalho foi publicado por <strong>Paul Werbos</strong> e <strong>Shun-Ichi Amari</strong>. Mas de fato, foi o Hinton que popularizou esse trabalho.</p>
<p>Hinton, como professor, teve a sorte de supervisionar alunos que viriam a se tornar brilhantes. Na AlexNet - eu contei no Flow - como foi Ilya Sutskever quem deu a idéia de usar GPUs pra treinar deep neural networks. Ilya, que depois viria a co-fundar a OpenAI - junto com Andrej Karpathy, outro aluno brilhante de HInton e que hoje em dia eu detesto porque ele que cunhou o tal de &ldquo;Vibe Coding&rdquo;. Karpathy vem seguindo os passos do seu mentor Hinton e espalhando bullshit.</p>
<p>Ainda na revolução de computer vision, além de usar GPUs, o grande passo de arquitetura foram os <em>Convolutional Neural Networks</em> (CNNs), de <strong>Yann LeCun</strong> - outro aluno de Hinton.</p>
<p>O problema: a mídia dá mais crédito pro supervisor do que pro aluno. E coloca tudo no mesmo saco e fica como se Hinton - sozinho - inventou BackPropagation, CNNs e o AlexNet inteiro. O próprio Prêmio Alan Turing que ele levou, de novo o mérito foi da equipe, mas o nome &ldquo;Hinton&rdquo; é mais forte, então foi como se &ldquo;ele&rdquo; fosse o maior responsável. Óbvio, desse jeito, qualquer um parece um semi-deus.</p>
<p>Não estou dizendo que ele é burro nem nada disso. Mas não é tudo isso, não é infalível e certamente é um ser humano normal que erra. Não há correlação dos seus trabalhos anteriores com especulações de futuro.</p>
<p>Em outro espectro, existe um prêmio Nobel, Roger Penrose que postula desde os anos 80 ou 90 que <strong>&ldquo;consciência NÃO é computável&rdquo;</strong> por exemplo, em seu livro <a href="https://www.amazon.com.br/Emperors-New-Mind-Concerning-Computers/dp/0192861980"target="_blank" rel="noopener">&ldquo;The Emperor&rsquo;s New Mind&rdquo;</a>. Um Nobel do nível que provou hipóteses de Einstein e trabalhou com Hawkings.</p>
<p>Além disso o próprio Yann LeCun, é do campo que não acredita que as I.A.s atuais vão chegar perto de AGI também. Como eu SEMPRE repito: precisa acontecer alguma nova descoberta - que ainda não sabemos - pra isso acontecer. LeCun tem suas teorias e está na Meta, trabalhando num projeto chamado <strong>V-JEPA</strong> pra ver se ele faz essa descoberta.</p>
<p>Em vez de ouvir Hinton, ouça um pouco de LeCun:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/RUnFgu8kH-4"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Pois bem, se &ldquo;autoridade&rdquo; é seu único parâmetro, deveria então acreditar cegamente em Penrose e LeCun também. E agora, como fica?</p>
<p>Este jogo é mais complicado do que sua mente ingênua de seguidor-cego consegue enxergar. Não seja só um macaco de auditório e entenda como as peças de encaixam.</p>
<h3>&ldquo;Você não consegue provar que AGI não vai existir&rdquo;<span class="hx:absolute hx:-mt-20" id="você-não-consegue-provar-que-agi-não-vai-existir"></span>
    <a href="#voc%c3%aa-n%c3%a3o-consegue-provar-que-agi-n%c3%a3o-vai-existir" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>É verdade, ninguém consegue. Ninguém consegue provar que Deus não existe. Ninguém consegue provar que Unicórnios não existem. Isso não significa absolutamente nada, é um erro de lógica.</p>
<p>Pessoas de fora de tecnologia e que nunca estudaram ciência da computação só conseguem ver o que os jornais publicam ou o que influencer fala de bobagem em podcast.</p>
<p>Vamos esclarecer: sim, todos nós - programadores formados em ciência da computação - sabemo que, com a arquitetura atual de LLMs, não há como chegar em AGI. Isso é uma certeza.</p>
<p>O problema é que vocês acham que nem nós sabemos tudo sobre I.A., que existe uma camada misteriosa dentro do modelo que funciona sem que nós saibamos como funciona.</p>
<p>Ou pior, vocês acham que somente alguns poucos nomes considerados importantes como Geoffrey Hinton ou Ilya Sutskever, é que conseguem entender. Entenda uma verdade importante: sim, pra chegar numa Teoria Geral da Relatividade, precisou de gênios gigantes como Albert Einstein, David Hilbert, Kurt Godel, etc. Um deles chegaria nisso, nem todo físico conseguiria.</p>
<p>Mas, uma vez descrita e entendida a Teoria, ela é facilmente ensinada pra alunos de 1o ano de faculdade. Não é nenhum segredo místico que precisa de décadas de treinamento pra entender.</p>
<p>Mesma coisa, perceptrons, redes neurais, backpropagation, gradient descent, RNNs, CNNs, Transformers, etc. Cada uma dessas etapas contou com alguns considerados gênios, como Geoffrey Hinton (que muitos vão dizer que só levou crédito, quem fez o trabalho mesmo foram os Sutkever ou LeCun). Mas uma vez entendido, isso tudo é matéria de graduação de ciência da computação. Você não precisa nem ser um PhD pra entender a maior parte disso.</p>
<p>Os modelos treinados funcionam porque sabemos como ajustar pra funcionar. Parte importante da fase de treinamento é alimentar as redes neurais com milhões de perguntas e respostas PRÉ-PRONTAS. Essa é a fase de INSTRUÇÃO e TODA LLM passa por isso. Ela responde exatamente como cada empresa por trás mandou ela responder, nada a mais que isso.</p>
<p>Ah, mas é tanto parâmetro que não tem com você saber tudo dela. Sim, temos, qualquer bom programador consegue carregar Tensorflow, PyTorch, carregar o modelo e explorar todas as dimensões. Conseguimos partir da resposta e olhar os passos pra trás e ver porque ela se formou daquele jeito. Podemos re-ajustar, podemos mexer quanto quisermos. Eu mostrei parte disso nos posts anteriores.</p>
<p>Todas as etapas do treinamento, da inferência, das otimizações, das metodologias de alinhamento, das estratégias de deployment, tudo está documentado e todos das ciências sabemos exatamente como tudo funciona.</p>
<p>Por isso é assustador que alguém como um Hinton ou Sutskever fiquem fazendo alarmismo sem demonstrar nada. Mostra como eles estão por fora do que está acontecendo. Yann LeCun está correto: está com a mão na massa e ele sabe que a arquitetura atual já bateu no teto e não há muito mais pra seguir daqui. Por isso ele iniciou outros projetos pra tentar conseguir descobrir o que seria uma NOVA arquitetura que leve à próxima etapa. Esse é o projeto V-JEPA 2 da Meta.</p>
<p>Só porque VOCÊ não sabe como as coisas funcionam, não pensem que há margem pra coisas de ficção científica. É a mesma coisa que assistir um filme como &ldquo;O Chamado&rdquo; onde espíritos malignos vivem numa fita de VHS e saem da TV, associar que espírito-onda de TV pode ter relação e me dizer &ldquo;Você não consegue provar que não é possível&rdquo;. É um nível de criancice e falta de conhecimento que não tem como começar a explicar.</p>
<p>Sempre, o <strong>ÔNUS DA PROVA</strong> é de quem VENDE a afirmação. Todo CEO de empresa de IA e todo acadêmico renomado - sem publicar nada - está afirmando isso. Não sou quem tenho que provar: são eles. Ninguém deve tentar provar uma negativa, não faz sentido.</p>
<p>De bônus, voltando pra Yann LeCun. Eu não acompanhava ele, fui ver só hoje o que ele fala. Achei interessante como ele argumenta exatamente as mesmas coisas que eu falo faz mais de 1 ano já. Não quero nem de longe dizer que sou nem uma fração da inteligência dele. Só que partindo dos mesmos princípios, dá pra inevitavelmente chegar nas mesmas conclusões. É inferência pura a partir de primeiros-princípios. Não é uma especulação. Se escrever &ldquo;2 + 2&rdquo; tanto eu quanto ele vamos chegar em &ldquo;4&rdquo;. Todo mundo está dizendo &ldquo;mas se tiver poder de computação suficiente, um dia vai chegar em 10&rdquo;. Não vai. Assista esta outra entrevista dele, é muito esclarecedor:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/qvNCVYkHKfg"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>O que LeCun e outros - como DeepMind - já disseram, é que LLMs não tem capacidade pra chegar em AGI. Isso é sabido e a DeepMind já provou isso matematicamente. <a href="https://www.youtube.com/watch?v=kpOWmwA6tJc"target="_blank" rel="noopener">Este outro video</a> tem mais detalhes. Mas em resumo, uma LLM é boa como &ldquo;recuperador de informações&rdquo;. Além do que eu chamo de &ldquo;completador de texto glorificado&rdquo;, quer dizer que ele só é capaz de completar com informação que ele já viu em treinamento (e combinações aleatórias que às vezes faz parecer que é informação nova, mas não é). A única forma dele conseguir resolver QUALQUER problema é ter um MODELO CAUSAL de TODOS OS PROBLEMAS. Ou seja, ele já saber de ante-mão a resposta pra toda pergunta. Obviamente não temos isso, portanto, é impossível que uma LLM - sendo uma máquina de recuperar informações - nos dê soluções que não existem, como &ldquo;qual é a nova descoberta que vai permitir AGI?&rdquo;. É um problema não-decidível e não-computável. Matematicamente provado como inviável.</p>
<p>AGI, na arquitetura atual, não vai acontecer. Precisa acontecer alguma nova descoberta. Isso pode ser daqui 2 anos, pode ser daqui 20 anos. Mas não há um caminho possível a partir do que sabemos hoje.</p>
]]></content:encoded><category>inteligencia-artificial</category><category>llms</category><category>filosofia</category><category>off-topic</category></item><item><title>História da Computação e Retro Dev no YouTube</title><link>https://akitaonrails.github.io/2025/05/19/historia-da-computacao-e-retro-dev-no-youtube/</link><guid isPermaLink="true">https://akitaonrails.github.io/2025/05/19/historia-da-computacao-e-retro-dev-no-youtube/</guid><pubDate>Mon, 19 May 2025 15:19:00 -0300</pubDate><description>&lt;p&gt;Eu assisto MUITO YouTube, e fico sempre compartilhando coisas legais que assisto no meu X e Instagram (me sigam lá). Tem vários videos que vira e mexe eu volto atrás.&lt;/p&gt;
&lt;p&gt;Finalmente resolvi compilar uma lista com os canais que eu mais assisto e uma lista das principais playlists e exemplos de videos de cada canal que recomendo assistir.&lt;/p&gt;
&lt;p&gt;Provavelmente vou ficar voltando nesta página pra atualizar de tempos em tempos. Se alguém se lembrar de algum que eu esqueci, mandem nos comentários. Tem canais como GameSack ou Sega Lord X ou Retro Game Corp ou Wullfden ou Macho Nacho Productions e vários outros assim que não listei, porque são mais de &amp;ldquo;reviews&amp;rdquo; e não cruzam tanto com &amp;ldquo;dev&amp;rdquo;. Tentei focar em coisas que eu acho que um &amp;ldquo;dev&amp;rdquo; deveria saber.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Eu assisto MUITO YouTube, e fico sempre compartilhando coisas legais que assisto no meu X e Instagram (me sigam lá). Tem vários videos que vira e mexe eu volto atrás.</p>
<p>Finalmente resolvi compilar uma lista com os canais que eu mais assisto e uma lista das principais playlists e exemplos de videos de cada canal que recomendo assistir.</p>
<p>Provavelmente vou ficar voltando nesta página pra atualizar de tempos em tempos. Se alguém se lembrar de algum que eu esqueci, mandem nos comentários. Tem canais como GameSack ou Sega Lord X ou Retro Game Corp ou Wullfden ou Macho Nacho Productions e vários outros assim que não listei, porque são mais de &ldquo;reviews&rdquo; e não cruzam tanto com &ldquo;dev&rdquo;. Tentei focar em coisas que eu acho que um &ldquo;dev&rdquo; deveria saber.</p>
<h2>Lista (2025-05-19)<span class="hx:absolute hx:-mt-20" id="lista-2025-05-19"></span>
    <a href="#lista-2025-05-19" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://www.youtube.com/@UsagiElectric"target="_blank" rel="noopener">Usagi Electric</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=-RGp-bsYf34&amp;list=PLnw98JPyObn3QSIwUz5Iv6NA1x-uGFqAa&amp;pp=0gcJCV8EOCosWNin"target="_blank" rel="noopener">Bendix G15 Vacuum Tube</a></li>
<li><a href="https://www.youtube.com/watch?v=EbWcgepRmY4&amp;list=PLnw98JPyObn2PqgY1mfzXOtnUXlsXSMch"target="_blank" rel="noopener">Data General Nova</a></li>
<li><a href="https://www.youtube.com/watch?v=SB95dlrS5kU&amp;list=PLnw98JPyObn2Kj-rqrKqEB5xmS_uOV40f"target="_blank" rel="noopener">DEC/PDP-11</a></li>
<li><a href="https://www.youtube.com/watch?v=oPA8dHtf_6M&amp;list=PLnw98JPyObn1GUapiXLlGm8RrpQF-J_c1"target="_blank" rel="noopener">1-Bit Computer</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@TechTangents"target="_blank" rel="noopener">Tech Tangents</a>:
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=mBssIIRGkOw&amp;list=PLJVwF78cppBgwAHYKMffuhs0jblPHCyvL"target="_blank" rel="noopener">Data Generals</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=apFLq3-fpL4"target="_blank" rel="noopener">Tandy 1000 RL HD</a></li>
<li><a href="https://www.youtube.com/watch?v=Oa6QPHD6qzw&amp;t=278s"target="_blank" rel="noopener">CP/M on Model 100</a></li>
<li><a href="https://www.youtube.com/watch?v=dqPSVG7zbs4"target="_blank" rel="noopener">KayPro IV</a></li>
<li><a href="https://www.youtube.com/watch?v=vCU4xbHFb58"target="_blank" rel="noopener">HP Series 200 - CAD Monster</a></li>
<li><a href="https://www.youtube.com/watch?v=5WB9d1JM8oo"target="_blank" rel="noopener">8088 PC Networking</a></li>
<li><a href="https://www.youtube.com/watch?v=EOVLlMQs9f8"target="_blank" rel="noopener">FreeDOS on IBM 5150</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@The8BitGuy"target="_blank" rel="noopener">The 8-Bit Guy</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=ayh0qebfD2g&amp;list=PLfABUWdDse7bKGFshxR0itdHBhjUj86SX"target="_blank" rel="noopener">Commander X16</a></li>
<li><a href="https://www.youtube.com/watch?v=NB_VBl7ut9Y&amp;list=PLfABUWdDse7Z8wmD0bbL0P5upEE1VjMJM"target="_blank" rel="noopener">Game Development - Making of Planet X2</a></li>
<li><a href="https://www.youtube.com/watch?v=mXSdikcUuo0&amp;list=PLfABUWdDse7aKLE00YObaVvP1jSH0YqIE"target="_blank" rel="noopener">Texas Tech History</a></li>
<li><a href="https://www.youtube.com/watch?v=eP9y_7it3ZM&amp;list=PLfABUWdDse7Y6LLPlfsHKcvBCgqaudzVY"target="_blank" rel="noopener">Commodore History</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@adriansdigitalbasement"target="_blank" rel="noopener">Adrien&rsquo;s Digital Basement</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=x8DfSg7oMWg&amp;list=PL4tFqFVNf5LSckPX988MBvVzKv96eP0es"target="_blank" rel="noopener">TRS-80 Model II Repair Series</a></li>
<li><a href="https://www.youtube.com/watch?v=gkCDdSdSNu0&amp;list=PL4tFqFVNf5LRvKP94x7VOfdXXQHRt_8BR"target="_blank" rel="noopener">Amiga 4000 Repair Series</a></li>
<li><a href="https://www.youtube.com/watch?v=RMG_StQ67kA&amp;list=PL4tFqFVNf5LQeof2oTPFGxZx0SpvICpSv"target="_blank" rel="noopener">ZX Spectrum</a></li>
<li><a href="https://www.youtube.com/watch?v=_CNruhSYC2E&amp;list=PL4tFqFVNf5LRf-gcl5Lyhl2UxbmrGmZCT"target="_blank" rel="noopener">IBM 16-bit machines</a></li>
<li><a href="https://www.youtube.com/watch?v=5qMP6A_U75E&amp;list=PL4tFqFVNf5LT6X3sMRfbRWuTVE5NuEmKj&amp;pp=0gcJCV8EOCosWNin"target="_blank" rel="noopener">Apple Computers - 8-bit</a></li>
<li><a href="https://www.youtube.com/watch?v=H9dxJ7uNXOA&amp;list=PL4tFqFVNf5LRxSdlzuH2MWOZ_5PltbpLv"target="_blank" rel="noopener">Macintosh Machines - 68000</a></li>
<li><a href="https://www.youtube.com/watch?v=0MP93YbINyI&amp;list=PL4tFqFVNf5LRZKtduWSpZjZpJS6mxZx7I"target="_blank" rel="noopener">Commodore - 8 bit</a></li>
<li><a href="https://www.youtube.com/watch?v=0MP93YbINyI&amp;list=PL4tFqFVNf5LR9SvTg1P8r3EPL657qJFsx"target="_blank" rel="noopener">Commodore 64 Repairs</a></li>
<li><a href="https://www.youtube.com/watch?v=QJRXMYmie7I&amp;list=PL4tFqFVNf5LTPlF7iF_pMl5WiiOsSFMf4"target="_blank" rel="noopener">Tandy 1000 Series</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@clabretro"target="_blank" rel="noopener">clabretro</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=77rVvJBLRhQ&amp;list=PLjeznAUfx0Odrk8qOQJ-_a3xry4PhIxOh"target="_blank" rel="noopener">Home Lab</a></li>
<li><a href="https://www.youtube.com/watch?v=pXuqASXGvgM&amp;list=PLjeznAUfx0OfCseO3gKOvEjw3oHgHLRlK"target="_blank" rel="noopener">Sun Microsystem Stuff</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=PBvDRJ_rU5w"target="_blank" rel="noopener">Ressurrecting an IBM PS/2 Model 50Z</a></li>
<li><a href="https://www.youtube.com/watch?v=7-ISDVFIVgw"target="_blank" rel="noopener">Windows NT 4.0 on a Compaq Proliant Gen 1</a></li>
<li><a href="https://www.youtube.com/watch?v=4UWibKEjyY8&amp;t=10s"target="_blank" rel="noopener">Token Ring Networking</a></li>
<li><a href="https://www.youtube.com/watch?v=LvLPz72IvAM"target="_blank" rel="noopener">Early 2000s Linksys Wi-Fi Gear</a></li>
<li><a href="https://www.youtube.com/watch?v=gyyhqHBmKg4"target="_blank" rel="noopener">Compaq Proliant Gen 1</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@LowSpecGamer"target="_blank" rel="noopener">LowSpecGamer</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=lP2ZBp9O0mk&amp;list=PLp-6MMWURCz3x92-dpEsRLEGL3uHToVDR"target="_blank" rel="noopener">All Lore - Chronological</a></li>
<li><a href="https://www.youtube.com/watch?v=lP2ZBp9O0mk&amp;list=PLp-6MMWURCz1bo3T4vmyNUVl3FefnF7CC"target="_blank" rel="noopener">Chip Wars</a><a href="https://www.youtube.com/watch?v=OBlu2mdpiJ0&amp;list=PLp-6MMWURCz0OdcgoSiQOv8C9hn79XdOt"target="_blank" rel="noopener">Nintendo Lore</a></li>
<li><a href="https://www.youtube.com/watch?v=9Ki-kH751_8&amp;list=PLp-6MMWURCz0OB_iioCUqc2Sq21UXE-08"target="_blank" rel="noopener">The Yokoi Saga</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=nIwdhPOVOUk"target="_blank" rel="noopener">How Amateurs created the world&rsquo;s most popular processor - History of ARM Part 1</a></li>
<li><a href="https://www.youtube.com/watch?v=vx1-6yRAGk0"target="_blank" rel="noopener">ARM&rsquo;s Secret Weapon - History of ARM Part 2</a></li>
<li><a href="https://www.youtube.com/watch?v=PLzTVnQ3gqc"target="_blank" rel="noopener">How IBM Invented the PC, then everyone stole it</a></li>
<li><a href="https://www.youtube.com/watch?v=ztYfJDTjpjk&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">The Great Calculator Wars of the 70s</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@BenEater"target="_blank" rel="noopener">Ben Eater</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=LnzuMJLZRdU&amp;list=PLowKtXNTBypFbtuVMUVXNR0z1mu7dp7eH"target="_blank" rel="noopener">Build a 65c02-based computer from scratch</a></li>
<li><a href="https://www.youtube.com/watch?v=HyznrdDSSGM&amp;list=PLowKtXNTBypGqImE405J2565dvjafglHU&amp;pp=0gcJCV8EOCosWNin"target="_blank" rel="noopener">Building an 8-bit breadboard computer</a></li>
<li><a href="https://www.youtube.com/watch?v=XaGXPObx2Gs&amp;list=PLowKtXNTBypH19whXTVoG3oKSuOcw_XeW"target="_blank" rel="noopener">Networking Tutorial</a></li>
<li><a href="https://www.youtube.com/watch?v=eq5YpKHXJDM&amp;list=PLowKtXNTBypFWff2QjXCWuSfJDWcvE0Vm"target="_blank" rel="noopener">Error detection</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@javidx9"target="_blank" rel="noopener">javidx9</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=nViZg02IMQo&amp;list=PLrOv9FMX8xJHqMvSGB_9G9nZZ_4IgteYf"target="_blank" rel="noopener">NES Emulator from Scratch</a></li>
<li><a href="https://www.youtube.com/watch?v=8OK8_tHeCIA&amp;list=PLrOv9FMX8xJE8NgepZR1etrsU63fDDGxO"target="_blank" rel="noopener">Code-it-Yourself - TETRIS from scratch</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@GamingHistorian"target="_blank" rel="noopener">Gaming Historian</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=G_6PO3N8fig&amp;list=PLScCWE7AP_PUIOOSwRF_e5jR6e2rLwLoF"target="_blank" rel="noopener">Video Game Hardware</a></li>
<li><a href="https://www.youtube.com/watch?v=2EUYSN5aFcE&amp;list=PLScCWE7AP_PVMZgv83NLwp6wQ93I6o4rr"target="_blank" rel="noopener">The Story of Super Mario - Documentary Series</a></li>
<li><a href="https://www.youtube.com/watch?v=S1qD9JRk5vM&amp;list=PLScCWE7AP_PU4_4b4juK8ZugrmptW4g1v&amp;pp=0gcJCV8EOCosWNin"target="_blank" rel="noopener">History of Wolfenstein</a></li>
<li><a href="https://www.youtube.com/watch?v=M55Bpm38qqE&amp;list=PLScCWE7AP_PVO9xcAsZa7Dv5sgdZMyUbb"target="_blank" rel="noopener">History of Sonic the Hedgehog</a></li>
<li><a href="https://www.youtube.com/watch?v=myhBphil-Uw&amp;list=PLScCWE7AP_PVVYlegzt3REr2n5bBmmQJ2"target="_blank" rel="noopener">History of Super Smash Bros</a></li>
<li><a href="https://www.youtube.com/watch?v=BjRuV52Jk78&amp;list=PLScCWE7AP_PXfCIUjxMjoWPUbNYXz8P6w"target="_blank" rel="noopener">Games</a></li>
<li><a href="https://www.youtube.com/watch?v=8QbjlHeoLdc&amp;list=PL397C52406E483BAB&amp;pp=0gcJCV8EOCosWNin"target="_blank" rel="noopener">Gaming Historian</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@ModernVintageGamer"target="_blank" rel="noopener">Modern Vintage Gamer</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=SZbC0Hh4lc8&amp;list=PLUbw0IXAmW2rMk5g19MrqcyebecSrrSeJ"target="_blank" rel="noopener">Mistakes Were Made - Game Console Security</a></li>
<li><a href="https://www.youtube.com/watch?v=siOXFGZj_z0&amp;list=PLUbw0IXAmW2p35mZ_Fis31n2L6HPiFoEs"target="_blank" rel="noopener">The Sony Playstation</a></li>
<li><a href="https://www.youtube.com/watch?v=esl6ctg_9JA&amp;list=PLUbw0IXAmW2qJ8e0XtQgQo8ki0mIeIbHP"target="_blank" rel="noopener">The Original XBox</a></li>
<li><a href="https://www.youtube.com/watch?v=F4Dv32-PoU4&amp;list=PLUbw0IXAmW2pDWN4kZ-vNDNAPycFVR_ux"target="_blank" rel="noopener">Doom Switch Port</a></li>
<li><a href="https://www.youtube.com/watch?v=ZOzWS7MQ_qs&amp;list=PLUbw0IXAmW2ofK7Es3w7q5kVMdzK_IfKY"target="_blank" rel="noopener">Retro Reviews</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=lpOEhtoc3DY"target="_blank" rel="noopener">N64: Decomp vs Recomp vs Ports explained</a></li>
<li><a href="https://www.youtube.com/watch?v=hqpw-QPsdCg"target="_blank" rel="noopener">XenonRecomp</a></li>
<li><a href="https://www.youtube.com/watch?v=nJ9zJ_PDatU"target="_blank" rel="noopener">Game Genie Explained</a></li>
<li><a href="https://www.youtube.com/watch?v=_RVQsqC3A6g"target="_blank" rel="noopener">Super NES Graphics</a></li>
<li><a href="https://www.youtube.com/watch?v=OmKjVpVdHDQ"target="_blank" rel="noopener">N64 Emulation is a Mess</a></li>
<li><a href="https://www.youtube.com/watch?v=8ibEDSfthS0"target="_blank" rel="noopener">The First Amiga Virus</a></li>
<li><a href="https://www.youtube.com/watch?v=ZeaZWBrG__s"target="_blank" rel="noopener">35 Years of Game Boy</a></li>
<li><a href="https://www.youtube.com/watch?v=ockNRSt3Nsk"target="_blank" rel="noopener">Video game piracy in the 80s</a></li>
<li><a href="https://www.youtube.com/watch?v=JqP3ZzWiul0"target="_blank" rel="noopener">Doom SNES Sourcecode</a></li>
<li><a href="https://www.youtube.com/watch?v=zQE1K074v3s"target="_blank" rel="noopener">How Graphics worked on the Game Boy</a></li>
<li><a href="https://www.youtube.com/watch?v=2NF5sU_n0uk"target="_blank" rel="noopener">How UltraHLE changed N64 emulation forever</a></li>
<li><a href="https://www.youtube.com/watch?v=5tADL_fmsHQ"target="_blank" rel="noopener">How Diablo was completely Reverse Engineered without source code</a></li>
<li><a href="https://www.youtube.com/watch?v=Ap3gJT_TMOc&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">Duke3D on the Amiga 600</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@strafefox"target="_blank" rel="noopener">Strafefox</a>
<ul>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=6u37r-Z_Nfo"target="_blank" rel="noopener">Video Game Development Through the 80s</a></li>
<li><a href="https://www.youtube.com/watch?v=5jxYvLYcpZg&amp;t=1441s"target="_blank" rel="noopener">The 3D Revolution in 90s game development</a></li>
<li><a href="https://www.youtube.com/watch?v=69AOVtOUatY"target="_blank" rel="noopener">The Making of Sonic the Hedgehog</a></li>
<li><a href="https://www.youtube.com/watch?v=226Nwq2CN5c"target="_blank" rel="noopener">The Making of Mortal Kombat</a></li>
<li><a href="https://www.youtube.com/watch?v=TYE9GMfr5ug"target="_blank" rel="noopener">The Making of Castlevania Symphony of the Night</a></li>
<li><a href="https://www.youtube.com/watch?v=_LPu7gNzWUE"target="_blank" rel="noopener">The Making of Donkey Kong Country &amp; Killer Instinct</a></li>
<li><a href="https://www.youtube.com/watch?v=kOnUITJqRQQ"target="_blank" rel="noopener">The Making of Aladdin</a></li>
<li><a href="https://www.youtube.com/watch?v=5Z7liHTgnw4"target="_blank" rel="noopener">The Making of Streets of Rage</a></li>
<li><a href="https://www.youtube.com/watch?v=USC6c9Dtak8"target="_blank" rel="noopener">The Making of Street Fighter II</a></li>
<li><a href="https://www.youtube.com/watch?v=KL4l0nMsrMM"target="_blank" rel="noopener">The Making of Super Mario World</a></li>
<li><a href="https://www.youtube.com/watch?v=GDhNT2Qv-Mo"target="_blank" rel="noopener">The Making of Star Fox</a></li>
<li><a href="https://www.youtube.com/watch?v=MJG-OT6S194"target="_blank" rel="noopener">How Video Games were Made - Part 3</a></li>
<li><a href="https://www.youtube.com/watch?v=Yo7UkkGC1AY"target="_blank" rel="noopener">How Video Games were Made - Part 2</a></li>
<li><a href="https://www.youtube.com/watch?v=VDz1IvuWyJw"target="_blank" rel="noopener">MSX Konami Games</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@GTV-Japan"target="_blank" rel="noopener">GTV Japan</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=_s9fmbcds40&amp;list=PLu4Z50DKq3na663p7gGKgxHOZFGv2eqWO"target="_blank" rel="noopener">The GTV Binge Watch</a></li>
<li><a href="https://www.youtube.com/watch?v=zgtYV41yXbU&amp;list=PLu4Z50DKq3nYnRu-3XhDncP8MRzOsusRm"target="_blank" rel="noopener">GTV&rsquo;s Greatest Hits</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=KdS34tc37hk"target="_blank" rel="noopener">The Story of Chrono Trigger</a></li>
<li><a href="https://www.youtube.com/watch?v=gNps2YP2e30&amp;t=860s"target="_blank" rel="noopener">The Final 16-bit Fantasy</a></li>
<li><a href="https://www.youtube.com/watch?v=DV3K3Coz1RA"target="_blank" rel="noopener">Sonic Mania Day</a></li>
<li><a href="https://www.youtube.com/watch?v=I2MYvgNf9lU"target="_blank" rel="noopener">The History of Sonic - 30th Anniversary</a></li>
<li><a href="https://www.youtube.com/watch?v=zgtYV41yXbU"target="_blank" rel="noopener">The Super Story of Mario World</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@DisplacedGamers"target="_blank" rel="noopener">Displaced Gamers</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=55X1KOw_Rhg&amp;list=PLn5sTGew1WGB0-omvT5UtPanoCzRh7A0V"target="_blank" rel="noopener">Game Genie: Uncorked</a></li>
<li><a href="https://www.youtube.com/watch?v=EhO_iHkUkE0&amp;list=PLn5sTGew1WGD5NUstpfwYdLfrmLJOHCSw"target="_blank" rel="noopener">Talkin&rsquo; Code</a></li>
<li><a href="https://www.youtube.com/watch?v=gTfPLl_AJvs&amp;list=PLn5sTGew1WGD2Tnspn9vhpLGf-kqDRbYy"target="_blank" rel="noopener">Behind the Code</a></li>
<li><a href="https://www.youtube.com/watch?v=ssluTgfkdlg&amp;list=PLn5sTGew1WGCMO7Bi-MD7VgFWAoeXbU93"target="_blank" rel="noopener">Gaming Tech Talk</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@RGMechEx"target="_blank" rel="noopener">Retro Game Mechanics Explained</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=UdD26eFVzHQ&amp;list=PLHQ0utQyFw5IrM_zCFY8fhtByNxVGRUMr"target="_blank" rel="noopener">Super Mario 2</a></li>
<li><a href="https://www.youtube.com/watch?v=1whju31WAPA&amp;list=PLHQ0utQyFw5KxchzQnRcc_uk-NU7FbHNM"target="_blank" rel="noopener">Super Mario Bros.</a></li>
<li><a href="https://www.youtube.com/watch?v=q15yNrJHOak&amp;list=PLHQ0utQyFw5I8qqpOXKXKySBsphqdStdq"target="_blank" rel="noopener">Super Mario World</a></li>
<li><a href="https://www.youtube.com/watch?v=fxZuzos7Auk&amp;list=PLHQ0utQyFw5KoUSkHGq5VtMY0v2e5G_u3"target="_blank" rel="noopener">Super Mario Bros 3</a></li>
<li><a href="https://www.youtube.com/watch?v=FPzuYWbnln4&amp;list=PLHQ0utQyFw5IrotCLCfxKGkUL-WjPDrxh"target="_blank" rel="noopener">Super Mario Land 2</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@TheCherno"target="_blank" rel="noopener">The Cherno</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=gfW1Fhd9u9Q&amp;list=PLlrATfBNZ98edc5GshdBtREv5asFW3yXl"target="_blank" rel="noopener">Ray Tracing Series</a></li>
<li><a href="https://www.youtube.com/watch?v=W3gAzLwfIP0&amp;list=PLlrATfBNZ98foTJPJ_Ev03o2oq3-GGOS2"target="_blank" rel="noopener">OpenGL</a></li>
<li><a href="https://www.youtube.com/watch?v=9HCboZHTyrw&amp;list=PLlrATfBNZ98f6Z1cDNeMLL3eXaRk1WCxK"target="_blank" rel="noopener">Code Review</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@Kosmicd12"target="_blank" rel="noopener">Kosmic</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=1wR8x5b_ExM&amp;list=PLbxkd_Hs6FDK2FNWiOAK_LPBMXauJMrlC"target="_blank" rel="noopener">World Record SpeedRuns</a></li>
<li><a href="https://www.youtube.com/watch?v=kyZ4yF3ynsA&amp;list=PLbxkd_Hs6FDKH8YVR82mS2zFDWN_pwkQx"target="_blank" rel="noopener">Super Mario Bros</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@KazeN64"target="_blank" rel="noopener">Kaze Emanuar</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=dfK4Iuz3mME&amp;list=PLY9TGb7t9kuHx1vP2qCascFrhfnzLn-ME"target="_blank" rel="noopener">SM64: Last Impact - Developer Commentary</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=DdXLpoNLywg"target="_blank" rel="noopener">Mario 64 breaks after 7 days</a></li>
<li><a href="https://www.youtube.com/watch?v=OHU2onxKm5o&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">Perfecting Random Number Generation on N64</a></li>
<li><a href="https://www.youtube.com/watch?v=r-2iIBmXULI&amp;t=129s"target="_blank" rel="noopener">Planetary Gravity is Cheap</a></li>
<li><a href="https://www.youtube.com/watch?v=g5u3zW4SLow&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">The Genius of N64 Cache Instruction</a></li>
<li><a href="https://www.youtube.com/watch?v=DotEVFFv-tk"target="_blank" rel="noopener">The N64 has more RAM than you think</a></li>
<li><a href="https://www.youtube.com/watch?v=f05PwswO7qc&amp;t=344s"target="_blank" rel="noopener">Why Devs need to know about Render Matrices</a></li>
<li><a href="https://www.youtube.com/watch?v=-nhhfYkluT0"target="_blank" rel="noopener">Better engine, Better graphics</a></li>
<li><a href="https://www.youtube.com/watch?v=hffgNRfL1XY"target="_blank" rel="noopener">The Folded Polynomial</a></li>
<li><a href="https://www.youtube.com/watch?v=xFKFoGiGlXQ"target="_blank" rel="noopener">Fastest Sine on N64</a></li>
<li><a href="https://www.youtube.com/watch?v=t_rzYnXEQlE"target="_blank" rel="noopener">Fixing the Entire SM64 source code</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@james.lambert"target="_blank" rel="noopener">James Lambert</a>
<ul>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=WDNU9k8uTc4"target="_blank" rel="noopener">Can Portal64 be saved?</a></li>
<li><a href="https://www.youtube.com/watch?v=sb3nHlsBBpg&amp;t=256s"target="_blank" rel="noopener">Portal 64: First Slice, is out of beta</a></li>
<li><a href="https://www.youtube.com/watch?v=r4KGm7ixcqI"target="_blank" rel="noopener">How I optimized Portal to run on the N64</a></li>
<li><a href="https://www.youtube.com/watch?v=Sf036fO-ZUk"target="_blank" rel="noopener">How I implemented MegaTextures on real N64 hardware</a></li>
<li><a href="https://www.youtube.com/watch?v=ao1qVi5Qp3Y&amp;t=58s&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">I rewrote Portal from scratch and solved the Portal Paradox</a></li>
<li><a href="https://www.youtube.com/watch?v=VqDAxcWnq3g"target="_blank" rel="noopener">How are toon shading and dynamic shadows possible on the N64?</a></li>
<li><a href="https://www.youtube.com/watch?v=yXzoZ2AfWwg&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">How can Nintendo 64 run Portal?</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@veritasium"target="_blank" rel="noopener">Veritasium</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=AaZ_RSt0KP8&amp;list=PLkahZjV5wKe8w9GC_n2yyhx6Wj-NKzzeE"target="_blank" rel="noopener">Computing</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=w5ebcowAJD8&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">I build a QR code with my bare hands to see how it workds</a></li>
<li><a href="https://www.youtube.com/watch?v=wVyu7NB7W6Y"target="_blank" rel="noopener">Exposing the flaw in out phone system</a></li>
<li><a href="https://www.youtube.com/watch?v=A5w-dEgIU1M"target="_blank" rel="noopener">The Trillion Dollar equation</a></li>
<li><a href="https://www.youtube.com/watch?v=nmgFG7PUHfo&amp;t=40s"target="_blank" rel="noopener">The Most Important Algorithm of All Time</a></li>
<li><a href="https://www.youtube.com/watch?v=HeQX2HjkcNo"target="_blank" rel="noopener">Math&rsquo;s Fundamental Flaw</a></li>
<li><a href="https://www.youtube.com/watch?v=R13BD8qKeTg"target="_blank" rel="noopener">The Bayesian Trap</a></li>
<li><a href="https://www.youtube.com/watch?v=IcrBqCFLHIY&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">How Does a Transistor Work</a></li>
<li><a href="https://www.youtube.com/watch?v=zNzzGgr2mhk"target="_blank" rel="noopener">How to Make a Quantum Bit</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://www.youtube.com/@3blue1brown"target="_blank" rel="noopener">3Blue1Brown</a>
<ul>
<li>Playlists:
<ul>
<li><a href="https://www.youtube.com/watch?v=8rrHTtUzyZA&amp;list=PLZHQObOWTQDMp_VZelDYjka8tnXNpXhzJ"target="_blank" rel="noopener">Convolutions</a></li>
<li><a href="https://www.youtube.com/watch?v=8idr1WZ1A7Q&amp;list=PLZHQObOWTQDOjmo3Y6ADm0ScWAlEXf-fp"target="_blank" rel="noopener">Probabilities of Probabilities</a></li>
<li><a href="https://www.youtube.com/watch?v=p_di4Zn4wz4&amp;list=PLZHQObOWTQDNPOjrT6KVlfJuKtYTftqH6"target="_blank" rel="noopener">Differential equations</a></li>
<li><a href="https://www.youtube.com/watch?v=WUvTyaaNkzM&amp;list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr"target="_blank" rel="noopener">Essence of Calculus</a></li>
<li><a href="https://www.youtube.com/watch?v=fNk_zzaMoSs&amp;list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab"target="_blank" rel="noopener">Essence of Linear Algebra</a></li>
<li><a href="https://www.youtube.com/watch?v=aircAruvnKk&amp;list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi"target="_blank" rel="noopener">Neural Networks</a></li>
</ul>
</li>
<li>Videos:
<ul>
<li><a href="https://www.youtube.com/watch?v=RQWpF2Gb-gU"target="_blank" rel="noopener">But what is a quantum computing - Grover&rsquo;s Algorithm</a></li>
<li><a href="https://www.youtube.com/watch?v=Dlsa9EBKDGI"target="_blank" rel="noopener">Where my explanation of Grover&rsquo;s algorithm failed</a></li>
<li><a href="https://www.youtube.com/watch?v=LPZh9BOjkQs&amp;pp=0gcJCY0JAYcqIYzv"target="_blank" rel="noopener">Large Language Models explained briefly</a></li>
</ul>
</li>
</ul>
</li>
</ul>
]]></content:encoded><category>historia-da-computacao</category><category>retrocomputacao</category><category>emulacao</category><category>off-topic</category></item><item><title>RANT - LLMs são LOOT BOXES!</title><link>https://akitaonrails.github.io/2025/05/02/rant-llms-sao-loot-boxes/</link><guid isPermaLink="true">https://akitaonrails.github.io/2025/05/02/rant-llms-sao-loot-boxes/</guid><pubDate>Fri, 02 May 2025 19:20:00 -0300</pubDate><description>&lt;p&gt;Eu sei que vai soar negativo demais, e de novo, vou repetir que eu não sou anti-I.A., anti-LLM nem nada disso, pelo contrário, eu gosto TANTO, mas TANTO, que venho dedicando TODAS as minhas horas em pesquisar a fundo a respeito.&lt;/p&gt;
&lt;p&gt;Tem sido muito útil pra mim especialmente pra resumir paper, conciliar pesquisas em vários sites, resumir tópicos e coisas do tipo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;ldquo;MAS ..&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;E é um enorme MAS, ele tem sido BEM inútil em programação de verdade. Não vou repetir todos os problemas que já encontrei: eu detalhei bastante nos posts anteriores. Mas minha conclusão é simples: ele pode ajudar em código, em tarefas pequenas, focadas, isoladas, com bastante prompt pra ajudar e você - programador - precisa estar atento em o que escolher usar e o que vai rejeitar (e vai ser a maior parte).&lt;/p&gt;</description><content:encoded><![CDATA[<p>Eu sei que vai soar negativo demais, e de novo, vou repetir que eu não sou anti-I.A., anti-LLM nem nada disso, pelo contrário, eu gosto TANTO, mas TANTO, que venho dedicando TODAS as minhas horas em pesquisar a fundo a respeito.</p>
<p>Tem sido muito útil pra mim especialmente pra resumir paper, conciliar pesquisas em vários sites, resumir tópicos e coisas do tipo.</p>
<p><strong>&ldquo;MAS ..&rdquo;</strong></p>
<p>E é um enorme MAS, ele tem sido BEM inútil em programação de verdade. Não vou repetir todos os problemas que já encontrei: eu detalhei bastante nos posts anteriores. Mas minha conclusão é simples: ele pode ajudar em código, em tarefas pequenas, focadas, isoladas, com bastante prompt pra ajudar e você - programador - precisa estar atento em o que escolher usar e o que vai rejeitar (e vai ser a maior parte).</p>
<p>Prompts melhores tem limites. RAGs tem limites. Loras tem limites. Janela de contexto maior tem limite. Usar agentes que devolver stacktrace e pedir pra fazer deep thinking, tem limites. Eu já consegui esbarrar em TODOS os limites e não achei nenhum &ldquo;workaround&rdquo; que consiga fazer ele funcionar 100% bem em 100% do tempo - que é a promessa que a propaganda faz.</p>
<p><em>&ldquo;Mas a Microsoft, Google, Meta, NVIDIA já afirmaram que 30% do código deles já é feito com I.A. e ano que vem vai substituir programadores&rdquo;</em></p>
<p>Essa é a grande meia-verdade, meia-mentira (interprete como quiser).</p>
<h2>&ldquo;Que 30%??&rdquo;<span class="hx:absolute hx:-mt-20" id="que-30"></span>
    <a href="#que-30" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Você, que não é programador, sabia que documentação de projetos (que é extenso), arquivos de tradução de línguas (que é extenso, sabe quantas línguas uma Microsoft ou Google suportam globalmente?), páginas HTML que duplicam essa documentação extensa, tudo isso é &ldquo;considerado&rdquo; parte do código e fica no mesmo repositório &ldquo;de código&rdquo; como GitHub?</p>
<p>Você, que não é programador, sabia que o VOLUME em caracteres/bytes desse material, muitas vezes quase iguala ou até pode superar o volume de bytes do código em si?</p>
<p>Esse é só um pequeno exemplo que me vem à cabeça. Páginas de lançamento de produtos novos, os &ldquo;hot-sites&rdquo; que são sites DESCARTÁVEIS e feitos pra jogar fora. Isso também é volume de código. Tem MUITO &ldquo;código&rdquo; que não é &ldquo;O código&rdquo;. Todo programador que trabalha numa grande empresa sabe disso.</p>
<p>O seu projetinho caseiro não tem documentação, não tem testes automatizados, não tem scripts de build, não tem automação de deploy ou empacotamento, não tem arquivos de línguas separado, não tem hot-site, não tem site de produto em múltiplas línguas. É só um &ldquo;hello.py&rdquo; e esse é TODO o seu código. Entendo porque você extrapola que projeto grande é a mesma coisa.</p>
<p>PARTE dos &ldquo;30%&rdquo; que tanto se fala é isso. Claro que tem algum código de verdade, mas não é nem perto do que você pensa.</p>
<h3>Conflito de Interesses<span class="hx:absolute hx:-mt-20" id="conflito-de-interesses"></span>
    <a href="#conflito-de-interesses" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Eu fico pasmo. Se um &ldquo;vendedor de entorpecentes&rdquo; te dá uma amostra grátis e você pergunta &ldquo;mas é seguro&rdquo;. O que você acha que ele vai responder?</p>
<p>O dono da Meta tem produtos de I.A. O dono do Google, o dono da Microsoft, ALUGAM GPUs pra I.A.. O dono da NVIDIA VENDE GPUs pros datacenters de I.A. O dono da OpenAI, Anthropic, todos ALUGAM essa infra e te REVENDEM, <strong>CRÉDITOS DE TOKENS</strong>.</p>
<p>Qual você acha que é o incentivo deles? <strong>VENDER USO TOKENS</strong>.</p>
<p>Vocês viram meu relato nos posts anteriores. Em menos de 1 semana de testes eu gastei quase USD 150 de créditos. Seriam mais de 850 BRL, em uma semana, e depois de fazer uma CENTENA de tentativas, eu obtive refatoramentos meraramente &ldquo;razoáveis&rdquo; METADE das vezes, e eu obtive bons testes unitários que passam, MENOS DA METADE das vezes (na verdade, quase NENHUMA vez). Mas eu gastei token, MUITOS TOKENS.</p>
<p>Funcionalidades que a propaganda te fala que melhoram como DEEP THINKING/REASONING, só &ldquo;às vezes&rdquo; dão respostas de código melhor. Eles de fato são melhores pra compilar papers ou pesquisas de texto. Mas pra código, na MAIORIA das tentativas, eu não vi tanta diferença. Só que demorou MUITO mais e gastou MUITO mais tokens. Sabe o que Deep Thinking faz? Ele adiciona mais passos até a resposta e enche o contexto com tokens. Esses tokens extras: VOCÊ PAGA A MAIS.</p>
<p>Funcionalidades que a propaganda também te fala que melhorar como soluções baseadas em RAG, no fundo é só mais &ldquo;injeção de prompt&rdquo; - que sempre gasta contexto e GASTA MAIS TOKENS. Funciona, claro, mas o incentivo é gastar mais tokens.</p>
<p>Funcionalidades que a propaganda agora tenta te empurrar como MCP, agentes e automação de LLMs, somado com RAGs e tudo mais. Os Devin, n8n, e tudo mais são uma forma mais automatizada de GASTAR MAIS TOKENS.</p>
<p>Todo o incentivo, de todo mundo, é gastar mais tokens, não menos. E nos meus testes, em muitos modelos (não vou dizer todos), eu obtive respostas melhores de código <strong>DESLIGANDO DEEP THINKING</strong>. Dá pra configurar isso em ferramentas como Aider ou direto na API da OpenAI. Diminuir <code>thinking_tokens</code> ou fazer <code>reasoning_effort</code> ser &ldquo;Low&rdquo; ou melhor, &ldquo;NONE&rdquo;.</p>
<h3>LOOT BOXES<span class="hx:absolute hx:-mt-20" id="loot-boxes"></span>
    <a href="#loot-boxes" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Também expliquei no <a href="https://www.akitaonrails.com/2025/04/29/dissecando-um-modelfile-de-ollama-ajustando-qwen3-pra-codigo"target="_blank" rel="noopener">artigo sobre como fazer seu próprio Modelfile de Ollama</a> que, essencialmente, o processo de geração de textos (engula, LLMs são geradores de próxima palavra), tem componentes aleatórios. Temperatura, Top_P, Top_K. Mais: o treinamento tem componentes não-lineares (ex. ReLU). Não é determinístico, é um SORTEIO numa distribuição de probabilidades.</p>
<p>Significa que, fundamentalmente, não tem como uma LLM estar 100%, 100% do tempo. É matematicamente impossível. Ele sempre pode estar &ldquo;quase certo&rdquo; ou &ldquo;parecendo que está certo&rdquo;. Mas se você diligentemente rechecar tudo, o tempo todo, vai começar a encontrar pequenos equívocos. No caso de código, é bem mais aparente. Ele está BEM errado, MUITAS vezes.</p>
<p>E o processo todo se assemelha muito a jogos online &ldquo;gratuitos&rdquo; com LOOT BOXES ou sistemas de GATCHA, sabe? Tipo Genshin Impact da vida.</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/my994es2wx2rj3mfkyu9i6h4s9ik" alt="Loot Box"  loading="lazy" /></p>
<p>O quê??? Você é um boomer e não sabe o que são Loot Boxes? &hellip;</p>
<p>EU SOU BOOMER E EU SEI, não tem desculpa. Vai se atualizar (e é a principal razão de porque eu escolho não jogar esse tipo de jogo online).</p>
<p>A economia desses games funciona assim: você não tem a opção de comprar ítens específicos que quer. Em vez disso, você paga, digamos 20 créditos pela chance de participar de um sorteio (que acontece em datas e horas pré-programadas, não o tempo todo). Nesse sorteio você tem a (ALTA) probabilidade de só ganhar um ítem de 10 créditos OU, a <strong>incrível</strong> (BAIXÍSSIMA) probabilidade de ganhar um ítem exclusivo de 1000 créditos!!!!</p>
<p>Parece um negócio da China né??? (LITERALMENTE É!!!)</p>
<p>Você sempre ganha o item mais barato no sorteio. E de vez em quando ele te dá um item MÉDIO pra você não desistir de continuar e achar que tem alguma chance real. Só se você gastar MUITO (e nesse ponto você já gastou mais de 1000 créditos mesmo), só aí talvez ele te dê um item grande, pra te injetar de mais dopamina e aumentar seu <strong>vício</strong>.</p>
<p>É exatamente isso que acontece com LLMs. As respostas deles tem chances parecidas com de Loot Box. Às vezes ele te surpreende com uma excelente respostas, mas na maior parte do tempo, você fica pedindo &ldquo;cara, você tem certeza dessas resposta?&rdquo;, ou &ldquo;cara, não tá errada essa segunda linha?&rdquo;, ou &ldquo;cara, reveja o que eu perguntei e tenta de novo&rdquo;. e assim vai o seu dia inteiro.</p>
<p>Você não fica olhando, mas por baixo dos panos, cada vez que tem que corrigir, ele continua gastando os mesmos créditos. No final do dia, lá se foram USD 50. Parece pouco, mas faça isso todo dia e veja quanto acumula.</p>
<p>Só que seu <strong>VIÉS DE CONFIRMAÇÃO</strong> faz você se lembrar bem de quando ele acertou, mas vai &ldquo;esquecendo&rdquo; todas as outras vezes que ele errou. E sua percepção é que <em>&ldquo;Sim, ele funciona.&rdquo;</em></p>
<p>Pior, sua baixa auto-estima e necessidade de se fazer parte de um grupo, de se <strong>CONFORMAR</strong>. Corroborado com o que lê diariamente nas notícias, como:</p>
<ul>
<li>30% de todo código da Microsoft já é feita por I.A.</li>
<li>CEO da Anthropic diz que ano que vem programadores serão substituídos por virtual workers</li>
<li>CEO da NVIDIA diz que não recomendaria seu filho a estudar mais programação</li>
</ul>
<p>E tudo isso AUMENTA O VIÉS: você acha que eles estão certos, as vezes que você mesmo experimentou a LLM errando <em>&ldquo;deve ter sido uma pequena exceção, eu que sou burro mesmo&rdquo;</em> e ACREDITA na MENTIRA.</p>
<p>Quem lembra das minhas palestras de 15 anos atrás onde eu mostrava este video?</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/iRh5qy09nNw"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Isso é um fenômeno bem conhecido, hoje em dia mais amplificado pelas redes sociais e a burrice de jornalista, que só repete o que ouve como papagaio e não faz mais perguntas críticas, do tipo: EXISTE CONFLITO DE INTERESSES??</p>
<h3>&ldquo;OpenAI usa seus chats pra treinar?¨<span class="hx:absolute hx:-mt-20" id="openai-usa-seus-chats-pra-treinar"></span>
    <a href="#openai-usa-seus-chats-pra-treinar" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Aqui vou ter que consertar uma mentira que eu venho contando pra vocês. Eu sempre repeti que não. Sua conversa não é usada pra treinamento, porque iria poluir o material de treinamento com lixo que no final não iria melhorar as respostas.</p>
<p>É meia-verdade. De fato, eu duvido muito e boto minha mão no fogo: nenhum provedor quer se arriscar a alguém encontrar um texto com copyright e levar processo. Isso já acontece, o New York Time processou porque o ChatGPT conseguiu reproduzir um texto publicado por eles. E isso meio que &ldquo;prova&rdquo; que fazia parte do material de treinamento.</p>
<p>Tem gente que coloca coisas privadas como condições de saúde, situação financeira, e até mesmo dados críticos como senhas, endereço, coisas que não deveriam mas acabam publicando porque não tem noção sobre cyber-segurança. Todo mundo cai num golpe todo dia por causa disso. A OpenAI ou Meta ou Alibaba não fazem questão de aparecer isso uma hora no chat e viralizar notícia internacional falando como eles foram irresponsáveis.</p>
<p><strong>MAS</strong></p>
<p>E é um GRANDE &ldquo;MAS&rdquo;, eles usam sim seu chat. De todo mundo. Sem copiar nenhum dado seu. Eles só precisam dos METADADOS, os dados que descrevem seu chat.</p>
<p>De cabeça aqui, sendo ingênuo e amador em treinamento, eu vejo pelo menos 2 informações importantes que você dá pra eles: o comprimento do seu chat e o sentimento das suas respostas no chat.</p>
<p>Determinar sentimento a partir de texto é um problema bem resolvido, tem algoritmos com ou sem redes neurais que conseguem determinar se o texto parece feliz, triste, bravo, angustiado ou coisas assim. Eles não precisam do conteúdo do seu texto, só precisam do SENTIMENTO que você teve na hora.</p>
<p>Somado ao COMPRIMENTO do seu Chat e como eu falei <a href="https://www.akitaonrails.com/2025/05/02/rant-llms-sao-loot-boxes"target="_blank" rel="noopener">no post anterior</a>, que o incentivo é fazer você gastar MAIS TOKENS (chat MAIS longos). NO PRÓXIMO POST vou ensinar vocês como eles fazer alinhamento, o &ldquo;fine-tuning&rdquo; do modelo. Uma OpenAI usa milhares de linhas de pares de prompts/completion pra &ldquo;forçar&rdquo; o modelo a responder de uma determinada forma. Pensa um Excel cheio de perguntas e respostas pré-prontas, que segundo seus metadados, sabemos que são as respostas mais POPULARES.</p>
<p>O objetivo não é fazer o modelo responder mais certo, porque às vezes a resposta certa é muito dura ou inconveniente pra algumas pessoas. Eu tenho quase certeza que os dados extraídos dos chats de milhões de pessoas, só isso: sentimento e comprimento. Deve ajudar a criar prompts que forçam o modelo a responder &ldquo;menos certo&rdquo; mas &ldquo;mais agradável&rdquo;, incentivando o usuário a CONTINUAR falando no chat e GASTANDO MAIS TOKENS.</p>
<p>É o comportamento mais antigo do mundo. Todo lojista sabe disso. Todo vendedor sabe disso. Todo mundo que trabalha em serviços sabe disso. Se você for certo e direto, vai soar arrogante e o cliente não volta. É melhor soar menos certo, mas mais convidativo, agradável, prestativo, etc. E o cliente volta, porque é assim que a pessoa média funciona.</p>
<p>Portanto, sim: eu acho que seus dados servem pra re-alinhar o modelo depois de treinado, pra responder mais agradável. Eles nem fazem mais questão de esconder isso. Não viram o próprio Sam Altman quando falou poucos dias trás que fizeram o ChatGPT 4 responder mais amigável, com mais personalidade?</p>
<p>É isso que eu acho que eles estão fazendo. Tornar o modelo mais inteligente está sendo um desafio. Porque - como já venho dizendo faz 1 ano - estamos batendo no teto da curva em S. Pra continuar vendendo tokens, fazendo você voltar e se viciar em falar, não precisa ser mais inteligente, só precisa ser mais agradável.</p>
<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Não existe LLM que vai estar 100% certo, 100% do tempo, a arquitetura fundamental IMPEDE que isso aconteça, não importa quanto mais façamos otimizações. Existe agora e sempre vai continuar existindo um componente de ENTROPIA. É essa aleatoriedade que produz texto que parece um humano falando e não um robô.</p>
<p>Automatizações longas e complexas demais usando essa fundação fŕagil é um ENORME erro. Claro, pra tarefas simples, curtas, focadas, ele tem uma TAXA DE ACERTO mais alta. Pra código de verdade? É SUPER baixo.</p>
<p>Nunca deixe um MCP fazer commits direto no seu repositório Git. Ferramentas como o Aider trazem &ldquo;autocommit = true&rdquo; por padrão e isso é uma enorme estupidez! Não faça isso.</p>
<p>Eu avisei.</p>
<p>Mas não tem como melhorar o código de LLMs? Talvez. 100% nunca, mas aumentar a taxa acho que dá. E pra provar que eu não sou anti-LLM nem nada disso, no próximo artigo vou tentar ensinar COMO melhorar uma LLM pra programação (com média probabilidade, não é milagre!).</p>
]]></content:encoded><category>llms</category><category>agentes-de-codigo</category><category>engenharia-de-software</category><category>off-topic</category></item><item><title>Rant - LLMs vão evoluir pra sempre? Desmistificando LLMs na programação</title><link>https://akitaonrails.github.io/2025/05/01/rant-llms-vao-evoluir-pra-sempre-desmistificando-llms-na-programacao/</link><guid isPermaLink="true">https://akitaonrails.github.io/2025/05/01/rant-llms-vao-evoluir-pra-sempre-desmistificando-llms-na-programacao/</guid><pubDate>Thu, 01 May 2025 02:30:00 -0300</pubDate><description>&lt;p&gt;Vamos recaptular meus últimos artigos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.akitaonrails.com/2025/04/25/hello-world-de-llm-criando-seu-proprio-chat-de-i-a-que-roda-local"target="_blank" rel="noopener"&gt;Hello World de LLM&lt;/a&gt; - neste artigo explico como criar um programinha simples (educativo) de chat carregando um LLM (Qwen2.5) e até como usar prompts pra que ele consiga chamar scripts/agentes e executar algumas tarefas simples como carregar arquivos locais. Eu subi o código no GitHub como &lt;a href="https://github.com/akitaonrails/Tiny-Qwen-CLI"target="_blank" rel="noopener"&gt;Tiny-Qwen-CLI&lt;/a&gt; e deixei o código &amp;ldquo;sujo&amp;rdquo; de propósito pra poder testar como as LLMs conseguem (ou não ajustar esse código).&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.akitaonrails.com/2025/04/25/seu-proprio-co-pilot-gratuito-universal-que-funciona-local-aider-ollama-qwen"target="_blank" rel="noopener"&gt;Seu Próprio Co-Pilot Gratuito&lt;/a&gt; - aqui eu explico mais sobre a ferramenta Aider, que é como se fosse um Co-Pilot ou Cursor, mas gratuito e open-source. Ele não exige plugins nem IDEs. Roda no terminal e é fácil de usar. Também mostro como integrar com Ollama e subir seus próprios LLMs locais.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.akitaonrails.com/2025/04/29/dissecando-um-modelfile-de-ollama-ajustando-qwen3-pra-codigo"target="_blank" rel="noopener"&gt;Dissecando um Modelfile de Ollama&lt;/a&gt; - neste eu desço mais na teoria dos LLMs e explico o que é Key Sampling e os como diversos parâmetros afetam a geração de texto das LLMs, como Temperature ou Top_P. Aqui é pra desmistificar ainda mais que não existe nenhuma &amp;ldquo;mágica&amp;rdquo; em como uma LLM consegue gerar textos.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ao longo dos últimos dias eu vim testando e postando no X minhas impressões sobre os mais diversos modelos comerciais e open source como Claude Sonnet, Gemini 2.5, OpenAI O4, Deepseek-R1, o novo Qwen3 e mais. Tem mais posts no blog além dos que mencionei acima, mas estes são os principais.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Vamos recaptular meus últimos artigos:</p>
<ul>
<li><a href="https://www.akitaonrails.com/2025/04/25/hello-world-de-llm-criando-seu-proprio-chat-de-i-a-que-roda-local"target="_blank" rel="noopener">Hello World de LLM</a> - neste artigo explico como criar um programinha simples (educativo) de chat carregando um LLM (Qwen2.5) e até como usar prompts pra que ele consiga chamar scripts/agentes e executar algumas tarefas simples como carregar arquivos locais. Eu subi o código no GitHub como <a href="https://github.com/akitaonrails/Tiny-Qwen-CLI"target="_blank" rel="noopener">Tiny-Qwen-CLI</a> e deixei o código &ldquo;sujo&rdquo; de propósito pra poder testar como as LLMs conseguem (ou não ajustar esse código).</li>
<li><a href="https://www.akitaonrails.com/2025/04/25/seu-proprio-co-pilot-gratuito-universal-que-funciona-local-aider-ollama-qwen"target="_blank" rel="noopener">Seu Próprio Co-Pilot Gratuito</a> - aqui eu explico mais sobre a ferramenta Aider, que é como se fosse um Co-Pilot ou Cursor, mas gratuito e open-source. Ele não exige plugins nem IDEs. Roda no terminal e é fácil de usar. Também mostro como integrar com Ollama e subir seus próprios LLMs locais.</li>
<li><a href="https://www.akitaonrails.com/2025/04/29/dissecando-um-modelfile-de-ollama-ajustando-qwen3-pra-codigo"target="_blank" rel="noopener">Dissecando um Modelfile de Ollama</a> - neste eu desço mais na teoria dos LLMs e explico o que é Key Sampling e os como diversos parâmetros afetam a geração de texto das LLMs, como Temperature ou Top_P. Aqui é pra desmistificar ainda mais que não existe nenhuma &ldquo;mágica&rdquo; em como uma LLM consegue gerar textos.</li>
</ul>
<p>Ao longo dos últimos dias eu vim testando e postando no X minhas impressões sobre os mais diversos modelos comerciais e open source como Claude Sonnet, Gemini 2.5, OpenAI O4, Deepseek-R1, o novo Qwen3 e mais. Tem mais posts no blog além dos que mencionei acima, mas estes são os principais.</p>
<p>Objetivo deste post é desmistificar mais as LLMs e falar mais sobre minha experiência testando a maioria dos LLMs mais populares.</p>
<h3>Desmistificando LLMs - 1. Benchmarks e Rankings<span class="hx:absolute hx:-mt-20" id="desmistificando-llms---1-benchmarks-e-rankings"></span>
    <a href="#desmistificando-llms---1-benchmarks-e-rankings" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Quem acompanha minhas palestras e videos faz anos está careca de me ouvir falar sobre o livro <a href="https://www.amazon.com.br/Como-Mentir-Estat%C3%ADstica-Darrell-Huff/dp/858057952X"target="_blank" rel="noopener">&ldquo;Como Mentir com Estatísticas&rdquo;</a>. E o que eu mais vejo nas centenas de posts sobre LLMs é sobre os rankings baseados em benchmarks. Este é um exemplo que viralizou ontem, no lançamento do novo modelo da Alibaba, o Qwen3:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/1kflvwk5uq9lkt5yh8knngwxwfi9" alt="Qwen3 benchmarks"  loading="lazy" /></p>
<p>O problema: os rankings não estão errados. Eles querem dizer o seguinte:</p>
<p><strong>&ldquo;Qwen 3 supera Qwen 2.5 e também outros famosos como OpenAI o1, DeepSeek-R1, Grok 3 Beta, Gemini 2.5, etc &hellip;. NOS BENCHMARKS RODADOS - e APENAS nos benchmarks rodados.&rdquo;</strong></p>
<p>É apenas isso. Mas 99% dos posts publica assim:</p>
<p><strong>&ldquo;Qwen 3 É O MELHOR PRA DESENVOLVER CÓDIGO do que Qwen 2.5 e também outros famosos como OpenAI o1, DeepSeek-R1, Grok 3 Beta, Gemini 2.5, etc&rdquo;</strong>*</p>
<p>Os benchmarks não estão errados, quem está errado é quem interpretou que isso significa ser melhor em tudo. Vamos pra outra analogia:</p>
<p><strong>&ldquo;O Aluno Fulano conseguiu 99% de acerto em todos os simulados do vestibular&rdquo;</strong></p>
<p>A conclusão das pessoas:</p>
<p><strong>&ldquo;O Aluno Fulano é 99% melhor que todo mundo em tudo&rdquo;</strong></p>
<p>Espero que isso soe obviamente errado. Ser melhor em 1 coisa não torna ninguém melhor em tudo, mas em I.A. é assim que toda notícia de uma nova versão de LLM é publicado em posts pessoais e veículos jornalísticos. É um óbvio <strong>CLICKBAIT</strong>. E você cai.</p>
<p>E se você está acostumado a ouvir dessa forma, faz parecer que a cada nova versão de LLM - que é &ldquo;melhor em tudo&rdquo; - que o anterior, falta muito pouco ou já chegou no ponto onde sim, não precisa mais existir programadores humanos, nem matemáticos, nem engenheiros, nem médicos, afinal, a LLM é &ldquo;BOA EM TUDO&rdquo;.</p>
<p>E nada poderia ser mais longe da verdade que isso. Essas pesquisas estatísticas de ranking tem uma METODOLOGIA de testes e um pacote de benchmark fixo. Os testes são SIMPLES, pense coisas no nível &ldquo;faça uma função que calcule fatorial&rdquo;, &ldquo;faça uma função que ordene uma lista de palavras&rdquo;, &ldquo;dado uma lista de palavras, encontre um em específico em tempo logarítmico&rdquo;, etc. Coisas que você vê nos cursos introdutórios de ciências da computação ou Leet Code.</p>
<p>Esses testes são rodados MÚLTIPLAS VEZES e os &ldquo;outliers&rdquo; (testes onde se errou demais, ou testes onde se acertou demais, ou algo que saia da média) são descartados, é feita uma distribuição estatísticas e compilado um &ldquo;número&rdquo; geral genérico como &ldquo;acertou 99%&rdquo; ou algo assim.</p>
<p>Ele errou muitas vezes, mas esse ponto de dados é um outlier, e foi removido da conta. É estatisticamente irrelevante dentro da metodologia. Mas é um fato: nenhuma LLM acerta 100% das vezes nem nunca vai acertar. Eu demonstrei isso no meu post sobre Modelfiles onde eu explico que existe um fator aleatório controlado (temperatura, top_p, top_k, min_p, key sampling). E existe também normalizações e fatores aleatórios no treinamento (softmax, relu). E ainda tem fatores de otimização posterior que &ldquo;arredonda&rdquo; ou &ldquo;trunca&rdquo; as probabilidades como quantização (fp8, Q4, etc). Ou seja, existem diversos fatores de &ldquo;micro erros&rdquo; e aleatoriedade embutidos no processo inteiro. Nunca vai ser uma resposta &ldquo;certa&rdquo;, só &ldquo;possivelmente uma das mais certas&rdquo; e esse &ldquo;possivelmente&rdquo; pode variar MUITO.</p>
<h3>Dissecando Mitos de I.A. - 2. Evolução Exponencial<span class="hx:absolute hx:-mt-20" id="dissecando-mitos-de-ia---2-evolução-exponencial"></span>
    <a href="#dissecando-mitos-de-ia---2-evolu%c3%a7%c3%a3o-exponencial" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Quem chegou só agora e está vendo notícias frequentes sobre lançamentos de novas versões de LLMs como o Qwen3 da Alibaba agora, o novo MiMo da Xiaomi, a versão 2.5 do Gemini, a versão 4.1 do ChatGPT, etc tem a impressão que estamos evoluindo a passos largos.</p>
<p>Mas a verdade é que sim, 2022 foi um marco histórico com o ChatGPT original, principalmente GPT 2. Mas de lá pra cá a evolução desacelerou. Cada nova versão não é mais visivelmente &ldquo;o dobro melhor&rdquo; que a anterior, a não ser em certos benchmarks, em certas condições específicas - que não condizem com a realidade. Já vou demonstrar.</p>
<p>Um amigo meu me lembrou sobre a evolução das tecnologias de deep learning em reconhecimento de imagens, anos antes:</p>
<ul>
<li>
<p>2012 – AlexNet: Primeira grande vitória no ImageNet com 8 camadas, alcançando 84,7% de top-5 accuracy.​</p>
</li>
<li>
<p>2014 – VGG: Redes com 16–19 camadas, melhorias incrementais, mas com aumento significativo de parâmetros.​</p>
</li>
<li>
<p>2015 – ResNet: Introdução de conexões residuais, permitindo redes com mais de 100 camadas e superando desempenho humano em top-5 accuracy.​</p>
</li>
<li>
<p>2016–2017 – Inception, ResNeXt, SENet: Modelos mais complexos com ganhos marginais.​</p>
</li>
<li>
<p>Pós-2018: Acurácia top-1 se estabiliza em torno de 85–88%, com ganhos marginais mesmo em modelos como EfficientNet e NasNet.</p>
</li>
</ul>
<p>I.A. é estudada desde literalmente o início da computação moderna no fim dos anos 1930, com ninguém menos que o próprio Alan Turing ou John Von Neumann. Eu contei sobre eles aqui:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/G4MvFT8TGII"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Pense um &ldquo;início lento&rdquo;: de 1930 até cerca de 2012 quando ImageNet e coisas como AlphaGo, GANs e coisas assim começaram a ganhar velocidade. Saímos da perna do &ldquo;S&rdquo; pro meio a partir dos anos 2010 e viemos acelerando até agora. Eu &ldquo;chuto&rdquo; que ou já estamos ou estamos caminhando pro topo do &ldquo;S&rdquo;, onde a curva estabiliza e desacelera. Foi isso que aconteceu com deep learning de imagens:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/lgr7uodnbmqfujjw39h69mnybi8t" alt="ImageNet"  loading="lazy" /></p>
<p>Lembram do AlphaGo? Eu acompanhei ao vivo. Como amador-hobista em Go, eu assisti ao vivo os jogos com me mestres sul-coreanos como Lee Sedol, na época que aconteceu, acho que 2016. Vocês devem ter visto o <a href="https://www.netflix.com/br-en/title/80190844"target="_blank" rel="noopener">documentário na Netflix</a> só agora, mas isso vem acontecendo faz anos. E agora, onde está o AlphaGo evoluindo exponencialmente? Todo mundo já esqueceu, porque o quente da moda são LLMs, que é só mais uma categoria no mundo de I.A.</p>
<p>A grande maioria das otimizações já foram ou já estão sendo feitas. Se fosse resumir só alguns dos milestones mais importantes desta parte da geração seria mais ou menos assim:</p>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/z14qvijztqvy6prvbpokk02fqrjt" alt="timeline llm"  loading="lazy" /></p>
<p>Todo engenheiro e cientista sabe disso: quando você não tem nada, qualquer coisa é um salto quântico. Quando você só tem 1 real, 2 reais já é &ldquo;o dobro&rdquo;. Quando tem 10 reais, 20 já é bastante. Mas quando chega em 20 mil, mais 100 já não adiciona tanto valor assim do que quando você só tinha 1 (ali seria 100x).</p>
<p>Cada nova gota de otimização agora CUSTA MUITO. Mesmo em otimização com perda de precisão (quantização) já saímos de fp32, fomos pra fp16, fp8, já chegamos em 1-bit. Não tem mais pra onde descer depois disso. Estamos no ponto onde estamos trocando precisão por performance.</p>
<p>Dobro de parâmetros não resulta mais em dobro de qualidade de resultado. Precisa dobrar pra ter 5%? Talvez? E não adianta continuar aumentando, o resultado começa a piorar em vez de melhorar. Por isso já pulamos pra coisas como LLMs especialistas, MoE (Mixture of Experts).</p>
<p>Deep thinking/Chain-of-Though/Reasoning foi um grande salto, mas só aumentar mais thnking também já não dá mais tanto resultado, na verdade, em muitos casos piora o resultado com &ldquo;over-thinking&rdquo;. Pensar demais não é linear também.</p>
<p>Aumentar contexto também não ajuda a melhorar as respostas. Pelo contrário, já vemos que a partir de um certo ponto, mais contexto atrapalha o resultado, porque a arquitetura de atenção (o grande diferencial das LLMs), tem limites. Sim, um Deepseek ou Gemini dizem suportar &ldquo;1 milhão de tokens&rdquo;. Mas eu já expliquei nos artigos anteriores que se trata de <strong>Sliding Window Attention</strong> como SDPA ou Flash onde a atenção é voltada só a uma PARTE desse grande contexto: ele não consegue dar atenção pra tudo o tempo todo.</p>
<p>Todo lugar onde dava pra colocar coisas óbvias, como caching, seja no treinamento, seja na geração, já foram colocadas. Estamos ficando sem opções aqui. E sim, novas descobertas continuam acontecendo, mas como falei, nenhuma ainda conseguiu ultrapassar os limites que sabemos que existem.</p>
<h3>Desmistificando Mitos de I.A. - 3. Acabar com Programadores<span class="hx:absolute hx:-mt-20" id="desmistificando-mitos-de-ia---3-acabar-com-programadores"></span>
    <a href="#desmistificando-mitos-de-ia---3-acabar-com-programadores" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>O que eu mais detesto do hype atual são as falsas promessas de &ldquo;AGI&rdquo;, &ldquo;Vibe Coding&rdquo;, &ldquo;trocar funcionários por MCPs&rdquo;. Vou afirmar de novo: é tudo propaganda.</p>
<p>Propaganda mentirosa e falsas promessas de óleo de cobra (coisa que sempre existiu e sempre vai existir na história) DESVALORIZA a realidade as inovações que temos hoje.</p>
<p><em>&ldquo;Mas o CEO da Anthropic e o tio Zuck disseram que vão substituir programadores. Microsoft e Google disseram que 30% do código deles já sai de I.A.&rdquo;</em></p>
<p>Como falei antes sobre estatística. Sim: muita coisa VAI ser feita com I.A. mesmo. Não precisa de I.A. pra otimizar trabalho em várias área:</p>
<ul>
<li>
<p>um pedaço de pau e um bloco de argila são suficientes pra substituir a memória das pessoas. Ninguém lembra de detalhes, especialmente numéricos, permanentemente. Faz milênios que evoluímos em ajudar nossa memória com algum tipo de armazenamento externo. Seja bloco de argila, seja papel, seja post-it, seja um arquivo .txt na sua máquina.</p>
</li>
<li>
<p>a primeira câmera fotográfica já removeu a necessidade de contratar um pintor de quadros pra se ter uma &ldquo;selfie&rdquo;.</p>
</li>
<li>
<p>o primeiro computador mais primitivo já eliminou a necessidade de um prédio inteiro de matemáticos fazendo e refazendo cálculos no papel. Mesmo assim, foi desse jeito que os primeiros foguetes foram pro espaço. Já assistiu o filme <a href="https://www.netflix.com/title/80123775"target="_blank" rel="noopener">Hidden Figures</a>? Recomendo</p>
</li>
<li>
<p>carros já são montados quase que totalmente por robôs, faz anos. robótica não é novidade na indústria. Hoje em dia, um tablet já substituiu caixas de supermercado e de McDonalds. Tudo isso sem precisar de I.A. URAs e botzinhos já substituíram muito de telemarketing e suporte.</p>
</li>
</ul>
<p>Então sim, na prática, I.A. também vai substituir uma classe inteira de programadores: os de baixo valor agregado. Os que não sabem fazer muito mais que copy e paste ou cuja rotina de trabalho seja repetitivo. Se seu trabalho envolve tarefas repetitivas, é óbvio que é questão de tempo até serem automatizados, seja por I.A. seja por meros scripts. Coisa que já fazemos hoje.</p>
<p>O trabalho de um programador sempre foi substituir o trabalho dos outros. Você que trabalha fazendo sistema de e-commerce: você ajudou a substituir o trabalho de vendedores, vitrinistas, decoradores de loja, caixas. Você que faz sistemas de tickets e suporte, você já substituiu atendentes humanos. Você que faz sistemas de entregas, já substituiu telefonistas. Você que faz sistemas financeiros, já substituiu bancários, quem constrói agências de banco, etc.</p>
<p>Você, programador, sempre trabalhou substituindo o trabalho dos outros. Era questão de tempo até programadores substituírem trabalho de programadores. Chame isso de <strong>justiça poética</strong>. É só evolução mesmo. Acontece. Nada no mundo é feito pra ser estático e nem garantido.</p>
<p>Aqui vai a boa notícia: como sempre acontece. Ainda existem pintores, mesmo existindo fotógrafos. Ainda existem vendedores, mesmo existindo e-commerce. Ainda existe construção, mesmo não precisando tanto de lojas ou até escritórios (com home office). Ainda existe e vai continuar existindo, médicos, advogados, contadores, várias profissões. A diferença é que antes, uma empresa de contabilidade precisava de um prédio cheio de pessoas que sabiam usar ábacos e escrever planilhas em papel. Hoje um único contador que saiba usar Excel substitui um andar inteiro. Antigamente, uma empresa de publicidade era um prédio inteiro, hoje é uma pessoa que usa Canva, CapCut e Photoshop.</p>
<p>Programador é a mesma coisa. Antes era um prédio inteiro com piscina de bolinha roxa. Amanhã vai ser um, BOM, programador com Cursor e Aider. Quem some nessa brincadeira? Quem fazia o trabalho braçal de baixo valor agregado.</p>
<p>Eu avisei que isso ia acontecer. Durante 5 anos, antes de existir esta geração de LLMs e I.A. Porque é o rumo natural das coisas. Programador de curso online de fim de semana. Esse é o primeiro que vai desaparecer.</p>
<p>Você sabe cálculo? Sabe Álgebra? Sabe Álgebra Linear? Sabe Estatística de Probabilidade? Sabe o que é uma distribuição estatística? Sabe o que são vetores ou tensors? Sabe o que é um espaço de Hilbert? Não? Eu me precaveria se fosse você. Se todos os artigos que eu publiquei neste mês de Abril/2025 foram muito difíceis, vocês já sabem o que precisam estudar.</p>
<h3>Minha experiência com LLMs<span class="hx:absolute hx:-mt-20" id="minha-experiência-com-llms"></span>
    <a href="#minha-experi%c3%aancia-com-llms" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Eu venho usando LLMs faz 2 anos. Todo tipo de pesquisa ou código que faço passa por alguma LLM em alguma capacidade. Eu uso pesado mesmo. Meu histórico de ChatGPT é gigante.</p>
<p>E depois de fazer mais um intensivão pra ter certeza. Sim, o4-mini-high, Sonnet 3.7, Gemini 2.5, Qwen3, Deepseek-R1, etc são todos extremamente úteis e nenhum deles, absolutamente nenhum, consegue me satisfazer.</p>
<p>Vibe Coding é uma enorme bobagem. Ninguém sem conhecimentos de programação consegue fazer mais que software super simples (e cheio de bugs) usando só LLMs e prompts ou MCPs. Isso é um fato.</p>
<p><em>&ldquo;Mas a evolução é exponencial, ano que vem vai ser perfeito.&rdquo;</em></p>
<p>Não vai. Eu já argumentei esse ponto acima.</p>
<p><em>&ldquo;Mas os benchmarks dizem que eles já conseguem fazer 99% de código perfeito.&rdquo;</em></p>
<p>Também já argumentei esse ponto, sua interpretação está equivocada.</p>
<p>Estamos perto ou já no começo do topo da curva &ldquo;S&rdquo;. E eu não vejo problema nenhum nisso. Eu entendo como LLMs são feitos, entendo como são otimizados, entendo o que conseguem fazer e, mais importante, entendo o que são incapazes de fazer.</p>
<p>Vejam os <a href="https://github.com/akitaonrails/Tiny-Qwen-CLI/pulls"target="_blank" rel="noopener">pull requests</a> de todas as tentativas que tentei fazer de refatoração de código e testes unitários com as principais LLMs do mercado, abertas e fechadas. O que eu vejo:</p>
<ul>
<li>precisa de MUITO prompt e muita instrução pra fazer eles começarem a cuspir código que funciona.</li>
<li>eles parecem um estagiário, o famoso &ldquo;na minha máquina funciona&rdquo;. Saem cuspindo, um monte de copy e paste de código, e não re-checam se faz sentido ou se precisava. O tanto de código inútil que eles geram é assustador.</li>
<li>eles repetem os mesmos erros, mesmo avisando pra não cometer.</li>
<li>mesmo com &ldquo;agentes&rdquo;, &ldquo;MCP&rdquo;, mesmo rodando o código que foi gerado e dando o stacktrace de erros, eles facilmente desfocam, perdem atenção e não consguem corrigir. Mesmo re-tentando diversas vezes pra corrigir o mesmo erro. Mesmo dando dicas. Mesmo escrevendo longamento o que está errado. Rapidamente eles entram em loop. Especialmente se tiver o tal &ldquo;thinking&rdquo; ativado. Eles pensam demais e não resolvem.</li>
<li>cansei de ver tentativa de sair mexendo aleatoriamente no código, em partes que nem pedi pra mexer, e quebrar mais do que consertar.</li>
<li>nenhum deles foi capaz de gerar testes unitários que funcionam de primeira. Alguns conseguiram fazer alguns simples, depois de dar o erro e pedir pra consertar. Alguns ficam em loop de pensamento, confusos, e saem mudando sem corrigir. No final fracassam.</li>
<li>Do nada começam a alucinar. O Qwen 3 mesmo, se eu tentar aumentar só um pouco temperature, de 0.1 pra 0.2 do nada começa a sair caracter chinês no meio do código, assim:</li>
</ul>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/j0rnlba6loxmo32pyyjxy8diteor" alt="chinese char"  loading="lazy" /></p>
<ul>
<li>Vira e mexe, mais de uma LLM, conseguiu a proeza de gerar teste unitário que dava erro recursivo. Isso enchia tanto o stacktrace que se eu tentava passar pra ele (mais de 12 mil tokens), isso estourava a janela de contexto e dali ele não conseguia dar atenção pra mais nada:</li>
</ul>
<p><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/eqh6ytb84mvcpzr92dk7kge2exaj" alt="recursive error"  loading="lazy" /></p>
<ul>
<li>
<p>como erram demais, eu fico repetidamente e exaustivamente dando chance pra ele consertar. Eu rodo o código que ele gerou, mando o stacktrace de erro, peço pra consertar. Ele mexe outra parte do código. Rodo de novo, dá erro e repito. Se fizer isso mais que meia dúzia de vezes, o contexto começa a ficar cheio, sliding window faz ele dividir atenção, ele &ldquo;esquece&rdquo; o que veio antes, começa a repetir o mesmo erro e fica nisso eternamente.</p>
</li>
<li>
<p>não importa se suporta 8 mil tokens, 30 mil tokens, 100 mil tokens ou 1 milhão de tokens no contexto. Isso não influenciou a qualidade do código e nem melhorou essa rotina de repetição de erros. Ele nunca consegue dar atenção pra tudo.</p>
</li>
<li>
<p>não adianta tentar tunar o key sampling. seja com temperature 0, 0.1, 0.6. Só faz ele errar um pouco depois ou um pouco antes, mas ele rapidamente erra e rapidamente fica incapaz de corrigir os próprios erros. Ferramentas como Aider pegam o código que ele sugeriu e grava em cima do arquivo de código de verdade. Várias vezes, por encher demais o contexto, ele começa a &ldquo;esquecer&rdquo; e apagar trechos do código. Ainda bem que GIT existe, porque várias vezes precisei dar <code>git checkout</code> pra voltar pro começo. Se você não checa, cuidado, ele apaga código ou sobrescreve com bobagem, e isso é frequente.</p>
</li>
<li>
<p>deep thinking/reasoning/chain-of-thought, seja lá como você prefere chamar, só significa que ele fica pensando em excesso e enchendo o contexto de linguiça, comendo seus tokens. Se sua API comercial, cuidado: você vai acabar com seus créditos muito rápido e o resultado não é significativamente melhor. São casos isolados onde isso ajuda. Eu recomendo deixar desligado por padrão e ligar só em alguns casos especiais.</p>
</li>
</ul>
<p>E veja: meu projeto de exemplo é ridículo: são 5 arquivos. 4 deles tem menos de 100 linhas de código, o maior tem 400 e tantas linhas. Um projeto de verdade, grande, são MILHÕES de linhas de código. Não cabe em nenhum contexto de nenhum Gemini ou Deepseek. E mesmo se coubesse, só deixaria ele mais confuso. A boa prática em qualquer ferramenta é dar o mínimo de arquivos pra ele. E isso restringe os casos de uso a refatorações locais e isoladas, jamais coisas como renomear uma classe ou função que é usada em centenas de arquivos. Pra isso, continue usando seu IntelliJ.</p>
<p>Nenhum modelo que testei é perfeito. Alguns modelos se dão um pouco melhor em alguns casos. Na primeira tentativa que fiz com o Gemini 2.5, ele até que conseguiu executar as tarefas que pedi. Não deu um código maravilhoso, mas pelo menos não quebrou nada.</p>
<p>Na segunda vez, dei <code>git reset --hard</code> e re-comecei, com os mesmos arquivos e os mesmos prompts. Dessa vez foi extremamente decepcionante. Ele quebrou o código principal na refatoração e foi incapaz de terminar um teste unitário que funcione mesmo eu forçando ele várias vezes. Desisti pelo cansaço.</p>
<p>Na terceira vez, ele deu resultado diferente, melhorou um pouco o código e ele conseguiu terminar o mesmo teste. Mas também precisou de algumas rodadas de teste quebrado, dar stacktrace e mandar corrigir erros óbvios. E quanto eu digo &ldquo;óbvio&rdquo; é ele consertar um mock que ele mesmo colocou sem precisar.</p>
<p>E isso é consistente em todos os outros modelos. Se eu só rodo uma vez, tenho uma impressão. Por exemplo, que Claude é melhor que Qwen3. Mas se eu rodo de novo, o mesmo teste, agora o Claude me decepciona e o Qwen3 passa na frente. Nunca tem um vencedor objetivamente melhor. Estão todos mais ou menos na mesma posição e ficam mudando no ranking dependendo de quantas vezes você repete exatamente o mesmo teste, com o mesmo código e os mesmos prompts.</p>
<p>E quem fica repetindo a mesma coisa? Ninguém. Todo mundo aceita a primeira resposta. E a primeira resposta pode estar BEM errada. Num nível óbvio de errada. Se aceitar automaticamente, vai inserir lixo no repositório. E esse é meu problema com coisas como MCP ou agentes: se deixar tudo no automático e pedir coisas como &ldquo;pegue todos os arquivos de código deste diretório e corrija todos os bugs&rdquo;. Ele vai, com toda certeza, gerar mais bugs, apagar código, sumir com arquivos e deixar o repositório final num estado pior do que antes.</p>
<p>Vibe Coding puro, com nenhuma interação de um programador, não funciona. Eu testei todos os modelos principais. Nenhum foi capaz de passar testes simples. Nenhum vai ser capaz de passar por testes maiores de verdade. Não sem muita interação de um bom programador pra rejeitar os erros e mandar repetir, ou corrigir manualmente o que saiu errado.</p>
<p>E adivinhem: codificador que só sabe fazer copy e paste do stackoverflow (e agora do ChatGPT), é incapaz de reconhecer muitos desses erros. Então em vez de ajudar, ele pode piorar.</p>
<p>Pra mim, que sei exatamente o que eu quero, os erros são óbvios e eu automaticamente rejeito. E eu rejeito o que toda LLM faz mais do que aceito. Muitas vezes eu só pego um trecho do que ele sugeriu e descarto todo o resto. Esse é o dia a dia de verdade. Todo mundo que diz o contrário não fez código mais complicado do que um Hello World.</p>
<p>Por que você acham que todo exemplo de <em>&ldquo;uau, veja a LLM fazendo código sozinha&rdquo;</em> sempre é fazendo uma função de fatorial? Ou uma página web tosca? Porque é só isso que ele consegue fazer mesmo. Nenhum exemplo de MCP que eu vi até agora me deixou impressionado. Foi tudo fumaça. E você foi enganado pela propaganda.</p>
<p>Agora você sabe.</p>
<p>Como faz pra saber mais e não ser enganado? Comece aprendendo os fundamentos. 1 ano atrás eu fiz vários videos explicando como LLMs funcionam. Você já deveria ter assistido:</p>
<p><a href="https://www.youtube.com/playlist?list=PLdsnXVqbHDUeowsAO0sChHDY4D65T5s1U"target="_blank" rel="noopener"><img src="https://new-uploads-akitaonrails.s3.us-east-2.amazonaws.com/7tshjfwbly7wudczbni2pa863f11" alt="Playlist I.A."  loading="lazy" /></a></p>
<p>E pra virar programador que não vai ser substituído pela I.A.? É pra isso que eu fiz <a href="https://www.youtube.com/@Akitando"target="_blank" rel="noopener">meu canal</a>. Quando tudo que eu disse virar comum pra você, parabéns, você tem boas chances de sobreviver.</p>
]]></content:encoded><category>llms</category><category>vibe-coding</category><category>benchmarks-de-llm</category><category>off-topic</category></item><item><title>Off-Topic: A Lamentável Evolução da Sociedade Moderna</title><link>https://akitaonrails.github.io/2018/07/26/off-topic-a-lamentavel-evolucao-da-sociedade-moderna/</link><guid isPermaLink="true">https://akitaonrails.github.io/2018/07/26/off-topic-a-lamentavel-evolucao-da-sociedade-moderna/</guid><pubDate>Thu, 26 Jul 2018 15:28:00 -0300</pubDate><description>&lt;p&gt;O mundo está perecendo numa orgia de autojustiça.&lt;/p&gt;
&lt;p&gt;O pessoal do Wisecrack sempre consegue me arrancar um sorriso. Me dão esperança de que ainda existem pessoas com bom senso nesse mundo. Este texto é inspirado naquele vídeo e numa série de pensamentos complementares que fui juntando.&lt;/p&gt;
&lt;div class="embed-container"&gt;
&lt;iframe
src="https://www.youtube.com/embed/Wp7f2ftkybI"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;p&gt;Como engenheiro, vivo pasmo com o que somos capazes de criar. Ninguém imaginaria que uma das invenções mais fantásticas da humanidade, a internet, junto dos seus maiores sucessos, pudesse virar arma de destruição em massa. Falo do acesso móvel onipresente e das redes sociais capazes de reunir um número absurdo de pessoas ao mesmo tempo.&lt;/p&gt;</description><content:encoded><![CDATA[<p>O mundo está perecendo numa orgia de autojustiça.</p>
<p>O pessoal do Wisecrack sempre consegue me arrancar um sorriso. Me dão esperança de que ainda existem pessoas com bom senso nesse mundo. Este texto é inspirado naquele vídeo e numa série de pensamentos complementares que fui juntando.</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/Wp7f2ftkybI"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Como engenheiro, vivo pasmo com o que somos capazes de criar. Ninguém imaginaria que uma das invenções mais fantásticas da humanidade, a internet, junto dos seus maiores sucessos, pudesse virar arma de destruição em massa. Falo do acesso móvel onipresente e das redes sociais capazes de reunir um número absurdo de pessoas ao mesmo tempo.</p>
<p>Esse caso está longe de ser o único, mas serve de exemplo. Há poucos dias, fui pego de surpresa por uma notícia aparentemente pequena. James Gunn, o querido diretor de dois dos maiores sucessos do MCU com seus Guardiões da Galáxia, foi demitido por causa de tweets que escreveu havia dez anos.</p>
<p>Não estou aqui para julgar o mérito dos tweets nem se o pedido de desculpas dele foi suficiente.</p>
<p>Na verdade, só de dizer que sou neutro já sou automaticamente julgado como favorável. Esse é o problema.</p>
<p>Nos últimos dias, vimos páginas e contas de direita sendo deletadas do Facebook. Faz parte do esforço contínuo da plataforma para combater &ldquo;fake news&rdquo;, que de fato é um problema contemporâneo. Portais de notícia viraram fábricas de clickbait, exatamente como o vídeo do Wisecrack descreve.</p>
<p>Mas quem decide o que é &ldquo;fake news&rdquo;? O que &ldquo;ofende&rdquo; um grupo barulhento que gera cliques. Portanto, precisamos banir o outro lado.</p>
<p>Isso me lembra uma frase clichê de O Senhor dos Anéis que sempre ressoou em mim. Quando a Sociedade tenta atravessar Moria, Frodo lamenta para Gandalf:</p>
<blockquote>
  <p>&ldquo;Que pena que Bilbo não apunhalou aquela criatura vil quando teve a chance!&rdquo;</p>

</blockquote>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/IrOqnZdvI6M"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>E Gandalf responde:</p>
<blockquote>
  <p>&ldquo;Pena? Foi a Pena que deteve sua mão. Pena e Misericórdia: não ferir sem necessidade. E ele foi bem recompensado por isso, Frodo. Pode ter certeza de que sofreu tão pouco com o mal e escapou no final justamente porque começou sua posse do Anel dessa forma. Com Pena.&rdquo;</p>

</blockquote>
<p>E então conclui:</p>
<blockquote>
  <p>&ldquo;Merece! Eu diria que sim. Muitos que vivem merecem a morte. E alguns que morrem merecem a vida. Você pode devolvê-la a eles? Então não seja tão ansioso para distribuir a morte em julgamento.</p>
<p>Pois mesmo os muito sábios não conseguem ver todos os fins. Não tenho muita esperança de que Gollum seja curado antes de morrer, mas existe uma chance. E ele está ligado ao destino do Anel. Meu coração me diz que ele ainda tem um papel a cumprir, para o bem ou para o mal, antes do fim; e quando isso acontecer, a pena de Bilbo poderá reger o destino de muitos, inclusive o seu.&rdquo;</p>

</blockquote>
<p>Voltando ao Gunn: o que me surpreendeu não foi a republicação dos tweets nem a indignação pública (obviamente, nenhuma pessoa sã endossa literalmente o conteúdo específico). O que realmente me impressionou foi a velocidade absurda com que uma megacorporação do tamanho da Disney respondeu com uma guilhotina, destruindo uma grande carreira em questão de horas.</p>
<p>Me lembra sentenças públicas igualmente rápidas, sem julgamento, sem devido processo. De novo, não estou defendendo essas pessoas, mas lembro dos casos James Damore vs. Google, Brendan Eich vs. Mozilla e James Watson vs. Nobel.</p>
<p>E a maioria de vocês, ou dos seus amigos, diria: <em>&ldquo;claro que foram expulsos, são pessoas ruins, temos que nos policiar para remover esses vilões do nosso meio.&rdquo;</em></p>
<p>Será que devemos?</p>
<p>Você consegue devolver o futuro deles se estiver errado? O que te dá o direito de ser juiz e júri?</p>
<p>Cuidado. Quando provocada, uma pessoa razoável e normal busca o diálogo em privado, como qualquer sociedade civilizada aprendeu a fazer. Mas as redes sociais motivam as pessoas a fazerem o pior: expor publicamente.</p>
<p>Isso é formação de manada. Bullying puro e simples. Sofri bullying a vida inteira, sendo minoria japonesa num país ocidental, e sei exatamente o quanto dói. É por isso que jamais revido com bullying.</p>
<p>Se você expõe alguém publicamente, não está praticando &ldquo;justiça&rdquo;. Você é simplesmente um bully. Independente do assunto.</p>
<p>Você já leu o cabeçalho dos meus perfis no <a href="https://www.facebook.com/fabio.akita.profile"target="_blank" rel="noopener">Facebook</a> e no <a href="https://twitter.com/akitaonrails"target="_blank" rel="noopener">Twitter</a>? Diz:</p>
<blockquote>
  <p>&ldquo;Eu desaprovo o que você diz, mas defenderei até a morte o seu direito de dizê-lo.&rdquo; — Evelyn Beatrice Hall.</p>

</blockquote>
<p>E eu acredito nisso de verdade.</p>
<p>Nunca vou humilhar alguém publicamente. Só covardes fazem isso. Envergonhar alguém em público tem um único propósito: mobilizar a massa, transformar o rebanho em tropa de choque para executar alguém em praça pública e, assim, fazer valer o próprio ponto sem precisar defendê-lo.</p>
<p><em>&ldquo;Mas eu tenho o direito de não ser ofendido.&rdquo;</em></p>
<p>Não. Não tem.</p>
<p>Outro filme que comentei anos atrás, e do qual cortei um trecho para publicar aqui, é a obra-prima de Miloš Forman, O Povo Contra Larry Flynt, produzida por Oliver Stone.</p>
<div class="video-container">
    <video controls>
        <source src="https://s3.us-east-2.amazonaws.com/blip.tv/Akitaonrails-LarryFlintFreedom513.mp4" type="video/mp4">
        Seu navegador não suporta o elemento de vídeo. [Link direto](https://s3.us-east-2.amazonaws.com/blip.tv/Akitaonrails-LarryFlintFreedom513.mp4)
    </video>
</div>
<p>O filme conta a história do fundador da revista pornográfica Hustler. Um sujeito desprezível por praticamente qualquer critério.</p>
<p>Mas esse é exatamente o ponto. Larry fez coisas que a maioria de vocês condenaria. Não só publicar pornografia, mas satirizar figuras públicas com piadas de péssimo gosto. Piadas, ainda assim. O trecho que mais me impactou foi a ideia de que ninguém tem o direito de não ser ofendido. É uma questão subjetiva, sem lugar num tribunal, porque gosto não se define juridicamente.</p>
<blockquote>
  <p>&ldquo;Senhoras e senhores do júri, vocês ouviram muito hoje, e não vou revisitar tudo isso, mas precisam entrar naquela sala e tomar algumas decisões. Mas antes, há algo que precisam saber. Não estou tentando sugerir que vocês deveriam gostar do que Larry Flynt faz. Eu não gosto do que Larry Flynt faz. Mas gosto de viver num país onde você e eu podemos tomar essa decisão por conta própria. Gosto de viver num país onde posso pegar a revista Hustler, lê-la, ou jogá-la no lixo se for lá que acho que ela pertence.&rdquo;</p>

</blockquote>
<p>Qualquer pessoa tem o direito de fazer e dizer o que quiser, desde que não cause dano real a outra pessoa. É uma linha tênue, porque meus direitos devem terminar onde os seus começam.</p>
<blockquote>
  <p>&ldquo;Se a Primeira Emenda vai proteger um lixo como eu, vai proteger todos vocês.&rdquo; — Larry Flynt.</p>

</blockquote>
<p>Mas como isso não pode ser resolvido nos tribunais, pessoas radicais tomam a lei nas próprias mãos usando a arma mais poderosa já criada: as redes sociais. Elas conseguem reunir um júri enorme em minutos e decretar a execução pública. É como dar uma arma carregada para uma criança.</p>
<p>Isso é território de Inquisição. Galileu foi julgado e condenado porque ofendeu a sociedade católica ao afirmar que a Terra e os planetas giram em torno do Sol, e não o contrário. Parece trivial hoje, mas era um escândalo monumental na época. Havia gente disposta a morrer para não aceitar essa afirmação ofensiva. O tema estaria em alta no Twitter dos anos 1600, e a execução pública seria exigida em minutos.</p>
<p>Essa justificativa do <em>&ldquo;estou ofendido&rdquo;</em> é o que levou, em última análise, a assassinatos como os de Luther King, JFK e Lennon, à prisão de Gandhi e ao genocídio dos judeus. Intolerância.</p>
<p>Se não ser ofendido é o objetivo máximo, a intolerância vira o único caminho, e o assassinato da Liberdade, a pior consequência.</p>
<p>Toda atrocidade da humanidade começa com o comportamento de manada em torno do <em>&ldquo;eu não deveria me sentir ofendido.&rdquo;</em></p>
<p>Essa é a história por trás de Fahrenheit 451, que o Wisecrack explica bem. Em dado momento, as pessoas simplesmente começaram a criar câmaras de eco. Cada feed do Twitter e cada linha do tempo do Facebook são, por definição, câmaras de eco. Você só recebe conteúdo meticulosamente curado por machine learning, configurado para cuspir posts que não vão te ofender e jamais vão desafiar seus pontos de vista.</p>
<p>Você cria e vive numa bolha, e fica indignado imediatamente quando sua realidade é desafiada por qualquer ideia que provoque reflexão. Você se limita ao seu status quo personalizado e estreito.</p>
<p>É mentira quando você diz <em>&ldquo;sou de mente aberta&rdquo;</em> mas fica expondo pessoas o tempo todo e reclamando de tudo que te ofende. Você não é de mente aberta. Não dá pra ter o bolo e comer o bolo também. Pelo menos admita a verdade: que você é de mente fechada e intolerante.</p>
<p>Ao contrário do que muitos acreditam, a internet deveria nos libertar dos governos, das instituições autoritárias e dos grandes veículos de mídia que supostamente controlavam o ponto de vista das massas.</p>
<p>Deveríamos ter acesso a um leque mais amplo de conhecimento, sem fronteiras, sem preconceito, o que nos ajudaria a avançar mais rápido para o futuro, para mais inovação.</p>
<p>Inovação, por definição, é um desafio ao status quo. Você não consegue inovar e agradar todo mundo ao mesmo tempo. Isso é impossível. Do contrário, é só mais do mesmo.</p>
<p>A invenção do fogo desafiou a natureza, o heliocentrismo questionou Deus, a teoria da evolução por seleção natural desafiou a alma humana.</p>
<p>As redes sociais pegaram uma internet livre e descentralizada e a colocaram numa coleira bem apertada, controlada por &ldquo;Influencers&rdquo;. Gente de puro carisma, sem retidão e muito menos sabedoria. O carisma é o que atrai grandes quantidades de seguidores. O efeito de rede é perverso.</p>
<p>Deveríamos estar todos <strong>juntos</strong>, colaborando para o bem da humanidade, independente de raça, geografia ou inclinações políticas.</p>
<p>Fique atento: você está caindo nas <a href="https://en.wikipedia.org/wiki/Eight_stages_of_genocide"target="_blank" rel="noopener">Oito Etapas do Genocídio</a>. Veja:</p>
<ol>
<li>Classificação: As pessoas são divididas em &ldquo;eles e nós&rdquo;.</li>
<li>Simbolização: &ldquo;Quando combinados com ódio, símbolos podem ser impostos a membros relutantes de grupos párias&hellip;&rdquo;</li>
<li>Desumanização: &ldquo;Um grupo nega a humanidade do outro. Os membros são equiparados a animais, vermes, insetos ou doenças.&rdquo;</li>
<li>Organização: &ldquo;O genocídio é sempre organizado&hellip; Unidades especiais do exército ou milícias são frequentemente treinadas e armadas&hellip;&rdquo;</li>
<li>Polarização: &ldquo;Grupos de ódio disseminam propaganda polarizante&hellip;&rdquo;</li>
<li>Preparação: &ldquo;As vítimas são identificadas e separadas por sua identidade étnica ou religiosa&hellip;&rdquo;</li>
<li>Extermínio: &ldquo;É &rsquo;extermínio&rsquo; para os assassinos porque eles não acreditam que suas vítimas sejam plenamente humanas.&rdquo;</li>
<li>Negação: &ldquo;Os perpetradores&hellip; negam que cometeram qualquer crime&hellip;&rdquo;</li>
</ol>
<p>Esse é o modus operandi nazista original, e você está perpetuando essas etapas. Não sou judeu, mas admiro e respeito profundamente sua história e resiliência. Já fui ao <a href="http://www.akitaonrails.com/2012/11/21/viagem-a-europa-parte-3-tel-aviv-israel"target="_blank" rel="noopener">Instituto do Holocausto</a> oficial em Yad Vashem, em Israel, e também ao de Washington D.C., porque respeito as lições que deixaram para trás. Era nosso dever não deixar a história se repetir.</p>
<p>Mas tal é o poder da ideologia cega e da liderança de celebridades carismáticas.</p>
<p>Tivemos líderes carismáticos fazendo coisas boas e ruins, carismáticos de qualquer forma. Para cada Lincoln ou Churchill, tivemos um Stalin ou um Castro.</p>
<p>O mais difícil é que só conseguimos saber, com clareza, que algo deu horrivelmente errado olhando para trás, pela História. Não existe um &ldquo;bem&rdquo; versus &ldquo;mal&rdquo; em preto e branco. Você sempre acha que está fazendo um excelente trabalho ao seguir pessoas carismáticas que parecem promover apenas o bem-estar de um grupo minoritário.</p>
<p>Pergunte a si mesmo: você está seguindo alguém altruísta, capaz de tratar o outro com mais humanidade do que recebeu? Ou isso soa mais como vingança egoísta e acerto de contas? O ódio é sempre a matéria do mal. Uma pessoa justa não imita aquilo contra o qual diz lutar. Qualquer um que defenda &ldquo;vamos fazer com eles o que fizeram conosco&rdquo; é provavelmente o Mal. Você cita gente como Gandhi. Não aprendeu nada com o que ele ensinou a vida inteira?</p>
<p>Todo Fidel, todo Mussolini, todo Hitler realmente acreditava que estava lutando pelo bem-estar do seu povo. Todo nazista agiu acreditando que estava fazendo a coisa certa pelo futuro dos seus filhos e filhas, que os sacrifícios valeriam a pena. Que eram Nobres por matar pessoas.</p>
<p>Nunca houve uma plataforma melhor para transformar pessoas em manadas irracionais do que agora. Há YouTubers com milhões de seguidores a mais do que qualquer Hitler jamais teve.</p>
<p>E para piorar, formamos o consenso online de que as pessoas têm um direito mágico e inerente de &ldquo;nunca serem ofendidas&rdquo;. Não podem ser ofendidas por tweets de 200 caracteres. Isso é pecado capital, e o perpetrador deve morrer. Pedido de desculpas não basta. A polícia do pensamento chegou a tal ponto que um único tweet fora de contexto basta para julgar e executar a vida de uma pessoa, sem recurso, sem liberdade condicional.</p>
<p>É fascinante ver como uma série de tecnologias e inovações que deveriam ampliar a liberdade de todos acabou se tornando a arma de destruição em massa mais potente já criada. E não precisou de um novo Hitler para isso.</p>
<p>O fim do mundo não precisa ser um evento físico catastrófico, como uma explosão nuclear. Acho que a destruição do próprio tecido da sociedade é ainda pior. Não é um grande ditador malvado que vai matar a Liberdade, são as pessoas que não a merecem. É muito mais nefasto e pode ser ainda mais devastador.</p>
<p>Essa é a lição: nenhum Omar Bashir, Bashar Al-Assad ou Nicolás Maduro será, sozinho, responsável por destruir a sociedade.</p>
<p>Todo malfeitor da história fez o que fez <em>&ldquo;em nome do povo.&rdquo;</em></p>
<p>E tudo começa com <em>&ldquo;eu não deveria ser ofendido.&rdquo;</em></p>
]]></content:encoded><category>politica</category><category>filosofia</category><category>psicologia</category><category>off-topic</category></item><item><title>[Off-Topic] Blockchain e Criptomoedas no Brasil</title><link>https://akitaonrails.github.io/2017/08/28/off-topic-blockchain-e-criptomoedas-no-brasil/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/08/28/off-topic-blockchain-e-criptomoedas-no-brasil/</guid><pubDate>Mon, 28 Aug 2017 13:07:00 -0300</pubDate><description>&lt;p&gt;Quem me acompanha no &lt;a href="https://twitter.com/AkitaOnRails/status/900450641755156480"target="_blank" rel="noopener"&gt;Twitter&lt;/a&gt; já percebeu que ando MUITO interessado e ativo com cryptocurrencies. Por enquanto estou só como investidor, sem nenhum projeto próprio.&lt;/p&gt;
&lt;p&gt;De curiosidade, perguntei lá se alguém conhecia empresas ou pessoas atuando nessa área aqui no Brasil, e a lista que recebi ficou bem interessante. Vale compartilhar as recomendações com todo mundo.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://auctus.org/"target="_blank" rel="noopener"&gt;Auctus&lt;/a&gt; - ICO de uma alt-coin&lt;/li&gt;
&lt;li&gt;&lt;a href="https://originalmy.com/"target="_blank" rel="noopener"&gt;Original My&lt;/a&gt; - proof-of-authenticity&lt;/li&gt;
&lt;li&gt;&lt;a href="http://web.archive.org/web/20171129024802/https://play.google.com/store/apps/developer?id=Laivon"target="_blank" rel="noopener"&gt;Laivon&lt;/a&gt; - parece que desenvolve apps mobile e alguns deles são trackers de cryptocurrencies&lt;/li&gt;
&lt;li&gt;&lt;a href="https://opendime.com/"target="_blank" rel="noopener"&gt;OpenDime&lt;/a&gt; - mais um hardware stick pra wallet - dizem que tem brasileiros trabalhando lá também&lt;/li&gt;
&lt;li&gt;&lt;a href="http://web.archive.org/web/20170901202750/http://www.hugpay.com.br/"target="_blank" rel="noopener"&gt;HugPay&lt;/a&gt; - uma forma de fazer remessas de/para o exterior sem precisar de conta bancária, com parceria com lotéricas (boa ideia)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://web.archive.org/web/20180302211934/https://www.blockoventures.com/"target="_blank" rel="noopener"&gt;Blocko Ventures&lt;/a&gt; - não entendi bem se são uma empresa de serviços ou investidores em soluções com blockchain&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Kriptacoin - é mais uma alt-coin&lt;/del&gt; (vide comentários)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blinktrade.com/"target="_blank" rel="noopener"&gt;BlinkTrade&lt;/a&gt; - parece uma infra para exchange (acho que a Foxbit e outras talvez usem - não confirmei isso) e foi fundada por brasileiros&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.stone.com.br/"target="_blank" rel="noopener"&gt;Stone Pagamentos&lt;/a&gt; - &lt;a href="https://twitter.com/BernardoDCGA/status/901793619635515398"target="_blank" rel="noopener"&gt;disse&lt;/a&gt; que está ajudando empresas a aceitar pagamentos em cryptocurrencies.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Quero conhecer mais empresas e profissionais brasileiros no ecossistema de bitcoin e cryptocurrencies em geral. Estou procurando em especial palestrantes que dominem o assunto e estejam fazendo coding hands-on, para palestrar (em inglês) na conferência que estou organizando, a &lt;a href="http://web.archive.org/web/20170911201232/http://www.theconf.club/"target="_blank" rel="noopener"&gt;THE CONF&lt;/a&gt;. Se souberem de alguém, mandem na seção de comentários.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Quem me acompanha no <a href="https://twitter.com/AkitaOnRails/status/900450641755156480"target="_blank" rel="noopener">Twitter</a> já percebeu que ando MUITO interessado e ativo com cryptocurrencies. Por enquanto estou só como investidor, sem nenhum projeto próprio.</p>
<p>De curiosidade, perguntei lá se alguém conhecia empresas ou pessoas atuando nessa área aqui no Brasil, e a lista que recebi ficou bem interessante. Vale compartilhar as recomendações com todo mundo.</p>
<ul>
<li><a href="http://auctus.org/"target="_blank" rel="noopener">Auctus</a> - ICO de uma alt-coin</li>
<li><a href="https://originalmy.com/"target="_blank" rel="noopener">Original My</a> - proof-of-authenticity</li>
<li><a href="http://web.archive.org/web/20171129024802/https://play.google.com/store/apps/developer?id=Laivon"target="_blank" rel="noopener">Laivon</a> - parece que desenvolve apps mobile e alguns deles são trackers de cryptocurrencies</li>
<li><a href="https://opendime.com/"target="_blank" rel="noopener">OpenDime</a> - mais um hardware stick pra wallet - dizem que tem brasileiros trabalhando lá também</li>
<li><a href="http://web.archive.org/web/20170901202750/http://www.hugpay.com.br/"target="_blank" rel="noopener">HugPay</a> - uma forma de fazer remessas de/para o exterior sem precisar de conta bancária, com parceria com lotéricas (boa ideia)</li>
<li><a href="http://web.archive.org/web/20180302211934/https://www.blockoventures.com/"target="_blank" rel="noopener">Blocko Ventures</a> - não entendi bem se são uma empresa de serviços ou investidores em soluções com blockchain</li>
<li><del>Kriptacoin - é mais uma alt-coin</del> (vide comentários)</li>
<li><a href="https://blinktrade.com/"target="_blank" rel="noopener">BlinkTrade</a> - parece uma infra para exchange (acho que a Foxbit e outras talvez usem - não confirmei isso) e foi fundada por brasileiros</li>
<li><a href="http://www.stone.com.br/"target="_blank" rel="noopener">Stone Pagamentos</a> - <a href="https://twitter.com/BernardoDCGA/status/901793619635515398"target="_blank" rel="noopener">disse</a> que está ajudando empresas a aceitar pagamentos em cryptocurrencies.</li>
</ul>
<p>Quero conhecer mais empresas e profissionais brasileiros no ecossistema de bitcoin e cryptocurrencies em geral. Estou procurando em especial palestrantes que dominem o assunto e estejam fazendo coding hands-on, para palestrar (em inglês) na conferência que estou organizando, a <a href="http://web.archive.org/web/20170911201232/http://www.theconf.club/"target="_blank" rel="noopener">THE CONF</a>. Se souberem de alguém, mandem na seção de comentários.</p>
<p>Cheguei a pensar em escrever sobre blockchain ou cryptocurrencies, já que andei estudando e investindo bastante. Mas tudo que você precisa saber já está acessível em inúmeros blogs e sites, em inglês e em português, e não faz sentido explicar tudo de novo.</p>
<p>O que me interessa é saber onde estão as maiores dúvidas das pessoas sobre o assunto, para tentar explorar algum aspecto específico. Comentem sobre isso também.</p>
]]></content:encoded><category>bitcoin-e-criptomoedas</category><category>negocios</category><category>off-topic</category></item><item><title>Estimativas São Promessas - Uma Metáfora Melhor</title><link>https://akitaonrails.github.io/2017/06/26/estimativas-sao-promessas-uma-metafora-melhor/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/06/26/estimativas-sao-promessas-uma-metafora-melhor/</guid><pubDate>Mon, 26 Jun 2017 17:44:00 -0300</pubDate><description>&lt;p&gt;Se você não sabia, eu respondo perguntas no Quora com frequência. &lt;a href="https://www.quora.com/profile/Fabio-Akita"target="_blank" rel="noopener"&gt;Me siga lá&lt;/a&gt;; já escrevi quase 600 respostas, muitas parecidas com os posts mais longos daqui do blog.&lt;/p&gt;
&lt;p&gt;Uma das mais populares responde à pergunta &lt;a href="https://www.quora.com/What-is-the-hardest-thing-you-do-as-a-software-engineer/answer/Fabio-Akita"target="_blank" rel="noopener"&gt;&amp;ldquo;Qual é a coisa mais difícil que você faz como engenheiro de software?&amp;rdquo;&lt;/a&gt;. Escrevi algo parecido em português no post &lt;a href="http://www.akitaonrails.com/2013/08/23/off-topic-estimativas-sao-promessas-promessas-devem-ser-cumpridas"target="_blank" rel="noopener"&gt;&amp;ldquo;Estimativas são Promessas. Promessas devem ser cumpridas.&amp;rdquo;&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Em resumo: você nunca consegue dar uma estimativa &amp;ldquo;correta&amp;rdquo;. Se conseguisse, não seria uma &amp;ldquo;estimativa&amp;rdquo;, seria uma &amp;ldquo;previsão&amp;rdquo;.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Se você não sabia, eu respondo perguntas no Quora com frequência. <a href="https://www.quora.com/profile/Fabio-Akita"target="_blank" rel="noopener">Me siga lá</a>; já escrevi quase 600 respostas, muitas parecidas com os posts mais longos daqui do blog.</p>
<p>Uma das mais populares responde à pergunta <a href="https://www.quora.com/What-is-the-hardest-thing-you-do-as-a-software-engineer/answer/Fabio-Akita"target="_blank" rel="noopener">&ldquo;Qual é a coisa mais difícil que você faz como engenheiro de software?&rdquo;</a>. Escrevi algo parecido em português no post <a href="http://www.akitaonrails.com/2013/08/23/off-topic-estimativas-sao-promessas-promessas-devem-ser-cumpridas"target="_blank" rel="noopener">&ldquo;Estimativas são Promessas. Promessas devem ser cumpridas.&rdquo;</a>.</p>
<blockquote>
  <p>Em resumo: você nunca consegue dar uma estimativa &ldquo;correta&rdquo;. Se conseguisse, não seria uma &ldquo;estimativa&rdquo;, seria uma &ldquo;previsão&rdquo;.</p>

</blockquote>
<p>Vamos assumir que não temos poderes de precognição nem bolas de cristal para prever o futuro.</p>
<p>Estimar algo é &ldquo;chutar&rdquo; o valor de alguma coisa. É sempre um chute, a mesma coisa que uma avaliação. Como todo chute, nunca pode ser considerado &ldquo;correto&rdquo;: é só um candidato provável dentro de uma faixa infinita de valores possíveis.</p>
<blockquote>
  <p>Não existe nenhuma conexão entre um chute e o resultado. Entenda essa verdade simples: dizer que algo pode acontecer não FAZ com que aconteça.</p>

</blockquote>
<p>Estimar que vai chover amanhã não FAZ chover. Estimar o resultado do Super Bowl não FAZ o jogo acontecer daquele jeito. Não há correlação entre uma estimativa e o resultado real.</p>
<p>Eu disse nos artigos mencionados que <strong>&ldquo;Estimativas são Promessas&rdquo;</strong>. A intenção era provocar uma reação, porque a maioria das pessoas assume que estimativas jamais podem ser promessas, justamente pelo que acabei de explicar.</p>
<p>O que torna uma promessa especial é que, ao prometer algo, espera-se que você <strong>AJA</strong> para realizá-la.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/643/Skin-in-the-Game.png" alt="Skin in the Game"  loading="lazy" /></p>
<blockquote>
  <p>Ninguém que não tem &ldquo;skin in the game&rdquo; deveria dar estimativas.</p>

</blockquote>
<p>Se você não é um jogador ativo no jogo, não deveria dar chutes. Do mesmo jeito que ninguém faz promessas em nome de outra pessoa.</p>
<p>Dá pra fazer promessas críveis e cumpri-las? Dá, mas primeiro você precisa entender mais algumas verdades sobre a realidade.</p>
<p>Você provavelmente já leu muitos artigos explicando metodologias e técnicas de gestão de projetos. A maioria consegue explicar os &ldquo;o quês&rdquo; e os &ldquo;comos&rdquo;, mas como sempre, falha nos &ldquo;porquês&rdquo;.</p>
<p>Por que precisamos dessas metodologias? Por que elas são necessárias? Por que funcionam? Que mecanismos ocultos elas colocam em movimento?</p>
<p>O que diferencia as técnicas Ágeis da homeopatia ou de um clichê barato de autoajuda?</p>
<h3>É sempre sobre Pareto<span class="hx:absolute hx:-mt-20" id="é-sempre-sobre-pareto"></span>
    <a href="#%c3%a9-sempre-sobre-pareto" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Não existe escopo de projeto <strong>preciso</strong>. Existe um limite para adicionar detalhes, e depois dele você só tem <a href="http://www.investopedia.com/terms/l/lawofdiminishingmarginalreturn.asp"target="_blank" rel="noopener"><strong>retornos decrescentes</strong></a>.</p>
<p>O nível mais preciso de detalhe que o escopo de uma funcionalidade pode ter é o próprio código. E isso importa: as linhas de código <strong>NÃO</strong> são o produto final. O que os usuários experimentam de fato é a execução desse código em tempo de execução.</p>
<p>A programação em si é o <strong>blueprint de verdade</strong>. Os diagramas, os casos de uso, as user stories e tudo que vem antes da programação são só rascunho, um esboço.</p>
<p>Um arquiteto ou designer ingênuo pode achar que diagramas detalhados, documentos de casos de uso e slides bonitos de PowerPoint valem o mesmo que um blueprint de engenharia. Eles valem menos: são o equivalente a um <strong>rabisco no guardanapo</strong>. Voláteis e, na prática, quase inúteis.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/644/Screenshot_from_2017-06-26_16-19-14.png" alt="Napkin Sketch"  loading="lazy" /></p>
<p><em>&ldquo;Mas a programação não é a mesma coisa que a fase de construção, colocar tijolo sobre tijolo?&rdquo;</em> <strong>NÃO</strong>, não é isso que um programador faz. Empilhar tijolos é trabalho do interpretador da linguagem ou do compilador que gera o binário executável.</p>
<p>Essa é a metáfora que deixa os não-programadores malucos. Na engenharia, a construção em si é a parte mais cara e demorada. Na programação, a parte cara é criar o blueprint (escrever o código), e a &ldquo;construção&rdquo; é trivial: só compilar, o que é automático.</p>
<p>Do mesmo jeito, o escopo de um projeto é só um conjunto de esboços. Precisamos abandonar a ideia de que vai existir um escopo <strong>&ldquo;completo&rdquo;</strong>. Não dá pra dizer &ldquo;100% do escopo&rdquo; ou &ldquo;escopo fechado&rdquo;, porque o escopo de um projeto de software é, por definição, sempre incompleto.</p>
<p>Além disso, sustento que cerca de 80% desse tal &ldquo;escopo&rdquo;, o que prefiro chamar de esboço, é praticamente inútil para a maioria das atividades dos usuários finais: a seção administrativa, as páginas institucionais que ninguém lê, processos complicados de cadastro e por aí vai.</p>
<p>Por isso toda lista de funcionalidades <strong>precisa</strong> ser priorizada. Você costuma se virar com 20% das funcionalidades, que é o que as pessoas querem dizer com &ldquo;MVP&rdquo; ou &ldquo;produto mínimo viável&rdquo;. <strong>Entregue o mais cedo possível</strong>, colete feedback dos usuários e refine o resto do &ldquo;esboço&rdquo; que você chama de backlog.</p>
<p>Então, em vez de mirar numa proposição de tudo-ou-nada, procurando equações complexas e estúpidas para calcular uma estimativa &ldquo;precisa&rdquo; de um esboço incompleto, assuma que dá pra entregar CEDO os primeiros 20% que realmente importam e descubra o resto em iterações.</p>
<p>É isso que chamamos de &ldquo;Ágil&rdquo;, aliás.</p>
<h3>Ágil é sobre Gestão de Riscos<span class="hx:absolute hx:-mt-20" id="ágil-é-sobre-gestão-de-riscos"></span>
    <a href="#%c3%a1gil-%c3%a9-sobre-gest%c3%a3o-de-riscos" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>As pessoas assumem que Agilidade é gerenciar os próprios instrumentos de gestão: o backlog, os rituais, as métricas.</p>
<p>Ter instrumentos parecidos com Ágil não te torna Ágil.</p>
<p>Ser Ágil é manter o <strong>Risco</strong> sob controle.</p>
<p>Em vez de tratar projetos como uma proposição de tudo-ou-nada, comece a pensar como um investidor pensa no seu <strong>portfólio de ações</strong>. Você não espera que o portfólio inteiro dê lucro; parte do princípio de que alguns ativos vão ter desempenho abaixo do esperado. Como não sabe quais, você dilui o risco.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/645/635824249336942840-ThinkstockPhotos-152955327.jpg" alt="Portfolio stocks"  loading="lazy" /></p>
<p>Tentar prever o mercado de ações é um exercício de futilidade.</p>
<p>Tentar prever a implementação exata de um projeto, ainda mais os longos, também é um exercício de futilidade.</p>
<p>Então você precisa lidar com a incerteza do jeito certo: tornando-se <a href="https://www.amazon.com/Antifragile-Things-That-Disorder-Incerto/dp/0812979680"target="_blank" rel="noopener"><strong>Antifrágil</strong></a>.</p>
<blockquote>
  <p>&ldquo;Algumas coisas se beneficiam de choques; elas prosperam e crescem quando expostas à volatilidade, aleatoriedade, desordem e estressores, e adoram aventura, risco e incerteza. No entanto, apesar da ubiquidade do fenômeno, não existe uma palavra para o exato oposto de frágil. Vamos chamá-lo de antifrágil. A antifragilidade vai além da resiliência ou robustez. O resiliente resiste aos choques e permanece igual; o antifrágil melhora.&rdquo; - Nassim Taleb</p>

</blockquote>
<p>Em vez do exercício absurdo e inútil de tentar prever incertezas e eventos aleatórios, você faz a coisa sensata: assume que Cisnes Negros existem e que você não consegue prevê-los. E aí se prepara para a incerteza da única forma razoável, que é não tentar prevê-los.</p>
<p>Exponha os pequenos erros cedo e corrija com frequência. Implementar tudo numa caixa-preta e fazer um deploy Big Bang é o caminho mais fácil para o <strong>fracasso</strong>. Entregar sempre, expor os bugs e corrigi-los constantemente é aceitar que erros vão acontecer e ganhar força no processo.</p>
<p><a href="https://www.amazon.com/Antifragile-Things-That-Disorder-Incerto/dp/0812979680"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/646/Antifragile-3.jpg" alt="Antifragile"  loading="lazy" /></a></p>
<h3>Uma Metáfora Melhor<span class="hx:absolute hx:-mt-20" id="uma-metáfora-melhor"></span>
    <a href="#uma-met%c3%a1fora-melhor" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/642/steel_mill_blast_furnace_coking_coal_iron_ore_600.jpg" alt="Iron Ore Furnace"  loading="lazy" /></p>
<p>Imagine que você, seja o cliente não-programador, seja o programador que não faz ideia de como explicar o processo para esse cliente, tem um alto-forno de minério de ferro para gerenciar.</p>
<p>O problema desses fornos é que, se você aquecer demais, eles podem explodir na sua cara. Se esfriar demais, o minério endurece.</p>
<p>Seu trabalho é adicionar carvão ao forno, e você decide o ritmo. Rápido demais, fica quente o bastante para explodir. Devagar demais, o fogo apaga e você perde o forno.</p>
<p>Agora tente estimar uma entrada constante de carvão para manter o forno em bom estado.</p>
<p>Não dá.</p>
<p>A saída mais fácil é instalar um <strong>termômetro</strong> que acompanha a temperatura atual do forno.</p>
<p>Você fica seguro dentro de uma certa margem de temperatura e acelera ou reduz a entrada de carvão consultando o termômetro o tempo todo.</p>
<p>O TEMPO TODO.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/647/iron-4.jpg" alt="Iron Furnace"  loading="lazy" /></p>
<p>É isso que a &ldquo;Velocidade&rdquo; do Ágil (ou qualquer simulação de Monte Carlo mais sofisticada) realmente é: um termômetro.</p>
<p>Se a Velocidade está alta demais, seu time provavelmente está fazendo hora extra ou entregando código de qualidade inferior. Isso vai dar problema: ou o time estoura rápido demais, ou o código acumula <a href="http://www.akitaonrails.com/2017/06/22/a-economia-do-desenvolvimento-de-software"target="_blank" rel="noopener">dívida técnica</a> rápido demais e você não vai conseguir pagar. Mantido esse ritmo, a Velocidade despenca até parar (o forno explode).</p>
<p>Se a Velocidade está baixa demais, seu time está enrolando, seu backlog é um lixo que ninguém entende nem depois de 10 horas de reunião, ou você deixou a Velocidade subir demais e agora está pagando a dívida técnica, ou seu time está morto de burnout (o fogo apagou).</p>
<p>Você quer manter a Velocidade <strong>estável</strong>, constante. É disso que se trata ser Ágil: ficar de olho no termômetro e responder.</p>
<h3>O Triângulo de Ferro dos Projetos<span class="hx:absolute hx:-mt-20" id="o-triângulo-de-ferro-dos-projetos"></span>
    <a href="#o-tri%c3%a2ngulo-de-ferro-dos-projetos" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/650/ironTriangle.jpg" alt="Iron Triangle"  loading="lazy" /></p>
<p>Bem-vindo ao Triângulo de Ferro da Gestão de Projetos.</p>
<blockquote>
  <p>Repita comigo: se eu quero travar o tempo, o custo e o escopo, <strong>sou um idiota</strong>.</p>

</blockquote>
<p>Repita de novo.</p>
<p>Você deve travar tempo e custo. Se leu até aqui, sabe que nunca consegue travar o &ldquo;escopo&rdquo;: só dá pra engordá-lo, e nem sempre torná-lo mais valioso. Por isso sempre digo que a definição de um Product Manager ou Product Owner é ser o guardião do ROI (Retorno sobre Investimento).</p>
<p>Por quê?</p>
<p>Porque o Triângulo de Ferro tem o seguinte corolário:</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/651/320px-Project-triangle.svg.png" alt="Project Triangle"  loading="lazy" /></p>
<ul>
<li>Se quer rápido e bom, não pode ser barato</li>
<li>Se quer rápido e barato, não pode ser bom</li>
<li>Se quer bom e barato, não pode ser rápido</li>
</ul>
<p>Isso é uma Lei, não tem como contornar. Escolha o seu.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/652/keep-calm-and-make-your-choice-9.png" alt="Make your choice"  loading="lazy" /></p>
<h3>Como Cumprir Promessas então?<span class="hx:absolute hx:-mt-20" id="como-cumprir-promessas-então"></span>
    <a href="#como-cumprir-promessas-ent%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Com essas 3 verdades em mãos:</p>
<ul>
<li>Não dá pra ter tudo ao mesmo tempo (barato, rápido e bom)</li>
<li>Você está gerenciando a temperatura do forno</li>
<li>Você só precisa de 20% do &ldquo;esboço&rdquo; que chama de &ldquo;escopo&rdquo;</li>
</ul>
<p>Sim, qualquer desenvolvedor experiente consegue te dar uma estimativa de &ldquo;ballpark&rdquo;. Uma estimativa de ballpark é assim:</p>
<ul>
<li>1 mês (talvez 1 mês e meio, mas com certeza menos de 2)</li>
<li>3 meses (mais de 2 meses, menos de 6)</li>
<li>6 meses (mais de 4 meses, menos de 9)</li>
<li>mais de 6 meses, provavelmente menos de 1 ano</li>
</ul>
<p>Nem tente granular mais que isso. É inútil.</p>
<p><strong>Trave o tempo.</strong> E <strong>trave o custo</strong> (o número de desenvolvedores vezes a taxa horária vezes o total de horas estimadas). Só isso.</p>
<p>Agora anote o que o cliente chama de &ldquo;escopo&rdquo; como user stories num backlog e peça pra ele priorizar.</p>
<p>Comece as iterações. Depois de cada uma, faça deploy num ambiente de staging. Não-programadores, atenção: SEMPRE garanta que o programador que você contratar entregue versões testáveis das stories numa URL pública que você possa visitar e testar.</p>
<p>Se o programador recusar isso ou vier com desculpa: <strong>DEMITA</strong>.</p>
<p>Se o programador, a empresa ou seja lá o que for te prometer um preço de &ldquo;escopo fechado&rdquo;, prometer fazer tudo e você acreditar, você é ingênuo demais.</p>
<p>Acha graça em jogar esse jogo idiota de <em>&ldquo;vou fingir que sei a verdade e você vai fingir que acredita no que estou dizendo&rdquo;</em>?</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/648/e433998315b73da036e65884b67eba43.jpg" alt="Actions and Words"  loading="lazy" /></p>
<p>Nenhum profissional sério tem tempo pra jogos idiotas. A única coisa honesta que alguém pode dizer sobre qualquer projeto de software é: <em>&ldquo;com base na minha experiência, acredito que o ballpark para esse tipo de projeto é de X meses, dados os pressupostos Y e Z&rdquo;.</em></p>
<p>Você não precisa acreditar nele. Só precisa começar a verificar o termômetro. Qualquer não-programador consegue avaliar a qualidade da entrega a partir das entregas frequentes das funcionalidades priorizadas.</p>
<p><em>&ldquo;Mas e se depois de 2 semanas eu não gostar do resultado?&rdquo;</em> Simples: <strong>DEMITA</strong>.</p>
<p>E às vezes &ldquo;demitir&rdquo; nem é a palavra certa. Às vezes o relacionamento é difícil e o melhor é seguir caminhos separados.</p>
<p>Você precisa aceitar perder 2 semanas, ou qualquer período curto, como parte da Gestão de Riscos. É melhor aceitar perder 2 semanas do orçamento do projeto do que acreditar cegamente em alguém por 6 meses e perder o orçamento inteiro e mais um pouco.</p>
<p>Pareto de novo: Agilidade é sobre Gestão de Riscos. Você aceita que perder 20% do orçamento está de bom tamanho e joga com isso. E tudo bem, porque você só precisa de um pouco mais de 20% do esboço vago que chama de escopo.</p>
<p>Viu o que fiz com a matemática aqui?</p>
<p>Paramos de jogar o faz-de-conta e passamos a gerenciar de fato os riscos do projeto. Você colabora no termômetro equivalente, que combina o backlog priorizado (a escala) e a velocidade (a temperatura), e fica de olho nas entregas parciais no ambiente de staging.</p>
<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Então sim, Estimativas devem ser levadas tão a sério quanto Promessas. Você consegue dar Estimativas razoáveis desde que consiga gerenciar os Riscos e o Cliente aceite as regras do jogo: não existe &ldquo;escopo fechado e completo&rdquo;, prioridades primeiro, e testar e aceitar funcionalidades entregues toda semana.</p>
<p>A ideia por trás das Promessas é que você precisa <strong>GERENCIAR</strong> para cumpri-las. A melhor forma é parar com frequência, reavaliar e seguir. Parece perda de tempo, mas é assim que você evita desperdiçar tempo de verdade.</p>
<p>Se você não tem skin in the game, dê um passo atrás.</p>
<p>A Velocidade deve ser mantida estável, num ritmo previsível. Use a variância como sinal de estar rápido demais ou devagar demais, ajuste a outra variável, meça de novo e siga. Igual a um termômetro de forno.</p>
<p>Existem várias versões de &ldquo;termômetros&rdquo;, do <a href="https://www.joelonsoftware.com/2007/10/26/evidence-based-scheduling/"target="_blank" rel="noopener">Evidence Based Scheduling</a> do Joel Spolsky às sofisticadas simulações de Monte Carlo e outros processos estocásticos (todos são termômetros, e NÃO ferramentas de estimativa).</p>
<p>O que te impede de fazer isso é usar as metáforas e as referências erradas.</p>
<p>Em vez de procurar metáforas equivalentes na construção civil, nas fábricas e em outras montagens de &ldquo;hard&rdquo;-ware, olhe para outro lugar, onde você vai encontrar processos de &ldquo;soft&rdquo;-ware.</p>
<p>Músicos têm prazos. Pintores têm prazos. Coreógrafos têm prazos. Esportes têm prazos. Laboratórios de pesquisa têm prazos. Como eles cumprem? Verificando constantemente o estado atual, comparando com os objetivos, avaliando se o que fazem está funcionando e mudando o que não funciona.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/649/conducting_starwars.jpg" alt="Conducting Star Wars"  loading="lazy" /></p>
<p>Hollywood tem prazos. Tem variáveis muito piores de controlar do que qualquer projeto de software que você vá encontrar, e ainda assim entrega. E lucra.</p>
<p>Aceite que você não controla todas as variáveis e pare de tentar. Pense nos mercados financeiros. Um dia o <a href="https://web.archive.org/web/20170705022520/https://motherboard.vice.com/en_us/article/zme78x/why-the-value-of-ethereum-has-skyrocketed-4000-percent"target="_blank" rel="noopener">Ethereum dispara 4.000%</a> e no dia seguinte <a href="http://www.cnbc.com/2017/06/22/buyers-beware-lessons-from-the-ethereum-flash-crash.html"target="_blank" rel="noopener">despenca num flash-crash</a>.</p>
<p>Não tente ficar resistente ou resiliente. Prepare-se para ser Antifrágil.</p>
]]></content:encoded><category>agile</category><category>gestao</category><category>engenharia-de-software</category><category>off-topic</category></item><item><title>A Economia do Desenvolvimento de Software</title><link>https://akitaonrails.github.io/2017/06/22/a-economia-do-desenvolvimento-de-software/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/06/22/a-economia-do-desenvolvimento-de-software/</guid><pubDate>Thu, 22 Jun 2017 10:56:00 -0300</pubDate><description>&lt;p&gt;A comunidade de desenvolvimento de software está efervescente com tantas opções ao mesmo tempo. Temos dezenas de linguagens ativas e muito boas, como Go, &lt;a href="https://akitaonrails.github.io/elixir"&gt;Elixir&lt;/a&gt;, Clojure. Dezenas de frameworks excelentes, tanto no back-end quanto no front-end, incluindo React e Elm. Dezenas de metodologias sólidas, desde o bom e velho Agile até Continuous Deployment com microsserviços.&lt;/p&gt;
&lt;p&gt;Mas você é uma pequena startup de tecnologia ou uma equipe pequena dentro de uma grande corporação. Por onde começar?&lt;/p&gt;</description><content:encoded><![CDATA[<p>A comunidade de desenvolvimento de software está efervescente com tantas opções ao mesmo tempo. Temos dezenas de linguagens ativas e muito boas, como Go, <a href="/elixir">Elixir</a>, Clojure. Dezenas de frameworks excelentes, tanto no back-end quanto no front-end, incluindo React e Elm. Dezenas de metodologias sólidas, desde o bom e velho Agile até Continuous Deployment com microsserviços.</p>
<p>Mas você é uma pequena startup de tecnologia ou uma equipe pequena dentro de uma grande corporação. Por onde começar?</p>
<p>A recomendação é simples: faça a menor coisa que funciona primeiro. Sempre. Claro, evite o &ldquo;rápido e sujo&rdquo; ao máximo. Mas não seja paranoico nem exagere na engenharia.</p>
<p>Super-engenharia é tão cara quanto fazer as coisas de forma &ldquo;suja&rdquo;.</p>
<h3>Adicione &ldquo;Tempo&rdquo; à sua equação<span class="hx:absolute hx:-mt-20" id="adicione-tempo-à-sua-equação"></span>
    <a href="#adicione-tempo-%c3%a0-sua-equa%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>O erro mais comum que a maioria das pessoas comete é ignorar a variável &ldquo;Tempo&rdquo;.</p>
<p>Todo mundo vai a conferências de tecnologia, lê posts badalados ou assiste screencasts chamativos. A conclusão errada que tiram é: <em>&ldquo;a Netflix usa isso, então deve ser bom pra mim, porque eu quero me tornar a Netflix&rdquo;</em>.</p>
<p>O pressuposto falso é que a Netflix, ou o Google, ou o Facebook, ou o Spotify, é um sistema estático e sempre funcionou da forma como divulga hoje.</p>
<p>As pessoas esquecem que toda empresa unicórnio teve um <strong>dia 1</strong>. E no dia 1, elas não usavam microsserviços. Não tinham React.js. Não tinham Go nem Elixir. Algumas nem tinham bons programadores de início. A Netflix começou como um serviço de aluguel de VHS, lembra? O Google começou num quarto de dormitório universitário com componentes de hardware montados num <a href="http://www.complex.com/pop-culture/2013/02/50-things-you-didnt-know-about-google/lego-server-rack"target="_blank" rel="noopener">rack de Lego</a>.</p>
<p>Imagine que você é fã de uma celebridade. Essa celebridade tem uma Lamborghini. Você quer ser como essa celebridade um dia. O que você faz? Compra a mesma Lamborghini que ela tem?</p>
<p>Se você fizer isso, a única coisa que vai conseguir é uma DÍVIDA ENORME para pagar.</p>
<p>Pare de invejar a Lamborghini do rico.</p>
<h3>Dívida (Técnica)<span class="hx:absolute hx:-mt-20" id="dívida-técnica"></span>
    <a href="#d%c3%advida-t%c3%a9cnica" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Esse não é um termo novo nem um tema novo. Cada decisão que você toma em programação é um <strong>compromisso</strong> entre o que o &ldquo;futuro ideal&rdquo; deveria ser e o que você consegue fazer agora. Tomar empréstimo para comprar a Lamborghini equivalente cedo demais, e você vai ter que lidar com uma Dívida (Técnica) impagável. Você vai travar, vai parar e não vai fazer nada além de pagar essa dívida daqui pra frente.</p>
<p>Você quer &ldquo;codar mais rápido&rdquo;, então pula a escrita de testes automatizados, porque acha que vai te atrasar. E você está certo. O desenvolvimento orientado a testes não te deixa mais rápido de início, e nem deveria. Ele protege seu eu futuro do seu eu presente e evita que você acumule Dívida Técnica.</p>
<p>De novo: você esqueceu a variável &ldquo;Tempo&rdquo;.</p>
<p>Você escreve e entrega rápido no primeiro mês. Depois que a primeira versão está em produção, você começa a ser obrigado a pagar a dívida. Sua produtividade cai. Bugs de regressão aparecem. Cada nova funcionalidade que você tenta adicionar quebra algo de forma inesperada. Como não tem testes automatizados, você fica corrigindo as mesmas coisas várias vezes. A dívida vai cobrar, e você vai pagar. De um jeito ou de outro.</p>
<p>Suítes mínimas de testes são como um <strong>Seguro</strong>. Você não precisa dele agora, no dia 1. Mas no dia 100 você vai ficar feliz que tem.</p>
<p>Fazer microsserviços demais no dia 1 é dívida. Parece ótimo estar fazendo aquela coisa bacana que você leu num blog. No dia 100, com sua equipe de 3 pessoas e uma dúzia de microsserviços, você não vai fazer nada além de pagar a dívida acumulada, com <strong>Juros</strong>. Cada novo deploy de microsserviço quebra seu sistema. E claro, você não adicionou monitoramento, não adicionou testes integrados. Então toda vez que você sobe algo, outra coisa quebra de forma inesperada.</p>
<p>Ainda está curtindo a Lamborghini antecipada?</p>
<h3>O Mítico Homem-Mês<span class="hx:absolute hx:-mt-20" id="o-mítico-homem-mês"></span>
    <a href="#o-m%c3%adtico-homem-m%c3%aas" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Philip Calçado escreve ótimos posts e apresentações sobre microsserviços do jeito certo. Se você leva esse assunto a sério, recomendo fortemente que leia seus textos, como o <a href="http://philcalcado.com/2017/06/11/calcados_microservices_prerequisites.html"target="_blank" rel="noopener">&ldquo;Prerequisites&rdquo;</a> ou sua apresentação <a href="https://www.infoq.com/news/2017/05/economics-microservices"target="_blank" rel="noopener">&ldquo;Economics&rdquo;</a>.</p>
<p>Ele cita corretamente <strong>O Mítico Homem-Mês</strong>, de Fred Brooks. Insisto que os desenvolvedores leiam esse livro pequeno. É impressionante como a indústria inteira ainda repete exatamente os mesmos erros que Brooks relatou em seu livro, de projetos dos anos 60!</p>
<p>Para mim, microsserviços são um subproduto de empresas de tecnologia com programadores em excesso. Quando você ultrapassa a barreira de 5 desenvolvedores, um sistema &ldquo;monolítico&rdquo; com organização ruim e poucos testes automatizados pode ficar difícil de lidar. A consequência natural é a vontade de fragmentar. Você cria 2 equipes e 2 microsserviços e tenta coordenar. As equipes começam a se isolar e a praticar o jogo de culpar o outro quando novos bugs aparecem (<em>&ldquo;é culpa do microsserviço da outra equipe&rdquo;</em>).</p>
<p>É a <a href="http://www.melconway.com/Home/Conways_Law.html"target="_blank" rel="noopener">Lei de Conway</a> aplicada da forma errada:</p>
<blockquote>
  <p>Qualquer organização que projeta um sistema (definido de forma ampla) produzirá um design cuja estrutura é uma cópia da estrutura de comunicação da organização.</p>

</blockquote>
<p>Também entra em jogo outro capítulo do livro do Brooks: o <a href="http://wiki.c2.com/?SecondSystemEffect"target="_blank" rel="noopener">Efeito do Segundo Sistema</a>. Todo desenvolvedor e toda startup precisa assumir que a primeira versão de qualquer coisa não é o melhor design. E o segundo sistema (a primeira grande reescrita) é <strong>o sistema mais perigoso</strong> que você vai construir. Como Brooks descreve:</p>
<blockquote>
  <p>O primeiro trabalho de um arquiteto tende a ser enxuto e limpo. Ele sabe que não sabe o que está fazendo, então procede com cuidado e grande contenção.</p>

</blockquote>
<blockquote>
  <p>Enquanto projeta o primeiro trabalho, adornos e embelezamentos vão ocorrendo a ele. Esses ficam guardados para serem usados &ldquo;na próxima vez.&rdquo; Cedo ou tarde o primeiro sistema está pronto, e o arquiteto, com confiança firme e maestria demonstrada nessa classe de sistemas, está pronto para construir o segundo.</p>

</blockquote>
<blockquote>
  <p>Esse segundo é o sistema mais perigoso que um homem já projeta. Quando faz o terceiro e os posteriores, suas experiências anteriores se confirmarão mutuamente quanto às características gerais de tais sistemas, e as diferenças identificarão as partes de sua experiência que são particulares e não generalizáveis.</p>

</blockquote>
<blockquote>
  <p>A tendência geral é super-projetar o segundo sistema, usando todas as ideias e adornos que foram cautelosamente deixados de lado no primeiro. O resultado, como diz Ovídio, é uma &ldquo;grande pilha.&rdquo;</p>

</blockquote>
<p>O que acontece depois? O CEO, o conselho, os investidores, seja lá quem for, começam a fazer a coisa errada: contratar mais e mais pessoas. Tomar mais e mais empréstimos. Em vez de pagar as dívidas, acumulam mais dívida. Caíram na armadilha que Brooks relatou no primeiro capítulo e que dá nome ao livro: O Mítico Homem-Mês.</p>
<blockquote>
  <p>Adicionar mão de obra a um projeto de software atrasado o atrasa ainda mais.</p>

</blockquote>
<blockquote>
  <p>Projetos de programação complexos não podem ser perfeitamente particionados em tarefas discretas que possam ser executadas sem comunicação entre os trabalhadores e sem estabelecer um conjunto de inter-relações complexas entre as tarefas e os trabalhadores que as executam.</p>

</blockquote>
<blockquote>
  <p>Portanto, alocar mais programadores a um projeto que está atrasado o atrasará ainda mais. Isso porque o tempo necessário para os novos programadores aprenderem sobre o projeto e a sobrecarga de comunicação aumentada consumirão uma quantidade cada vez maior do tempo disponível no calendário.</p>

</blockquote>
<p>De novo: ignorando a variável &ldquo;Tempo&rdquo;. E confundindo &ldquo;dívida&rdquo; com &ldquo;investimento&rdquo;.</p>
<p>Antes de tudo, faça um favor a si mesmo e <a href="http://amzn.to/2sFbkWq"target="_blank" rel="noopener">leia o maldito livro</a>, duas vezes.</p>
<h3>Faça Agile do jeito certo! E não, não é Kanban!<span class="hx:absolute hx:-mt-20" id="faça-agile-do-jeito-certo-e-não-não-é-kanban"></span>
    <a href="#fa%c3%a7a-agile-do-jeito-certo-e-n%c3%a3o-n%c3%a3o-%c3%a9-kanban" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Se há uma coisa boa que todo o barulho do Lean produziu, é a noção de &ldquo;Produto Mínimo Viável&rdquo; ou MVP. Alguns chamam de &ldquo;protótipo&rdquo;. Outros chamam de &ldquo;lançar em Beta&rdquo; ou simplesmente &ldquo;versão 1.0&rdquo;. Não importa o nome. É o reconhecimento de que você não sabe muita coisa no início, então fazer engenharia excessiva na primeira versão é desperdício de tempo. Lean é sobre controlar o &ldquo;desperdício&rdquo;: fazemos o mínimo que funciona, medimos os resultados e evoluímos a partir daí.</p>
<p>Os cínicos vão dizer que qualquer protótipo que chega a produção nunca morre. E não estão errados.</p>
<p>O equilíbrio está em não fazer a versão &ldquo;rápida e suja&rdquo;. É pra isso que existem as técnicas ágeis. Faça o mínimo, organize o mínimo. É pra isso que existem os padrões de design orientado a objetos, do GoF ao DDD. Você não precisa aplicar TODOS os padrões, e é justamente isso que significa &ldquo;super-engenharia&rdquo;. Mas dá pra fazer o monolito mínimo que vai te permitir evoluir depois.</p>
<p>As pessoas criticam Ruby on Rails por não ser organizado &ldquo;o suficiente&rdquo;. <a href="https://apotonick.wordpress.com/2015/09/05/the-only-alternative-to-a-rails-monolith-are-micro-services-bullshit/"target="_blank" rel="noopener">Nick Sutterer</a>, o criador do <a href="https://github.com/trailblazer/trailblazer"target="_blank" rel="noopener">Trailblazer</a>, tem um ponto válido.</p>
<p>Rails feito errado é ruim. Mas a conclusão NÃO deveria ser: <em>&ldquo;vamos fazer microsserviços&rdquo;</em>. Esse salto de fé é idiota e não faz sentido por todos os motivos que citei acima.</p>
<p><em>&ldquo;Vamos fazer Agile de verdade e orientação a objetos de verdade&rdquo;</em> deveria ser a resposta inicial.</p>
<p>E por &ldquo;Agile&rdquo;, esqueça os post-its idiotas, esqueça as equações de estimativa baseadas em numerologia (isso dá um post inteiro por si só, porque story points e velocity são úteis, mas adicionar Montecarlo e outras coisas baseadas em distribuição Gaussiana não faz sentido). As únicas coisas &ldquo;Ágeis&rdquo; com as quais você deveria se preocupar são as <a href="http://www.extremeprogramming.org/"target="_blank" rel="noopener">técnicas de Extreme Programming (XP)</a>, <strong>incluindo</strong> os timeboxes baseados em iterações.</p>
<p>Você <strong>PRECISA</strong> fazer timeboxes. Pare, reavalie, mude de direção, e então continue. O modelo de &ldquo;Pull&rdquo; só faz sentido quando sua direção é muito, muito clara, escrita em pedra e imutável, como numa linha de produção de fábrica. (Que é exatamente onde o conceito de Pull, e o Lean, nasceram!)</p>
<p>Iterações, como testes automatizados, são como um Seguro. Você nunca consegue evitar todo o desperdício, mas pode minimizá-lo. Você pode se dar ao luxo de jogar fora o trabalho de uma Iteração inteira. Depois da iteração você mede os resultados e descarta se necessário, mudando de direção no processo. Jogar fora o que não serve é tão importante quanto adicionar coisas novas. Se você só acumula, está com um <a href="https://en.wikipedia.org/wiki/Compulsive_hoarding"target="_blank" rel="noopener">transtorno de acumulação</a>!</p>
<p>Na dúvida, faça XP. Sim, parece mais &ldquo;difícil&rdquo;, e o Kanban é &ldquo;mais simples&rdquo; de explicar. Mas isso é motivo suficiente?</p>
<h3>Esqueça Performance Bruta quando você NÃO precisa dela!<span class="hx:absolute hx:-mt-20" id="esqueça-performance-bruta-quando-você-não-precisa-dela"></span>
    <a href="#esque%c3%a7a-performance-bruta-quando-voc%c3%aa-n%c3%a3o-precisa-dela" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Outro problema é escolher linguagens ou frameworks por causa de performance.</p>
<p>Se você está no negócio de desenvolvimento web, isso é um DESPERDÍCIO enorme.</p>
<p>Entenda essa verdade: seus servidores vão ficar OCIOSOS na maior parte do tempo. E se você acha que seu web app está lento, a lentidão vem da PROGRAMAÇÃO RUIM que você fez, não da linguagem. Nenhuma linguagem boa vai salvar um programador ruim. Sempre digo que se performance fosse assim tão importante, todo mundo deveria estar usando C.</p>
<p>A maior parte do que você serve em apps baseados em HTTP, seja conteúdo para o usuário, seja resultado de API GET, pode ser <strong>CACHEADA</strong>! Se você não está usando uma <a href="http://www.akitaonrails.com/2015/08/25/small-bites-adicionando-um-cdn-ao-seu-site-a-forma-facil"target="_blank" rel="noopener">CDN</a>, está fazendo errado.</p>
<p>Sim, sim, sim, você acha que está construindo o próximo Spotify. Não está, pelo menos 99% de vocês não estão. E os 1% que fazem engenharia personalizada, com técnicas e stack próprios, e com sucesso: vocês são os 1%. Na verdade, são uma fração dos 1%. Não assuma que o que você faz é bom para o resto da população.</p>
<p>90% do que a maioria das pequenas empresas e desenvolvedores web solo precisam é só uma conta no Shopify e uma instalação padrão do WordPress. É isso.</p>
<blockquote>
  <p>Você está fazendo desenvolvimento de infraestrutura, como construir componentes customizados para Docker, Kubernetes, Terraform? Ferramentas de linha de comando? Daemons? Então escolha GO.</p>

</blockquote>
<blockquote>
  <p>Está fazendo bibliotecas embutidas? Talvez a próxima geração do OpenSSL? Drivers? Então escolha RUST.</p>

</blockquote>
<blockquote>
  <p>Está fazendo desenvolvimento mobile? Não tem muita escolha: Swift para iOS, Kotlin/Java para Android. Ou React Native para apps mais simples.</p>

</blockquote>
<blockquote>
  <p>Está realmente construindo o próximo Whatsapp? O próximo Waze? O próximo Snap? Tem centenas ou milhares de usuários precisando de conexões de longa duração em redes não confiáveis fazendo broadcast de mensagens? Ou está construindo a próxima evolução de bancos de dados NoSQL distribuídos? Ou qualquer coisa que tenha o sentido real de &ldquo;Distribuído&rdquo; em sua definição? Então escolha ELIXIR.</p>

</blockquote>
<blockquote>
  <p>Está fazendo uma aplicação web baseada em CRUD? Vai de RAILS e não olha pra trás.</p>

</blockquote>
<blockquote>
  <p>Está fazendo tudo isso ao mesmo tempo? Use todas as alternativas então. E espero que tenha orçamento, porque vai precisar de uma equipe grande.</p>

</blockquote>
<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>A Economia só faz sentido quando você considera o dia 1. Não esqueça a variável &ldquo;Tempo&rdquo;. Ela faz toda a diferença.</p>
<p>Você sempre vai ter Dívidas a pagar. Então seja inteligente na escolha de qual tipo de dívida você assume. Porque vai ter que pagar de volta eventualmente.</p>
<p>De novo: leia Brooks. Ele disse isso décadas atrás: <a href="http://worrydream.com/refs/Brooks-NoSilverBullet.pdf"target="_blank" rel="noopener">NÃO EXISTE BALA DE PRATA</a>. Não se iluda. Uma nova linguagem, um novo framework, uma nova arquitetura. Nada disso vai te salvar.</p>
<p>Em qualquer empreitada tecnológica, código não é a única preocupação. Diria até que numa startup de tecnologia, código é apenas 20% do problema. Uma startup de tecnologia é só uma empresa, como qualquer outra. Se você é o fundador ou CEO, tem que lidar com os 80% restantes: marketing, contabilidade, recursos humanos, questões legais, etc. Já é difícil o suficiente sem que sua equipe técnica te traga uma Dívida Técnica indesejada, a Lamborghini desnecessária, que você não vai conseguir pagar.</p>
<p>Você pode começar humilde no dia 1. Continue evoluindo, continuamente. Esse é o núcleo de qualquer processo Agile ou Lean: <a href="https://www.graphicproducts.com/articles/what-is-kaizen/"target="_blank" rel="noopener">KAIZEN</a>. Escolha dívidas inteligentes, pague-as aos poucos, continuamente. É o mesmo raciocínio de fazer um empréstimo no banco.</p>
<blockquote>
  <p>O dia 7.200 da Netflix NÃO é o seu dia 1.</p>

</blockquote>
<blockquote>
  <p>O dia 4.800 do Facebook NÃO é o seu dia 1.</p>

</blockquote>
<blockquote>
  <p>O dia 6.809 do Google NÃO é o seu dia 1.</p>

</blockquote>
<blockquote>
  <p>Seja humilde. Entregue rápido. Pague suas Dívidas. Continue evoluindo continuamente. Pare de acreditar em contos de fadas e balas de prata.</p>

</blockquote>
]]></content:encoded><category>engenharia-de-software</category><category>agile</category><category>arquitetura-de-software</category><category>off-topic</category></item><item><title>Começando com Blender</title><link>https://akitaonrails.github.io/2017/06/21/comecando-com-blender/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/06/21/comecando-com-blender/</guid><pubDate>Wed, 21 Jun 2017 17:32:00 -0300</pubDate><description>&lt;p&gt;O Blender é uma fera. Uma verdadeira maravilha do que o software open source consegue alcançar, e você deveria aplaudir de pé todos que ajudaram a construir algo que funciona tão bem assim. Ele rivaliza com as opções comerciais mais caras do mercado, do Maya ao venerável Renderman da Pixar.&lt;/p&gt;
&lt;p&gt;A comunidade do Blender é tão apaixonada e comprometida que frequentemente produz &lt;a href="https://web.archive.org/web/20151127160645/http://archive.blender.org/features-gallery/movies/"target="_blank" rel="noopener"&gt;curtas-metragens&lt;/a&gt; de alta qualidade, com nível quase hollywoodiano, usando o próprio Blender. A ideia é justamente estressar a ferramenta e identificar gargalos e problemas de usabilidade num fluxo de trabalho real.&lt;/p&gt;</description><content:encoded><![CDATA[<p>O Blender é uma fera. Uma verdadeira maravilha do que o software open source consegue alcançar, e você deveria aplaudir de pé todos que ajudaram a construir algo que funciona tão bem assim. Ele rivaliza com as opções comerciais mais caras do mercado, do Maya ao venerável Renderman da Pixar.</p>
<p>A comunidade do Blender é tão apaixonada e comprometida que frequentemente produz <a href="https://web.archive.org/web/20151127160645/http://archive.blender.org/features-gallery/movies/"target="_blank" rel="noopener">curtas-metragens</a> de alta qualidade, com nível quase hollywoodiano, usando o próprio Blender. A ideia é justamente estressar a ferramenta e identificar gargalos e problemas de usabilidade num fluxo de trabalho real.</p>
<p>Este post é, principalmente, para o &ldquo;eu do futuro&rdquo; poder voltar a uma lista de recursos centralizada. Como modelagem 3D não é meu trabalho em tempo integral, vou ter longos intervalos entre as sessões com o Blender. E eu sei que vou me arrepender se não descarregar o que aprendi num post enquanto ainda está fresco :-)</p>
<h3>Primeiros Passos para Iniciantes<span class="hx:absolute hx:-mt-20" id="primeiros-passos-para-iniciantes"></span>
    <a href="#primeiros-passos-para-iniciantes" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Antes de mais nada: se você está neste blog, provavelmente é programador. E deixa eu te dizer que o pessoal de gráficos tem uma visão de &ldquo;usabilidade&rdquo; bem diferente da nossa. A quantidade absurda de customizações, opções, atalhos e combinações rivaliza até com usuários de Vim e Emacs.</p>
<p>Ah, e a propósito: você vai precisar de um mouse com 3 botões de verdade. Touchpad não serve pra nada no Blender, e o mouse do Mac é horrível. <a href="http://www.dell.com/br/mouse"target="_blank" rel="noopener">Qualquer mouse barato de PC resolve.</a></p>
<p>Por padrão, o botão principal é o da direita, não o da esquerda como estamos acostumados. Mude isso nas <a href="https://web.archive.org/web/20181118204135/https://docs.blender.org/manual/en/dev/preferences/input.html"target="_blank" rel="noopener">preferências do usuário</a> para selecionar com o botão esquerdo, e aí as coisas começam a fazer sentido. Enquanto estiver lá, habilite também a emulação do Numpad.</p>
<p>Aliás, vale muito a pena ter um teclado com numpad ou até um numpad separado. Você pode usar a fileira de números do teclado normal, mas o Blender foi projetado presumindo tanto um mouse de 3 botões invertido quanto um numpad.</p>
<p><a href="https://web.archive.org/web/20181118204135/https://docs.blender.org/manual/en/dev/preferences/input.html"target="_blank" rel="noopener"><img src="https://web.archive.org/web/20181119110123/https://docs.blender.org/manual/en/dev/_images/preferences_input_tab.png" alt="Preferências de Input"  loading="lazy" /></a></p>
<p>Se você nunca estudou Blender antes, não vai conseguir descobrir nada explorando a interface por conta própria. A UI é inútil até alguém te ensinar o básico. Há centenas de termos que você simplesmente não vai entender, como Meshes, Edges, Seams, Nodes, Viewport, Subsurface, Modifiers, etc.</p>
<p>A coisa mais importante que você PRECISA fazer antes de continuar é assistir essa série completa de 9 partes do Blender Guru, chamada <a href="https://www.youtube.com/watch?v=VT5oZndzj68&amp;list=PLjEaoINr3zgHs8uzT3yqe4iHGfkCmMJ0P"target="_blank" rel="noopener">Blender Beginner Tutorial Series</a>. Opcionalmente, você pode fazer depois, com calma, os <a href="https://www.youtube.com/watch?v=Mwzz-Y6t-v8&amp;list=PLjEaoINr3zgEgoyYWE0Yit-cVoZ60WGtt"target="_blank" rel="noopener">Intermediate Blender Tutorials</a>.</p>
<p>A série para iniciantes vai te ensinar o suficiente para você finalmente começar a se sentir confortável com a interface e as ferramentas. E não esqueça de imprimir e pendurar esse <a href="https://web.archive.org/web/20170708042817/https://www.blenderguru.com/articles/free-blender-keyboard-shortcut-pdf"target="_blank" rel="noopener">&ldquo;cheat sheet&rdquo;</a> tão útil. Você não vai acreditar como a vida fica mais fácil quando incorpora os atalhos de teclado mais importantes.</p>
<h3>Configurações Padrão Melhores<span class="hx:absolute hx:-mt-20" id="configurações-padrão-melhores"></span>
    <a href="#configura%c3%a7%c3%b5es-padr%c3%a3o-melhores" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Por razões históricas, algumas configurações padrão não são as ideais. O conhecimento na área de renderização 3D evolui muito rápido.</p>
<p>A primeira coisa a fazer: <a href="https://web.archive.org/web/20160308012834/http://wiki.blender.org/index.php/Doc:2.6/Tutorials/Rendering/Cycles"target="_blank" rel="noopener">trocar</a> o motor de renderização padrão de Blender Render para o Cycles Raytracing Engine.</p>
<p>Depois, tratamento de cor. O sRGB EOTF padrão é basicamente errado. Você precisa baixar a configuração <a href="https://sobotka.github.io/filmic-blender/"target="_blank" rel="noopener">filmic-blender</a> do Sobotka. No Arch Linux, basta fazer:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><pre><code>pacaur -S filmic-blender-git</code></pre></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>Criei um script em <code>~/bin/filmic-blender</code> com o seguinte:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><pre><code>env OCIO=/usr/share/blender/2.78/datafiles/filmic-blender/config.ocio blender</code></pre></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>E sempre inicializo o Blender pelo terminal assim:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><pre><code>optirun ~/bin/filmic-blender</code></pre></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>Isso faz duas coisas: primeiro, pré-configura o OpenColorIO para usar o substituto Filmic. Segundo, habilita a GPU externa do meu notebook para uso no Blender. Leia meu post <a href="http://www.akitaonrails.com/2017/03/14/habilitando-a-gpu-optimus-nvidia-no-dell-xps-15-com-linux"target="_blank" rel="noopener">&ldquo;Enabling Optimus NVIDIA GPU on the Dell XPS 15 with Linux, even on Battery&rdquo;</a> para mais detalhes. No Windows ou Mac isso não é necessário, mas você ainda vai precisar carregar a configuração filmic.</p>
<p>Na aba Scene, você deve reconfigurar o &ldquo;Color Management&rdquo; assim:</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/636/Screenshot_from_2017-06-21_16-31-05.png" alt="Color Management"  loading="lazy" /></p>
<p>Em seguida, configure o Cycles. Se você está no Linux com o Optimus instalado corretamente como expliquei antes, a opção CUDA deve aparecer nas preferências do usuário:</p>
<p><a href="https://web.archive.org/web/20181118204134/https://docs.blender.org/manual/en/dev/preferences/system.html"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/637/Screenshot_from_2017-06-21_16-43-29.png" alt="Preferências do sistema"  loading="lazy" /></a></p>
<p>Na aba Render, você deve ter algo assim:</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/638/Screenshot_from_2017-06-21_16-45-32.png" alt="Configuração de Render"  loading="lazy" /></p>
<p>Na seção Dimensions, você vai ver que está configurado para Full HD (1920x1080 px) mas com apenas 50% (ou seja, vai renderizar metade do tamanho). Aumente para 100%. Se quiser um shot em 4K, ajuste as dimensões para 3840x2160 px. O 4K torna a renderização 4 vezes mais lenta que o 1080p, obviamente.</p>
<p>Na seção Performance há 2 campos para &ldquo;Tile size&rdquo;. O Blender vai dividir sua imagem em tiles, e cada tile renderiza em paralelo num core de CPU ou GPU disponível. Meu notebook tem 8 cores de CPU, então 64 é um bom tamanho, porque vai renderizar 8 tiles de 64 pixels cada em paralelo.</p>
<p>Quanto menos cores você tiver, maior deve ser o tile. Para minha GPU NVIDIA, só tenho 2 cores disponíveis (e não muita memória de vídeo!), então vale aumentar os dois campos para 512. Na GPU ela só renderiza 2 tiles por vez, e tiles maiores otimizam a renderização.</p>
<p>Como você provavelmente já adivinhou, o Blender Guru tem um tutorial muito útil: <a href="https://www.youtube.com/watch?v=8gSyEpt4-60&amp;t=204s"target="_blank" rel="noopener">&ldquo;18 ways to speed up Cycles Rendering&rdquo;</a>.</p>
<p>Isso cobre o básico das configurações padrão.</p>
<h3>Você Precisa Pensar como Fotógrafo!<span class="hx:absolute hx:-mt-20" id="você-precisa-pensar-como-fotógrafo"></span>
    <a href="#voc%c3%aa-precisa-pensar-como-fot%c3%b3grafo" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Você vai querer assistir MUITOS tutoriais online, porque realmente não é óbvio como usar melhor as ferramentas. Outro canal que gosto bastante é o <a href="https://www.youtube.com/watch?v=lY6KPrc4uMw&amp;list=PLda3VoSoc_TR7X7wfblBGiRz-bvhKpGkS"target="_blank" rel="noopener">BornCG</a> e o <a href="https://www.youtube.com/channel/UCCxay0KiyLlawfgoZ2mVnNQ"target="_blank" rel="noopener">CG Masters</a>. Pegue alguns vídeos deles para ter uma visão mais aprofundada de ferramentas específicas, técnicas de modelagem e por aí vai.</p>
<p>E de verdade: você precisa praticar o máximo possível enquanto estuda. Uma área importante é a Fotografia. Isso é o que você vê quando seleciona a aba Camera:</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/639/Screenshot_from_2017-06-21_16-55-09.png" alt="Configurações de câmera"  loading="lazy" /></p>
<p>Tem muita customização disponível aqui. Por exemplo: Focal length: 35.00, que é o que os fotógrafos conhecem como lente de 35mm, uma boa escolha padrão. Você pode usar grande angular de 200mm ou 300mm também, e shots internos, em salas pequenas, podem usar 24mm ou até 18mm. O artigo <a href="http://www.cambridgeincolour.com/tutorials/camera-lenses.htm"target="_blank" rel="noopener">&ldquo;Understanding Color Lenses&rdquo;</a> cobre o básico.</p>
<p>Depois, você precisa entender &ldquo;Profundidade de Campo&rdquo; (Depth of Field). Isso pode ser feito nessa configuração antes de renderizar, ou simulado após a renderização (se você escolheu separar o render em camadas), no <a href="https://web.archive.org/web/20160308021547/http://wiki.blender.org/index.php/Doc:2.6/Tutorials/Composite_Nodes/Setups/Depth_Of_Field"target="_blank" rel="noopener">Compositor</a>.</p>
<p>Falando nisso, outra forma de controlar a Profundidade de Campo é reconfigurar o &ldquo;f-stop&rdquo;, que é a medida de exposição, ou abertura. O padrão é &ldquo;128.0&rdquo;, ou seja, &ldquo;f/128&rdquo;. Como referência, a câmera do iPhone 7s tem abertura f/2.2. Novamente, vale estudar mais sobre isso começando pelo artigo <a href="https://www.bhphotovideo.com/explora/photography/tips-and-solutions/what%E2%80%99s-best-f-stop"target="_blank" rel="noopener">&ldquo;What&rsquo;s the Best F-Stop?&rdquo;</a></p>
<p>Tirar uma foto (ou renderizar um still, no nosso caso) é muito mais do que simplesmente apontar e clicar. Você também precisa se preocupar com técnicas adequadas de composição, como a <a href="http://www.photographymad.com/pages/view/rule-of-thirds"target="_blank" rel="noopener">Regra dos Terços</a>, a <a href="http://www.makeuseof.com/tag/golden-ratio-photography/"target="_blank" rel="noopener">proporção áurea</a>, e por aí vai. Você pode configurar isso no combo box &ldquo;Composition Guides&rdquo; mostrado acima.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/641/3911f4657078a19b4f3677a304e7451d.jpg" alt="Composição com Proporção Áurea"  loading="lazy" /></p>
<p>Vale muito a pena se aprofundar no campo da Fotografia para melhorar o resultado final dos renders. Sou um amador e é muito empolgante conseguir aplicar técnicas do mundo real na renderização 3D.</p>
<h3>Design de Materiais e Physically-Based Render (PBR)<span class="hx:absolute hx:-mt-20" id="design-de-materiais-e-physically-based-render-pbr"></span>
    <a href="#design-de-materiais-e-physically-based-render-pbr" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>O padrão ouro em modelagem e renderização 3D é certamente o <a href="https://renderman.pixar.com/view/renderman"target="_blank" rel="noopener">Disney/Pixar RenderMan</a>. Todos os filmes premiados da Pixar foram feitos com ele.</p>
<p>Mas o Blender aprende rápido. Todo paper da Pixar eventualmente vira parte do próprio Blender. O design de materiais, por exemplo, sempre foi bastante trabalhoso na ferramenta. Fiz alguns dos tutoriais eu mesmo, e criar materiais com as características corretas do mundo real, como Fresnel adequado e a distinção certa entre dielétrico e metálico, era um desafio.</p>
<p>Se você assinou o canal do Blender Guru, assista os tutoriais <a href="https://www.youtube.com/watch?v=V3wghbZ-Vh4&amp;t=2668s"target="_blank" rel="noopener">&ldquo;How to Make Photorealistic PBR Materials - Part 1&rdquo;</a> e <a href="https://www.youtube.com/watch?v=m1PkSViBi-M"target="_blank" rel="noopener">&ldquo;Part 2&rdquo;</a>. E você vai acabar com essa configuração complicada de Nodes para materiais PBR:</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/640/Screenshot_from_2017-06-21_17-25-46.png" alt="Materiais PBR - Node Editor"  loading="lazy" /></p>
<p>E o Blender Guru acabou de postar um novo vídeo apresentando um recurso do próximo Blender 2.79 (ainda no 2.78 na época): a implementação do paper <a href="https://disney-animation.s3.amazonaws.com/library/s2012_pbs_disney_brdf_notes_v2.pdf"target="_blank" rel="noopener">&ldquo;Physically-Based Shader at Disney&rdquo;</a> como um novo shader nativo e otimizado chamado &ldquo;Principled Shader&rdquo;. É literalmente o <a href="https://www.youtube.com/watch?v=4H5W6C_Mbck"target="_blank" rel="noopener">Shader Definitivo</a>, porque torna a criação e personalização de materiais realistas <strong>muito</strong> mais fácil, além de ser compatível com Renderman e Substance.</p>
<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Ainda sou iniciante no Blender, tem uma estrada muito longa pela frente. Mas é um ambiente muito empolgante e estou aprendendo coisas novas e úteis o tempo todo. Todo mundo deveria experimentar!</p>
<p>Com o tempo, espero encontrar espaço para integrar o fluxo de trabalho do Blender com outras ferramentas como Unreal Engine ou Unity3D para criar coisas interativas também.</p>
<p>Esse post não é de forma alguma um tutorial completo ou referência definitiva. A ideia foi destacar algumas coisas que não são imediatamente óbvias quando você começa com o Blender e que podem te dar uma noção mais ampla do que ele é capaz de fazer.</p>
<p>Se quiser se aprofundar de verdade nas configurações, assista esse vídeo de setup do CG Master:</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/-_BZasG_UDA"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

]]></content:encoded><category>tutoriais</category><category>aprendizado</category><category>audio-e-video</category><category>off-topic</category></item><item><title>[Off-Topic] Talento é Altamente Supervalorizado: Humanizando Einstein e Matando Deuses</title><link>https://akitaonrails.github.io/2017/06/08/off-topic-talento-e-altamente-supervalorizado-humanizando-einstein-e-matando-deuses/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/06/08/off-topic-talento-e-altamente-supervalorizado-humanizando-einstein-e-matando-deuses/</guid><pubDate>Thu, 08 Jun 2017 21:23:00 -0300</pubDate><description>&lt;p&gt;Uma coisa que eu vivo repetindo é: não tenha ídolos, não acredite cegamente em gurus e, principalmente, não siga falsos-Deuses.&lt;/p&gt;
&lt;p&gt;Sou um &lt;a href="http://www.akitaonrails.com/2007/08/23/off-topic-inimigos-da-razo"target="_blank" rel="noopener"&gt;antigo proponente&lt;/a&gt; em matar deuses, é praticamente um hobby. Eles dão excelentes personagens de ficção em histórias para dormir, mas obviamente não existem. Como o bicho-papão ou papai-noel ou o coelhinho da Páscoa. E não, este não é mais um artigo focado em anti-religião, calma.&lt;/p&gt;
&lt;p&gt;Pelas mesmas razões, eu quero desmantelar o mito do &amp;ldquo;Talento&amp;rdquo; e trazer os semi-deuses de volta à humanidade.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Uma coisa que eu vivo repetindo é: não tenha ídolos, não acredite cegamente em gurus e, principalmente, não siga falsos-Deuses.</p>
<p>Sou um <a href="http://www.akitaonrails.com/2007/08/23/off-topic-inimigos-da-razo"target="_blank" rel="noopener">antigo proponente</a> em matar deuses, é praticamente um hobby. Eles dão excelentes personagens de ficção em histórias para dormir, mas obviamente não existem. Como o bicho-papão ou papai-noel ou o coelhinho da Páscoa. E não, este não é mais um artigo focado em anti-religião, calma.</p>
<p>Pelas mesmas razões, eu quero desmantelar o mito do &ldquo;Talento&rdquo; e trazer os semi-deuses de volta à humanidade.</p>
<h3>Talento é Altamente Supervalorizado<span class="hx:absolute hx:-mt-20" id="talento-é-altamente-supervalorizado"></span>
    <a href="#talento-%c3%a9-altamente-supervalorizado" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Eu realmente detesto o uso da palavra &ldquo;Talento&rdquo;. Ele deveria ser usado como um elogio, uma qualidade, mas é muito usado como uma desculpa. A raiz em latim da palavra significa simplesmente uma grande quantidade de dinheiro. O uso errôneo e comum de hoje em dia desvaloriza os reais esforços das pessoas realmente &ldquo;talentosas&rdquo;.</p>
<p>Toda vez ele é usado para denotar algo do tipo <em>&ldquo;eu nunca vou ser um Einstein, nem vou me incomodar em tentar&rdquo;.</em> É a desculpa preferida das pessoas preguiçosas.</p>
<p>Embora fatores ambientais e circunstanciais tenham um papel crucial, não existe ABSOLUTAMENTE NADA no nosso material biológico, como um gene, que impeça alguém de atingir níveis similares de sucesso dadas as mesmas circunstâncias.</p>
<p>Sim, algumas pessoas acabam, aleatoriamente, por estar no lugar certo na hora certa. É como se ganha uma loteria. E infelizmente, é impossível recriar a mesma rede de circunstâncias para todo mundo e replicar níveis de sucesso (mais sobre isso no fim do artigo).</p>
<p>Ao mesmo tempo não ajuda em nada acreditar no misticismo de que &ldquo;talento&rdquo; pode ser definido fisicamente, &ldquo;geneticamente&rdquo;. Esse é o pensamento que cria Josef Mengeles e muito do racismo e outras formas de segregação. Não existe predestinação.</p>
<p>Hoje em dia vocês já devem ter ouvido falar do conceito das 10 mil horas de treinamento deliberado para se tornar mestre em alguma coisa, primeiramente apresentado no livro <a href="https://www.amazon.com.br/dp/8575424483/ref=asc_df_85754244835020603?smid=A1ZZFT5FULY4LN&amp;tag=goog0ef-20&amp;linkCode=asn&amp;creative=380341&amp;creativeASIN=8575424483"target="_blank" rel="noopener">&ldquo;Outliers&rdquo;</a>, do prolixo Malcolm Gladwell.</p>
<p><a href="https://www.amazon.com.br/dp/8575424483/ref=asc_df_85754244835020603?smid=A1ZZFT5FULY4LN&amp;tag=goog0ef-20&amp;linkCode=asn&amp;creative=380341&amp;creativeASIN=8575424483"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/622/big_outliers.jpeg" alt="Outliers"  loading="lazy" /></a></p>
<p>De Bill Gates a Oppenheimer aos Beatles, o livro tenta descrever como o esforço continuado e focado dessas pessoas, as tais 10 mil horas (aproximadamente 5 anos em tempo integral), ajuda a explicar seus níveis de sucesso.</p>
<p>Geoff Colvin, em seu livro <a href="https://www.amazon.com.br/Talent-Overrated-Separates-World-Class-Performers/dp/1591842948"target="_blank" rel="noopener">&ldquo;Talento é Supervalorizado: O que realmente separa os empreendedores de classe mundial de todo mundo&rdquo;</a> tenta ir além de Gladwell e explica que, obviamente, só 10 mil horas de treino não bastam se não forem de &ldquo;prática deliberada&rdquo;: um treino obsessivo focado em melhoria contínua, acima da simples repetição da mesma rotina.</p>
<p>Em resumo: quer ter a chance de se tornar mestre em alguma coisa? Tenha a obsessão de treinar focado em melhorar milímetros e milissegundos ao longo de 10 mil horas. Repetir a mesma rotina, sem foco em melhorar resultados, não leva ninguém a lugar nenhum. É só passatempo.</p>
<p>Esse tipo de treinamento deliberado que Gladwell e Colvin detalham em seus livros, é um possível fator de sucesso.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/623/10000-hours-to-mastery.png" alt="10.000 horas"  loading="lazy" /></p>
<h3>10% do Cérebro: o Mito<span class="hx:absolute hx:-mt-20" id="10-do-cérebro-o-mito"></span>
    <a href="#10-do-c%c3%a9rebro-o-mito" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Este é fácil de derrubar, então já vou começar por aqui.</p>
<p>Um dos aspectos &ldquo;místicos&rdquo; do talento está ligado à crença de pessoas que conseguem ativar mais de 10% do cérebro. O mito de que não usamos todo o nosso &ldquo;potencial&rdquo;.</p>
<p>Filmes de ficção recentes como <a href="http://gizmodo.com/where-the-10-percent-of-our-brains-myth-comes-from-a-1598507369"target="_blank" rel="noopener">&ldquo;Lucy&rdquo;, de Luc Besson</a>, não ajudam em nada porque perpetuam essa crença popular. Vamos descrever desta forma:</p>
<blockquote>
  <p>&ldquo;O cérebro humano constitui 1/40 do total da massa do corpo humano, em média, mas consome 1/5 de todas as calorias que absorvemos. De um ponto de vista evolucionário, onde cada órgão do nosso corpo foi criado e naturalmente selecionado por eras por eficiência, ter um cérebro que suga 20% de toda nossa reserva de energia diária por meros 10% de eficiência simplesmente não tem sentido nenhum.&rdquo;</p>

</blockquote>
<blockquote>
  <p>Pense em você mesmo neste instante. Você está usando seus músculos para ficar sentado agora? Usando suas mãos para scrollar o mouse do seu computador (ou dedo na tela do seu celular)? Talvez comendo ou tomando alguma coisa? Ouvindo alguma música? Respirando? Pode ficar tranquilo, você está usando mais de 10% do seu cérebro neste instante - <a href="https://www.nature.com/scitable/blog/mind-read/lucy_is_wrong_we_use"target="_blank" rel="noopener">Nature</a></p>

</blockquote>
<p><a href="https://www.youtube.com/watch?v=YxIS3XxfFS0"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/624/big_10percent_brain.jpg" alt="10% do cérebro"  loading="lazy" /></a></p>
<p>Tirando esse fator do caminho, vamos continuar.</p>
<h3>Humanizando Einstein<span class="hx:absolute hx:-mt-20" id="humanizando-einstein"></span>
    <a href="#humanizando-einstein" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No geral, eu não respeito biografias. Raramente perco meu tempo lendo algum. Não sou contra, mas para mim biografia é uma história contada por um escritor, que levou em consideração todas as técnicas para me prender à história que ele quer contar. Toda biografia é limitada aos interesses do escritor, não do personagem que carrega o título do livro.</p>
<p>Na verdade, eu considero biografias como qualquer outro tipo de história de entretenimento. Exatamente na mesma categoria que assistir Capitão América ou Super Homem. Porque é exatamente assim que os escritores e diretores produzem os filmes de &ldquo;baseado em fatos reais&rdquo;.</p>
<p>Aliás, palmas aos irmãos Coen pelo filme <a href="http://www.sbs.com.au/guide/article/2017/05/23/how-much-fargo-actually-based-true-story"target="_blank" rel="noopener">&ldquo;Fargo&rdquo;</a> que inicia com a frase &ldquo;isto é uma história real&rdquo;. E muitas pessoas até hoje, acreditam que é real. Uma trolada em todo filme que começa com o famigerado &ldquo;baseado numa história real&rdquo; e todos acham que estão assistindo fatos, e não entretenimento.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/625/fargo.jpg" alt="Fargo"  loading="lazy" /></p>
<p>Coloque um nome que existiu, uma situação que existiu, e todo mundo associa a ficção inteira como se fosse real. Espero que ninguém pense que Lincoln tenha sido caçador de vampiros por causa do filme <a href="http://www.imdb.com/title/tt1611224/"target="_blank" rel="noopener">&ldquo;Abraham Lincoln: Vampire Hunter&rdquo;</a>.</p>
<p>Mas se eu perguntar a qualquer pessoa do mundo, quem foi o maior super gênio cientista de todos os tempos, com as teorias que mais revolucionaram a humanidade, ninguém vai hesitar em dizer: Albert Einstein!</p>
<p><a href="https://www.sott.net/article/251049-New-Book-Says-Einstein-Highly-Overrated-and-Ruined-Physics"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/626/einstein_debunked.jpg" alt="Einstein, debunked"  loading="lazy" /></a></p>
<p>Mas por quê?</p>
<p>O físico Roger Schlafly, em seu livro <a href="http://www.darkbuzz.com/herp/"target="_blank" rel="noopener">&ldquo;How Einstein Ruined Physics: Motion, Symmetry, and Revolution in Science&rdquo;</a> traz uma tonelada de evidências ao contrário.</p>
<p>Em resumo, sim Einstein realmente publicou muitas coisas muito interessantes, mas o super inflado mito criado ao redor de sua figura é muito mais danoso do que proveitoso para o futuro da física e seus sucessores. E continua a incentivar o mercado criador de mitos.</p>
<blockquote>
  <p>Einstein foi uma pessoa cheia de falhas, como todos nós. Bem longe de um semi-deus.</p>

</blockquote>
<p>Mark Green, em seu artigo <a href="https://www.sott.net/article/251049-New-Book-Says-Einstein-Highly-Overrated-and-Ruined-Physics"target="_blank" rel="noopener">&ldquo;New Book Says Einstein Highly-Overrated and Ruined Physics&rdquo;</a> descreve:</p>
<blockquote>
  <p>&ldquo;O que torna Einstein tão grande? A história oficial começa assim: Albert Einstein, um jovem funcionário num escritório de patentes suíço, sozinho transformou a física de uma ciência estática e tridimensional em um universo espaço-temporal quadri-dimensional de explodir as cabeças e &rsquo;experimentos de pensamento&rsquo; solitários envolvendo gravidade, movimento, espaço e tempo. Einstein também fez progressos sem precedentes em entender a natureza da luz e energia e foi o primeiro a compreender a equivalência de energia e massa. As descobertas de Einstein não só transformaram a física moderna mas a forma como vemos o universo&rdquo;</p>

</blockquote>
<p>É o que todos nós sabemos. E eu fortemente recomendo que leiam o artigo completo de Mark Green, mas vamos aos pontos que interessam.</p>
<blockquote>
  <p>E=MC2: não foi inventado por Einstein!</p>

</blockquote>
<p><img src="https://media.giphy.com/media/DqSw5gyRQ5yPC/giphy.gif" alt="mind blow"  loading="lazy" /></p>
<p>A equação foi publicada 2 anos antes por Olinto de Pretto. Como Schlafly diz em seu livro &ldquo;o entendimento da relatividade especial por Einstein &hellip; era inferior à de (Henri) Poincaré&rdquo;. Aliás, se nunca ouviu falar do físico francês Poincaré, recomendo ler o livro <a href="https://www.amazon.com/Chaos-Making-Science-James-Gleick/dp/0143113453/ref=lp_13567_1_3?s=books&amp;ie=UTF8&amp;qid=1496941237&amp;sr=1-3"target="_blank" rel="noopener">&ldquo;Chaos: Making a New Science&rdquo;</a> de James Gleick.</p>
<blockquote>
  <p>A noção de movimento e tempo como uma 4a dimensão separada do espaço tridimensional.</p>

</blockquote>
<p>H.G. Wells especulou o conceito na famosa peça de ficção &ldquo;The Time Machine&rdquo; em 1894. Nesse mesmo ano Lorentz escreveu o paper científico onde ele &ldquo;propõe o conceito de tempo local em um objeto móvel&rdquo;. Poincaré escreveu em 1898 e outro em 1900 explorando o relacionamento entre movimento e tempo.</p>
<blockquote>
  <p>E a relação do E=MC2 e a bomba atômica?</p>

</blockquote>
<p>Como Schlafly descreve, E=MC2 não é sequer necessário para a bomba atômica. A equação não dá nenhuma pista em como separar o átomo, ou como criar uma reação nuclear em cadeia, ou qualquer dos outros passos necessários em fazer a bomba atômica. Relatividade sequer é necessária para entender a liberação de energia de uma bomba de urânio ou plutônio, já que a liberação pode ser explicada por considerações de eletromagnetismo &hellip; previsões sobre a massa relativística estavam sendo testadas (pelo físico alemão Walter Kaufmann) em 1901, antes de Einstein escrever qualquer coisa a respeito.</p>
<p>E, pra completar, também foi H.G. Wells que publicou primeiro sobre o conceito de <a href="http://www.bbc.com/news/magazine-33365776"target="_blank" rel="noopener">&ldquo;bombas atômicas&rdquo;</a>.</p>
<p><a href="http://www.bbc.com/news/magazine-33365776"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/627/wells.jpg" alt="H.G. Wells"  loading="lazy" /></a></p>
<p>Existiram muitos cientistas excepcionais, que trabalharam duro, antes e durante a era de Einstein. O matemático e físico francês Henri Poincaré, que o filósofo britânico Bertrand Russell (lembram da <a href="http://rationalwiki.org/wiki/Russell%27s_Teapot"target="_blank" rel="noopener">chaleira de Russell</a>?) chamou de o maior homem que a França já produziu. O físico holandês e nobel Hendrik Lorentz. E o físico e matemático escocês James Clerk Maxwell.</p>
<p>De acordo com Schlafly, Maxwell foi quem primeiro cunhou o termo &ldquo;relatividade&rdquo; e criou a primeira verdadeira teoria da relatividade de massa e energia. O Eletromagnetismo gerou as mais importantes equações na história da ciência.</p>
<p>O subsequente trabalho de Poincaré em relatividade providenciou os teoremas que eram &ldquo;matematicamente idênticos aos de Einstein&rdquo; e a maioria do seu trabalho veio antes de Einstein. Lorentz e Poincaré tinham todos os principais aspectos da teoria da relatividade, e publicaram antes de Einstein.</p>
<p><a href="https://en.wikipedia.org/wiki/Relativity_priority_dispute"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/628/poincare.jpg" alt="Poincare"  loading="lazy" /></a></p>
<p>Lembrem de outro detalhe da &ldquo;história oficial&rdquo;. Einstein trabalhava num <strong>escritório de patentes</strong>. Ele entendia sobre a importância da &ldquo;propriedade intelectual&rdquo; e teve acesso a muitos trabalhos antes de terem sido patenteados!</p>
<p>E assim nasce um talento, insubstituível e de valor inestimável &hellip; para o mercado de entretenimento de massas.</p>
<p>Atenham-se a outro detalhe: e se Einstein não tivesse existido? Teríamos sido privados da Teoria da Relatividade? Não, esse trabalho já estava praticamente completo antes dele. Outros teriam servido ao papel e a mídia e o folclore teriam apenas um nome diferente para chamar de Deus.</p>
<blockquote>
  <p>Talento, é relativo &hellip;</p>

</blockquote>
<h3>Todo gênio é, na verdade, um grupo!<span class="hx:absolute hx:-mt-20" id="todo-gênio-é-na-verdade-um-grupo"></span>
    <a href="#todo-g%c3%aanio-%c3%a9-na-verdade-um-grupo" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Um fato importante é que a Teoria da Relatividade não foi uma invenção de uma pessoa. Um lobo solitário que teve um momento de &ldquo;Eureka&rdquo;. Momentos de Eureka são muito diferentes do que você imagina.</p>
<p>Entenda que hoje, Teoria da Relatividade é material básico de qualquer estudante de física. Nada notável.</p>
<p>Tudo que temos hoje é o resultado de centenas de indivíduos e grupos, que ao longo da história vieram usando o que se sabia antes, jogando fora o que não funciona mais, refinando o que funciona e adicionando novas peças para as gerações seguintes.</p>
<p>Nada do que fazemos hoje é verdadeiramente feito &ldquo;do zero&rdquo;. Tudo que temos à nossa disposição na atualidade, nos torna ordens de grandeza superiores, mais eficientes, mais rápidos, do que a geração que viveu 200 anos atrás, milênios atrás.</p>
<p>Não criamos nada baseados em verdades absolutas escritas em pedra milênios atrás. Evolução existe porque tudo é volátil. Tudo que vem se provando correto dado escrutínio de anos, séculos, se torna as ferramentas mais fortes para criar as coisas novas. Engenharia, Medicina, etc.</p>
<p>Graças a isso saímos da era da subsistência para a agricultura. Para a Revolução Industrial. Para a Era da Informação. E para onde estamos caminhando para a Era da Inteligência Artificial, e assim por diante.</p>
<p>&ldquo;Talento&rdquo; é uma forma de apontar momentos nessa história contínua e ininterrupta onde a sociedade como um todo vem subindo nos ombros de gigantes para dar passos mais largos ao futuro. Mas nenhum &ldquo;um&rdquo; indivíduo foi necessariamente pivotal. As conquistas seriam realizadas por alguém, mas de tempos em tempos, elegemos alguns indivíduos.</p>
<p>É mais fácil contar a história dessa forma. Só isso. Inovação é sempre um trabalho de grupo.</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/LHYt2QeS8FM"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<h3>Serendipidade, Aleatoriedade e Sistemas Complexos<span class="hx:absolute hx:-mt-20" id="serendipidade-aleatoriedade-e-sistemas-complexos"></span>
    <a href="#serendipidade-aleatoriedade-e-sistemas-complexos" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Infelizmente nós, seres humanos, somos péssimos em entender aleatoriedade. O mundo é altamente aleatório.</p>
<p>Mais do que Einstein, o cientista que publicou o trabalho mais significativo para a humanidade foi Charles Darwin e seu magnum-opus <a href="https://www.theguardian.com/books/2015/nov/10/on-the-origin-of-species-voted-most-influential-academic-book-charles-darwin"target="_blank" rel="noopener">&ldquo;On the Origin of Species&rdquo;</a> onde ele explica como complexidade emerge num mundo de eventos aleatórios através de seleção natural.</p>
<p><a href="https://www.theguardian.com/books/2015/nov/10/on-the-origin-of-species-voted-most-influential-academic-book-charles-darwin"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/635/big_darwin.jpg" alt="Darwin"  loading="lazy" /></a></p>
<p>Eu escrevi em parte sobre isso no post <a href="http://www.akitaonrails.com/2013/06/21/processos-metodologias-e-o-cerebro-humano"target="_blank" rel="noopener">&ldquo;Processos, Metodologias e o Cérebro Humano&rdquo;</a> de 2013 e no post <a href="http://www.akitaonrails.com/2008/03/01/off-topic-somos-matematicamente-ignorantes"target="_blank" rel="noopener">&ldquo;Somos Matematicamente Ignorantes&rdquo;</a> de 2008. Vou tentar não me repetir muito.</p>
<p>A própria história de como sobrevivemos e evoluímos neste mundo, até chegar à forma humanoide que temos hoje, é o resultado do que tivemos que enfrentar no meio ambiente natural, ou não estaríamos aqui.</p>
<p>E um fator crucial no nosso cérebro primitivo é encontrar <strong>padrões</strong>, coisas que se repetem, e fazer isso muito rápido. Se, na calada da noite, no meio de uma floresta, virmos um pequeno par de círculos brilhantes se movimentando ao nosso redor e não associarmos aquilo na hora aos olhos de um lobo à espreita para fugir o quanto antes, não estaríamos aqui.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/634/tiger_eyes.jpg" alt="Olhos de Tigre"  loading="lazy" /></p>
<p>Esse mesmo mecanismo é que nos faz ver &ldquo;rostos nas nuvens&rdquo;, &ldquo;imagens na borra de café&rdquo;, &ldquo;o rosto de cristo numa manta suja&rdquo; e assim por diante. Identificar padrões em meio à aleatoriedade nos garantiu <strong>sobrevivência</strong>, mas no mundo moderno essa capacidade do nosso cérebro nos leva a conclusões totalmente erradas de causa e efeito.</p>
<p>Esse é o motivo pelo qual eu escrevi tanto sobre &ldquo;correlação não ser a mesma coisa que causalidade&rdquo;.</p>
<blockquote>
  <p><a href="https://en.wikipedia.org/wiki/Correlation_does_not_imply_causation"target="_blank" rel="noopener">&ldquo;cum hoc ergo propter hoc&rdquo;</a></p>

</blockquote>
<p>O mundo real é &ldquo;complexo&rdquo;, no sentido matemático, que descreve a exponencialidade de resultados dada uma rede de fatores. Não existe caminho linear, passo a passo, na biografia de ninguém. Nem mesmo em gêmeos que nasceram e viveram juntos, sob o mesmo conjunto de fatores, ao menos em teoria.</p>
<p><a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2465602/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/629/lorenz.jpg" alt="Lorenz Attractor"  loading="lazy" /></a></p>
<p>&ldquo;Complexidade&rdquo; não é o que estamos acostumados a imaginar que seja, e é o que nos impede de prever o tempo mais do que além do curto prazo. É o que leva à famosa borboleta de Lorenz, os fractais de Mandelbrot, e à Teoria do Caos. E mais recentemente à Teoria Moderna de Redes (incluindo Redes Sociais) publicada por autores como <a href="https://www.amazon.com/Albert-L%C3%A1szl%C3%B3-Barab%C3%A1si/e/B001IGQIYW"target="_blank" rel="noopener">Barabási</a>, <a href="https://www.amazon.com/Steven-H.-Strogatz/e/B001KHB290"target="_blank" rel="noopener">Strogatz</a> ou <a href="https://www.amazon.com/Duncan-J.-Watts/e/B001ILHHR4"target="_blank" rel="noopener">Duncan</a>.</p>
<p>Quem me conhece sabe que faz uma década que sou fascinado por esse tema e já recomendei todos os livros desses autores. Foi inclusive o tema da minha primeira palestra pública em 2008, <a href="http://web.archive.org/web/20170623100119/http://www.akitaonrails.com/2008/09/13/off-topic-matando-a-m-dia"target="_blank" rel="noopener">&ldquo;Matando a Média&rdquo;</a>.</p>
<p>Além das tais 10 mil horas de treino deliberado obsessivo em direção à melhoria contínua, você ainda precisa estar exposto ao máximo de situações e pessoas possíveis para aumentar suas probabilidades de <strong>&ldquo;serendipidade&rdquo;</strong> que é a combinação do <em>&ldquo;estar no lugar certo, na hora certa e com a capacidade para agarrar a oportunidade&rdquo;</em>.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/630/serendipity.jpg" alt="Serendípede"  loading="lazy" /></p>
<p>Isto é o que pode levar ao tal &ldquo;sucesso&rdquo;. Não há receita simples, apenas trabalho árduo e uma boa dose de aleatoriedade. Quando todos esses fatores se alinham, os resultados podem realmente <em>parecer</em> &ldquo;milagrosos&rdquo; ou &ldquo;super-humanos&rdquo;. E, dada uma boa quantidade de tempo e a mania humana de aumentar as histórias a cada vez que são repetidas, em poucos anos criamos novos Semi-Deuses.</p>
<h3>Matando Deuses<span class="hx:absolute hx:-mt-20" id="matando-deuses"></span>
    <a href="#matando-deuses" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Em toda mitologia existem muitos deuses. Tanto manifestações populares sobre crenças ao redor dos fatos &ldquo;inexplicáveis&rdquo; da natureza (na época) como tempestades, vulcões, as estações, o clima.</p>
<p>E também existem os semi-deuses, seres humanos que demonstraram algum tipo de superioridade ou feitos ditos &ldquo;milagrosos&rdquo; (na época) que nenhum outro humano jamais conseguiria atingir, com uma boa dose de criatividade ao contar a história.</p>
<p>Ambos os casos são explicáveis. Infelizmente a explicação lógica é bem menos dramática e não dá uma história tão boa assim, na maior parte das vezes. Curar doenças e avançar a humanidade não é tão &ldquo;sexy&rdquo; quanto um feito dito &ldquo;milagroso&rdquo;.</p>
<p>Porém nosso estilo de comunicação em massa na sociedade, jornais, revistas, televisão, filmes, redes sociais, adoram &ldquo;história sexy&rdquo;. Notícias negativas vendem. Sexy vende. Fatos lógicos não geram audiência. E, pior, alçam falsos mitos ao status de &ldquo;verdade&rdquo;.</p>
<p><a href="http://fortune.com/2015/07/23/humans-are-underrated/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/632/big_Colvin-Quotes-to-Insert5..jpeg" alt="Geoff Colvin"  loading="lazy" /></a></p>
<blockquote>
  <p>&ldquo;Diga uma mentira vezes suficiente e ela se torna verdade.&rdquo; - Joseph Goebbels</p>

</blockquote>
<p>Só porque você mesmo não sabe a explicação de alguma coisa, não se sustenta o argumento de que <em>&ldquo;portanto existe a possibilidade de algo místico&rdquo;</em>. Se eu não posso explicar que seu Deus não existe, tampouco você pode provar que ele existe. É uma argumentação falaciosa e não tem lugar numa discussão séria.</p>
<p>E isso sendo bonzinho, porque quem conta a história é quem carrega o <strong>ônus da prova</strong>. Não sou eu, que escuto, o obrigado a lhe desprovar.</p>
<p>Os últimos 200 anos foram fantásticos, porque viemos matando deuses em taxas nunca antes registradas na história da humanidade. É o reflexo de quanto avançamos em nosso conhecimento sobre a natureza e como ela funciona. Faltam poucos, não precisamos ficar criando mais.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/631/big_american_gods.jpg" alt="American Gods"  loading="lazy" /></p>
<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>As circunstâncias de por que certos indivíduos são alçados ao status de semi-deuses não têm uma resposta fácil. Muito menos uma sequência linear de eventos. Muito menos um filme de entretenimento, com altas doses de ficção e drama, que clama ser &ldquo;baseado em fatos reais&rdquo;.</p>
<p>Todos nós vivemos num mundo complexo, onde tudo se entrelaça numa rede infinita de possibilidades. Cada indivíduo tem circunstâncias muito diferentes.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/633/protein_network.gif" alt="Complex System"  loading="lazy" /></p>
<p>Muitos não têm condição nenhuma e mesmo assim superam as expectativas, com determinação superior, com dedicação superior, com paciência superior, e alguns realmente chegam ao sucesso.</p>
<blockquote>
  <p>Talento &ldquo;natural&rdquo;?</p>

</blockquote>
<p>Muitos têm as condições, mas não têm dedicação, não têm paciência, não têm determinação. E fracassam. Quantas histórias de herdeiros de grandes fortunas destroem o legado de seus antepassados?</p>
<blockquote>
  <p>Falta de Talento?</p>

</blockquote>
<p>Todo mundo tem chances. Mas não adianta esperar, o melhor a se fazer é criar as capacidades o quanto antes para, se a aleatoriedade chegar e você estiver no lugar certo na hora certa, tenha as condições de agarrar a oportunidade e surfar nela.</p>
<p>Mas não há respostas simples, nem receitas, nem milagres, e nem talentos naturalmente nascidos com a genialidade pronta e, portanto, ideais inalcançáveis.</p>
<p>Agora, se você tem as condições e não recebe o sucesso no colo, não é o &ldquo;azar&rdquo; de ter nascido sem o gene do talento. É pura <strong>preguiça</strong>. Simples assim.</p>
<blockquote>
  <p>Não tenha ídolos. Tenha referências.</p>

</blockquote>
]]></content:encoded><category>psicologia</category><category>aprendizado</category><category>off-topic</category></item><item><title>Palestras em Conferências, Entrevistas e a Caneta</title><link>https://akitaonrails.github.io/2017/06/01/palestras-em-conferencias-entrevistas-e-a-caneta/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/06/01/palestras-em-conferencias-entrevistas-e-a-caneta/</guid><pubDate>Thu, 01 Jun 2017 13:24:00 -0300</pubDate><description>&lt;p&gt;&amp;ldquo;Me venda essa caneta!&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/621/sell_me_this_pen.jpg" alt="Sell me this Pen" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;Essa é uma pergunta clássica e capciosa usada em entrevistas. E se você assistiu ao magnífico &amp;ldquo;O Lobo de Wall Street&amp;rdquo; do Scorsese, vai se lembrar dessa frase na hora.&lt;/p&gt;
&lt;p&gt;Mas quantos de vocês pararam pra pensar de verdade no que essa pergunta implica?&lt;/p&gt;
&lt;h3&gt;Introdução&lt;span class="hx:absolute hx:-mt-20" id="introdução"&gt;&lt;/span&gt;
&lt;a href="#introdu%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Existem inúmeras formas de tentar me vender uma caneta. Você pode falar sobre a tradição da marca fabricante. Pode exaltar a suavidade excepcional com que ela escreve. Pode tentar me convencer pela variedade de cores e tamanhos disponíveis. Pode até desviar o foco da caneta em si e começar a se gabar de quantas centenas de canetas já vendeu, o seu currículo de guerra.&lt;/p&gt;</description><content:encoded><![CDATA[<p>&ldquo;Me venda essa caneta!&rdquo;</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/621/sell_me_this_pen.jpg" alt="Sell me this Pen"  loading="lazy" /></p>
<p>Essa é uma pergunta clássica e capciosa usada em entrevistas. E se você assistiu ao magnífico &ldquo;O Lobo de Wall Street&rdquo; do Scorsese, vai se lembrar dessa frase na hora.</p>
<p>Mas quantos de vocês pararam pra pensar de verdade no que essa pergunta implica?</p>
<h3>Introdução<span class="hx:absolute hx:-mt-20" id="introdução"></span>
    <a href="#introdu%c3%a7%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Existem inúmeras formas de tentar me vender uma caneta. Você pode falar sobre a tradição da marca fabricante. Pode exaltar a suavidade excepcional com que ela escreve. Pode tentar me convencer pela variedade de cores e tamanhos disponíveis. Pode até desviar o foco da caneta em si e começar a se gabar de quantas centenas de canetas já vendeu, o seu currículo de guerra.</p>
<p>Meu argumento é que você pode fazer tudo isso e ainda assim perder o ponto. E na maioria das vezes não vai vender a caneta.</p>
<p>Já vi isso acontecer muitas vezes. A maioria das palestras técnicas que assisti, por exemplo, segue esse roteiro:</p>
<ol>
<li>Quem é o <del>vendedor</del> palestrante. Realizações. Currículo de guerra.</li>
<li>O que está sendo vendido. A Caneta.</li>
<li>Como a Caneta é boa ou como é fácil de usar.</li>
<li>&ldquo;Compre.&rdquo; Fim da história.</li>
</ol>
<p>Não há nada de errado com esses pontos em si. Às vezes o palestrante vai além e faz coisas &ldquo;chamativas&rdquo; e &ldquo;espetaculosas&rdquo;. Uma sessão de live coding para demonstrar o quanto ele é bom (não a caneta). Uma demo técnica mostrando o que a caneta faz. Fogos de artifício e rojões. Mas tudo isso se dissipa rapidamente, e ninguém fala sobre aquilo depois. Não <strong>gruda</strong>.</p>
<blockquote>
  <p>E você <strong>não</strong> vende a caneta.</p>

</blockquote>
<p>Às vezes a força bruta sozinha, o peso da marca por trás de você, é suficiente para persuadir muita gente. Mas não a maioria. Em vez de vender a caneta, o palestrante vende a big brand, Microsoft, Google, Facebook. Era <a href="https://en.wikipedia.org/wiki/Fear,_uncertainty_and_doubt"target="_blank" rel="noopener">&ldquo;ninguém foi demitido por comprar IBM&rdquo;</a> nos anos 60. O famoso F.U.D. (a trifeta de &ldquo;Medo, Incerteza, Dúvida&rdquo;). Hoje é &ldquo;ninguém, geralmente, é demitido por escolher Facebook ou Google&rdquo;.</p>
<p>De novo, você não está vendendo a caneta.</p>
<h3>Desenvolvimento<span class="hx:absolute hx:-mt-20" id="desenvolvimento"></span>
    <a href="#desenvolvimento" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Como qualquer bom vendedor vai te dizer, você está perdendo o ponto mais importante da sequência acima, entre os itens 3 e 4. Você desperdiçou uma quantidade absurda de tempo descrevendo o &ldquo;O Quê&rdquo;. A maioria dos palestrantes técnicos passa um tempo enorme explicando o &ldquo;Como&rdquo;, com exemplos de código, live coding, tentando te convencer de como aquilo pode ser fácil.</p>
<p>Mas eles frequentemente esquecem de fazer a pergunta: &ldquo;POR QUE essa caneta pode ser importante pra VOCÊ&rdquo;. O &ldquo;VOCÊ&rdquo; sendo a audiência. Você não está conectando. Falta empatia. Você está apenas <em>dizendo</em> pra eles, em vez de <em>persuadir</em>. Dizer e persuadir são coisas completamente diferentes.</p>
<p>O POR QUE é o que mais importa. E a parte difícil com audiências grandes é que cada pessoa tem um &ldquo;POR QUE&rdquo; diferente que precisa de uma boa resposta.</p>
<p>Sempre que vejo um palestrante/escritor/evangelista dedicando tempo demais a coisas imateriais como &ldquo;benchmarks&rdquo;, &ldquo;performance&rdquo;, &ldquo;arquiteturas hiper-modulares&rdquo;, vejo alguém perdendo uma fatia enorme da audiência. Essas pessoas têm motivos legítimos para se preocupar com esses pontos, porque vivenciaram isso dentro de Unicórnios como Netflix, Facebook ou Twitter. Só que mais de 95% do público nunca vai ter esses problemas.</p>
<p>Portanto, você está tentando empurrar uma Lamborghini pra pessoas que não só não podem pagar por ela, mas que, mesmo que pudessem, ela não estaria nem perto do topo das prioridades. Sim, a Lamborghini é obviamente um carro rápido e bonito. Mas POR QUE eu preciso dela? POR QUE você está tentando me empurrar isso? POR QUE essa caneta sequer é relevante pra mim?</p>
<blockquote>
  <p>Sua prioridade não é a minha prioridade!</p>

</blockquote>
<p>Vejo uma entrevista como uma palestra para uma audiência de uma pessoa. E vejo um post de blog como uma palestra para uma audiência que não consigo ver. A estrutura é exatamente a mesma.</p>
<p>Mas numa entrevista individual temos uma vantagem extra muito importante: você pode fazer perguntas diretas! Você percebe o quanto isso é valioso? Numa palestra com audiência você precisa fazer suposições sobre o que as pessoas querem ouvir. Numa entrevista você pode perguntar diretamente e dar respostas objetivas, eliminando o espaço das suposições.</p>
<p>A ironia é que a maioria das pessoas não faz perguntas em entrevistas. É muito mais fácil assumir: &ldquo;todo mundo quer ouvir o que eu gosto de ouvir, porque eu entendo mais do assunto&rdquo;. Isso é a falta de empatia no seu nível máximo.</p>
<p>Imagine que você é um engenheiro top trabalhando com tecnologia sensível a performance na sua startup unicórnio. Você tentou tudo e decidiu escrever componentes críticos de tempo real próximos ao metal, em C. E agora você dá palestras sobre como é fundamental que todo mundo comece tudo em C.</p>
<p>Comunicação é uma arte. Exige pesquisa, estudo, prática. Você precisa dominar muito bem sua língua nativa, a gramática, as muitas construções de frase que melhor transmitem a mensagem.</p>
<p>Existem vários &ldquo;padrões de design&rdquo; quando se trata de <a href="https://en.wikipedia.org/wiki/Argumentation_theory"target="_blank" rel="noopener">Teoria da Argumentação</a>, muitas <a href="https://en.wikipedia.org/wiki/List_of_fallacies"target="_blank" rel="noopener">armadilhas bem conhecidas</a>, falácias que você quer evitar. Tudo isso para criar uma linha de raciocínio sólida como rocha, simples de entender e difícil de refutar.</p>
<p>Você não quer ser facilmente derrubado. Então cada frase que você entrega é como um movimento de xadrez: você precisa antecipar 10 formas diferentes de ser refutado e ter respostas para cada uma.</p>
<p>Por isso você precisa praticar. Escreva, fale o máximo possível, independente do evento. O ponto é a oportunidade de se expor a um público com pouco risco, independente do tamanho da audiência ou do seu ego. Só enfrente uma audiência grande quando estiver confiante de que pode defender seus argumentos.</p>
<p>Calibre suas armas antes de usá-las. Quando você começa a tocar nos <strong>POR QUÊs</strong>, pode estar provocando feridas abertas na audiência, então é melhor estar preparado.</p>
<p>Mas se você não for atrás dos POR QUÊs, é muito pior: você se torna <strong>ESQUECÍVEL</strong>. Você recebe aplausos no final, e uma hora depois ninguém lembra seu nome. Qual é o propósito de um palestrante que ninguém lembra depois? Ou de um palestrante que é engraçado e as pessoas lembram das piadas, mas não lembram o conteúdo da palestra?</p>
<p>As pessoas simpatizam com o palestrante, mas a mensagem é irrelevante. Se você quer ser ator ou comediante, ótimo. Mas se você quer convencer pessoas de um ponto de vista, isso é <strong>fracasso</strong>.</p>
<p>O mesmo vale para a escrita. Você deveria ter aprendido isso na escola. Se você passou pela faculdade e teve que defender uma dissertação, DEVERIA SABER que ela PRECISA ser dividida em pelo menos 3 seções: Introdução, Desenvolvimento e Argumentação, e Conclusão. Essas são as partes do O QUÊ, COMO e POR QUÊ.</p>
<p>No mesmo tema, se você tem afinidade com técnicas Ágeis. Você se lembra da clássica <a href="https://www.mountaingoatsoftware.com/agile/user-stories"target="_blank" rel="noopener">estrutura de User Story</a>? A maioria das pessoas acha isso super irritante. Toda ferramenta no estilo Kanban esquece disso: simplesmente te dizem &ldquo;escreva aqui o que você quer&rdquo;. E a maioria das pessoas só quer escrever o O QUÊ. Às vezes escrevem o COMO. Mas têm preguiça de pensar no POR QUÊ.</p>
<blockquote>
  <p>Como X, eu quero Y, para que Z.</p>

</blockquote>
<p>A 3ª seção é elusiva, mas é a ÚNICA seção que importa. É o POR QUÊ. Por que VOCÊ quer AQUELA funcionalidade específica? O POR QUÊ é o critério de aceitação. O Critério de Conclusão. A única coisa que você deveria estar buscando. Escrevemos o que ACHAMOS que queremos, não o que realmente PRECISA ser feito. A estrutura de User Story é mais uma ferramenta para forçar o seu cérebro reptiliano a usar um pouco mais da sua matéria cinzenta mais moderna.</p>
<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Meu objetivo é chamar atenção para um ponto que muitos palestrantes e blogueiros não estão fazendo: vocês estão se concentrando demais no O QUÊ e no COMO e deixando de explorar a verdadeira preocupação da audiência: o <strong>POR QUÊ</strong>!</p>
<p>De novo, sempre que você ver aquele tema barato de &ldquo;minha linguagem é melhor que a sua&rdquo; e o argumento é: &ldquo;porque nos benchmarks podemos ver claramente que é 50% mais rápida&rdquo; ou &ldquo;podemos ver claramente que usa 50% menos memória&rdquo; ou &ldquo;podemos ver claramente que consegue rodar mais processos concorrentes ao mesmo tempo&rdquo;. Todos esses pontos estão perdendo o alvo.</p>
<p>Isso é o COMO. Tudo bem.</p>
<p>Mas 95% da sua audiência raramente vai se identificar com esses pontos. Eles vão concordar num nível consciente, mas o subconsciente vai lhes dizer <strong>a verdade</strong>: <em>&ldquo;você não tem esse problema.&rdquo;</em> Na maioria das vezes os servidores deles estão ociosos, sem fazer nada. De que adianta um ganho de performance de 50% ou 200% pra eles? Não adianta nada.</p>
<p>É uma falta grave de empatia quando um programador, trabalhando numa empresa grande, com muitos times diferentes colidindo com monólitos enormes e código legado, decide que microsserviços é o caminho. E agora ele &ldquo;sabe&rdquo; que se é bom pra ele, deve ser bom pra todo mundo, certo? Portanto, qualquer um fazendo diferente é um idiota.</p>
<p>Não é. A maioria dos outros times no mundo pode ser de 3 a 5 pessoas com projetos que ainda nem chegaram à luz do dia. E aí está: tentando implementar sua super-arquitetura mirabolante, sem obter nenhum valor de volta, porque isso atrasa o tempo de lançamento no mercado.</p>
<p>Ah, a concorrência os alcançou, lançou primeiro, eles perderam o timing, e tudo porque confiaram na sua opinião de visão estreita, na sua falta de empatia com sua audiência. E isso no caso em que eles te ouviram. A maioria já esqueceu o que você disse, porque nunca tocou nas preocupações reais deles de qualquer forma.</p>
<p>E eu também sou culpado, faço isso às vezes. No começo da minha carreira fazia mais, e quanto mais velho fico, mais cuidadoso me torno com a forma como construo o que quero dizer. É muito difícil enxergar além das nossas pequenas rotinas. É difícil se comunicar com uma audiência maior e diversa. Mas se esse é o papel que escolhemos perseguir, precisamos fazer melhor.</p>
<p>Espero que isso tenha dado a vocês alguma perspectiva sobre como estruturar seu pitch em palestras pequenas ou grandes, entrevistas individuais ou posts de blog. É tudo a mesma coisa: O QUÊ, COMO, e por último mas não menos importante, o POR QUÊ!</p>
]]></content:encoded><category>comunicacao</category><category>blog</category><category>off-topic</category></item><item><title>[Off-Topic] Carpe Diem e os Mitos da Felicidade</title><link>https://akitaonrails.github.io/2017/02/14/off-topic-carpe-diem-e-os-mitos-da-felicidade/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/02/14/off-topic-carpe-diem-e-os-mitos-da-felicidade/</guid><pubDate>Tue, 14 Feb 2017 15:44:00 -0200</pubDate><description>&lt;p&gt;&lt;img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/618/img_109445809d36e63818.jpg" alt="Don Draper" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Mas o que é felicidade? É um momento antes de você precisar de mais felicidade.&amp;rdquo; - Don Draper&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Um dos grandes mitos da sociedade moderna, perpetuado por uma torturante repetição diária nas redes sociais, é o falso &amp;ldquo;objetivo&amp;rdquo; da &amp;ldquo;busca pela felicidade&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;A esse mito se soma o &lt;a href="https://www.huffpost.com/entry/the-myth-of-motivation_b_8261560"target="_blank" rel="noopener"&gt;mito da &amp;ldquo;motivação&amp;rdquo;&lt;/a&gt;. TL;DR: motivação é superestimada, muito mais do que realmente merece.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;As pessoas podem ter dois tipos de mentalidade, diz ela. Aqueles com &amp;lsquo;mentalidade fixa&amp;rsquo; acreditam que seus talentos e habilidades estão cravados em pedra. Aqueles com &amp;lsquo;mentalidade de crescimento&amp;rsquo; acreditam que seus talentos e habilidades podem ser desenvolvidos. Mentalidades fixas enxergam cada situação como um teste de seu merecimento. Mentalidades de crescimento enxergam as mesmas situações como oportunidades de melhorar.&amp;rdquo; - Daniel H. Pink, &lt;a href="https://www.goodreads.com/work/quotes/6643001"target="_blank" rel="noopener"&gt;Drive: The Surprising Truth About What Motivates Us&lt;/a&gt;&lt;/p&gt;</description><content:encoded><![CDATA[<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/618/img_109445809d36e63818.jpg" alt="Don Draper"  loading="lazy" /></p>
<blockquote>
  <p>&ldquo;Mas o que é felicidade? É um momento antes de você precisar de mais felicidade.&rdquo; - Don Draper</p>

</blockquote>
<p>Um dos grandes mitos da sociedade moderna, perpetuado por uma torturante repetição diária nas redes sociais, é o falso &ldquo;objetivo&rdquo; da &ldquo;busca pela felicidade&rdquo;.</p>
<p>A esse mito se soma o <a href="https://www.huffpost.com/entry/the-myth-of-motivation_b_8261560"target="_blank" rel="noopener">mito da &ldquo;motivação&rdquo;</a>. TL;DR: motivação é superestimada, muito mais do que realmente merece.</p>
<blockquote>
  <p>&ldquo;As pessoas podem ter dois tipos de mentalidade, diz ela. Aqueles com &lsquo;mentalidade fixa&rsquo; acreditam que seus talentos e habilidades estão cravados em pedra. Aqueles com &lsquo;mentalidade de crescimento&rsquo; acreditam que seus talentos e habilidades podem ser desenvolvidos. Mentalidades fixas enxergam cada situação como um teste de seu merecimento. Mentalidades de crescimento enxergam as mesmas situações como oportunidades de melhorar.&rdquo; - Daniel H. Pink, <a href="https://www.goodreads.com/work/quotes/6643001"target="_blank" rel="noopener">Drive: The Surprising Truth About What Motivates Us</a></p>

</blockquote>
<p>Junto vem o mantra repetido do &ldquo;faça o que ama&rdquo;. Como <a href="http://www.akitaonrails.com/2014/09/13/off-topic-nao-faca-o-que-voce-acha-que-ama"target="_blank" rel="noopener">discorri em 2014</a>, essa ideia é uma forma mesquinha de desvalorizar o trabalho dos outros.</p>
<blockquote>
  <p>&ldquo;&hellip;, o grande problema da narrativa do “ame o que você faz” é que ela está vinculada a um discurso de felicidade que é “estar no topo da montanha russa o tempo inteiro”. Como se uma vida normal, cotidiana, rotineira não pudesse ser uma vida de satisfação. Tudo isso torna esse cenário preocupante.&rdquo; - Bárbara Castro - <a href="http://web.archive.org/web/20140326092650/http://exame.abril.com.br/carreira/noticias/5-razoes-pelas-quais-o-faca-o-que-ama-nao-e-uma-solucao"target="_blank" rel="noopener">&ldquo;5 Razões pelas quais o &lsquo;faça o que você ama&rsquo; não é a solução&rdquo;</a></p>

</blockquote>
<p>No nosso pequeno grande mundo de tecnologia, isso leva muita gente a concluir: &ldquo;vou trabalhar numa startup ou abrir a minha própria&rdquo;. A decisão em si não tem nada de errado. O problema é chegar nela movido pelos mitos anteriores, o que vira uma fonte enorme de frustração desnecessária, como <a href="http://www.akitaonrails.com/2013/10/31/traducao-carta-para-um-jovem-programador-considerando-uma-startup"target="_blank" rel="noopener">já expliquei em 2013</a>.</p>
<blockquote>
  <p>&ldquo;Não vou me equivocar: eu sou profundamente cético com esse sistema. Sou cético quanto à escravidão desse sistema, fetichização autocongratulatória de &ldquo;disrupção&rdquo; e ao mesmo tempo se tornando tão obviamente o tipo de instituição impassível que quer substituir. Sou cético quanto à visão de curto-prazo da comunidade de startup. E sou particularmente cético pelo seu desprezo quanto às vidas das pessoas que participam e a vida daqueles que vivem no mundo que as startups procuram reformular. Não vamos nem começar a discutir o conluio, cartelização e outras atividades de corrupção de mercado que são tão comuns no mundo dos VCs. O ponto sendo: é um jogo ruim, e um jogo de fraude.&rdquo; - Alex Payne</p>

</blockquote>
<p>Some a isso o &ldquo;consenso&rdquo; das redes sociais de que o mundo não para de piorar. Tudo hoje seria pior. As pessoas, piores. Os trabalhos, piores. O meio ambiente, destruído. Tudo ofende todo mundo o tempo todo, e ninguém consegue parar de julgar os outros.</p>
<p>Eu discordo, como <a href="http://www.akitaonrails.com/2013/01/02/off-topic-o-mundo-hoje-e-muito-bom-feliz-2013"target="_blank" rel="noopener">já expliquei também em 2013</a> e repito todo ano: o mundo está melhor, em melhoria constante, e o futuro será ainda melhor. Aproveito para homenagear um dos homens que ajudaram a mudar minha perspectiva sobre o mundo, o recém-falecido Dr. Hans Rosling.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/619/quote-i-have-a-neighbor-who-knows-200-types-of-wine-i-only-know-two-types-of-wine-red-and-hans-rosling-79-96-23.jpg" alt="Hans Rosling"  loading="lazy" /></p>
<h3>A Perpetuação dos Mitos<span class="hx:absolute hx:-mt-20" id="a-perpetuação-dos-mitos"></span>
    <a href="#a-perpetua%c3%a7%c3%a3o-dos-mitos" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Não faltam livros, palestras, programas de TV, filmes e tudo mais construído ao redor da ideia de que todos &ldquo;devem&rdquo; ser felizes, o tempo todo. E que, se você não está feliz, está fazendo alguma coisa muito errada. A busca incessante pela &ldquo;felicidade ideal&rdquo; virou uma das obsessões mais insalubres e cruéis dos últimos dois séculos, ao lado do <a href="https://www.youtube.com/watch?v=f_4Q9Iv7_Ao"target="_blank" rel="noopener">consumo excessivo de açúcar</a>. Esse é outro assunto, embora açúcar e felicidade costumem andar correlacionados.</p>
<p>Existem 2 conceitos que todos precisam entender:</p>
<ol>
<li>Você provavelmente <a href="https://www.youtube.com/watch?v=ykvC3QXJb18"target="_blank" rel="noopener">não tem depressão</a>. Hoje em dia todo mundo &ldquo;está deprimido&rdquo;, claro, porque &ldquo;descobrir o que ama fazer&rdquo; dá muito trabalho e traz muito &ldquo;sofrimento&rdquo;&hellip;</li>
</ol>
<p>Não, você só está <strong>entediado</strong>, momentaneamente.</p>
<p>Dizer &ldquo;estou com depressão&rdquo; em vez de &ldquo;estou entediado&rdquo; ficou tão comum que a condição clínica de verdade precisou de outro nome para se diferenciar, o <a href="http://web.archive.org/web/20170213181854/http://www.mayoclinic.org/diseases-conditions/depression/basics/symptoms/CON-20032977"target="_blank" rel="noopener">&ldquo;Major Depressive Disorder&rdquo;</a>. Essa é uma condição médica séria demais para ser tratada com tanta falta de consideração.</p>
<ol start="2">
<li>Normalmente, mesmo depois de passar por eventos que consideramos muito ruins, ou muito bons, tendemos a voltar ao mesmo nível de &ldquo;felicidade&rdquo; (ou de tédio) em que estávamos antes deles. Isso se chama <a href="https://en.wikipedia.org/wiki/Hedonic_treadmill"target="_blank" rel="noopener">&ldquo;Adaptação Hedônica&rdquo;</a>. É a principal razão de a &ldquo;busca pela felicidade&rdquo; ser uma jornada tão cruel: quem não entende esse mecanismo vive frustrado o tempo inteiro.</li>
</ol>
<blockquote>
  <p>&ldquo;Quando o suficiente não é o suficiente, nasce um <a href="https://en.wikipedia.org/wiki/Hedonism"target="_blank" rel="noopener">hedonista</a>.&rdquo; - Sukant Ratnakar</p>

</blockquote>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/620/hypocrisy.jpg" alt="Hypocrisy"  loading="lazy" /></p>
<blockquote>
  <p>Você já pensou em &ldquo;Eu finalmente serei feliz quando me casar.&rdquo; Ou &ldquo;se eu conseguir esse trabalho, vou me sentir totalmente satisfeito.&rdquo; Ou talvez você se relacione mais com o outro lado da moeda &ldquo;Eu nunca vou ser feliz agora que recebi esse diagnóstico médico.&rdquo; Ou &ldquo;Eu não posso ser feliz enquanto tiver que pagar essas dívidas.&rdquo; Pesquisas psicológicas revelaram duas descobertas importantes quando se fala nessas crenças: As coisas que achamos que nos tornarão felizes nunca nos tornam felizes pelo tempo que imaginamos. Ao mesmo tempo, eventos negativos na vida e desafios não têm um impacto duradouro na nossa felicidade como acreditamos que teriam também. - Sonja Lyubomirsky, Ph.D - <a href="https://www.amazon.com/gp/product/014312451X/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=014312451X&amp;linkCode=as2&amp;tag=happify05-20&amp;linkId=IYACCQJL6HM3CW3N"target="_blank" rel="noopener">The Myths of Happiness</a></p>

</blockquote>
<blockquote>
  <p>&ldquo;Nós parecemos obcecados por motivação, nos incitando rumo a algo além da vida disponível a nós agora, e tratamos essa motivação como se fosse uma parte importante da história da sabedoria, o que ela não é.&rdquo; - Jennifer Hecht - <a href="https://www.amazon.com/Happiness-Myth-Historical-Antidote-Working/dp/0060859504"target="_blank" rel="noopener">The Happiness Myth: The Historical Antidote to What Isn&rsquo;t Working Today</a></p>

</blockquote>
<p>Por causa da Adaptação Hedônica, qualquer mudança parece fornecer uma &ldquo;motivação&rdquo; nova, a sensação de que &ldquo;finalmente engatamos no caminho certo&rdquo;. A menos que ela traga um propósito novo, é só mais do mesmo. Logo nos acostumamos ao &ldquo;novo normal&rdquo; e voltamos ao tédio.</p>
<p>Sem entender isso, você fica preso no ciclo interminável e insatisfatório da &ldquo;grama do vizinho é sempre mais verde&rdquo;. O efeito mais perverso desses mitos aparece quando a pessoa passa a culpar os outros pelos próprios problemas. &ldquo;Eu não consigo porque meu marido&hellip;&rdquo;, &ldquo;Eu não consigo porque minha família&hellip;&rdquo;, &ldquo;Eu não consigo porque meus colegas de trabalho&hellip;&rdquo;, &ldquo;Eu não consigo porque meu chefe&hellip;&rdquo;, &ldquo;Eu não consigo porque a sociedade&hellip;&rdquo;</p>
<p>Nesse momento você está perdido. Quer mudanças, mas quer que tudo ao seu redor mude, menos você mesmo. Essa é a melhor definição de covardia: viver de justificativas e desculpas superficiais para não se esforçar, para evitar a dor, para maximizar o prazer de curto prazo. É o comportamento de um viciado, e julgar tudo e todos é a droga.</p>
<p>Só você está destinado a coisas grandes, mas alguma coisa ou alguém te impede. Só você é especial. Só você merece tratamento diferenciado. Antigamente chamaríamos isso, educadamente, de &ldquo;imaturidade&rdquo; ou &ldquo;criancice&rdquo;. Hoje eu diria que a maioria se encaixa mesmo em <a href="https://en.wikipedia.org/wiki/Narcissistic_personality_disorder"target="_blank" rel="noopener">&ldquo;Transtorno de Personalidade Narcisista&rdquo;</a>.</p>
<blockquote>
  <p>&ldquo;Transtorno de personalidade narcisista é um transtorno mental em que as pessoas têm uma sensação inflada de sua própria importância, uma profunda necessidade de admiração e uma falta de empatia. Mas por trás dessa máscara de ultraconfiança está uma frágil auto-estima que é vulnerável à menor crítica &hellip; (isso) causa problemas em muitas áreas da vida, tais como relações, trabalho, escola ou assuntos financeiros. Você pode ser infeliz no geral e frustrado quando não lhe é concedido favores especiais ou admiração que você acredita que merece. Outros podem não gostar de estar perto de você, e você pode achar que seus relacionamentos não te satisfazem.&rdquo; - <a href="http://web.archive.org/web/20170208015158/http://www.mayoclinic.org/diseases-conditions/narcissistic-personality-disorder/basics/definition/CON-20025568"target="_blank" rel="noopener">Mayo Clinic</a></p>

</blockquote>
<p>No mundo moderno, eu reduziria isso à &ldquo;Cultura do Like&rdquo;. Triste.</p>
<h3>Conclusão<span class="hx:absolute hx:-mt-20" id="conclusão"></span>
    <a href="#conclus%c3%a3o" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Essa busca incessante pela &ldquo;felicidade ideal&rdquo;, esse &ldquo;fazer somente o que você ama&rdquo; e essa certeza de que &ldquo;o mundo vai acabar&rdquo; tornam as pessoas muito fracas. Baixa autoestima, baixa empatia, narcisismo altíssimo e uma sensação de &ldquo;depressão&rdquo; que chega a paralisar. No fim, a pessoa só atira para todos os lados, por falta de &ldquo;propósito&rdquo; e por frustração constante com tudo e com todos.</p>
<p>Felizmente, eu nunca tive esse problema. Conheci pessoas que têm, e este artigo é dedicado a elas, como um &ldquo;wake up call&rdquo;. Isso não quer dizer que eu não tenha tido momentos infelizes e crises pessoais. Já perdi muita coisa, financeira e pessoalmente. Negócios, amigos, relacionamentos. Não estou exagerando. Mas aceito meus prejuízos e pago por eles, como parte da vida: No Pain, No Gain.</p>
<p>Ambiente de trabalho &ldquo;fancy&rdquo; nunca foi preocupação. Já trabalhei embaixo de uma lona (!) quando pintaram o pequeno escritório onde eu era estagiário, no verão, sem ar-condicionado, porque iam dar uma festa e o trabalho não podia parar. Já trabalhei dentro de um armazém de logística, com teto de zinco, só com ventilador, caminhões entrando e saindo ao lado.</p>
<p>Dormi no chão do escritório dezenas de vezes. Carreguei móveis pelo meio da rua para mudar de sede. Varei muitas noites não pagas. Tomei esporro na cara por coisas que nem eram minha responsabilidade (eu era estagiário). Fiz um monte de coisas fora do meu trabalho de verdade, briguei com gerentes, com &ldquo;colegas&rdquo; e com fornecedor.</p>
<p>Nunca tratei nada disso como &ldquo;fim do mundo&rdquo;. Era só o inevitável. O famoso &ldquo;aceita, que dói menos&rdquo;.</p>
<p>Não é à toa que sou um <strong>Engenheiro</strong>. Engenheiro resolve problema, e a nossa obsessão é sempre encontrar um jeito mais eficiente de fazer a mesma coisa. Nenhum engenheiro resolveu nada só com mimimi.</p>
<p>Também não existe &ldquo;trabalho que me desvaloriza&rdquo;. Se eu precisar recortar um Photoshop, não vou tratar isso como trabalho braçal inútil. Não existe trabalho inútil. Existe má vontade. Toda tarefa corriqueira e subestimada, feita com a cabeça, pode levar a <a href="http://www.popularmechanics.com/science/health/g1216/10-awesome-accidental-discoveries/"target="_blank" rel="noopener">grandes descobertas acidentais</a>.</p>
<blockquote>
  <p>&ldquo;O inventor da Coca-Cola não era um homem de negócios astuto, um vendedor de doces, nem um sonhador buscando enriquecer no ramo de bebidas. John Pemberton só queria curar dores de cabeça. Farmacêutico de profissão, Pemberton usou dois ingredientes principais em sua esperada cura para dor de cabeça: folhas de coca e nozes de cola. Quando seu assistente de laboratório acidentalmente misturou os dois com água carbonada, o resultado foi a primeira Coca-Cola do mundo.&rdquo; - <a href="http://www.popularmechanics.com/science/health/g1216/10-awesome-accidental-discoveries/"target="_blank" rel="noopener">10 Awesome Accidental Discoveries</a></p>

</blockquote>
<p>Muitos desses narcisistas, na aura de autoimportância, acham que precisam do ambiente perfeito, que alguém lhes <strong>dê</strong> as condições para realizar coisas grandiosas (a ênfase no &ldquo;dê&rdquo; é porque eles se recusam a conquistar sozinhos o que precisam). Isso é uma grande besteira. Ainda estou para ver alguém que pensa assim realizar qualquer coisa relevante para alguém.</p>
<p>Na minha experiência, todas as grandes descobertas nasceram em condições humildes, com pessoas que tinham interesse real no que faziam. Apenas isso. Profissionais, &ldquo;craftsmen&rdquo;, interessados em aperfeiçoar o próprio conhecimento e que, por consequência, chegaram a coisas grandes que beneficiaram mais gente. Você não planeja algo revolucionário. Ele acontece por acidente, dadas as condições ideais de temperatura e pressão daquele momento.</p>
<blockquote>
  <p>&ldquo;A questão não é quem vai me permitir: é quem acha que pode me impedir.&rdquo; - by Akita.</p>

</blockquote>
<p>Eu <strong>não</strong> sou programador com o intuito de um dia superar Bill Gates ou Linus Torvalds. Dá para fazer coisa boa sem ser cegamente arrogante. 30 anos depois, ainda me divirto com coisas triviais: um código novo que compila, uma configuração que otimiza minha GPU, montar um Raspberry Pi, testar uma linguagem nova, ajustar meu editor de textos, pesquisar, aprender, evoluir, e assim vai. &ldquo;Fazer o que ama&rdquo; é fazer bem essas coisas pequenas. E &ldquo;ser feliz&rdquo; é um processo de tentativa e erro, sempre em movimento, que se conquista aos poucos em vez de num destino final.</p>
<p>Quem aproveita o <strong>presente</strong>, o que existe ao redor e ao alcance neste momento, em vez de perder tempo com o &ldquo;e se no futuro&hellip;&rdquo;, é quem tem mais chance de fazer o que os outros não conseguem, cegos pela jornada da felicidade impossível. <a href="http://www.akitaonrails.com/2013/04/01/off-topic-restricoes-sao-libertadoras-menos-e-mais"target="_blank" rel="noopener">Restrições levam à Inovação</a>, como venho repetindo faz anos.</p>
<blockquote>
  <p>&ldquo;carpe diem, quam minimum credula postero&rdquo; - <a href="http://www.phrases.org.uk/meanings/carpe-diem.html"target="_blank" rel="noopener">&ldquo;Faça o melhor possível com o tempo (limitado) que você tem&rdquo;</a>.</p>

</blockquote>
<blockquote>
  <p>&ldquo;Quem vive de passado é museu. E quem sofre com o futuro longínquo é um doente mental.&rdquo; - Desconhecido.</p>

</blockquote>
<p>Coincidentemente, enquanto estava pesquisando para escrever este post, saiu o podcast do <a href="http://hipsters.tech/carreira-em-tecnologia-hipsters-31"target="_blank" rel="noopener">Hipsters Ponto Tech</a> onde fiz uma pequena participação justamente para falar sobre o assunto de Carreiras em tecnologia.</p>
<p>E releiam meus antigos posts mencionados acima, relacionado a estes assuntos:</p>
<ul>
<li><a href="http://www.akitaonrails.com/2013/01/02/off-topic-o-mundo-hoje-e-muito-bom-feliz-2013"target="_blank" rel="noopener">O Mundo Hoje é Muito Bom! Feliz 2013!</a></li>
<li><a href="http://www.akitaonrails.com/2013/10/31/traducao-carta-para-um-jovem-programador-considerando-uma-startup"target="_blank" rel="noopener">Carta para um Jovem Programador Considerando uma Startup</a></li>
<li><a href="http://www.akitaonrails.com/2013/04/01/off-topic-restricoes-sao-libertadoras-menos-e-mais"target="_blank" rel="noopener">Restrições são libertadoras: menos é mais</a></li>
<li><a href="http://www.akitaonrails.com/2014/09/13/off-topic-nao-faca-o-que-voce-acha-que-ama"target="_blank" rel="noopener">NÃO Faça o que Você (&ldquo;ACHA&rdquo;) que Ama</a></li>
</ul>
<p>TL;DR: Aprenda a aprender, e aproveite melhor sua vida.</p>
<div class="video-container">
    <video controls>
        <source src="https://s3.us-east-2.amazonaws.com/blip.tv/Akitaonrails-FracassosFamosos790.mp4" type="video/mp4">
        Your browser does not support the video tag. [Direct Link](https://s3.us-east-2.amazonaws.com/blip.tv/Akitaonrails-FracassosFamosos790.mp4)
    </video>
</div>
]]></content:encoded><category>psicologia</category><category>pessoal</category><category>filosofia</category><category>off-topic</category></item><item><title>Off-Topic: Por que Estamos Todos Migrando para Longe da Apple?</title><link>https://akitaonrails.github.io/2017/01/12/off-topic-por-que-estamos-todos-migrando-para-longe-da-apple/</link><guid isPermaLink="true">https://akitaonrails.github.io/2017/01/12/off-topic-por-que-estamos-todos-migrando-para-longe-da-apple/</guid><pubDate>Thu, 12 Jan 2017 11:37:00 -0200</pubDate><description>&lt;p&gt;&amp;ldquo;Todo mundo que é alguém acompanhou a Apple nas últimas décadas. Ame ou odeie, a única coisa que você não pode fazer é ignorá-la.&amp;rdquo; - esse sempre foi o consenso geral.&lt;/p&gt;
&lt;p&gt;Os profissionais &amp;ldquo;criativos&amp;rdquo; (como se &amp;ldquo;criativo&amp;rdquo; fosse restrito a pintores e ilustradores) sempre foram os seguidores mais fiéis da Apple, e com razão. A plataforma foi o berço de ferramentas essenciais como Photoshop, QuarkXPress, PostScript, PDF e QuickTime. A Apple estabeleceu os padrões da criação de mídia, e qualquer um que era alguém usava essas ferramentas.&lt;/p&gt;</description><content:encoded><![CDATA[<p>&ldquo;Todo mundo que é alguém acompanhou a Apple nas últimas décadas. Ame ou odeie, a única coisa que você não pode fazer é ignorá-la.&rdquo; - esse sempre foi o consenso geral.</p>
<p>Os profissionais &ldquo;criativos&rdquo; (como se &ldquo;criativo&rdquo; fosse restrito a pintores e ilustradores) sempre foram os seguidores mais fiéis da Apple, e com razão. A plataforma foi o berço de ferramentas essenciais como Photoshop, QuarkXPress, PostScript, PDF e QuickTime. A Apple estabeleceu os padrões da criação de mídia, e qualquer um que era alguém usava essas ferramentas.</p>
<p>A Microsoft focava no mercado corporativo, não nos criativos. O Linux ainda engatinhava, e a maioria dos desenvolvedores nem sabia a diferença entre CMYK e RGB. Ficavam satisfeitos em ter um bitmap tosco na tela.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/587/918d80cb21131a7a62e6ccaf71229960.jpg" alt="Old Macintosh"  loading="lazy" /></p>
<p>Tenho uma teoria: achamos que dominávamos a tecnologia no final dos anos 90, que estávamos no topo do mundo. Essa euforia era fruto da Bolha da Internet, que estourou junto com o 11 de setembro. A depressão que se seguiu desperdiçou os próximos 3 a 4 anos enquanto todo mundo tentava descobrir o que fazer a seguir.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/588/1dot.jpg" alt="Dotcom burst"  loading="lazy" /></p>
<p>A Apple teve a sorte de escapar da explosão. Ela já estava no fundo do poço desde 1997. A reorganização do portfólio de hardware e o lançamento do iPod criaram uma bolhinha própria. Steve Jobs havia voltado e trouxe bons desenvolvedores que fizeram do OS X um prazer de usar, não só para criativos, mas também para desenvolvedores.</p>
<p>O processo antitruste contra a Microsoft em 2000, o estouro da Bolha da Internet em 2001, o lançamento do iPod em 2001, a transição do System 9 para o OS X/BSD em 1999, a troca do PowerPC para Intel em 2005, o lançamento do desejadíssimo Titanium PowerBook G4 em 2001. Tudo isso junto deu à Apple uma vantagem enorme. E enquanto todo mundo estava em baixa, a Apple parecia maior do que realmente era.</p>
<p><a href="http://www.economist.com/node/2535519"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/589/Microsoft.gif" alt="Microsoft Antitrust"  loading="lazy" /></a></p>
<p>Aí vieram 2007 e 2008 com um novo impulso: o iPhone, a App Store e a necessidade de usar o Xcode, disponível apenas em computadores Apple. Diferente de ficar preso ao Windows por causa do Visual Studio, usar o Xcode era um motivo a mais para comprar um Mac.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/590/SteveJobsUnveilsiPhone.jpg" alt="iPhone announcement"  loading="lazy" /></p>
<p>As distros Linux ainda sofriam. Até então, estávamos presos ao <a href="https://www.youtube.com/watch?v=RIctzAQOe44"target="_blank" rel="noopener">maldito X11</a>. Se o núcleo de um sistema Linux era moderno, o X11 em cima era o pior dos mundos. A Apple foi esperta o suficiente para não adotá-lo e criou o Quartz do zero, melhorando-o a cada nova versão do OS X. Levou cinco anos para estabilizar direito. Só agora, em 2017, estamos finalmente saindo do X para o Wayland/Weston.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/591/steve-ballmer.jpg" alt="Steve Ballmer"  loading="lazy" /></p>
<p>A Microsoft também sofreu depois que Bill Gates passou as rédeas para Steve Ballmer. A trajetória do XP até o Windows 10 passou pelos desastres do Vista, do Windows 8 e do Windows Mobile, além das inúmeras tentativas de ressuscitar o Internet Explorer, o maior Walking Dead da história da tecnologia. A era Ballmer foi um desastre.</p>
<p>Aí veio o iPad. E Steve Jobs morreu.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/592/hi-steve-jobs-memorial-0139.jpg" alt="Jobs Dies"  loading="lazy" /></p>
<h3>A Apple está presa em 2010.<span class="hx:absolute hx:-mt-20" id="a-apple-está-presa-em-2010"></span>
    <a href="#a-apple-est%c3%a1-presa-em-2010" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>E nós também.</p>
<p>As grandes distros Linux, a Microsoft, os fabricantes de hardware para PC, as viradas de grandes empresas (Nokia, Blackberry, Motorola), o começo da era das GPUs, o fim das guerras de clock da Lei de Moore em direção à computação paralela, a ascensão do ARM. Levou dez anos para a poeira baixar, e foi preciso a Apple ficar parada por seis anos para que todos os outros conseguissem alcançá-la.</p>
<p>Ballmer passou o bastão para Satya Nadella. A Microsoft adquiriu a Xamarin, deu passos enormes em direção ao open source e até o <a href="http://www.akitaonrails.com/2016/07/26/o-ano-do-linux-no-desktop-esta-usavel"target="_blank" rel="noopener">Ubuntu passou a rodar nativamente no Windows 10</a>.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/593/THE_END_TIMES_ARE_HERE-399de53540c79757ac9af535579cdad9.jpg" alt="Satya Nadella"  loading="lazy" /></p>
<p>E os asiáticos. Samsung, LG, Huawei, sul-coreanos e chineses forçaram os norte-americanos a se mexerem mais.</p>
<p>Um último legado da era Steve Jobs foi matar o Adobe Flash (finalmente!) e impulsionar as tecnologias HTML 5, comprimindo dez anos de evolução em cinco. Foi por causa do iPhone que a Web é o que é hoje.</p>
<p><a href="https://web.archive.org/web/20170114150212/http://www.apple.com/hotnews/thoughts-on-flash/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/594/flash-dead.jpg" alt="HTML 5 kills Flash"  loading="lazy" /></a></p>
<p>O Google entrou em campo e assumiu o espaço deixado pelo Internet Explorer. O WebKit se tornou a referência obrigatória de navegadores. O JavaScript se transformou na nova plataforma de aplicações, impulsionado pelas redes sociais em constante evolução.</p>
<p>Para o bem ou para o mal, as redes sociais forçaram o surgimento de uma nova geração de aplicações web complexas e interativas. O Gmail e a Web 2.0 serviram de exemplo, e com o novo ambiente mobile, tudo convergiu para aplicações multiplataforma e ubíquas.</p>
<p>Hoje é mais fácil do que nunca trocar de sistema operacional no desktop, porque já treinamos o hábito de pular entre desktop e dispositivos móveis.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/599/alldevices.jpg" alt="All devices"  loading="lazy" /></p>
<p>Por que ficou fácil migrar entre macOS, Windows ou distros Linux? Ou entre macOS e iOS, ou entre Linux e Android? Porque a maior parte do software está &ldquo;na nuvem&rdquo;. O Linux domina o mundo da nuvem que a Amazon estreou em 2006 com S3 e EC2, seguida de perto pelo Google Cloud, Microsoft Azure e outros competidores menores.</p>
<p>Porque em qualquer plataforma existe pelo menos um bom Chrome.</p>
<p>Porque os apps que usamos são majoritariamente web: Gmail, Spotify, Slack, Hangout, Twitter, Facebook, YouTube, Netflix, Amazon. E a outra metade está disponível nativamente no iOS ou Android: WhatsApp, Waze, Swarm, Snapchat, Instagram.</p>
<p>Dez anos atrás, com o lançamento do iPhone, a indústria de tecnologia finalmente começou a se organizar.</p>
<p>Foi um jogo de gato e rato até uns cinco anos atrás, quando as coisas começaram a se estabilizar.</p>
<p>Depois que Jobs morreu, ainda tínhamos a expectativa de que a Apple continuaria avançando, ainda que num ritmo mais lento sem o chicote do Jobs.</p>
<p>Não aconteceu. Foram decisão ruim atrás de decisão ruim, e a sensação é de que voltamos ao início dos anos 90, na era de Scully, Spindler ou Amelio.</p>
<p><a href="https://web.archive.org/web/20170116083256/http://uk.businessinsider.com/wired-1997-save-apple-predictions-pray-2015-5"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/595/wired_cover.jpg" alt="Apple, Prey"  loading="lazy" /></a></p>
<p>Mas agora existem alternativas sólidas disponíveis: o Windows 10 Anniversary Edition é finalmente um Windows competente, recuperando a glória dos meados dos anos 90. E as grandes distros Linux são coesas, exigindo pouco ou nenhum ajuste nerd em arquivos de configuração obscuros, empurradas pela Canonical, para o bem ou para o mal.</p>
<p>E a maioria dos apps que usamos no dia a dia está disponível. Dá até para encontrar um bom editor de texto multiplataforma baseado na web na forma do Atom.</p>
<p>A Apple também deixou o legado da compilação multiplataforma ubíqua na forma do <a href="https://www.infoq.com/br/presentations/novas-linguagens-o-que-vem-depois-do-ruby"target="_blank" rel="noopener">LLVM</a>. Serviu às próprias necessidades deles de ter Objective-C disponível em PowerPC, Intel, ARM e nos processadores Apple Ax. Mas o LLVM é agora a melhor espinha dorsal para permitir que linguagens como Rust, RubyMotion e Crystal existam e criem binários rápidos em múltiplas plataformas.</p>
<p><a href="https://www.tesla.com/blog/welcome-chris-lattner"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/596/11-1484116910-chris-lattner-01.jpg" alt="Chris Lattner leaves Apple to Tesla"  loading="lazy" /></a></p>
<p>&ldquo;O conselho da Apple precisa ir embora.&rdquo; &ldquo;Tim Cook precisa renunciar.&rdquo; Tenho certeza que muita gente grita isso por aí, mas não tem Steve Jobs esperando para voltar. A Apple é grande o suficiente para que a inércia sozinha a mantenha andando por mais alguns anos, mas ela corre o risco real de cair na irrelevância.</p>
<p>Outras indústrias como energia, saúde e genética evoluem do jeito delas, mas a tecnologia da computação está num perigoso marasmo.</p>
<p>As linguagens de programação pararam de evoluir em meados dos anos 90. Todas as linguagens &ldquo;novas&rdquo; são amálgamas de recursos que já existiam desde os anos 70 e 80. Os processadores estão presos em fazer transistores menores e mais eficientes em termos de energia. E já chegamos lá: <a href="https://www.kickstarter.com/projects/1598272670/chip-the-worlds-first-9-computer"target="_blank" rel="noopener">computadores de US$ 9</a> são suficientes para tarefas triviais como navegar na web. A ponto de estarmos colocando processadores em tudo: inclusive numa escova de dentes bluetooth que registra suas sessões de escovação.</p>
<p><a href="https://www.dezeen.com/2017/01/06/ara-first-toothbrush-artifical-intelligence-kolibree-ces/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/597/smart-video-toothbrush-ces.jpg" alt="Bluetooth Toothbrush"  loading="lazy" /></a></p>
<p>Viu os produtos da CES 2017? Travesseiros e camas que monitoram seu sono e sincronizam com um app. Máquinas de lavar. Aspiradores de pó. Dispositivos fitness. Dispositivos de saúde. Assistentes pessoais como a Alexa. Tudo captura dados seus e sincroniza na nuvem.</p>
<p>A nuvem também chegou ao pico. É ubíqua, acessível e barata. A tecnologia em geral está absurdamente barata hoje em dia.</p>
<p>Wearables e VR são boas novidades, mas mesmo que se tornem ubíquos, continuam sendo apenas uma extensão dos casos de uso que a revolução do iPhone iniciou.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/600/3017180-inline-mg5205.jpg" alt="Baby monitor"  loading="lazy" /></p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/601/iswimband-drowning-prevention-510px.jpg" alt="iSwimband"  loading="lazy" /></p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/602/6e752109eac4d37830078517b2aefd583d52722a.jpg" alt="mobile"  loading="lazy" /></p>
<p>Mobile, wearables, redes sociais, só deixaram as pessoas mais ansiosas. Dar &ldquo;voz&rdquo; a todo mundo online não melhorou as coisas, só aumentou a ansiedade geral. Opiniões estão em oferta tão grande que valem cada vez menos.</p>
<p>Cada pessoa online é agora uma fonte de terabytes de informação inútil para gerar pseudo-estatísticas que não servem para quase nada. <a href="http://www.techrepublic.com/article/the-dark-side-of-wearables-how-theyre-secretly-jeopardizing-your-security-and-privacy/"target="_blank" rel="noopener">Cada pessoa é agora definida por um monte de dados na nuvem</a>.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/603/donald-trump-twitter-president.jpg" alt="Trump"  loading="lazy" /></p>
<p>Não faço ideia para onde vamos daqui. Como testemunha da história, tenho que dizer que sinto falta da empolgação de explorar novas fronteiras. Tivemos isso a partir dos meados dos anos 90. Demos uma pausa depois do estouro da Bolha da Internet, mas recuperamos com tudo em 2004. Perdemos depois de 2010.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/598/20150824-bill-gates-microsoft-windows-95-launch.0.jpg" alt="Windows 95 launch"  loading="lazy" /></p>
<p>2010 foi o ano mais longo que já vivi. Talvez estabilizar seja uma coisa boa. Quem sabe?</p>
]]></content:encoded><category>apple</category><category>mercado-de-tecnologia</category><category>pessoal</category><category>off-topic</category></item></channel></rss>