<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4523400251697386687</id><updated>2026-06-25T10:36:48.846-03:00</updated><category term="Humor"/><category term="Linux"/><category term="Zimbra"/><category term="Ferramentas"/><category term="Python"/><category term="Virtualização"/><category term="Apache"/><category term="BOFH"/><category term="DD-Wrt"/><category term="DevOps"/><category term="Google"/><category term="Kubertenes"/><title type='text'>Felicio.COM.BR</title><subtitle type='html'>Um site pessoal, com o objetivo de armazenar o conhecimento por mim adquirido para fácil acesso. Isso inclui material proprio ou retirado da Internet, que vão de: Novidades, Artigos, Tutoriais, Ferramentas, Livros e como ninguem é de ferro, um pouco de Humor Geek!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.felicio.com.br/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-6797640906080403731</id><published>2026-06-24T20:24:28.740-03:00</published><updated>2026-06-25T10:36:48.846-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="DevOps"/><category scheme="http://www.blogger.com/atom/ns#" term="Kubertenes"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Kubernetes não está morrendo, está ficando chato (no bom sentido)</title><content type='html'>&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Esses dias vários colegas me mandaram o mesmo link, com aquela cara de &quot;tá vendo? eu avisei&quot;. Um artigo no Medium com um título de parar o trânsito: &lt;a href=&quot;https://medium.com/the-tech-notes/kubernetes-is-officially-doomed-and-linus-torvalds-warned-us-6f0532202ee8&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;&quot;Kubernetes is Officially Doomed (And Linus Torvalds Warned Us)&quot;&lt;/em&gt;&lt;/a&gt;. A tese? Kubernetes está condenado, e o próprio &lt;a href=&quot;https://en.wikipedia.org/wiki/Linus_Torvalds&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Linus Torvalds&lt;/a&gt; já teria nos avisado lá atrás.&lt;/p&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Confesso que achei o negócio um &lt;strong&gt;absurdo&lt;/strong&gt;. Não pela crítica em si — Kubernetes &lt;em&gt;é&lt;/em&gt; complexo, isso ninguém honesto nega — mas pela construção sensacionalista, colocando palavras na boca do Torvalds sobre uma tecnologia que sequer existia quando ele disse o que disse. Aliás, o gênero é tão batido que já tem &lt;a href=&quot;https://medium.com/@ntiinsd/kubernetes-is-officially-doomed-and-linus-torvalds-warned-us-years-ago-b1ef172011cd&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;mais de um artigo com exatamente o mesmo título&lt;/a&gt;. Como administro cluster Kubernetes no dia a dia (vanilla e &lt;a href=&quot;https://www.redhat.com/en/technologies/cloud-computing/openshift&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;OpenShift&lt;/a&gt;), resolvi parar de só revirar os olhos e fazer a coisa direito: levantar dados reais, ouvir os vários lados e fazer um &lt;strong&gt;fact-check de verdade&lt;/strong&gt;.&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Pra isso usei o &lt;a href=&quot;https://www.anthropic.com/claude&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Claude&lt;/strong&gt;&lt;/a&gt; (Anthropic) num modo de pesquisa aprofundada, puxando fontes primárias — &lt;a href=&quot;https://www.cncf.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;CNCF&lt;/a&gt;, The Register, The New Stack, Red Hat e companhia. O que veio abaixo é o resultado. Spoiler: a realidade é bem mais interessante (e menos dramática) que a manchete.&lt;/p&gt;

&lt;div style=&quot;background-color: #f4f4f4; border-left: 4px solid rgb(136, 136, 136); color: #555555; font-size: 0.95em; margin: 25px 0px; padding: 12px 18px;&quot;&gt;
&lt;strong&gt;Aviso de honestidade:&lt;/strong&gt; o levantamento abaixo foi feito com auxílio de IA e revisado por mim. As fontes estão linkadas ao longo do texto pra você conferir cada número na fonte. Não tenho lado de torcida aqui — só não gosto de clickbait travestido de profecia. 😏
&lt;/div&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;TL;DR pra quem tem pressa&lt;/h2&gt;&lt;div&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-size: 16.8px;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhko8G-mch7Kby2oJYsB32dJzncWCxztq_Jx2WO8Yae9u4WwJtpKUSZTUBp2A0z041ymtTCoEdu7abg9akzZTDVTyRDSmolqJ2IPiaiLH0rouHHQRQiUB9WIph5oph6iPwZADuy0vFJrJKuuXe1HYluMgq4QZ3odZMRIvCoY_7Z1Z8pi-Ffk7imfk1-Sjas/s2400/og3_meme.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1260&quot; data-original-width=&quot;2400&quot; height=&quot;336&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhko8G-mch7Kby2oJYsB32dJzncWCxztq_Jx2WO8Yae9u4WwJtpKUSZTUBp2A0z041ymtTCoEdu7abg9akzZTDVTyRDSmolqJ2IPiaiLH0rouHHQRQiUB9WIph5oph6iPwZADuy0vFJrJKuuXe1HYluMgq4QZ3odZMRIvCoY_7Z1Z8pi-Ffk7imfk1-Sjas/w640-h336/og3_meme.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;ul style=&quot;color: #333333; font-size: 1.05em; line-height: 1.7;&quot;&gt;&lt;li&gt;&lt;strong&gt;&quot;Kubernetes está condenado&quot; é clickbait, não fato.&lt;/strong&gt; A &lt;a href=&quot;https://www.cncf.io/reports/cncf-annual-survey-2024/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;pesquisa anual da CNCF&lt;/a&gt; mostra uso em produção subindo de 66% (2023) para &lt;a href=&quot;https://www.prnewswire.com/news-releases/kubernetes-established-as-the-de-facto-operating-system-for-ai-as-production-use-hits-82-in-2025-cncf-annual-cloud-native-survey-302663249.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;82% (2025)&lt;/a&gt;, com 98% de adoção de tecnologias cloud-native.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&quot;Torvalds nos avisou sobre Kubernetes&quot; é uma fabricação retroativa.&lt;/strong&gt; Não existe registro dele citando Kubernetes. As falas usadas são sobre microkernels (&lt;a href=&quot;https://en.wikipedia.org/wiki/Tanenbaum%E2%80%93Torvalds_debate&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;debate de 1992 com Tanenbaum&lt;/a&gt;) e um &lt;a href=&quot;https://www.theregister.com/2015/08/19/linuxcon_torvalds_qa/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;comentário genérico sobre &quot;buzzwords&quot; em 2015&lt;/a&gt; — ambos descontextualizados.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;O que existe de real&lt;/strong&gt; é uma crítica legítima à complexidade operacional e um movimento &lt;em&gt;seletivo&lt;/em&gt; (não em massa) de &lt;a href=&quot;https://www.hbs.net/blog/cloud-repatriation-trends-cost-ai-and-the-push-towards-hybrid&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;repatriação de nuvem&lt;/a&gt; e de &quot;volta ao monólito&quot;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A leitura honesta:&lt;/strong&gt; Kubernetes virou padrão de fato e está ficando &quot;invisível&quot; (escondido atrás de plataformas gerenciadas e &lt;a href=&quot;https://platformengineering.org/blog/what-is-platform-engineering&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Platform Engineering&lt;/a&gt;). Pra muita empresa pequena, é overkill mesmo. Mas isso é maturação, não morte.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;O que o Torvalds REALMENTE disse&lt;/h2&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Essa é a parte que mais me incomodou, porque é fácil de checar e o artigo simplesmente... não checou. O mecanismo retórico é sempre o mesmo: pega a vitória histórica do &lt;a href=&quot;https://pt.wikipedia.org/wiki/N%C3%BAcleo_monol%C3%ADtico&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;kernel monolítico&lt;/a&gt; do Linux e transforma numa suposta cruzada do Torvalds contra microsserviços e orquestração de containers. Vamos aos fatos:&lt;/p&gt;

&lt;ul style=&quot;color: #333333; font-size: 1.05em; line-height: 1.7;&quot;&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Tanenbaum%E2%80%93Torvalds_debate&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Debate Tanenbaum–Torvalds (1992)&lt;/a&gt;:&lt;/strong&gt; Torvalds defendeu o kernel monolítico do Linux contra a tese de &lt;a href=&quot;https://en.wikipedia.org/wiki/Andrew_S._Tanenbaum&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Andrew Tanenbaum&lt;/a&gt; de que &lt;a href=&quot;https://en.wikipedia.org/wiki/Microkernel&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;microkernels&lt;/a&gt; eram superiores. O tema era &lt;em&gt;arquitetura de kernel de sistema operacional&lt;/em&gt; — não orquestração de containers. É daqui que tiram o tal &quot;aviso&quot;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Just_for_Fun&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&quot;Just for Fun&quot; (2001)&lt;/a&gt;:&lt;/strong&gt; a frase registrada é &quot;microkernels are just stupid&quot;. De novo: microkernel de SO, não microsserviço de aplicação.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://www.theregister.com/2015/08/19/linuxcon_torvalds_qa/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;LinuxCon Seattle (2015)&lt;/a&gt;:&lt;/strong&gt; num Q&amp;amp;A, respondendo sobre planejamento de longo prazo, ele fez um aparte sobre buzzwords: &lt;em&gt;&quot;I&#39;m sorry to everybody involved here in containers... I&#39;m so happy that the kernel tends to be fairly far removed from all of these issues, all of the buzzwords and all the new technologies.&quot;&lt;/em&gt; A manchete famosa &quot;Don&#39;t talk to me about containers&quot; é &lt;strong&gt;paráfrase do The Register&lt;/strong&gt;, não citação literal dele.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sobre &lt;a href=&quot;https://en.wikipedia.org/wiki/Cgroups&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;cgroups&lt;/a&gt;:&lt;/strong&gt; aquela crítica de &quot;caos e inconsistência&quot; nos cgroups que vira e mexe atribuem ao Torvalds? Foi do &lt;a href=&quot;https://www.spinics.net/lists/cgroups/msg16198.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Tejun Heo&lt;/strong&gt; (mantenedor dos cgroups) e dos mantenedores do scheduler&lt;/a&gt;. Não do Linus.&lt;/li&gt;
&lt;/ul&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Resumindo: o &quot;Torvalds avisou&quot; não se sustenta. Ele nunca falou de Kubernetes. Ponto.&lt;/p&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;Os números desmentem a &quot;morte&quot;&lt;/h2&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Se Kubernetes estivesse morrendo, os dados mostrariam. Mostram o contrário:&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQBaRrZDkJMaG94M6mWh_pNlioWLKRax3ELvIhOtvvMyZTXaiJDwvjhgGPXChpKlMs5MvA-UxycGBJCfiOmbRub0E2V0ATkNI0Ytic4tL5wzsZJoZ-yGNNIT7xqqqVFANePXqYdILkpYbNBChXOWWio0xenc6lyLmfu7QjSMSq7Z2E__eg5yzLvHgy5DpZ/s2400/1000217337.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1260&quot; data-original-width=&quot;2400&quot; height=&quot;336&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQBaRrZDkJMaG94M6mWh_pNlioWLKRax3ELvIhOtvvMyZTXaiJDwvjhgGPXChpKlMs5MvA-UxycGBJCfiOmbRub0E2V0ATkNI0Ytic4tL5wzsZJoZ-yGNNIT7xqqqVFANePXqYdILkpYbNBChXOWWio0xenc6lyLmfu7QjSMSq7Z2E__eg5yzLvHgy5DpZ/w640-h336/1000217337.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style=&quot;color: #333333; font-size: 1.05em; line-height: 1.7;&quot;&gt;&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://www.cncf.io/wp-content/uploads/2025/04/cncf_annual_survey24_031225a.pdf&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;CNCF Annual Survey 2024&lt;/a&gt;:&lt;/strong&gt; uso em produção saltou de 66% (2023) para 80% (2024). 93% usando, pilotando ou avaliando Kubernetes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://www.prnewswire.com/news-releases/kubernetes-established-as-the-de-facto-operating-system-for-ai-as-production-use-hits-82-in-2025-cncf-annual-cloud-native-survey-302663249.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;CNCF Annual Survey 2025&lt;/a&gt;:&lt;/strong&gt; 82% dos usuários de containers rodam Kubernetes em produção; 98% usam alguma tecnologia cloud-native.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IA + Kubernetes:&lt;/strong&gt; 66% das organizações que rodam IA generativa usam Kubernetes para inferência. A própria CNCF passou a chamar o K8s de &lt;a href=&quot;https://www.prnewswire.com/news-releases/kubernetes-established-as-the-de-facto-operating-system-for-ai-as-production-use-hits-82-in-2025-cncf-annual-cloud-native-survey-302663249.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&quot;sistema operacional de fato para IA&quot;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ecossistema:&lt;/strong&gt; &lt;a href=&quot;https://www.cncf.io/reports/kubernetes-project-journey-report/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;~5,6 milhões de desenvolvedores&lt;/a&gt; usam Kubernetes; 71% das Fortune 100 rodam K8s em produção.&lt;/li&gt;
&lt;/ul&gt;

&lt;div style=&quot;background-color: #f4f4f4; border-left: 4px solid rgb(136, 136, 136); color: #555555; font-size: 0.95em; margin: 25px 0px; padding: 12px 18px;&quot;&gt;
&lt;strong&gt;Pé no chão:&lt;/strong&gt; a CNCF é a fundação que abriga o Kubernetes — ou seja, tem conflito de interesse e a amostra é de praticantes que já vivem desse mundo. Mas os números batem com fontes independentes (&lt;a href=&quot;https://www.slashdata.co/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;SlashData&lt;/a&gt;, relatórios de mercado), então servem pelo menos como ordem de grandeza confiável.
&lt;/div&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;Onde a crítica TEM razão&lt;/h2&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Pra não cair no oposto do clickbait (o negacionismo de quem acha que K8s é a solução pra tudo), é justo reconhecer: a dor é real.&lt;/p&gt;

&lt;ul style=&quot;color: #333333; font-size: 1.05em; line-height: 1.7;&quot;&gt;
&lt;li&gt;&lt;strong&gt;&quot;YAML hell&quot;:&lt;/strong&gt; cada microsserviço pede um monte de manifestos por ambiente. Cluster com 50+ serviços vira dezenas de milhares de linhas de YAML.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Curva de aprendizado e fadiga:&lt;/strong&gt; o famoso &quot;tool sprawl&quot; — &lt;a href=&quot;https://www.terraform.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Terraform&lt;/a&gt;, &lt;a href=&quot;https://helm.sh/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Helm&lt;/a&gt;, &lt;a href=&quot;https://argo-cd.readthedocs.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Argo CD&lt;/a&gt;, &lt;a href=&quot;https://fluxcd.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Flux&lt;/a&gt;, &lt;a href=&quot;https://kustomize.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Kustomize&lt;/a&gt;, &lt;a href=&quot;https://www.crossplane.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Crossplane&lt;/a&gt;, &lt;a href=&quot;https://backstage.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Backstage&lt;/a&gt;... cada um com seu próprio jeito de quebrar.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Segurança:&lt;/strong&gt; pela &lt;a href=&quot;https://www.redhat.com/en/resources/state-kubernetes-security-report&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;pesquisa da Red Hat&lt;/a&gt;, 2/3 das organizações já atrasaram deployments por preocupações de segurança no K8s.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custo (TCO):&lt;/strong&gt; não é só compute. É time de plataforma dedicado, gente especializada e cara.&lt;/li&gt;
&lt;/ul&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;A diferença é que a indústria &lt;strong&gt;não está abandonando&lt;/strong&gt; o Kubernetes por causa disso — está &lt;em&gt;escondendo&lt;/em&gt; ele. &lt;a href=&quot;https://platformengineering.org/blog/what-is-platform-engineering&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Platform Engineering&lt;/a&gt;, Internal Developer Platforms, golden paths, plataformas gerenciadas (&lt;a href=&quot;https://aws.amazon.com/eks/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;EKS&lt;/a&gt;, &lt;a href=&quot;https://cloud.google.com/kubernetes-engine&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;GKE&lt;/a&gt;, &lt;a href=&quot;https://azure.microsoft.com/products/kubernetes-service&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;AKS&lt;/a&gt;, OpenShift). O dev moderno muitas vezes nem toca no YAML. É a tese do &quot;Kubernetes invisível&quot;.&lt;/p&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;E os casos de &quot;fuga&quot;? Repatriação e volta ao monólito&lt;/h2&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Os artigos sensacionalistas adoram dois casos. Vale entender o que de fato aconteceu:&lt;/p&gt;

&lt;ul style=&quot;color: #333333; font-size: 1.05em; line-height: 1.7;&quot;&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://37signals.com/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;37signals&lt;/a&gt; / &lt;a href=&quot;https://dhh.dk/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;DHH&lt;/a&gt;:&lt;/strong&gt; &lt;a href=&quot;https://www.theregister.com/2024/10/21/37signals_aws_savings/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;saíram da AWS e economizam ~US$ 2 milhões/ano&lt;/a&gt;. Caso real e impressionante. &lt;strong&gt;Só que:&lt;/strong&gt; eles saíram da &lt;em&gt;nuvem&lt;/em&gt;, não do Kubernetes — usam &lt;a href=&quot;https://kamal-deploy.org/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Kamal&lt;/a&gt;/Docker, nunca foram de K8s. Apples and oranges.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Amazon Prime Video (2023):&lt;/strong&gt; uma equipe &lt;a href=&quot;https://thenewstack.io/return-of-the-monolith-amazon-dumps-microservices-for-video-monitoring/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;migrou de serverless/microsserviços para um &quot;monólito&quot; e cortou 90% de custo&lt;/a&gt;. &lt;strong&gt;Só que:&lt;/strong&gt; não usavam Kubernetes, era um caso pontual de UMA equipe, e o próprio engenheiro responsável disse que a decisão é &quot;caso a caso&quot;. &lt;a href=&quot;https://www.allthingsdistributed.com/2023/05/monoliths-are-not-dinosaurs.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Werner Vogels&lt;/a&gt; e Adrian Cockcroft relativizaram a generalização.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;O quadro geral:&lt;/strong&gt; &lt;a href=&quot;https://www.hbs.net/blog/cloud-repatriation-trends-cost-ai-and-the-push-towards-hybrid&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;86% dos CIOs (Barclays, Q4/2024)&lt;/a&gt; planejam mover &lt;em&gt;algumas&lt;/em&gt; cargas de volta — mas só ~8% planejam saída total (IDC). E tem caso de gente repatriando &lt;em&gt;PARA&lt;/em&gt; Kubernetes privado (GEICO foi pra &lt;a href=&quot;https://www.openstack.org/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;OpenStack&lt;/a&gt; + K8s). É rebalanceamento pra híbrido, não êxodo.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;O ecossistema também evolui (eBPF, WASM e cia.)&lt;/h2&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Outra coisa que a manchete ignora: Kubernetes não é uma estátua. O &lt;a href=&quot;https://cilium.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Cilium&lt;/a&gt; (baseado em &lt;a href=&quot;https://ebpf.io/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;eBPF&lt;/a&gt;) está substituindo o velho kube-proxy/iptables por programas no kernel, com lookup O(1) em vez de cadeias O(n). E o &lt;a href=&quot;https://webassembly.org/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;WebAssembly (WASM)&lt;/a&gt; desponta como complemento pra cargas de edge e cold-start — mas, como o próprio &lt;a href=&quot;https://x.com/solomonstre/status/1111004913222324225&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Solomon Hykes (criador do Docker) deixou claro&lt;/a&gt;, não é substituto de container. Projetos como &lt;a href=&quot;https://www.spinkube.dev/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;SpinKube&lt;/a&gt; rodam WASM &lt;em&gt;dentro&lt;/em&gt; do próprio Kubernetes.&lt;/p&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;O padrão &quot;X está morto&quot;&lt;/h2&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;No fim, esse tipo de manchete encaixa num clássico do jornalismo de tecnologia. &lt;a href=&quot;https://www.infoworld.com/article/2171108/java-is-dead--long-live-java.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&quot;Java está morto&quot; é declarado desde os anos 90&lt;/a&gt; — e Java segue dominante, agora com &lt;a href=&quot;https://openjdk.org/projects/loom/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;virtual threads&lt;/a&gt; e &lt;a href=&quot;https://www.graalvm.org/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;GraalVM&lt;/a&gt;. Mainframe idem. O roteiro é sempre o mesmo: tecnologia nova surge com força real → entusiasmo e blogs → algumas empresas migram parte do stack → manchetes de morte → a incumbente absorve as lições e segue firme.&lt;/p&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;&quot;Kubernetes is dead&quot; é só o capítulo da vez.&lt;/p&gt;

&lt;h2 style=&quot;border-bottom: 2px solid rgb(221, 221, 221); color: #1a1a1a; margin-top: 35px; padding-bottom: 8px;&quot;&gt;Minha conclusão (de quem opera os clusters)&lt;/h2&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;Kubernetes não está morrendo. Está &lt;strong&gt;amadurecendo e ficando chato&lt;/strong&gt; — no bom sentido, igual o Linux ficou. Aquela coisa que todo mundo usa, poucos especialistas operam de verdade, e que vai sumindo de vista atrás de camadas de abstração.&lt;/p&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;A crítica à complexidade é justa e a gente que opera sente na pele. Mas a resposta certa não é deletar o cluster e voltar pro &lt;code&gt;scp&lt;/code&gt; heroico — é abstrair com inteligência, escolher a ferramenta pelo tamanho do problema (nem todo mundo precisa de K8s, e tá tudo bem) e parar de tratar manchete de Medium como profecia bíblica.&lt;/p&gt;

&lt;p style=&quot;color: #333333; font-size: 1.1em; line-height: 1.6;&quot;&gt;No frigir dos ovos: se um colega te mandar de novo aquele link dizendo &quot;tá condenado&quot;, manda esse post de volta. 😄&lt;/p&gt;

&lt;hr style=&quot;border-color: currentcolor; border-image: initial; border-style: none; border-top: 1px solid #ddd; border-width: medium; border: none; margin: 35px 0px;&quot; /&gt;

&lt;p style=&quot;color: #777777; font-size: 0.9em; font-style: italic; line-height: 1.5; margin-top: 30px;&quot;&gt;Levantamento de fontes e primeira redação com auxílio de IA (&lt;a href=&quot;https://www.anthropic.com/claude&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Claude&lt;/a&gt;/Anthropic), revisão e edição finais por André Felício. As referências estão linkadas ao longo do texto — clique e confira na fonte, que é exatamente o espírito da coisa. Dúvidas, correções ou xingamentos: caixa de comentários abaixo.&lt;/p&gt;
</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/6797640906080403731/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2026/06/kubernetes-nao-esta-morrendo-esta.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/6797640906080403731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/6797640906080403731'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2026/06/kubernetes-nao-esta-morrendo-esta.html' title='Kubernetes não está morrendo, está ficando chato (no bom sentido)'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhko8G-mch7Kby2oJYsB32dJzncWCxztq_Jx2WO8Yae9u4WwJtpKUSZTUBp2A0z041ymtTCoEdu7abg9akzZTDVTyRDSmolqJ2IPiaiLH0rouHHQRQiUB9WIph5oph6iPwZADuy0vFJrJKuuXe1HYluMgq4QZ3odZMRIvCoY_7Z1Z8pi-Ffk7imfk1-Sjas/s72-w640-h336-c/og3_meme.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-3649355470094620766</id><published>2026-06-03T21:05:22.611-03:00</published><updated>2026-06-04T15:47:31.969-03:00</updated><title type='text'>Do Teams/Meet ao Turfe: Como transformar sorteios em corridas de cavalos</title><content type='html'>&lt;p&gt;&lt;span data-path-to-node=&quot;4,0&quot; face=&quot;&amp;quot;Google Sans Text&amp;quot;, sans-serif&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Sabe aquele momento da reunião em que alguém precisa fazer um sorteio? O apresentador abre um site genérico, clica em &quot;sortear número&quot; e a sala fica em um silêncio constrangedor&lt;/span&gt;&lt;span data-path-to-node=&quot;4,1&quot; face=&quot;&amp;quot;Google Sans Text&amp;quot;, sans-serif&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;4,2&quot; face=&quot;&amp;quot;Google Sans Text&amp;quot;, sans-serif&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p data-path-to-node=&quot;4&quot; id=&quot;p-rc_211f8d6a949a0110-30&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;p data-path-to-node=&quot;5&quot; id=&quot;p-rc_211f8d6a949a0110-31&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;5,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Para mudar isso, criei o &lt;b data-index-in-node=&quot;25&quot; data-path-to-node=&quot;5,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Sorteio (Turfe)&lt;/b&gt;, uma aplicação onde o sorteio vira uma corrida de cavalos ao vivo, transformando a dinâmica em um momento de torcida coletiva&lt;/span&gt;&lt;span data-path-to-node=&quot;5,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;5,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p data-path-to-node=&quot;5&quot; id=&quot;p-rc_211f8d6a949a0110-31&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuW9GF9v7i0ricVATeqfS6_ZLAECfWtl6UrJbMeBYfS_uAWvzaGpO0JO6ksYueLIB8jJy4onjg2YH8BFzkvW3_rEDkvdvueqKL2RX1CgNVqg5GAb6e-lBJhoRYtQKnX_-iNVyqOeItJpwGuZzUNmcyZWyCaEBy5JWAq8iIPiUItzr6J6SEs8Uw22TKoPmy/s720/corrida.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;423&quot; data-original-width=&quot;720&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuW9GF9v7i0ricVATeqfS6_ZLAECfWtl6UrJbMeBYfS_uAWvzaGpO0JO6ksYueLIB8jJy4onjg2YH8BFzkvW3_rEDkvdvueqKL2RX1CgNVqg5GAb6e-lBJhoRYtQKnX_-iNVyqOeItJpwGuZzUNmcyZWyCaEBy5JWAq8iIPiUItzr6J6SEs8Uw22TKoPmy/s16000/corrida.gif&quot; title=&quot;gif acelarado da corrida&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://sorteio.felicio.com.br/&quot;&gt;https://sorteio.felicio.com.br/&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;h3 data-path-to-node=&quot;7&quot; style=&quot;font-family: &amp;quot;Google Sans&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;Como funciona?&lt;/h3&gt;&lt;p data-path-to-node=&quot;8&quot; id=&quot;p-rc_211f8d6a949a0110-32&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;8,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Você compartilha a tela na chamada, cola a lista de participantes e inicia a corrida&lt;/span&gt;&lt;span data-path-to-node=&quot;8,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;8,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;. Cada nome vira um cavalo na pista&lt;/span&gt;&lt;span data-path-to-node=&quot;8,3&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;8,4&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;  &lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;p data-path-to-node=&quot;9&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;O sistema conta com os seguintes recursos:&lt;/p&gt;&lt;ul data-path-to-node=&quot;10&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px; padding-inline-start: 32px;&quot;&gt;&lt;li style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;p data-path-to-node=&quot;10,0,0&quot; id=&quot;p-rc_211f8d6a949a0110-33&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;10,0,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;10,0,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Narração ao vivo:&lt;/b&gt; Efeitos sonoros sintetizados e locução por voz em português&lt;/span&gt;&lt;span data-path-to-node=&quot;10,0,0,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;10,0,0,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;  &lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;p data-path-to-node=&quot;10,1,0&quot; id=&quot;p-rc_211f8d6a949a0110-34&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;10,1,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;10,1,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Photo Finish:&lt;/b&gt; Em chegadas apertadas, o app congela a imagem para mostrar quem venceu por um focinho&lt;/span&gt;&lt;span data-path-to-node=&quot;10,1,0,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;10,1,0,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;  &lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;p data-path-to-node=&quot;10,2,0&quot; id=&quot;p-rc_211f8d6a949a0110-35&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;10,2,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;10,2,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Modos de jogo:&lt;/b&gt; Suporta corrida única, torneio com eliminatórias ou disputa por equipes&lt;/span&gt;&lt;span data-path-to-node=&quot;10,2,0,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;10,2,0,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;  &lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;/li&gt;&lt;li style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;p data-path-to-node=&quot;10,3,0&quot; id=&quot;p-rc_211f8d6a949a0110-36&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;10,3,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;10,3,0,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Resultado justo:&lt;/b&gt; O sorteio usa uma semente matemática reproduzível&lt;/span&gt;&lt;span data-path-to-node=&quot;10,3,0,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;10,3,0,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;. Você pode pedir um número para a plateia antes de começar para provar que não há truques&lt;/span&gt;&lt;span data-path-to-node=&quot;10,3,0,3&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;10,3,0,4&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;  &lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h3 data-path-to-node=&quot;12&quot; style=&quot;font-family: &amp;quot;Google Sans&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;Sem instalação e sem cadastro&lt;/h3&gt;&lt;p data-path-to-node=&quot;13&quot; id=&quot;p-rc_211f8d6a949a0110-37&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;13,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;O aplicativo inteiro roda a partir de um único arquivo: o &lt;code data-index-in-node=&quot;58&quot; data-path-to-node=&quot;13,0&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;index.html&lt;/code&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;13,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;13,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;. Não é preciso instalar nada, criar conta ou configurar um servidor&lt;/span&gt;&lt;span data-path-to-node=&quot;13,3&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;13,4&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;. Basta baixar o arquivo, dar um duplo clique para abrir no navegador e usar&lt;/span&gt;&lt;span data-path-to-node=&quot;13,5&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;13,6&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;. Toda a lógica roda localmente de forma leve&lt;/span&gt;&lt;span data-path-to-node=&quot;13,7&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;13,8&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;  &lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;h3 data-path-to-node=&quot;15&quot; style=&quot;font-family: &amp;quot;Google Sans&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;Código Aberto&lt;/h3&gt;&lt;p data-path-to-node=&quot;16&quot; id=&quot;p-rc_211f8d6a949a0110-38&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;16,0&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;O projeto é gratuito e o código está disponível no GitHub para quem quiser usar ou contribuir&lt;/span&gt;&lt;span data-path-to-node=&quot;16,1&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/span&gt;&lt;span data-path-to-node=&quot;16,2&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;  &lt;source-inline-chip _ngcontent-ng-c4289035224=&quot;&quot; _nghost-ng-c3374458644=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/source-inline-chip&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/sources-carousel-inline&gt;&lt;/p&gt;&lt;p data-path-to-node=&quot;17&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;👉 &lt;b data-index-in-node=&quot;3&quot; data-path-to-node=&quot;17&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;Acesse o repositório:&lt;/b&gt; &lt;response-element ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;link-block _nghost-ng-c3349080918=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;a _ngcontent-ng-c3349080918=&quot;&quot; _nghost-ng-c3270910421=&quot;&quot; class=&quot;ng-star-inserted&quot; externallink=&quot;&quot; href=&quot;https://github.com/antigerme/sorteio-turfe&quot; jslog=&quot;197247;track:generic_click,impression,attention;BardVeMetadataKey:[[&amp;quot;r_2b822707f59bc587&amp;quot;,&amp;quot;c_d7cbafacbb471a31&amp;quot;,null,&amp;quot;rc_211f8d6a949a0110&amp;quot;,null,null,&amp;quot;&amp;quot;,null,1,null,null,1,0]]&quot; rel=&quot;noopener&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot; target=&quot;_blank&quot;&gt;antigerme/sorteio-turfe&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/link-block&gt;&lt;!----&gt;&lt;/response-element&gt;&lt;/p&gt;&lt;p data-path-to-node=&quot;17&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;p data-path-to-node=&quot;17&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;response-element ng-version=&quot;0.0.0-PLACEHOLDER&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span data-path-to-node=&quot;20,0&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;20,0&quot;&gt;P.S.:&lt;/b&gt; Como um experimento de produtividade, tanto o código desta aplicação&amp;nbsp;&lt;/span&gt;&lt;span data-path-to-node=&quot;20,2&quot;&gt;quanto o texto deste post foram totalmente gerados por IA.&lt;/span&gt;&lt;sources-carousel-inline _nghost-ng-c4289035224=&quot;&quot; ng-version=&quot;0.0.0-PLACEHOLDER&quot;&gt;&lt;/sources-carousel-inline&gt;&lt;/response-element&gt;&lt;/p&gt;&lt;p data-path-to-node=&quot;18&quot; id=&quot;p-rc_211f8d6a949a0110-39&quot; style=&quot;font-family: &amp;quot;Google Sans Text&amp;quot;, sans-serif; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;span style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;source-footnote _nghost-ng-c1907096288=&quot;&quot; class=&quot;ng-star-inserted&quot; style=&quot;line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;sup _ngcontent-ng-c1907096288=&quot;&quot; class=&quot;superscript&quot; style=&quot;font-size: 16px; line-height: 1.15; margin-top: 0px;&quot;&gt;&lt;/sup&gt;&lt;/source-footnote&gt;&lt;/span&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/3649355470094620766/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2026/06/do-teamsmeet-ao-turfe-como-transformar.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3649355470094620766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3649355470094620766'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2026/06/do-teamsmeet-ao-turfe-como-transformar.html' title='Do Teams/Meet ao Turfe: Como transformar sorteios em corridas de cavalos'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuW9GF9v7i0ricVATeqfS6_ZLAECfWtl6UrJbMeBYfS_uAWvzaGpO0JO6ksYueLIB8jJy4onjg2YH8BFzkvW3_rEDkvdvueqKL2RX1CgNVqg5GAb6e-lBJhoRYtQKnX_-iNVyqOeItJpwGuZzUNmcyZWyCaEBy5JWAq8iIPiUItzr6J6SEs8Uw22TKoPmy/s72-c/corrida.gif" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-556114696710328462</id><published>2026-05-16T15:45:19.865-03:00</published><updated>2026-06-18T20:27:32.806-03:00</updated><title type='text'>João &quot;Castanha&quot;</title><content type='html'>&lt;p&gt;Alguém lembra do &lt;b&gt;Johnny Castaway&lt;/b&gt;?&lt;br data-end=&quot;141&quot; data-start=&quot;138&quot; /&gt;&lt;i&gt;
&quot;João Castanha&quot; era como algumas pessoas chamavam o nosso náufrago&lt;/i&gt; 😂&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjerlfwalFeetkYIKKKFLQP6IlGhqpZDycxrorTttMABdKIfUwoR5OEpAZMs7zd_BWUGoFhQB2upFtBhvTdunk7tuKbbjZ9va8zf2vxN8tbh3oHj7VQEYgA3LtvTklFTRVySS-McYulVqUjJiccpXAQOCGYcVwydoVNC1H28M6KXGDxBYy4cg2NEKdXWRPh&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;168&quot; data-original-width=&quot;300&quot; height=&quot;358&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjerlfwalFeetkYIKKKFLQP6IlGhqpZDycxrorTttMABdKIfUwoR5OEpAZMs7zd_BWUGoFhQB2upFtBhvTdunk7tuKbbjZ9va8zf2vxN8tbh3oHj7VQEYgA3LtvTklFTRVySS-McYulVqUjJiccpXAQOCGYcVwydoVNC1H28M6KXGDxBYy4cg2NEKdXWRPh=w640-h358&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Bateu uma saudade e acabei encontrando um port dele no GitHub:&lt;br /&gt;&lt;a href=&quot;https://github.com/jno6809/jc_reborn&quot;&gt;https://github.com/jno6809/jc_reborn&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mas acabei fazendo um port em Rush usando o acima como referência (inicial) - e&amp;nbsp;&lt;b&gt;Claude&lt;/b&gt; fez toda a RE dos originais para batimento:&lt;br /&gt;&lt;a href=&quot;https://github.com/antigerme/wilson-reborn/releases&quot;&gt;https://github.com/antigerme/wilson-reborn/releases&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://antigerme.github.io/wilson-reborn/&quot;&gt;https://antigerme.github.io/wilson-reborn/&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Se já quiserem algo pronto, criei binários para Linux e Windows - um bundle com os recursos do original já embutidos no executável - é só baixar &lt;a href=&quot;https://drive.google.com/drive/folders/1Yju3Z15OzGikfdhEHAv7eZuUhJuFerBK&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;daqui&lt;/b&gt;&lt;/a&gt;.&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Para terem um gostinho...&lt;br /&gt;&lt;a href=&quot;https://wr.felicio.com.br/&quot;&gt;https://wr.felicio.com.br/&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/556114696710328462/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2026/05/joao-castanha.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/556114696710328462'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/556114696710328462'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2026/05/joao-castanha.html' title='João &quot;Castanha&quot;'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEjerlfwalFeetkYIKKKFLQP6IlGhqpZDycxrorTttMABdKIfUwoR5OEpAZMs7zd_BWUGoFhQB2upFtBhvTdunk7tuKbbjZ9va8zf2vxN8tbh3oHj7VQEYgA3LtvTklFTRVySS-McYulVqUjJiccpXAQOCGYcVwydoVNC1H28M6KXGDxBYy4cg2NEKdXWRPh=s72-w640-h358-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-6742106206420977880</id><published>2025-09-27T15:35:00.003-03:00</published><updated>2025-09-27T15:37:46.213-03:00</updated><title type='text'>Como a tradição pode se sobrepor à razão quando não se questiona a origem das coisas</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Soldado e a tinta fresca&lt;/h3&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Em um quartel, um oficial superior manda um soldado ficar de guarda ao lado de um banquinho, que acabara de ser pintado e estava com a tinta fresca. O objetivo era simples: evitar que alguém sentasse no banco e sujasse a roupa.&lt;p&gt;&lt;/p&gt;&lt;p&gt;O oficial passa a ordem ao soldado, que a repassa ao seu substituto, e assim por diante. A ordem, como se costuma dizer, &quot;caiu no esquecimento&quot; e, com o tempo, o motivo original de proteger a tinta fresca se perdeu.&lt;/p&gt;&lt;p&gt;Décadas mais tarde, já com uma nova geração de militares, um oficial mais novo e curioso questiona um de seus superiores sobre o porquê de um soldado sempre ficar de guarda ao lado de um banco velho e desgastado no pátio. O superior, sem saber a razão, responde que aquilo é uma tradição do quartel.&lt;/p&gt;&lt;p&gt;Depois de muita investigação, o oficial descobre um antigo documento que revela o motivo original da guarda: a ordem foi dada há anos para proteger a tinta fresca de um banquinho.&amp;nbsp;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/6742106206420977880/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2025/09/como-tradicao-pode-se-sobrepor-razao.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/6742106206420977880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/6742106206420977880'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2025/09/como-tradicao-pode-se-sobrepor-razao.html' title='Como a tradição pode se sobrepor à razão quando não se questiona a origem das coisas'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-3043010275785020214</id><published>2025-06-09T16:26:00.018-03:00</published><updated>2025-07-21T13:45:34.526-03:00</updated><title type='text'>Devops mais pé no chão?</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&quot;&quot; class=&quot;BLOG_video_class&quot; height=&quot;498&quot; src=&quot;https://www.youtube.com/embed/bwO8EZf0gLI&quot; width=&quot;600&quot; youtube-src-id=&quot;bwO8EZf0gLI&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;Vão aos 45m para entenderem melhor&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://youtu.be/bwO8EZf0gLI?t=45m&quot;&gt;https://youtu.be/bwO8EZf0gLI?t=45m&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/3043010275785020214/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2025/06/bora-ser-mais-pe-no-chao.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3043010275785020214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3043010275785020214'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2025/06/bora-ser-mais-pe-no-chao.html' title='Devops mais pé no chão?'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/bwO8EZf0gLI/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-3391760284156917506</id><published>2024-09-29T15:33:00.003-03:00</published><updated>2024-09-29T15:59:39.150-03:00</updated><title type='text'>Atualizar/usar repositórios do Centos 7 após EOL</title><content type='html'>&lt;p&gt;Centos7 já encerrou mas...&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/*.repo&lt;/span&gt;&lt;/p&gt;&lt;p&gt;... tem vezes que precisamos segurar mais 2 dedinhos. 😬&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/3391760284156917506/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2024/09/atualizar-repositorios-do-centos-7-apos.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3391760284156917506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3391760284156917506'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2024/09/atualizar-repositorios-do-centos-7-apos.html' title='Atualizar/usar repositórios do Centos 7 após EOL'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-8596177175394257224</id><published>2024-01-12T14:03:00.006-03:00</published><updated>2024-02-06T14:31:56.000-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Descobrir DHCP server na rede </title><content type='html'>Como descobrir se tem um servidor DHCP na rede?&lt;br /&gt;Rápido e caceteiro (com nmap):&lt;div&gt;&lt;br /&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;nmap --script broadcast-dhcp-discover -e &amp;lt;interface de rede&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Ref.:&lt;br /&gt;https://www.redhat.com/sysadmin/troubleshoot-network-dhcp-configuration&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/8596177175394257224/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2024/01/descobrir-server-dhcp-na-rede.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/8596177175394257224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/8596177175394257224'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2024/01/descobrir-server-dhcp-na-rede.html' title='Descobrir DHCP server na rede '/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-6760269724443577576</id><published>2023-11-24T15:47:00.019-03:00</published><updated>2024-01-11T17:36:26.758-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Definir na JVM locale e timezone</title><content type='html'>&lt;p&gt;Mais uma da série rápido e caceteiro&lt;/p&gt;&lt;p&gt;Após dev reclamar que o timezone e locale tavam batendo errados na apresentação da aplicação, fui dar uma olhada.&lt;/p&gt;&lt;p&gt;Em resumo. Dev não definiu na app seu timezone/locale e ficou 100% dependente do SO. No caso era pod rodando na &quot;nuvem&quot;.&lt;br /&gt;&lt;/p&gt;&lt;span&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/span&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&quot;Resolução&quot; via infra:&lt;/p&gt;&lt;p&gt;Para chamada na hora de subir a JVM - definir atributos da jvm na execução&lt;br /&gt;&lt;br /&gt;&lt;i&gt;-Duser.language=pt -Duser.country=BR -Duser.timezone=America/Recife&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Só substitua para seu timezone&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Resolução &quot;certa&quot; via devs:&lt;/p&gt;&lt;p&gt;Agora a parte divertida é fazer a aplicação definir valores padrão&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;Locale.setDefault(new Locale(&quot;pt&quot;, &quot;BR&quot;));&amp;nbsp;&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;TimeZone.setDefault(TimeZone.getTimeZone(&quot;America/Recife&quot;)); // pre java8&lt;/i&gt;&lt;br /&gt;ou&lt;br /&gt;&lt;i&gt;ZoneId.setDefault(ZoneId.of(&quot;America/Recife&quot;)); // java8+&lt;/i&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Dúvidas? Lança aqui nos comentário do post&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Ah... após questionamentos tenho mais uma:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;-Dfile.encoding=UTF-8&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;System.setProperty(&quot;file.encoding&quot;, &quot;UTF-8&quot;);&lt;br /&gt;&lt;br /&gt;&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Pacotão para os preguiçosos:&lt;i&gt;&lt;br /&gt;-Duser.language=pt -Duser.country=BR -Duser.timezone=America/Recife -Dfile.encoding=UTF-8&lt;br /&gt;&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Se pegar uma imagem s2i java (redhat/openshift) só definir&lt;br /&gt;&lt;i&gt;JAVA_OPTS=-Duser.language=pt -Duser.country=BR -Duser.timezone=America/Recife -Dfile.encoding=UTF-8&lt;/i&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/6760269724443577576/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2023/11/definir-na-jvm-locale-e-timezone.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/6760269724443577576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/6760269724443577576'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2023/11/definir-na-jvm-locale-e-timezone.html' title='Definir na JVM locale e timezone'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-55062991230978650</id><published>2023-09-27T12:46:00.009-03:00</published><updated>2024-01-08T12:20:22.888-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Separação de variáveis por linha nos /proc/[pid]/environ</title><content type='html'>&lt;p&gt;O quão frustrante é querer ver as variáveis de ambiente de um processo e termos um caminhão de coisas sem separação por linha. Algo +/- assim:&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;# cat /proc/818/environ&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;MAIL=/var/mail/tomcatLANGUAGE=pt_BR:pt:enUSER=tomcatXDG_SESSION_TYPE=unspecifiedSHLVL=0LD_LIBRARY_PATH=/usr/local/jdk1.6.0_45/jre/lib/amd64/server:/usr/local/jdk1.6.0_45/jre/lib/amd64:/usr/local/jdk1.6.0_45/jre/../lib/amd64::/usr/local/lib/x86_64-linux-gnu:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnuHOME=/home/tomcatLOGNAME=tomcatJOURNAL_STREAM=9:24781_=/usr/local/tomcat/bin/startup.shXDG_SESSION_CLASS=backgroundXDG_SESSION_ID=c1PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binRODA_PRIORIDADE=falseJAVA_OPTS=-Dfile.encoding=UTF-8 -server -Xmx12g -XX:MaxPermSize=2g -javaagent:/usr/local/tomcat/glowroot/glowroot.jar -Dglowroot.collector.address=10.10.10.10:8181LANG=pt_BR.UTF-8SHELL=/bin/bashJAVA_HOME=/usr/local/javaPWD=/RODA_CRONOLOGICO=true&lt;/span&gt;&lt;/p&gt;&lt;span&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/span&gt;&lt;p&gt;Conforme man (man 5 proc) a separação existe e é o byte com null (\0). Agora é só transformar usando tr de \0 para \n.&lt;/p&gt;&lt;p&gt;Abaixo exemplo mesmo processo acima&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;# cat /proc/818/environ | &lt;/span&gt;&lt;b style=&quot;font-family: courier;&quot;&gt;tr &#39;\0&#39; &#39;\n&#39;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;MAIL=/var/mail/tomcat&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;LANGUAGE=pt_BR:pt:en&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;USER=tomcat&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;XDG_SESSION_TYPE=unspecified&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;SHLVL=0&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;LD_LIBRARY_PATH=/usr/local/jdk1.6.0_45/jre/lib/amd64/server:/usr/local/jdk1.6.0_45/jre/lib/amd64:/usr/local/jdk1.6.0_45/jre/../lib/amd64::/usr/local/lib/x86_64-linux-gnu:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;HOME=/home/tomcat&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;LOGNAME=tomcat&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;JOURNAL_STREAM=9:24781&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;_=/usr/local/tomcat/bin/startup.sh&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;XDG_SESSION_CLASS=background&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;XDG_SESSION_ID=c1&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;INVOCATION_ID=0b4cbc9232ed45f3a184861925814cc7&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;XDG_RUNTIME_DIR=/run/user/1005&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;RODA_PRIORIDADE=false&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;JAVA_OPTS=-Dfile.encoding=UTF-8 -server -Xmx12g -XX:MaxPermSize=2g -javaagent:/usr/local/tomcat/glowroot/glowroot.jar -Dglowroot.collector.address=10.100.7.130:8181&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;LANG=pt_BR.UTF-8&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;SHELL=/bin/bash&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;JAVA_HOME=/usr/local/java&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;PWD=/&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;RODA_CRONOLOGICO=true&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;E temos saída mais legível. ;)&lt;/p&gt;&lt;p&gt;Como em linux há diversas formas de fazer a mesma coisa. Também pode ser com xargs (&lt;span color=&quot;var(--highlight-color)&quot; style=&quot;font-family: inherit; font-size: var(--_pr-code-fs); font-style: inherit; font-variant-caps: inherit; font-variant-ligatures: inherit; font-weight: inherit; white-space: inherit;&quot;&gt;xargs -0 -L1 -a /proc/818/environ)&lt;/span&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/55062991230978650/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2023/09/separacao-de-variaveis-por-linha-nos.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/55062991230978650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/55062991230978650'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2023/09/separacao-de-variaveis-por-linha-nos.html' title='Separação de variáveis por linha nos /proc/[pid]/environ'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-4279742439530772390</id><published>2023-05-10T11:45:00.005-03:00</published><updated>2023-11-16T21:47:46.119-03:00</updated><title type='text'>O que é jitter e como ele influencia na sua conexão?</title><content type='html'>&lt;p&gt;A performance da internet e a velocidade da conexão são importantíssimas nos dias de hoje, para que os usuários possam navegar com a maior qualidade possível. Entre os principais indicadores de desempenho estão a velocidade de download, upload, ping e jitter.&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;O que é jitter?&lt;/h3&gt;&lt;p&gt;Você provavelmente já escutou por aí que a rede está “congestionada” ou “atrasada”, certo? Pois esse tipo de comentário está ligado diretamente ao jitter. Ao utilizarmos essa expressão estamos falando da variação com atraso na entrega de dados em uma rede.&lt;/p&gt;&lt;p&gt;Isso significa que que há uma interrupção na sequência normal na troca de pacotes de dados, considerando o envio e o recebimento durante a conexão. Isso ocasiona em uma flutuação, que faz com que a experiência na internet seja impactada.&lt;/p&gt;&lt;p&gt;O jitter é medido a partir dos testes de pings, considerando a largura da rede e o tempo entre a troca de dados.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Qual é a diferença entre ping e jitter?&lt;/h3&gt;&lt;p&gt;Quem não se aprofunda muito no desempenho da internet mal faz distinção entre ping e jitter, já que os números elevados de ambos mostram que a qualidade não está muito boa. No entanto, eles não são sinônimos.&lt;/p&gt;&lt;p&gt;Como falado anteriormente, o jitter é a variação constante nos testes de Ping. Já o Ping é a latência da rede. Ou seja, quanto tempo um pacote de dados demora para ir do seu computador até o servidor e voltar.&lt;/p&gt;&lt;p&gt;Qualquer dado de Ping que esteja acima de 100ms indica que a conexão está muito lenta e que há problemas na troca de informação na rede.&lt;/p&gt;&lt;p&gt;Se isso acontecer ocasionalmente não irá interferir tanto no jitter, que traz indicadores das várias diferenças encontradas ao testar o ping. Mas, se os valores do ping estão constantemente elevados, consequentemente o jitter também estará, apresentando o atraso na rede.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Como o jitter impacta na sua conexão?&lt;/h3&gt;&lt;p&gt;Caso os índices elevados do jitter sejam esporádicos, o atraso ocasionado só será sentido pelo usuário em determinados serviços. Isso porque em algumas trocas de dados, ele tem impacto mais significativo.&lt;/p&gt;&lt;p&gt;É o caso, por exemplo, nas chamadas de voz e vídeo.&amp;nbsp; O atraso é mais prejudicial porque para essas funções os pacotes são divididos. Há um pacote de transferência para dados Volp, de voz, e outro para imagens.&lt;/p&gt;&lt;p&gt;A tentativa de envio e recebimento de imagem e voz ao mesmo tempo vai exigir mais da conexão e pode haver diferentes pings para cada uma das transmissões. Quando há jitter, você percebe que a fala está atrasada. A imagem mostra que a pessoa já falou o áudio que você recebeu com alguns milissegundos de atraso.&lt;/p&gt;&lt;p&gt;Há outras situações em que o jitter pode impactar. É o caso, por exemplo, de grande tráfego de usuários em um mesmo site.&lt;/p&gt;&lt;p&gt;Se o servidor não estiver preparado para receber grande fluxo de acesso, isso pode ocasionar em falha no carregamento e até fazer com que a página saia do ar. Nesses casos, o problema não está na sua internet e sim na outra ponta da comunicação.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Meta de jitter da Anatel&lt;/h3&gt;&lt;p&gt;O jitter é tão importante como indicador do desempenho da internet que em 2011, e novamente em 2014, a Agência Nacional de Telecomunicações (Anatel) o colocou entre as &lt;a href=&quot;https://www.anatel.gov.br/Portal/verificaDocumentos/documento.asp?numeroPublicacao=333392&amp;amp;assuntoPublicacao=null&amp;amp;caminhoRel=null&amp;amp;filtro=1&amp;amp;documentoPath=333392.pdf&quot; target=&quot;_blank&quot;&gt;metas a serem alcançadas&lt;/a&gt; pelas operadoras que oferecem internet banda larga. O intuito é que cada vez mais seja oferecida uma boa conexão para os clientes.&lt;/p&gt;&lt;p&gt;Para que se tenha uma qualidade mínima, a instituição colocou o indicador de jitter em até 50ms em no mínimo de 95% das medições. Mas, isso levando em consideração que ainda há planos com baixa velocidade em operação no país.&lt;/p&gt;&lt;p&gt;Esse não é o índice ideal do jitter para uma navegação perfeita, mas essa meta já contribui para que as operadoras invistam em tecnologias e infraestrutura para melhorar os serviços de internet oferecidos no Brasil.&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Qual é o jitter ideal?&lt;/h3&gt;&lt;p&gt;Em uma rede com funcionamento perfeito, o que se espera do jitter é que seja zerado, ou seja, sem nenhuma variação de atraso na troca de dados na internet.&lt;/p&gt;&lt;p&gt;No entanto, há diversos fatores que interferem na sua conexão. Desde o plano de internet banda larga contratado, o tipo de conteúdo que você está acessando, a quantidade de pessoas na página e até mesmo o navegador de internet.&lt;/p&gt;&lt;p&gt;Diante disso, para o melhor desempenho da sua conexão, o ideal é que o jitter esteja abaixo de 20ms. Com essa medida, qualquer atraso não é sentido pelo usuário e a experiência de navegação será boa.&lt;/p&gt;&lt;p&gt;Caso o jitter exceda 30ms, o impacto será perceptível pelo usuário, principalmente no caso de videoconferências e chamadas por Volp.&lt;/p&gt;&lt;p&gt;Para usuários que fazem muito uso desse tipo de serviço é importante investir em uma boa internet banda larga. Pacotes que contam com alta velocidade costumam ter menos jitter e uma melhor experiência para o cliente. Com a popularização do serviço, é possível contratar um bom plano sem estourar o orçamento!&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Faça um teste de velocidade&lt;/h3&gt;&lt;p&gt;É verdade que quando a conexão está lenta você percebe instantaneamente. As páginas demoram a carregar, um arquivo demora para ser anexado no e-mail, o streaming trava toda hora e você não consegue ver as fotos no Instagram.&lt;/p&gt;&lt;p&gt;Mas, para acompanhar o desempenho da sua internet é fundamental fazer testes periódicos. Assim você descobre a velocidade que está recebendo da sua operadora, tanto de download quanto de upload.&lt;/p&gt;&lt;p&gt;Embora o teste não informe qual o valor do jitter da sua conexão, você é capaz de conferir qual o seu ping. Se o valor do ping for superior a 100ms sua internet não está com boa velocidade e há atraso na conexão.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/4279742439530772390/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2023/05/o-que-e-jitter-e-como-ele-influencia-na.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/4279742439530772390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/4279742439530772390'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2023/05/o-que-e-jitter-e-como-ele-influencia-na.html' title='O que é jitter e como ele influencia na sua conexão?'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-3847279312459127042</id><published>2023-01-17T11:06:00.012-03:00</published><updated>2023-06-15T14:32:06.994-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Resetar as permissões e proprietários dos pacotes instalados com RPM</title><content type='html'>&lt;p&gt;Para resetar as permissões e os proprietários dos pacotes instalados com o gerenciador de pacotes RPM, você pode usar o comando &quot;rpm&quot; com as opções &quot;--setperms&quot; e &quot;--setugids&quot; seguido pelo nome do pacote. Por exemplo:&lt;/p&gt;&lt;p&gt;&lt;i&gt;rpm --setperms --setugids nome_do_pacote&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Isso redefinirá as permissões (&lt;i&gt;setperms&lt;/i&gt;) e os proprietários (&lt;i&gt;setugids&lt;/i&gt;) dos arquivos do pacote para as configurações padrão especificadas pelo pacote durante a instalação.&lt;/p&gt;&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;Se você deseja redefinir as permissões e os proprietários de todos os pacotes instalados no sistema, pode usar o seguinte comando:&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;rpm --setperms --setugids -a&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Esse comando redefinirá as permissões (&lt;i&gt;--&lt;/i&gt;&lt;i&gt;setperms&lt;/i&gt;) e os proprietários (&lt;i&gt;--&lt;/i&gt;&lt;i&gt;setugids&lt;/i&gt;) de todos os pacotes (&lt;i&gt;-a&lt;/i&gt;) instalados no sistema.&lt;/p&gt;&lt;p&gt;Tenha em mente que essas operações podem causar problemas com configurações personalizadas e/ou arquivos modificados pelo usuário, portanto é recomendável fazer backup antes de realizar essas operações.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Mais inf.:&lt;br /&gt;&lt;a href=&quot;https://man7.org/linux/man-pages/man8/rpm.8.html&quot;&gt;https://man7.org/linux/man-pages/man8/rpm.8.html&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/3847279312459127042/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2023/01/resetar-as-permissoes-e-proprietarios.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3847279312459127042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/3847279312459127042'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2023/01/resetar-as-permissoes-e-proprietarios.html' title='Resetar as permissões e proprietários dos pacotes instalados com RPM'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-9122212332066435707</id><published>2023-01-10T12:41:00.004-03:00</published><updated>2023-01-17T12:19:05.748-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Apache"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Redirecionar todo tráfego de http para https no Apache (redhat like)</title><content type='html'>&lt;p&gt;Rápido e caceteiro.&lt;/p&gt;&lt;p&gt;Crie o arquivo&amp;nbsp;/etc/httpd/conf.d/default.conf com o conteúdo abaixo:&lt;/p&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;i&gt;&amp;lt;VirtualHost _default_:80&amp;gt;&lt;br /&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;	&lt;/span&gt;RewriteEngine On&lt;br /&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;	&lt;/span&gt;RewriteCond %{HTTPS} !=on&lt;br /&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;	&lt;/span&gt;RewriteCond %{HTTP_HOST} !^(localhost|127.0.0.1)&lt;br /&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;	&lt;/span&gt;RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [R=301,L]&lt;br /&gt;&amp;lt;/VirtualHost&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/span&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;Isso ativará o módulo de reescrita do Apache e redirecionará todas as solicitações de http para https. Lembre-se de reiniciar o Apache depois de fazer essa alteração para que ela entre em vigor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Mais inf.:&lt;br /&gt;&lt;a href=&quot;https://httpd.apache.org/docs/2.4/rewrite/remapping.html&quot;&gt;https://httpd.apache.org/docs/2.4/rewrite/remapping.html&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://httpd.apache.org/docs/2.4/rewrite/flags.html&quot;&gt;https://httpd.apache.org/docs/2.4/rewrite/flags.html&lt;/a&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/9122212332066435707/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2023/01/redirecionar-todo-trafego-de-http-para.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/9122212332066435707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/9122212332066435707'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2023/01/redirecionar-todo-trafego-de-http-para.html' title='Redirecionar todo tráfego de http para https no Apache (redhat like)'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-5085301383620989474</id><published>2023-01-08T14:53:00.006-03:00</published><updated>2023-01-17T12:19:58.003-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>Rastrear todos os arquivos acessados por um processo</title><content type='html'>&lt;p&gt;Existem várias maneiras de rastrear todos os arquivos acessados por um processo em Linux. Uma das formas é usando o comando &quot;strace&quot;.&lt;/p&gt;&lt;p&gt;Para usar o strace, você precisará descobrir o ID do processo (PID) que deseja rastrear. Isso pode ser feito usando o comando &quot;ps aux | grep [nome do processo]&quot;.&lt;/p&gt;&lt;p&gt;Uma vez que você tenha o PID, você pode usar o strace com o seguinte comando:&lt;/p&gt;&lt;p&gt;&lt;i&gt;strace -e trace=file -f -p [PID]&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Essa opção irá rastrear todas as chamadas do sistema de arquivos do processo específico.&lt;/p&gt;&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;Outra opção é usar o comando lsof, ele mostra todos os arquivos abertos pelos processos em execução.&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;lsof -p [PID]&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Você pode usar esses comandos para rastrear os arquivos acessados por um processo específico.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/5085301383620989474/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2023/01/como-rastrear-todos-os-arquivos.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/5085301383620989474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/5085301383620989474'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2023/01/como-rastrear-todos-os-arquivos.html' title='Rastrear todos os arquivos acessados por um processo'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-1612787811492416202</id><published>2022-02-03T13:59:00.001-03:00</published><updated>2022-02-03T14:02:01.856-03:00</updated><title type='text'>Confirmação de leitura VS Confirmação de entrega</title><content type='html'>&lt;div&gt;Ao utilizar um cliente de email normalmente temos 2 opção de confirmação:&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Solicitar uma confirmação de leitura;&lt;/li&gt;&lt;li&gt;Solicitar uma confirmação de entrega.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Se marcar no cliente &quot;&lt;b&gt;solicitar confirmação de leitura&lt;/b&gt;&quot; é adicionado ao email o cabeçalho&amp;nbsp;&lt;b&gt;Disposition-Notification-To&lt;/b&gt;. Exemplo:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;Disposition-Notification-To: &quot;André Felício&quot; &amp;lt;eu@felicio.com.br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Na confirmação de entrega (&lt;b&gt;Return-Receipt-To&lt;/b&gt;) é feita uma solicitação para que o servidor de destino envie um DSN (delivery status notification) assim que receber o email.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Na confirmação de leitura (&lt;b&gt;Disposition-Notification-To&lt;/b&gt;) é feita uma solicitação ao cliente de email do destinatário para que envie um DSN assim que a pessoa abrir o email.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/1612787811492416202/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2022/02/confirmacao-de-leitura-vs-confirmacao.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/1612787811492416202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/1612787811492416202'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2022/02/confirmacao-de-leitura-vs-confirmacao.html' title='Confirmação de leitura VS Confirmação de entrega'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-2047927963661604017</id><published>2021-09-13T14:10:00.002-03:00</published><updated>2021-09-13T14:10:30.612-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Python"/><title type='text'>Teste simples de conexão/login IMAP em Python</title><content type='html'>import getpass, imaplib&lt;br /&gt;&lt;br /&gt;M = imaplib.IMAP4(input(&quot;Servidor: &quot;))&lt;br /&gt;M.login(input(&quot;Nome de usuário: &quot;), getpass.getpass(&quot;Senha: &quot;))&lt;br /&gt;M.noop()&lt;br /&gt;M.logout()</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/2047927963661604017/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2021/09/teste-simples-de-conexaologin-imap-em.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2047927963661604017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2047927963661604017'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2021/09/teste-simples-de-conexaologin-imap-em.html' title='Teste simples de conexão/login IMAP em Python'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-1654134374341683810</id><published>2021-07-19T12:20:00.002-03:00</published><updated>2022-06-21T08:11:26.651-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Python"/><title type='text'>Hello World (WSGI - Py3)</title><content type='html'>Simples &quot;Hello World!&quot; para testar o mod_wsgi.&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&lt;span style=&quot;background-color: white;&quot;&gt;def application(environ, start_response):&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; &amp;nbsp;body = b&#39;Hello world!\n&#39;
&lt;br /&gt;&amp;nbsp; &amp;nbsp;status = &#39;200 OK&#39;
&lt;br /&gt;&amp;nbsp; &amp;nbsp;headers = [(&#39;Content-type&#39;, &#39;text/plain&#39;)]
&lt;br /&gt;&amp;nbsp; &amp;nbsp;start_response(status, headers)
&lt;br /&gt;&amp;nbsp; &amp;nbsp;return [body]&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: monospace;&quot;&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Mais inf. sobre como fazer deploy de uma aplicação python em apache&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;https://steviesblog.de/blog/en/2020/09/23/deploy-dash-with-apache2/&quot;&gt;https://steviesblog.de/blog/en/2020/09/23/deploy-dash-with-apache2/&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/1654134374341683810/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2021/07/hello-world-wsgi-py3.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/1654134374341683810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/1654134374341683810'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2021/07/hello-world-wsgi-py3.html' title='Hello World (WSGI - Py3)'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-8901380465725635315</id><published>2021-05-13T14:19:00.008-03:00</published><updated>2021-05-14T15:12:37.559-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humor"/><title type='text'>Diretrizes da matriz enviada aos funcionários da filial brasileira</title><content type='html'>&lt;p&gt;It has been brought to our attention by several officials visiting our corporate headquarters that offensive language is commonly used by our Portuguese-speaking staff, and to be precise, by YOU.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Such behavior, in addition to violating our policy, is highly unprofessional and offensive to both visitors and colleagues.&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Staff will IMMEDIATELY adhere to the following rules:&lt;/p&gt;&lt;p&gt;1) Words like caralho, cacete, porra or puta que o pariu and other such expressions will not be used for emphasis, no matter how heated the discussion.&lt;/p&gt;&lt;p&gt;2) You will not say cagada when someone makes a mistake, or está fazendo cagada if you see somebody either being reprimanded or making a mistake, or que cagada when a major mistake has been made. All forms derivated from the verb cagar are inappropiate in our environment.&lt;/p&gt;&lt;p&gt;3) No project manager, section head or administrator, under any circumstances, will be referred to as filho da puta, pentelho, or grande come merda or vaca gorda puta que a pariu.&lt;/p&gt;&lt;p&gt;4) A person with outstanding qualities will not be referred to as o pica master das galáxias.&lt;/p&gt;&lt;p&gt;5) Lack of determination will not be referred to as falta de culhão or coisa de boiola and neither will persons who lack initiative be referred to as puto, corno, cagão or viado.&lt;/p&gt;&lt;p&gt;6) Unusual or creative ideas from your superiors are not to be referred to as punhetas mentais.&lt;/p&gt;&lt;p&gt;7) Do not say como enche o puto do saco este pentelho do caralho if a person is persistent. When a task is heavy to accomplish remember that you must not say é foda. In a similar way, do not use esse cara está fudido if a colleague is going through a difficult situation. Furthermore, you must not say que foda when matters become complicated.&lt;/p&gt;&lt;p&gt;8) When asking someone to leave you alone, you must not say vai à merda.&lt;/p&gt;&lt;p&gt;9) Do not ever substitute &#39;May I help you?&#39; with que porra você quer ?&lt;/p&gt;&lt;p&gt;10) When things get tough, an acceptable expression such as &#39;We are going through a difficult time&#39; should be used, rather than isto está fudido or isto aquí é foda, or puta que o pariu!!!.&lt;/p&gt;&lt;p&gt;11) No salary increase shall be ever referred to as aumentinho de merda or que merreca.&lt;/p&gt;&lt;p&gt;12) Under no circumstances should you call our elderly corporate partners velhos pentelhos or velhos babacas.&lt;/p&gt;&lt;p&gt;13) Last, but not least, after reading this memo please do not say vou limpar o cu com isto. Just keep it clean and dispose of it properly.&amp;nbsp;&lt;/p&gt;&lt;p&gt;We hope you will keep these directions in mind.&lt;/p&gt;&lt;p&gt;Thank you.&amp;nbsp;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/8901380465725635315/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2021/05/diretrizes-da-matriz-enviada-aos.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/8901380465725635315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/8901380465725635315'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2021/05/diretrizes-da-matriz-enviada-aos.html' title='Diretrizes da matriz enviada aos funcionários da filial brasileira'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-2497182549838060751</id><published>2021-01-21T09:13:00.001-03:00</published><updated>2021-01-21T09:13:56.756-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humor"/><title type='text'>Medalha, medalha, medalha!!!</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXwqqOrpDA_ll5O0592h6drX85x4jHP7sVv00eYgxwzsaZjJxlzCUs4kv0mdtDVvVqZSzlt3hwsI9BygjY72wTO0UyEPdUJebR1nsjHO3WFd8QoToPRAcV-IiAgkVtpI_4qF3E37Vj6crC/s800/medalha.jpg&quot; style=&quot;display: block; padding: 1em 0; text-align: center; &quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;600&quot; data-original-height=&quot;800&quot; data-original-width=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXwqqOrpDA_ll5O0592h6drX85x4jHP7sVv00eYgxwzsaZjJxlzCUs4kv0mdtDVvVqZSzlt3hwsI9BygjY72wTO0UyEPdUJebR1nsjHO3WFd8QoToPRAcV-IiAgkVtpI_4qF3E37Vj6crC/s600/medalha.jpg&quot;/&gt;&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/2497182549838060751/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2021/01/medalha-medalha-medalha.html#comment-form' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2497182549838060751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2497182549838060751'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2021/01/medalha-medalha-medalha.html' title='Medalha, medalha, medalha!!!'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXwqqOrpDA_ll5O0592h6drX85x4jHP7sVv00eYgxwzsaZjJxlzCUs4kv0mdtDVvVqZSzlt3hwsI9BygjY72wTO0UyEPdUJebR1nsjHO3WFd8QoToPRAcV-IiAgkVtpI_4qF3E37Vj6crC/s72-c/medalha.jpg" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-7446223780806132260</id><published>2020-04-26T19:07:00.003-03:00</published><updated>2020-04-30T15:07:53.110-03:00</updated><title type='text'>Linux no Positivo Duo Q432A</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9qyZp3t3KHr_moSJKY466CEXidYrztGLXeoxtQEztAlwL3mBRB-zlZbY8QPO4l_9fC8qEcDn9vJa2XRCGMUUVme79lI2hMrqMDDjn80wjvBXnOHATVS7Sx7AaqPmJFKxfmAfkaV5JMxw7/s1600/notebook-2-em-1-positivo-quad-core-4gb-32gb-ssd-tela-11-6-windows-10-duo-q432a-11819190.webp&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1000&quot; data-original-width=&quot;1000&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9qyZp3t3KHr_moSJKY466CEXidYrztGLXeoxtQEztAlwL3mBRB-zlZbY8QPO4l_9fC8qEcDn9vJa2XRCGMUUVme79lI2hMrqMDDjn80wjvBXnOHATVS7Sx7AaqPmJFKxfmAfkaV5JMxw7/s320/notebook-2-em-1-positivo-quad-core-4gb-32gb-ssd-tela-11-6-windows-10-duo-q432a-11819190.webp&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
O objetivo deste artigo é apenas informar, não fazer detalhamento técnico. &lt;b&gt;SIM, este laptop funciona, atualmente, muito bem com Linux&lt;/b&gt;. Hoje estou usando plenamente com minha distribuição favorita para desktop, &lt;b&gt;&lt;a href=&quot;https://www.archlinux.org/&quot; target=&quot;_blank&quot;&gt;Arch Linux&lt;/a&gt;&lt;/b&gt;. Quero apenas ajudar as pessoas que pediram socorro nos pedidos de ajuda/avaliações negativas nos fóruns BR&amp;nbsp; (&lt;a href=&quot;https://www.vivaolinux.com.br/topico/UbuntuBR/Touchscreen-de-notebook-POSITIVO-DUO-Q432A-nao-funciona-em-nenhuma-distribuicao-linux&quot; target=&quot;_blank&quot;&gt;1&lt;/a&gt;,&amp;nbsp;&lt;a href=&quot;https://plus.diolinux.com.br/t/como-instalar-linux-em-positivo-duo-q432a-a-saga/14581&quot; target=&quot;_blank&quot;&gt;2&lt;/a&gt;,&amp;nbsp;&lt;a href=&quot;https://www.vivaolinux.com.br/topico/Iniciantes-no-Linux/Desistindo-1&quot; target=&quot;_blank&quot;&gt;3&lt;/a&gt;,&amp;nbsp;&lt;a href=&quot;https://www.clubedohardware.com.br/forums/topic/1380272-instalar-linux-ubuntu-no-notebook-positivo-duo-q432a/&quot; target=&quot;_blank&quot;&gt;4&lt;/a&gt;).&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h2&gt;
Os poréns out-of-the-box&lt;/h2&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Qual é o hardware? Apenas vá na página da &lt;a href=&quot;https://www.meupositivo.com.br/para-voce/notebooks/notebook-positivo-duo-q432a&quot; target=&quot;_blank&quot;&gt;Positivo&lt;/a&gt;. ;)&lt;br /&gt;
Qual seu uso? Preciso apenas de um browser e acessos remotos como: ssh, rdp, vnc e me atende bem. Se for pensar em comprar para outra finalidade, talvez não valha a pena.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
Linux&lt;/h3&gt;
Não vou falar sobre instalação de uma distribuição Linux, existem centenas de milhares de páginas que explicam como instalar.&lt;br /&gt;
&lt;br /&gt;
O que faltou para uso pleno do hardware:&lt;br /&gt;
- Falta de firmware para o touchscreen;&lt;br /&gt;
- Wi-Fi sem suporte para 801.11.r (fast roaming)&lt;br /&gt;
&lt;br /&gt;
Todo o resto 100% funcional.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Wi-Fi&lt;/h4&gt;
Para o Wi-Fi peguei algumas dicas na gringa. Basicamente o laptop é um&amp;nbsp;&lt;a href=&quot;https://www.intel.com.br/content/www/br/pt/products/boards-kits/compute-stick.html&quot; target=&quot;_blank&quot;&gt;Intel® Compute Stick&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Não tente usar em redes com &lt;a href=&quot;https://en.wikipedia.org/wiki/IEEE_802.11r-2008&quot;&gt;802.11r&lt;/a&gt; com habilitado, basicamente há um bug no&amp;nbsp;&lt;a href=&quot;https://wiki.archlinux.org/index.php/wpa_supplicant&quot; target=&quot;_blank&quot;&gt;wpa_supplicant&lt;/a&gt; que insiste em usar sem haver suporte por parte do firmware da Realtek. Em teoria será corrigido, em breve, pois já existe patch - em casa tenho &lt;a href=&quot;https://www.tp-link.com/br/home-networking/wifi-router/deco-m5/&quot; target=&quot;_blank&quot;&gt;6 Decos&lt;/a&gt; e gastei um bom tempo para descobrir que era o &quot;&lt;i&gt;Fast roaming&lt;/i&gt;&quot; que tinha habilitado na solução da TP-Link&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Touchscreen&lt;/h4&gt;
Já existia o módulo do kernel (Silead) mas falta firmware.&lt;br /&gt;
&lt;br /&gt;
Para extrair o firmware dos drivers do Windows e calibrar o touch, só usar o que a turma do projeto&amp;nbsp;&lt;a href=&quot;https://github.com/onitake/gsl-firmware&quot; target=&quot;_blank&quot;&gt;gsl-firmware&lt;/a&gt;&amp;nbsp;e&amp;nbsp;&lt;a href=&quot;https://github.com/reinderien/xcalibrate&quot; target=&quot;_blank&quot;&gt;xcalibrate&lt;/a&gt;&amp;nbsp;criaram. Obrigado turma!!&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
Resumo&lt;/h3&gt;
Quer um laptop barato para uso de perfil sysadmin, excelente. Ah... já tava esquecendo do motivo do artigo :P&lt;br /&gt;
&lt;br /&gt;
Arch Linux - &lt;i&gt;rolling release&lt;/i&gt; seguindo &lt;i&gt;upstream&lt;/i&gt; - e o arquivo abaixo com o firmware (+calibração) do touchscreen Silead que acompanha o Positivo.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://drive.google.com/file/d/1KS2uogzo2lkS8-OYgu6Hrlqg91gJIsbl&quot;&gt;https://drive.google.com/file/d/1KS2uogzo2lkS8-OYgu6Hrlqg91gJIsbl&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Baixe o arquivo acima e extrai na raiz do seu sistema, ele contem firmware + calibração do &lt;i&gt;touchscreen,&lt;/i&gt; e, alguns extras para economia de energia, emulação botão do meio do mouse e resolução do X - o laptop é vendido como tendo resolução HD, no Windows, mas assim que inicia o X a resolução vai para Full HD e perde uma boa performance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
É isso! Por favor, dúvidas, sugestões ou críticas, lancem nos comentários. ;)</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/7446223780806132260/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2020/04/linux-no-positivo-duo-q432a.html#comment-form' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/7446223780806132260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/7446223780806132260'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2020/04/linux-no-positivo-duo-q432a.html' title='Linux no Positivo Duo Q432A'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9qyZp3t3KHr_moSJKY466CEXidYrztGLXeoxtQEztAlwL3mBRB-zlZbY8QPO4l_9fC8qEcDn9vJa2XRCGMUUVme79lI2hMrqMDDjn80wjvBXnOHATVS7Sx7AaqPmJFKxfmAfkaV5JMxw7/s72-c/notebook-2-em-1-positivo-quad-core-4gb-32gb-ssd-tela-11-6-windows-10-duo-q432a-11819190.webp" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-5472700564084729317</id><published>2020-04-20T23:32:00.001-03:00</published><updated>2020-04-30T14:04:48.207-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humor"/><title type='text'>Senhas</title><content type='html'>&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-SIU19rSUE7mbU0DeufoJKLKti_yjV3_R0AW1bjuFdzPnSnWKHNb_0Am8C9elrxJxJJufzHe7Bu2a6nKoKXZFoTLR2mcMpT8l_wVlssVTjabZaquo0S7-fTgisMC8EHCYF-hF6JfZTkIn/s1600/password_strength.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;601&quot; data-original-width=&quot;740&quot; height=&quot;518&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-SIU19rSUE7mbU0DeufoJKLKti_yjV3_R0AW1bjuFdzPnSnWKHNb_0Am8C9elrxJxJJufzHe7Bu2a6nKoKXZFoTLR2mcMpT8l_wVlssVTjabZaquo0S7-fTgisMC8EHCYF-hF6JfZTkIn/s640/password_strength.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://xkcd.com/936/&quot;&gt;https://xkcd.com/936/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
E com isso gastamos 20 anos treinando as pessoas criarem senhas que são difíceis de memorizar mas que são fáceis de computadores descobrirem. 😈&lt;br /&gt;
&lt;a href=&quot;https://gizmodo.com/the-guy-who-invented-those-annoying-password-rules-now-1797643987&quot;&gt;https://gizmodo.com/the-guy-who-invented-those-annoying-password-rules-now-1797643987&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Duvida?&lt;/b&gt;&amp;nbsp;Faça um teste em:&lt;br /&gt;
&lt;a href=&quot;https://www.grc.com/haystack.htm&quot;&gt;https://www.grc.com/haystack.htm&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/5472700564084729317/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2020/04/senhas.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/5472700564084729317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/5472700564084729317'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2020/04/senhas.html' title='Senhas'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-SIU19rSUE7mbU0DeufoJKLKti_yjV3_R0AW1bjuFdzPnSnWKHNb_0Am8C9elrxJxJJufzHe7Bu2a6nKoKXZFoTLR2mcMpT8l_wVlssVTjabZaquo0S7-fTgisMC8EHCYF-hF6JfZTkIn/s72-c/password_strength.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-2934897829538688245</id><published>2020-04-08T17:42:00.000-03:00</published><updated>2020-05-12T17:23:27.043-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="BOFH"/><category scheme="http://www.blogger.com/atom/ns#" term="Humor"/><title type='text'>Uma semana na vida do Operador Bastardo do Inferno</title><content type='html'>&lt;h2&gt;
Segunda&lt;/h2&gt;
&lt;h4&gt;
8:05 am&lt;/h4&gt;
Usuário chama dizendo que perdeu a password. Eu disse a ele para usar um utilitário de recuperação de senhas chamado FDISK. Ignorante, ele me agradeceu e desligou. Meu Deus! E a gente ainda deixa essas pessoas votarem e dirigirem?&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
8:12 am&lt;/h4&gt;
A Contabilidade chamou para dizer que não conseguiam acessar a base de dados de relatórios de despesas. Eu dei a resposta Padrão dos Administradores de Sistema #112: “Engraçado… comigo funcionou…”. Deixei eles pastarem um pouco enquanto eu desconectava minha cafeteira do No-Break e conectava o servidor deles de volta. Sugeri que eles tentassem novamente. Ah… mais um usuário feliz…&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h4&gt;
8:14 am&lt;/h4&gt;
O úsuario das 8:05 chamou dizendo que recebeu a mensagem: erro no acesso ao drive 0. Disse a ele que isso era problema de SO e transferi a ligação para o microsuporte.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:00 am&lt;/h4&gt;
Relativamente calmas as últimas horas. Decidi reconectar o telefone do suporte para ligar pra minha namorada. Ela disse que os pais dela virão pra cidade nesse fim-de-semana. Pus ela “em-espera” e transferi a ligação para o almoxarifado. Que é que ela está pensando? Os torneios de “Doom” e “Myst” são neste fim-de-semana!&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
12:00 pm&lt;/h4&gt;
Almoço.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
15:30 pm&lt;/h4&gt;
Retorno do almoço.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
15:55 pm&lt;/h4&gt;
Acordei da soneca. Sonhos ruins me dão tremores. Empurrei os servidores sem razão. Voltei pra soneca.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:23 pm&lt;/h4&gt;
Outro usuário liga. Quer saber como mudar fontes em um formulário. Perguntei que chip eles estão usando. Falei pra eles ligarem novamente quando descobrirem.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:55 pm&lt;/h4&gt;
Resolvi rodar a macro “Criar Salvar/Replicação de Conflitos” para que o turno da noite tivesse algo&lt;br /&gt;
pra fazer…&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Terça&lt;/h2&gt;
&lt;h4&gt;
8:30 am&lt;/h4&gt;
Terminei a leitura do log do suporte da noite anterior. Pareceram ocupados. Tempos terríveis com Salvar/Replicação de Conflitos…&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
9:00 am&lt;/h4&gt;
Gerente de suporte chega. Quer discutir minha atitude. Cliquei no Phone Notes Smart Icon. “Adoraria, mas estou ocupado.”, gritei enquanto pegava as linhas de suporte, que (misteriosamente) acenderam.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
9:35 pm&lt;/h4&gt;
O chefe da equipe de P&amp;amp;D precisa de ID para novos empregados. Disse ele que precisava do formulário J-19R=3D9C9\\DARR\K1. Ele nunca tinha ouvido falar de tal formulário. Disse a ele que estava no banco de dados de FORMULÁRIOS ESPECIAIS. Ele nunca tinha ouvido falar de tal banco de dados. Transferi a ligação para o almoxarifado.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
10:00 am&lt;/h4&gt;
Ana ligou pedindo um novo ID. Eu disse que precisaria da matricula, nome de depto, nome do gerente e estado marital. Rodei @DbLookup nos bancos de dados de Controle de Doenças e não achei nada. Disse a ela que o novo ID estaria pronto de noite. Relembrando as lições de “Reengenharia para Parceria de Usuários”, ofereci-me para entregar pessoalmente em sua casa.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
10:07 am&lt;/h4&gt;
O cara do almoxarifado passou por aqui dizendo que estava recebendo ligações estranhas ultimamente. Ofereci a ele um treino em Notes. Começando agora. Deixei ele olhando a console enquanto sai para fumar.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
13:00 pm&lt;/h4&gt;
Voltei da pausa para o cigarro. O almoxarife disse que os telefones ficavam tocando demais, então ele transferia as ligações pra moça da cafeteria. Começo a gostar desse cara.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
13:05 pm&lt;/h4&gt;
Grande Comoção! Gerente de suporte cai num buraco aberto onde eu tinha tirado os tacos, na frente da porta do seu escritório. Falei pra ele da importância de não entrar correndo na sala do computador, mesmo que eu grite “Meu Deus — Fogo!!”&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
14:00 pm&lt;/h4&gt;
A secretária jurídica liga e diz que perdeu a password. Pedi a ela que cheque sua bolsa, chão do carro e no banheiro. Disse que provavelmente caiu das costas da máquina. Sugeri que ela ponha durex em todas as entradas de ar que ela ache no PC. Grunhindo, ofereci-me para lhe dar nova ID enquanto ela colava os durex…&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
14:49 pm&lt;/h4&gt;
O almoxarife voltou. Quer mais aulas. Tirei o resto do dia de folga.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Quarta&lt;/h2&gt;
&lt;h4&gt;
8:30 am&lt;/h4&gt;
Detesto quando os usuários ligam pra dizer que o chipset não tem nada a ver com fontes em um formulário. Disse a eles “claro, vocês deviam estar checando o “bitset” e não “chipset”. Usuário bobo pede desculpa e desliga.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
9:10am&lt;/h4&gt;
Gerente de suporte, com o pé engessado, volta ao escritório. Agenda um encontro comigo para 10:00am. Usuário liga e quer falar com o gerente de suporte sobre terriveis socorros na mesa de suporte. Disse a eles que o gerente estava indo a uma reunião. As vezes a vida nos dá material…&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
10:00 am&lt;/h4&gt;
Chamei o Luiz do almoxarifado pra ficar no meu lugar enquanto vou no escritório do gerente. Ele disse que não pode me demitir, mas que pode sugerir vários movimentos laterais na minha carreira. A maioria envolvida com implementos agricolas no terceiro mundo. Falando nisso, perguntei se ele já sabia de um novo bug que pega texto indexado dos bancos de dados e distribui aleatoriamente todas as referências. A reunião foi adiada…&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
10:30 am&lt;/h4&gt;
Disse ao Luiz que ele está se saindo muito bem. Ofereci-me para mostra-lo o sistema corporativo de PBX algum dia…&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:00 am&lt;/h4&gt;
Almoço.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:55 pm&lt;/h4&gt;
Retorno do almoço.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
17:00 pm&lt;/h4&gt;
Troca de turno. Vou pra casa.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Quinta&lt;/h2&gt;
&lt;h4&gt;
8:00 am&lt;/h4&gt;
Um cara novo (Jonas) começou hoje. “Boa sorte”, disse a ele. Mostrei-lhe a sala do servidor, o armário de fios e a biblioteca técnica. Deixei-o com um PC-XT. Falei pra ele parar de choramingar. O Notes rodava igual, tanto em monocromo quanto em cores.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
8:45 am&lt;/h4&gt;
Finalmente o PC do novato deu boot. Disse a ele que iria criar novo usuário pra ele. Setei o tamanho minimo de password para 64. Sai pra fumar.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
9:30 am&lt;/h4&gt;
Apresentei o Luiz ao Jonas. “Boa Sorte”, comentou o Luiz. Esse cara não é o máximo?&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:00 am&lt;/h4&gt;
Ganhei do Luiz no dominó. Luiz sai. Tirei o resto das peças da manga (“tenha sempre backups”). Usuário liga, diz que servidor de contabilidade está fora do ar. Desconecto o cabo Ethernet da antena do radio (melhor recepção) e ligo de volta no hub. Disse a ele que tentasse novamente. Mais um usuário feliz!&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:55 am&lt;/h4&gt;
Expliquei ao Jonas a política corporativa 98.022.01 “Sempre que novos empregados começam em dias que terminam em ‘A’ estão obrigados a prover sustento e repouso ao analista técnico sênior do seu turno “Jonas duvida. Mostrei o banco de dados de “políticas corporativas”. “Lembre-se, a pizza é de pepperoni, sem pimenta!”, gritei enquanto Jonas pisa no taco solto ao sair.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
13:00 pm&lt;/h4&gt;
Oooooh! Pizza me dá um sono…&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:30 pm&lt;/h4&gt;
Acordo de uma soneca refrescante. Peguei o Jonas lendo anúncios de emprego.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
17:00 pm&lt;/h4&gt;
Troca de turno. Desligo e ligo o servidor varias vezes (teste do botão ON-OFF…). Até amanhã…&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Sexta Feira&lt;/h2&gt;
&lt;h4&gt;
8:00 am&lt;/h4&gt;
Turno da noite continua tendo problemas para trocar a fonte de alimentação do servidor. Disse a eles que estava funcionando direito quando sai.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
9:00 am&lt;/h4&gt;
Jonas não está aqui ainda. Decidi que deveria começar a responder as chamadas eu mesmo.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
9:02 am&lt;/h4&gt;
Chamada de usuário. Diz que a base em Sergipe não consegue replicar. Eu e Luiz determinamos que é problema de fuso horário. Mandei eles ligarem para Telecomunicações.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
9:30 am&lt;/h4&gt;
Meu Deus! Outro usuário! Eles são como formigas, Dizem que estão em Manaus e não conseguem replicar com Sergipe. Falei que era fuso horário, mas com duas-horas de diferença. Sugeri que eles resetassem o time no servidor.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
10:17 am&lt;/h4&gt;
Usuário do Espírito Santo liga. Diz que não consegue mandar mail pra Manaus. Disse pra eles setarem o servidor para 3 horas adiantado.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:00 am&lt;/h4&gt;
E-mail da corporação diz para todos pararem de resetar o time dos servidores. Troquei o “date stamp” e reenviei para o Acre.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:20 am&lt;/h4&gt;
Terminei a macro @FazerCafe. Recoloquei o telefone no gancho.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:23 am&lt;/h4&gt;
O Acre liga, perguntando que dia é hoje.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:25 am&lt;/h4&gt;
Gerente de suporte passa pra dizer que o Jonas pediu pra sair. “Tão difícil achar boa ajuda…”, respondi. O gerente disse que ele tem um horário com o ortopedista essa tarde e pergunta se eu me importo em substitui-lo na reunião semanal dos administradores. “No problems”, eu respondo.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
11:30 am&lt;/h4&gt;
Chamo Luis e digo que a oportunidade bate à sua porta e ele é convidado para um encontro essa tarde. “Claro, você pode trazer seu jogo de dominó”, digo a ele.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
12:00 am&lt;/h4&gt;
Almoço.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
13:00 pm&lt;/h4&gt;
Começo backups completos no servidor Linux. Redireciono o device para NULL para o backup ser mais rápido.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
13:03 pm&lt;/h4&gt;
Backup semanal completo. Cara, como eu gosto da tecnologia moderna!&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
14:30 pm&lt;/h4&gt;
Olho o banco de dados de contatos de suporte. Cancelo o compromisso de 2:45pm. Ele deve ficar em casa descansando.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
14:39 pm&lt;/h4&gt;
Outro usuário ligando. Diz que quer aprender a criar um documento de conexão. Digo a ele para rodar o utilitário de documentos CTRL-ALT-DEL Ele disse que o PC reiniciou. Digo a ele para chamar o microsuporte.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
15:00 pm&lt;/h4&gt;
Outro usuário (novato) liga. Diz que a macro periódica não funciona. Disse a ele para incluir a macro @DeleteDocument no final da fórmula e prometi a ele mandar-lhe o anexo do manual que indica isso.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:00 pm&lt;/h4&gt;
Acabei de trocar a cor de frente de todos os documentos para branco. Também setei o tamanho da letra para 2 nos bancos de dados de ajuda.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:30 pm&lt;/h4&gt;
Um usuário liga pra dizer que não consegue ver nada em nenhum documento. Digo a ele para ir no menu Edit, opção Select all, e apertar a tecla Delete depois refresh. Prometi mandar-lhe a página do manual que fala sobre isso.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:45 pm&lt;/h4&gt;
Outro usuário liga. Diz que não consegue ver os helps dos documentos. Digo a ele que irei consertar. Mudei a fonte para WingDings.&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
16:58 pm&lt;/h4&gt;
Conectei a cafeteira no hub Ethernet pra ver o que acontece… nada… (muito sério).&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
17:00 pm&lt;/h4&gt;
O turno da noite apareceu. Digo a eles que o hub está agindo estranho. Desejo um bom fim-de-semana.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
FIM&lt;/h3&gt;
&lt;br /&gt;
&lt;br /&gt;
Mais info. e histórias do BOFH em&lt;br /&gt;
&lt;a href=&quot;https://en.wikipedia.org/wiki/Bastard_Operator_From_Hell&quot;&gt;https://en.wikipedia.org/wiki/Bastard_Operator_From_Hell&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.bofharchive.com/&quot;&gt;http://www.bofharchive.com/&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/2934897829538688245/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2020/04/uma-semana-na-vida-do-operador-bastardo.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2934897829538688245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2934897829538688245'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2020/04/uma-semana-na-vida-do-operador-bastardo.html' title='Uma semana na vida do Operador Bastardo do Inferno'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-415612452818358927</id><published>2020-03-12T20:35:00.000-03:00</published><updated>2020-04-08T16:54:55.266-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><title type='text'>Cast no Chromium (Transmitir...)</title><content type='html'>Para os &lt;a href=&quot;https://www.chromium.org/Home&quot; target=&quot;_blank&quot;&gt;Chromium&lt;/a&gt; e não &lt;a href=&quot;https://www.google.com/chrome/&quot; target=&quot;_blank&quot;&gt;Chrome&lt;/a&gt;, aqui uma dica legal para quem quer transmitir via Cast e está xingando por não conseguir - não achar dispositivos.&lt;br /&gt;
&lt;br /&gt;
Ative a opção &lt;b&gt;load-media-router-component-extension&lt;/b&gt;&amp;nbsp;que no Chromium o default é desativado.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;chrome://flags/#load-media-router-component-extension&quot;&gt;chrome://flags/#load-media-router-component-extension&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Ativou? Agora só ir no menu e vai encontrar os dispositivos Cast - como o Chromecast - de sua rede.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://support.google.com/chromecast/answer/7249696&quot;&gt;https://support.google.com/chromecast/answer/7249696&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/415612452818358927/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2020/03/cast-no-cromium-transmitir.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/415612452818358927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/415612452818358927'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2020/03/cast-no-cromium-transmitir.html' title='Cast no Chromium (Transmitir...)'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-2760305823099140485</id><published>2020-03-12T10:21:00.000-03:00</published><updated>2020-03-12T20:43:44.060-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Zimbra"/><title type='text'>Ativar modo Both (ambos, http+https) no Zimbra</title><content type='html'>&lt;h4&gt;
1. Desativar ProxySSLUpstream&lt;/h4&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;zmprov ms `zmhostname` zimbraReverseProxySSLToUpstreamEnabled FALSE&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;h4&gt;
2. Reconfigurar Nginx&lt;/h4&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;/opt/zimbra/libexec/zmproxyconfig -e -w -o -a 8080:80:8443:443 -x both -H `zmhostname`&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;h4&gt;
3. Configurar Zimbra para rodar no modo Both&lt;/h4&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;zmtlsctl both&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;zmprov ms `zmhostname` zimbraReverseProxyMailMode both&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;zmprov ms `zmhostname` zimbraMailMode both&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;h4&gt;
4. Reiniciar o Zimbra&lt;/h4&gt;
&lt;span style=&quot;font-family: &amp;quot;trebuchet ms&amp;quot; , sans-serif;&quot;&gt;zmcontrol restart&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Simples, rápido e caceteiro 😉&lt;br /&gt;
&lt;br /&gt;
Ah... se preferir redirect, só trocar no item 3 de both para redirect&lt;br /&gt;
&lt;br /&gt;
Mais infos. em:&lt;br /&gt;
&lt;a href=&quot;https://wiki.zimbra.com/wiki/CLI_zmtlsctl_to_set_Web_Server_Mode&quot;&gt;https://wiki.zimbra.com/wiki/CLI_zmtlsctl_to_set_Web_Server_Mode&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/2760305823099140485/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2020/03/ativar-modo-both-httphttps-no-zimra.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2760305823099140485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/2760305823099140485'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2020/03/ativar-modo-both-httphttps-no-zimra.html' title='Ativar modo Both (ambos, http+https) no Zimbra'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-5151802682038866555</id><published>2020-01-27T17:02:00.003-03:00</published><updated>2020-04-30T15:09:19.367-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humor"/><title type='text'>Devotion to Duty</title><content type='html'>&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXJQB1GK1TDMjUnqNvqm1r68ERtn1tim4QDx_w5cUaIDH2dXieOdKguUHH7DfQvy1R3JG8Z4Mgxa1wf_hMxPKm9lhtm8c7x-2P1BsbEC6PPE66nxHLuK3dSt6Uua307VwS_CU0jeSxHPpy/s1600/devo%25C3%25A7%25C3%25A3o-ao-dever.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;247&quot; data-original-width=&quot;638&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXJQB1GK1TDMjUnqNvqm1r68ERtn1tim4QDx_w5cUaIDH2dXieOdKguUHH7DfQvy1R3JG8Z4Mgxa1wf_hMxPKm9lhtm8c7x-2P1BsbEC6PPE66nxHLuK3dSt6Uua307VwS_CU0jeSxHPpy/s1600/devo%25C3%25A7%25C3%25A3o-ao-dever.png&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://xkcd.com/705/&quot;&gt;https://xkcd.com/705/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Na loja do XKCD fizeram um excelente camisa, confiram!&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;https://store.xkcd.com/products/sysadmin&quot;&gt;https://store.xkcd.com/products/sysadmin&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/5151802682038866555/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2020/01/devotion-to-duty.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/5151802682038866555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/5151802682038866555'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2020/01/devotion-to-duty.html' title='Devotion to Duty'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXJQB1GK1TDMjUnqNvqm1r68ERtn1tim4QDx_w5cUaIDH2dXieOdKguUHH7DfQvy1R3JG8Z4Mgxa1wf_hMxPKm9lhtm8c7x-2P1BsbEC6PPE66nxHLuK3dSt6Uua307VwS_CU0jeSxHPpy/s72-c/devo%25C3%25A7%25C3%25A3o-ao-dever.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4523400251697386687.post-8428250508602335209</id><published>2019-07-04T14:08:00.000-03:00</published><updated>2019-07-04T14:08:47.613-03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Humor"/><title type='text'>Fuck-up Assessment Form</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGMWBj-ARk_AXlTTciJ1t1y-KB5rkpg8FJh4drh2XhyFGq2SBrSrMJsgB7WRisFPU4HVeM6Uw-pSBMuGxrGC5jC6qCZjdM4xTZtj0-7PjlF4RyobuFLDT40Nl6jKHl37gzkBiq6JNVouNL/s1600/1556977063338836856637640671082.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1600&quot; data-original-width=&quot;756&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGMWBj-ARk_AXlTTciJ1t1y-KB5rkpg8FJh4drh2XhyFGq2SBrSrMJsgB7WRisFPU4HVeM6Uw-pSBMuGxrGC5jC6qCZjdM4xTZtj0-7PjlF4RyobuFLDT40Nl6jKHl37gzkBiq6JNVouNL/s1600/1556977063338836856637640671082.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.felicio.com.br/feeds/8428250508602335209/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.felicio.com.br/2019/07/fuck-up-assessment-form.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/8428250508602335209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4523400251697386687/posts/default/8428250508602335209'/><link rel='alternate' type='text/html' href='http://www.felicio.com.br/2019/07/fuck-up-assessment-form.html' title='Fuck-up Assessment Form'/><author><name>André Felício</name><uri>http://www.blogger.com/profile/15247312005014305488</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCBX2nGnahoS0U2akREb5CW02VWK-U2Krssb7l4jFh27UcNyue0LHY69nOVoSRe3VekJDW9CeaRD_mV4aakaxU8HZ9_sKocUtNwTWeKWBqXRYDJr3NqtbfcOCJuUcsEmo/s113/WazePhoto.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGMWBj-ARk_AXlTTciJ1t1y-KB5rkpg8FJh4drh2XhyFGq2SBrSrMJsgB7WRisFPU4HVeM6Uw-pSBMuGxrGC5jC6qCZjdM4xTZtj0-7PjlF4RyobuFLDT40Nl6jKHl37gzkBiq6JNVouNL/s72-c/1556977063338836856637640671082.jpg" height="72" width="72"/><thr:total>0</thr:total></entry></feed>