<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Go on Meu nome é Elton Minetto</title><link>https://eltonminetto.dev/tags/go/</link><description>Recent content in Go on Meu nome é Elton Minetto</description><generator>Hugo</generator><language>pt</language><copyright>{year}</copyright><lastBuildDate>Sun, 05 Apr 2026 19:00:43 -0300</lastBuildDate><atom:link href="https://eltonminetto.dev/tags/go/index.xml" rel="self" type="application/rss+xml"/><item><title>Evitando supply chain attacks em Go</title><link>https://eltonminetto.dev/post/2026-04-05-supply-chain-golang/</link><pubDate>Sun, 05 Apr 2026 19:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2026-04-05-supply-chain-golang/</guid><description>&lt;p>Se você acompanhou as notícias das últimas semanas (Março/Abril de 2026), deve ter lido sobre dois grandes “supply chain attacks” que ocorreram. Provavelmente você foi afetado de alguma forma pelo problema que ocorreu com os projetos &lt;a href="https://docs.litellm.ai/blog/security-update-march-2026">LiteLLM&lt;/a> e o &lt;a href="https://www.elastic.co/security-labs/axios-one-rat-to-rule-them-all">Axios&lt;/a>.&lt;/p></description></item><item><title>The Go Way</title><link>https://eltonminetto.dev/post/2025-10-15-the-go-way/</link><pubDate>Wed, 15 Oct 2025 08:00:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-10-15-the-go-way/</guid><description>&lt;p>No meu &lt;a href="https://eltonminetto.dev/post/2025-09-29-go-por-onde-comecar/">último video&lt;/a> eu dei algumas dicas de como começar a usar a linguagem Go e uma delas era relacionada a ser mais “idiomático”. Mas o que isso significa?&lt;/p></description></item><item><title>Go, por onde começar?</title><link>https://eltonminetto.dev/post/2025-09-29-go-por-onde-comecar/</link><pubDate>Mon, 29 Sep 2025 20:30:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-09-29-go-por-onde-comecar/</guid><description>&lt;p>Esta é uma pergunta que eu recebo algumas vezes e algum tempo atrás eu &lt;a href="https://eltonminetto.dev/post/2019-10-08-golang-por-onde-comecar/">escrevi um post&lt;/a> sobre o assunto. Como minha experiência com a linguagem evoluiu desde então, eu resolvi gravar &lt;a href="https://youtu.be/FVaJ4XpOmlA?si=FKxx9X7_ilNEKFV5">um vídeo&lt;/a> com mais detalhes. No vídeo eu dou algumas sugestões de como devs e empresas podem começar a usar a linguagem Go em seus projetos.&lt;/p></description></item><item><title>Go deveria ser mais opinativo</title><link>https://eltonminetto.dev/post/2025-06-19-go-more-opinated/</link><pubDate>Thu, 19 Jun 2025 10:00:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-06-19-go-more-opinated/</guid><description>&lt;p>Uma das vantagens em ser &lt;a href="https://g.dev/eminetto">Google Developer Expert&lt;/a> é as oportunidades incríveis que isso proporciona. Algumas semanas atrás pude conhecer pessoalmente o &lt;a href="https://en.wikipedia.org/wiki/Robert_Griesemer">Robert Griesemer&lt;/a>, co-criador de Go, bem como o &lt;a href="https://www.linkedin.com/in/doughertymarc/">Marc Dougherty&lt;/a>, Developer Advocate do time de Go no Google. Em um happy hour após o Google IO o Marc perguntou, para mim e outro GDE de Go da Koreia que fui apresentado, quais feedbacks teríamos em relação a linguagem. Minha resposta foi que eu não tinha nenhum feedback específico sobre a linguagem, mas que&lt;/p></description></item><item><title>Criando um MCP Server usando Go</title><link>https://eltonminetto.dev/post/2025-05-01-mcp-server-golang/</link><pubDate>Thu, 01 May 2025 11:00:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-05-01-mcp-server-golang/</guid><description>&lt;p>Em Novembro de 2024 a Anthropic publicou um post em seu &lt;a href="https://www.anthropic.com/news/model-context-protocol">blog&lt;/a> anunciando o que talvez seja sua maior contribuição para o ecossistema de AI até o momento: o &lt;a href="https://modelcontextprotocol.io/introduction">&lt;strong>Model Context Protocol&lt;/strong>&lt;/a>&lt;/p></description></item><item><title>Primeiras impressões com o banco de dados Turso</title><link>https://eltonminetto.dev/post/2025-03-23-turso-first-impressions/</link><pubDate>Sun, 23 Mar 2025 18:00:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-03-23-turso-first-impressions/</guid><description>&lt;p>O &lt;a href="https://turso.tech">Turso&lt;/a> é um daqueles projetos que você olha e pensa “como ninguém havia feito algo assim antes?”. Venho acompanhando o projeto desde seu lançamento mas somente agora consegui dedicar um tempo para fazer alguns testes, que descrevo neste post.&lt;/p></description></item><item><title>Criando uma API com autenticação usando Encore.go</title><link>https://eltonminetto.dev/post/2025-02-22-intro-encore-part-2/</link><pubDate>Sat, 22 Feb 2025 07:10:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-02-22-intro-encore-part-2/</guid><description>&lt;p>Esta é a segunda parte de uma série de posts sobre o framework &lt;a href="https://encore.dev/docs/go">Encore.go&lt;/a>:&lt;/p>
&lt;ol>
&lt;li>&lt;a href="https://eltonminetto.dev/post/2025-01-25-intro-encore-part-1/">Criando uma API com banco de dados&lt;/a>&lt;/li>
&lt;li>Criando uma API com autenticação (&amp;lt;&amp;mdash; você está aqui)&lt;/li>
&lt;li>Comunicação via Pub/Sub&lt;/li>
&lt;li>Deploy&lt;/li>
&lt;/ol>
&lt;p>Na primeira parte criamos uma API simples, que faz a validação de um usuário dados os parâmetros corretos. Vamos agora usar esta funcionalidade para aumentar a complexidade do projeto: adicionar uma nova API, que precisa de autenticação para ser acessada.&lt;/p></description></item><item><title>Debug de aplicações Go com o Goland e VSCode</title><link>https://eltonminetto.dev/post/2025-02-04-debug-go/</link><pubDate>Tue, 04 Feb 2025 18:00:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-02-04-debug-go/</guid><description>&lt;p>Essa é uma dica rápida mas que pode ser útil para mais pessoas. Recentemente precisei fazer debug de uma aplicação CLI que estou desenvolvendo e foi necessário algumas configurações nas IDEs que uso para fazer esse processo. Como dediquei mais de 30 minutos para aprender isso espero que este post econimize algum tempo de alguém ;)&lt;/p></description></item><item><title>Introdução ao Encore.go</title><link>https://eltonminetto.dev/post/2025-01-25-intro-encore-part-1/</link><pubDate>Sat, 25 Jan 2025 07:10:00 -0300</pubDate><guid>https://eltonminetto.dev/post/2025-01-25-intro-encore-part-1/</guid><description>&lt;p>O &lt;a href="https://encore.dev/go">Encore.go&lt;/a> já está no meu “radar” tem um bom tempo, quando seu belo site e exemplos chamaram minha atenção em uma notícia no Hacker News. Mas minha empolgação realmente aumentou após &lt;a href="https://encore.dev/blog/open-source-decoupled">este post&lt;/a> publicado em Dezembro de 2024. Nele é anunciado que o framework, inicialmente vinculado à ferramenta &lt;a href="https://encore.cloud">Encore Cloud&lt;/a>, iria se tornar um projeto independente. Eu acredito que essa decisão vai tornar o framework mais atrativo para empresas e desenvolvedores que queiram usá-lo em seus ambientes já existentes. Nada contra o Encore Cloud, que parece ser uma solução muito interessante e robusta, mas esta liberdade de escolha favorece a adoção em empresas de diferentes tamanhos.&lt;/p></description></item><item><title>Usando CloudEvents em Go</title><link>https://eltonminetto.dev/post/2024-11-28-cloudevents-in-go/</link><pubDate>Thu, 28 Nov 2024 07:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-11-28-cloudevents-in-go/</guid><description>&lt;p>Em ambientes complexos é relativamente comum a adoção de uma arquitetura orientada a eventos (Event-driven architecture, ou EDA) para aumentar a escalabilidade e reduzir o acoplamento entre os componentes/serviços.&lt;/p></description></item><item><title>Resiliência na comunicação entre microsserviços usando a lib failsafe-go</title><link>https://eltonminetto.dev/post/2024-08-24-resilience-in-communication-between-microservices-using-the-failsafe-go-lib/</link><pubDate>Sat, 24 Aug 2024 09:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-08-24-resilience-in-communication-between-microservices-using-the-failsafe-go-lib/</guid><description>&lt;p>Vamos começar pelo princípio… O que é resiliência? Gosto da definição deste &lt;a href="https://erikhollnagel.com/ideas/resilience-engineering.html">post&lt;/a>:&lt;/p>
&lt;blockquote>
&lt;p>A capacidade intrínseca de um sistema de ajustar seu funcionamento antes, durante ou depois de mudanças e perturbações, de modo que ele possa sustentar as operações necessárias sob condições esperadas e inesperadas.&lt;/p></description></item><item><title>JSON vs FlatBuffers vs Protocol Buffers</title><link>https://eltonminetto.dev/post/2024-08-05-json-vs-flatbuffers-vs-protobuf/</link><pubDate>Mon, 05 Aug 2024 21:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-08-05-json-vs-flatbuffers-vs-protobuf/</guid><description>&lt;p>Quando pensamos em comunicação entre serviços/microsserviços a primeira opção que vem na nossa mente é o bom e velho JSON. E isso não é sem razão, pois o formato tem vantanges, como:&lt;/p></description></item><item><title>Go é uma plataforma</title><link>https://eltonminetto.dev/post/2024-06-12-go-is-a-plataform/</link><pubDate>Wed, 12 Jun 2024 08:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-06-12-go-is-a-plataform/</guid><description>&lt;p>Em Maio deste ano, graças ao programa Google Developer Experts, tive a oportunidade de participar do Google I/O em Mountain View/Califórnia. Dentre as várias talks que assisti, uma das minhas preferidas foi a &lt;strong>‌ Boost performance of Go applications with profile guided optimization&lt;/strong>, que você pode assistir no &lt;a href="https://www.youtube.com/watch?v=FwzE5Sdhhdw">Youtube&lt;/a>.&lt;/p></description></item><item><title>Alternativas ao make escritas em Go</title><link>https://eltonminetto.dev/post/2024-05-26-alternatives-make/</link><pubDate>Sun, 26 May 2024 08:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-05-26-alternatives-make/</guid><description>&lt;p>Começando do começo: o que é o &lt;code>make&lt;/code>? Presente em todas as distribuições Linux e derivados do Unix como o macOS, o manual da ferramenta a descreve como:&lt;/p></description></item><item><title>Projetos interessantes usando WebAssembly</title><link>https://eltonminetto.dev/post/2024-04-06-webassembly-products/</link><pubDate>Sat, 06 Apr 2024 08:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-04-06-webassembly-products/</guid><description>&lt;p>Esta é a última parte de uma série de posts que escrevi sobre uma das tecnologias que eu acho mais impactantes dos últimos anos: WebAssembly. No &lt;a href="https://eltonminetto.dev/post/2023-11-17-webassembly-using-go-code-in-the-browser/">primeiro texto&lt;/a> falei sobre como portar código em Go para executá-lo em um navegador web. Na &lt;a href="https://eltonminetto.dev/post/2023-12-11-running-webassembly-in-go/">segunda parte&lt;/a> mostrei como usar código WebAssembly em um projeto Go e neste quero falar sobre alguns projetos bem interessantes que vem fazendo uso desta tecnologia.&lt;/p></description></item><item><title>Usando test helpers em Go</title><link>https://eltonminetto.dev/post/2024-02-15-using-test-helpers/</link><pubDate>Thu, 15 Feb 2024 20:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-02-15-using-test-helpers/</guid><description>&lt;p>Recentemente, em um code review, o grande &lt;a href="https://www.linkedin.com/in/cassiobotaro/">Cassio Botaro&lt;/a> me deu uma dica bem útil: refatorar alguns testes que eu estava fazendo para usar o recurso de &lt;code>test helpers&lt;/code> do pacote &lt;code>testing&lt;/code>.&lt;/p></description></item><item><title>Mini-FAQ sobre Go</title><link>https://eltonminetto.dev/post/2024-01-02-mini-faq-go/</link><pubDate>Tue, 02 Jan 2024 08:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2024-01-02-mini-faq-go/</guid><description>&lt;p>Alguns dias atrás o &lt;a href="https://twitter.com/async_http">@met4tron&lt;/a> teve uma ideia bem interessante: ele &lt;a href="https://x.com/async_http/status/1736933828743020890?s=20">postou no X&lt;/a> uma lista de perguntas sobre Go.&lt;/p></description></item><item><title>Executando código WebAssembly em Go</title><link>https://eltonminetto.dev/post/2023-12-11-running-webassembly-in-go/</link><pubDate>Mon, 11 Dec 2023 08:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-12-11-running-webassembly-in-go/</guid><description>&lt;p>Este é o segundo post de uma série que estou fazendo sobre WebAssembly e Go. No &lt;a href="https://eltonminetto.dev/post/2023-11-17-webassembly-using-go-code-in-the-browser/">primeiro post&lt;/a> vimos como executar código Go em um navegador web. Neste vamos importar uma função WebAssembly e executá-la em uma aplicação Go.&lt;/p></description></item><item><title>WebAssembly: usando código Go no navegador</title><link>https://eltonminetto.dev/post/2023-11-17-webassembly-using-go-code-in-the-browser/</link><pubDate>Fri, 17 Nov 2023 08:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-11-17-webassembly-using-go-code-in-the-browser/</guid><description>&lt;p>De tempos em tempos surge uma tecnologia que causa um grande impacto no dia a dia das pessoas desenvolvedoras. Linux, Git, Docker, Kubernetes, entre outras. Na minha opinião o WebAssembly é uma tecnologia que tem potencial para figurar nessa seleta lista.&lt;/p></description></item><item><title>Novidade do Go 1.21: Toolchains</title><link>https://eltonminetto.dev/post/2023-10-18-go121-toolchain/</link><pubDate>Wed, 18 Oct 2023 21:00:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-10-18-go121-toolchain/</guid><description>&lt;p>Na versão 1.21 da linguagem uma novidade importante foi implementada. Segundo a documentação:&lt;/p>
&lt;blockquote>
&lt;p>A partir do Go 1.21, a distribuição Go consiste em no comando &lt;code>go&lt;/code> e um conjunto de ferramentas (&lt;code>toolchain&lt;/code>) incluído, que é a biblioteca padrão, bem como o compilador, montador e outras ferramentas. O comando &lt;code>go&lt;/code> pode usar seu &lt;code>toolchain&lt;/code> padrão, bem como outras versões encontradas no PATH local ou baixadas conforme necessário.&lt;/p></description></item><item><title>Escrevendo testes para um Kubernetes Operator</title><link>https://eltonminetto.dev/post/2023-10-05-k8s-operator-test/</link><pubDate>Thu, 05 Oct 2023 07:30:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-10-05-k8s-operator-test/</guid><description>&lt;p>No &lt;a href="https://eltonminetto.dev/post/2023-09-08-k8s-operator-sdk/">último post&lt;/a> vimos como criar um Kubernetes &lt;em>operator&lt;/em> usando o &lt;em>operator-sdk&lt;/em>. Como aquele texto ficou bem grande resolvi escrever este segundo post, para poder focar na parte dos testes da aplicação.&lt;/p></description></item><item><title>Criando Kubernetes Operators com o operator-sdk</title><link>https://eltonminetto.dev/post/2023-09-08-k8s-operator-sdk/</link><pubDate>Fri, 08 Sep 2023 08:30:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-09-08-k8s-operator-sdk/</guid><description>&lt;p>Se você desenvolve APIs ou microsserviços, especialmente em ambientes de médio a grande porte, provavelmente você está usando Kubernetes.&lt;/p></description></item><item><title>GDE em Go</title><link>https://eltonminetto.dev/post/2023-08-23-gde/</link><pubDate>Wed, 23 Aug 2023 08:30:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-08-23-gde/</guid><description>&lt;p>Algum tempo atrás conheci um projeto bem interessante chamado &lt;strong>Google Developer Experts&lt;/strong>. Segundo o &lt;a href="https://developers.google.com/community/experts?hl=pt-br">site oficial&lt;/a>, trata-se de um grupo de&lt;/p></description></item><item><title>[Go] Como trabalhar com datas em testes</title><link>https://eltonminetto.dev/post/2023-06-30-mock-time-golang/</link><pubDate>Fri, 30 Jun 2023 08:30:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-06-30-mock-time-golang/</guid><description>&lt;p>Trabalhar com datas em qualquer linguagem de programação trás alguns desafios interessantes. Neste post vou mostrar uma forma de trabalhar com datas ao escrever testes unitários para uma aplicação em Go.&lt;/p></description></item><item><title>Escolhendo dependências usando deps.dev</title><link>https://eltonminetto.dev/post/2023-04-19-choosing-dependencies-using-deps-dev/</link><pubDate>Wed, 19 Apr 2023 08:30:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-04-19-choosing-dependencies-using-deps-dev/</guid><description>&lt;p>Escolher as dependências de um projeto é algo que algumas vezes menosprezamos, mas que pode ter um impacto muito relevante. A imagem a seguir ilustra bem a ideia:&lt;/p></description></item><item><title>Primeiras impressões sobre o Service Weaver</title><link>https://eltonminetto.dev/post/2023-03-04-service-weaver/</link><pubDate>Sat, 04 Mar 2023 08:30:43 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-03-04-service-weaver/</guid><description>&lt;p>Embarquem no trem do hype comigo!&lt;/p>
&lt;p>No dia 01/03 o Google &lt;a href="https://opensource.googleblog.com/2023/03/introducing-service-weaver-framework-for-writing-distributed-applications.html">publicou no seu blog&lt;/a> o lançamento de um novo framework, o &lt;a href="https://serviceweaver.dev/">Service Weaver&lt;/a>.&lt;/p></description></item><item><title>Go Cloud Development Kit</title><link>https://eltonminetto.dev/post/2023-01-10-go-cloud-development-kit/</link><pubDate>Tue, 10 Jan 2023 09:00:19 -0300</pubDate><guid>https://eltonminetto.dev/post/2023-01-10-go-cloud-development-kit/</guid><description>&lt;p>Neste post vou falar sobre um projeto bem interessante que é mantido pelo time que desenvolve a linguagem Go. Trata-se do &lt;a href="https://gocloud.dev/">Go Cloud Development Kit&lt;/a>, também conhecido como &lt;strong>‌Go CDK&lt;/strong>.&lt;/p></description></item><item><title>Introdução a Cuelang</title><link>https://eltonminetto.dev/post/2022-11-08-intro-cuelang/</link><pubDate>Tue, 08 Nov 2022 13:00:19 -0300</pubDate><guid>https://eltonminetto.dev/post/2022-11-08-intro-cuelang/</guid><description>&lt;p>Aposto que nesse momento uma frase paira na sua cabeça:&lt;/p>
&lt;blockquote>
&lt;p>&amp;ldquo;Mais uma linguagem de programação&amp;rdquo;?&lt;/p></description></item><item><title>Criando uma API usando Go e sqlc</title><link>https://eltonminetto.dev/post/2022-10-22-creating-api-using-go-sqlc/</link><pubDate>Sat, 22 Oct 2022 13:00:19 -0300</pubDate><guid>https://eltonminetto.dev/post/2022-10-22-creating-api-using-go-sqlc/</guid><description>&lt;p>Ao escrever uma aplicação Go que trata dados em um banco de dados (neste post vou me concentrar em bancos de dados relacionais) temos algumas opções:&lt;/p></description></item><item><title>A volta da newsletter sobre Go</title><link>https://eltonminetto.dev/post/2022-10-20-a-semana-go/</link><pubDate>Wed, 19 Oct 2022 13:00:19 -0300</pubDate><guid>https://eltonminetto.dev/post/2022-10-20-a-semana-go/</guid><description>&lt;p>Quem acompanha meu site ou as redes sociais onde eu publico textos sabe que eu mantive por bastante tempo uma newsletter sobre Go, a &lt;strong>A Semana Go&lt;/strong>. Em 2020 eu decidi parar de publicar a newsletter por motivos que expliquei &lt;a href="https://eltonminetto.dev/post/2020-08-10-fim-newsletters/">neste post&lt;/a>.&lt;/p></description></item><item><title>Acelere seu ambiente de desenvolvimento local com o Tilt</title><link>https://eltonminetto.dev/post/2022-08-31-improve-local-development-tilt/</link><pubDate>Wed, 31 Aug 2022 13:00:19 -0300</pubDate><guid>https://eltonminetto.dev/post/2022-08-31-improve-local-development-tilt/</guid><description>&lt;p>Passamos horas e horas desenvolvendo aplicações nas nossas máquinas, cada vez com mais requisitos e complexidade. Qualquer aplicação moderna facilmente conta com vários containers, microsserviços, deploys em diferentes ambientes, diversas stacks, etc. Então qualquer ferramenta que possa tornar nosso fluxo mais ágil é de grande utilidade.&lt;/p></description></item><item><title>Tratamento de erros de aplicações CLI em Golang</title><link>https://eltonminetto.dev/post/2022-07-06-error-handling-cli-applications-golang/</link><pubDate>Wed, 06 Jul 2022 17:56:34 -0300</pubDate><guid>https://eltonminetto.dev/post/2022-07-06-error-handling-cli-applications-golang/</guid><description>&lt;p>Quando estou desenvolvendo alguma aplicação CLI em Go eu sempre gosto de considerar o arquivo &lt;code>main.go&lt;/code> como&lt;/p></description></item><item><title>Usando as interfaces da stdlib de Go</title><link>https://eltonminetto.dev/post/2022-06-07-using-go-interfaces/</link><pubDate>Tue, 07 Jun 2022 20:03:34 -0300</pubDate><guid>https://eltonminetto.dev/post/2022-06-07-using-go-interfaces/</guid><description>&lt;p>Neste post vou mostrar como usar duas das features mais interessantes da linguagem Go: sua biblioteca padrão (a stdlib do título) e interfaces.&lt;/p></description></item><item><title>Testando o Generics do Go</title><link>https://eltonminetto.dev/post/2022-03-11-fun-with-generics/</link><pubDate>Fri, 11 Mar 2022 08:27:10 -0300</pubDate><guid>https://eltonminetto.dev/post/2022-03-11-fun-with-generics/</guid><description>&lt;p>Finalmente está (quase) entre nós! Depois de anos ouvindo aquela piadinha &amp;ldquo;e o Generics?&amp;rdquo; esta aguardada funcionalidade vai estar disponível na versão 1.18 da linguagem, prevista para lançamento em Março de 2022.&lt;/p></description></item><item><title>Infraestrutura como Código na AWS usando Go e Pulumi</title><link>https://eltonminetto.dev/post/2021-11-08-iac-aws-go-pulumi/</link><pubDate>Mon, 08 Nov 2021 20:14:25 -0300</pubDate><guid>https://eltonminetto.dev/post/2021-11-08-iac-aws-go-pulumi/</guid><description>&lt;p>Quando falamos de Infraestrutura como Código (Infrastructure as Code, ou IaC), a principal ferramenta que nos vem a mente é o &lt;a href="https://terraform.io">Terraform&lt;/a>. A ferramenta criada pela HashiCorp tornou-se o padrão para a documentação e gerenciamento de infraestrutura, mas sua linguagem declarativa, a HCL (HashiCorp Configuration Language) tem algumas limitações. A principal delas é exatamente não ser uma linguagem de programação, e sim de configuração.&lt;/p></description></item><item><title>Acessando o Postgres via REST usando o pRest</title><link>https://eltonminetto.dev/post/2021-08-31-prest/</link><pubDate>Tue, 31 Aug 2021 22:48:39 -0300</pubDate><guid>https://eltonminetto.dev/post/2021-08-31-prest/</guid><description>&lt;p>Neste post vou falar sobre uma ferramenta Open Source bem útil chamada pRest.&lt;/p>
&lt;p>Com o pRest é possível criar uma API RESTFul para acessar o conteúdo de um banco de dados Postgres de uma maneira simples e rápida. O projeto, escrito em Go e com grande participação de desenvolvedores brasileiros, pode ser encontrado no seu &lt;a href="https://prestd.com">site oficial&lt;/a>, bem como no &lt;a href="https://github.com/prest/prest">Github&lt;/a>.&lt;/p></description></item><item><title>Fazendo o controle de acesso de uma API usando Go e Casbin</title><link>https://eltonminetto.dev/post/2021-04-01-casbin-go/</link><pubDate>Thu, 01 Apr 2021 07:55:40 -0300</pubDate><guid>https://eltonminetto.dev/post/2021-04-01-casbin-go/</guid><description>&lt;p>Quando pensamos em segurança, um dos conceitos mais básicos é o dos 3As: Authentication, Authorization e Accounting (autenticação, autorização e contabilização). Sendo:&lt;/p></description></item><item><title>Curso Desenvolvimento Web com Go</title><link>https://eltonminetto.dev/post/2021-03-32-curso-go/</link><pubDate>Tue, 23 Mar 2021 08:30:32 -0300</pubDate><guid>https://eltonminetto.dev/post/2021-03-32-curso-go/</guid><description>&lt;p>Finalmente tirei do papel um velho projeto pessoal, a criação de um curso sobre a linguagem Go.&lt;/p></description></item><item><title>Microsserviços em Go usando Go kit</title><link>https://eltonminetto.dev/post/2021-02-06-microservices-gokit/</link><pubDate>Sat, 06 Feb 2021 08:33:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2021-02-06-microservices-gokit/</guid><description>&lt;p>Em um dos capítulos do livro &lt;a href="https://www.amazon.com.br/Microservice-Patterns-examples-Chris-Richardson/dp/1617294543/ref=sr_1_1?__mk_pt_BR=%c3%85M%c3%85%c5%bd%c3%95%c3%91&amp;amp;crid=5S2QOI44DDW4&amp;amp;dchild=1&amp;amp;keywords=microservices&amp;#43;patterns&amp;amp;qid=1612616717&amp;amp;sprefix=microservice&amp;#43;pa%2Caps%2C300&amp;amp;sr=8-1">Microservice Patterns: With examples in Java&lt;/a> o autor cita o padrão &lt;a href="https://microservices.io/patterns/microservice-chassis.html">&amp;ldquo;Microservice chassis&amp;rdquo;&lt;/a>:&lt;/p></description></item><item><title>Go vs Elixir, primeiras impressões</title><link>https://eltonminetto.dev/post/2020-08-05-go-vs-elixir/</link><pubDate>Wed, 05 Aug 2020 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2020-08-05-go-vs-elixir/</guid><description>&lt;p>Antes de tudo uma explicação: estou escrevendo este post baseado nas minhas impressões depois de aproximadamente um mês lendo bastante sobre Elixir, vendo linhas e linhas de código e finalizando algumas tarefas com a linguagem. Por isso já deixo aqui minhas desculpas por erros grosseiros que eu possa cometer quando estiver escrevendo sobre a linguagem.&lt;/p></description></item><item><title>Clean Architecture, 2 anos depois</title><link>https://eltonminetto.dev/post/2020-06-29-clean-architecture-2anos-depois/</link><pubDate>Mon, 29 Jun 2020 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2020-06-29-clean-architecture-2anos-depois/</guid><description>&lt;p>&lt;strong>UPDATE:&lt;/strong> Este post é antigo e não reflete mais o que eu acredito ser uma estrutura ideial. Em 2023, o que estou usando e recomendando é o que meus colegas e eu descrevemos &lt;a href="https://medium.com/inside-picpay/organizando-um-projeto-e-convencionando-nomes-em-go-c18b3fa88ba0">neste post&lt;/a>.&lt;/p></description></item><item><title>Testando APIs em Golang usando apitest</title><link>https://eltonminetto.dev/post/2020-04-10-golang-apitest/</link><pubDate>Fri, 10 Apr 2020 08:33:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2020-04-10-golang-apitest/</guid><description>&lt;p>Uma das grandes vantagens da linguagem Go é sua biblioteca padrão, que contém muitas das funcionalidades que são úteis no desenvolvimento de aplicações modernas, como servidor e cliente HTTP, parser de JSON, e testes. É exatamente sobre esse último ponto que vou falar neste post.&lt;/p></description></item><item><title>Fazendo profiling de aplicações Golang usando pprof</title><link>https://eltonminetto.dev/post/2020-04-08-golang-pprof/</link><pubDate>Wed, 08 Apr 2020 08:33:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2020-04-08-golang-pprof/</guid><description>&lt;p>Nas últimas semanas a &lt;a href="https://codenation.dev">Codenation&lt;/a> vem passando por um crescimento bem significativo. Confirmando a frase do grande &lt;a href="https://www.linkedin.com/in/brunoghisi/">Bruno Ghisi&lt;/a> que fala que &amp;ldquo;na escala tudo quebra&amp;rdquo;, funcionalidades que sempre funcionavam perfeitamente começam a tornar-se problemáticas.&lt;/p></description></item><item><title>Usando Prometheus para coletar métricas de aplicações Golang</title><link>https://eltonminetto.dev/post/2020-03-12-golang-prometheus/</link><pubDate>Thu, 12 Mar 2020 08:33:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2020-03-12-golang-prometheus/</guid><description>&lt;p>Este texto faz parte de uma série de posts que estou fazendo com exemplos de aplicações usando a Clean Architecture. Os outros posts que fazem parte desta série são:&lt;/p></description></item><item><title>Criando mocks para testes usando GoMock</title><link>https://eltonminetto.dev/post/2019-12-19-usando-gomock/</link><pubDate>Thu, 19 Dec 2019 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2019-12-19-usando-gomock/</guid><description>&lt;p>O uso de &lt;a href="https://pt.wikipedia.org/wiki/Objeto_Mock">mocks&lt;/a> no desenvolvimento de testes é um conceito usado na grande maioria das linguagens de programação. Neste post vou falar sobre uma das soluções para implementar mocks em Go, o &lt;a href="https://github.com/golang/mock">GoMock&lt;/a>.&lt;/p></description></item><item><title>Processando arquivos parquet em Go</title><link>https://eltonminetto.dev/post/2019-12-09-parquet-golang/</link><pubDate>Mon, 09 Dec 2019 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2019-12-09-parquet-golang/</guid><description>&lt;p>Neste post vou falar sobre um formato relativamente novo de arquivo de dados, e como usá-lo em Go.&lt;/p></description></item><item><title>Golang, por onde começar?</title><link>https://eltonminetto.dev/post/2019-10-08-golang-por-onde-comecar/</link><pubDate>Tue, 08 Oct 2019 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2019-10-08-golang-por-onde-comecar/</guid><description>&lt;p>De tempos em tempos algum amigo me manda uma mensagem parecida com essa:&lt;/p>
&lt;blockquote>
&lt;p>Fala meu querido!
Tudo blz?
Tava querendo iniciar no Go (influencia sua heheeh)
Tu recomenda algum curso ou ir pela documentação mesmo?&lt;/p></description></item><item><title>Usando Golang como linguagem de script</title><link>https://eltonminetto.dev/post/2019-08-08-golang-linguagem-script/</link><pubDate>Thu, 08 Aug 2019 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2019-08-08-golang-linguagem-script/</guid><description>&lt;p>Dentre as decisões técnicas que fizemos durante o desenvolvimento da &lt;a href="https://codenation.dev">Codenation&lt;/a>, uma das mais acertadas foi a escolha de Go como linguagem principal.&lt;/p></description></item><item><title>Object Calisthenics em Golang</title><link>https://eltonminetto.dev/post/2019-06-01-object-calisthenics-golang/</link><pubDate>Sat, 01 Jun 2019 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2019-06-01-object-calisthenics-golang/</guid><description>&lt;p>O termo &lt;strong>Object Calisthenics&lt;/strong> foi introduzido por &lt;a href="http://www.xpteam.com/jeff/">Jeff Bay&lt;/a> e publicado no livro &lt;a href="https://pragprog.com/book/twa/thoughtworks-anthology">Thought Works Anthology&lt;/a>. Trata-se de um conjunto de boas práticas e regras de programação que podem ser aplicadas para melhorar a qualidade do código.&lt;/p></description></item><item><title>Migração de dados com Golang e MongoDB</title><link>https://eltonminetto.dev/post/2019-01-23-migracao-de-dados-com-go-e-mongodb/</link><pubDate>Wed, 23 Jan 2019 10:09:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2019-01-23-migracao-de-dados-com-go-e-mongodb/</guid><description>&lt;p>Um dos itens abordados pela metodologia &lt;a href="https://12factor.net">&lt;em>twelve-factor app&lt;/em>&lt;/a> é a automatização de processos administrativos, como execução de scripts e migração de dados. É exatamente sobre isso que vou falar neste post: como automatizamos a migração de dados usando Go e MongoDB.&lt;/p></description></item><item><title>Monitorando uma aplicação Golang com o Supervisor</title><link>https://eltonminetto.dev/post/2018-11-28-monitorando-app-go-com-supervisor/</link><pubDate>Wed, 28 Nov 2018 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2018-11-28-monitorando-app-go-com-supervisor/</guid><description>&lt;p>Leitor amigo&amp;hellip; Se você estiver lendo este post alguns anos depois da sua publicação, lembre-se que em 2018 estávamos alucinados com &amp;ldquo;novidades&amp;rdquo; como microsserviços, Docker, Kubernetes, entre outras coisas legais.&lt;/p></description></item><item><title>Golang: usando build tags para armazenar configurações</title><link>https://eltonminetto.dev/post/2018-06-25-golang-usando-build-tags/</link><pubDate>Mon, 25 Jun 2018 08:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2018-06-25-golang-usando-build-tags/</guid><description>&lt;p>Um dos &lt;a href="http://12factor.net">12 fatores&lt;/a>, conjunto de boas práticas muito usado em projetos modernos, é:&lt;/p>
&lt;blockquote>
&lt;p>Armazene as configurações no ambiente&lt;/p>
&lt;/blockquote></description></item><item><title>Gerenciando dependências em Golang</title><link>https://eltonminetto.dev/post/2017-07-28-gerenciando-dependencias-golang/</link><pubDate>Fri, 28 Jul 2017 10:54:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2017-07-28-gerenciando-dependencias-golang/</guid><description>&lt;p>Desenvolver software atualmente se parece cada vez mais com montar um quebra-cabeça. Foi-se o tempo dos grandes frameworks, com várias funcionalidades acopladas, e é muito comum usarmos vários pequenos pacotes para montarmos nossos projetos.&lt;/p></description></item><item><title>Go na visão de um programador empreendedor</title><link>https://eltonminetto.dev/post/2017-04-10-go-visao-empreendedor/</link><pubDate>Mon, 10 Apr 2017 09:29:24 +0200</pubDate><guid>https://eltonminetto.dev/post/2017-04-10-go-visao-empreendedor/</guid><description>&lt;p>Fui convidado pelo host do podcast PodTech para falar sobre os motivos de termos adotado Go nos projetos da &lt;a href="http://coderockr.com">Coderockr&lt;/a> e no &lt;a href="http://planrockr.com">Planrockr&lt;/a>.&lt;/p></description></item></channel></rss>