fbpx

.NET

Cloud Native e Cloud Agnostic

para rodar .NET em qualquer Cloud
ou sem Cloud sempre de forma profissional!

Últimas publicações

Aqui estão os últimos 12 posts de mais de 400…
Discord — Nossa nova casa!

Discord — Nossa nova casa!

Acontecimentos recentes se desdobraram em bloqueio do telegram. Desde a noite de quarta-feira estamos sem Telegram em todo o território nacional. Assim, o mensageiro deixou de ser uma opção para nossas comunidades de alunos. E com isso fomos obrigados a abandonar o Telegram para ir para o Discord....

ler mais
Adicionando ChatGPT na sua aplicação

Adicionando ChatGPT na sua aplicação

A primeira vez que ouvi falar em chatGPT fiquei empolgado com o avanço das IA's Generativas, mas nem passou pela minha cabeça que já fosse possível usar em uma aplicação real. Ao encontrar no ChatGPT inputs e outputs em texto livre, que hora traz texto normal, hora markdown, hora outros formatos,...

ler mais
Entendendo CORS

Entendendo CORS

CORS é um daqueles assuntos que atrapalha de iniciante a veteranos. Considerando que toda nova aplicação poderá sofrer com erros de CORS e muitas vezes leva algum tempo para resolver, ou pior, muitas vezes resolvemos da forma errada, esse post vem para ajudar nesse assunto. Hoje abordaremos tudo...

ler mais
O PODER DO ASSÍNCRONO – 2 Episódios

O PODER DO ASSÍNCRONO – 2 Episódios

Você já se perguntou como empresas como Amazon, Google e Netflix garantem que suas aplicações estejam sempre disponíveis, resilientes, escaláveis, eficientes e confiáveis? Não há uma única resposta, mas uma delas é processamento assíncrono, especialmente com a utilização de mensageria e filas....

ler mais
Resiliência de Microsserviços

Resiliência de Microsserviços

Como construir microsserviços resilientes: dicas e estratégias para garantir a continuidade do seu serviço Você já ouviu falar em resiliência? No contexto de software, ela se refere à capacidade de um sistema ou aplicação lidar e se adaptar a problemas e situações adversas. Para microsserviços, a...

ler mais

Fique por dentro e não perca nada

Menos de 10% da audiência recebe o conteúdo publicado

A newsletter é o meio mais eficiente de furar o bloqueio dos algoritmos das redes sociais e fazer o conteúdo chegar até você.

Assim evitamos poluir as comunidades com chamadas para eventos e lives.

Essa é forma mais eficiente de receber meu conteúdo.

Somos mais de 6k inscritos

Projetos Open Source

projetos ativos e projetos antigos disponíveis para estudo

Nenhum resultado encontrado

A página que você solicitou não foi encontrada. Tente refinar sua pesquisa, ou use a navegação acima para localizar a postagem.

Entender | Analisar | Projetar | Desenvolver | Implantar | Manter

A segurança que você busca não está em um tutorial

Para entender uma tecnologia é importante entender o que influenciou sua criação, o que ela faz de fato, como ela faz. Para que então se sinta seguro e confiante a respeito das decisões que está prestes a tomar.

De um lado precisamos compreender o que está sendo feito por baixo dos panos para descobrir como extrair o máximo de uma tecnologia ou, ao menos, não atrapalhar o bom funcionamento dela.

O Cloud Native .NET é uma jornada de descoberta sobre tecnologias e patterns que fazem parte da maioria dos softwares que usamos, que somos usuários e que suportam e toleram altas cargas de trabalho, de forma eficaz, eficiente e sustentável.

 

É primeiro entendendo o que eles fazem, que podemos descobrir oportunidades e evoluir no que fazemos…

 

 

Conheça nosso Podcast

DevShow Podcast

Em 2019 resolvemos criar um podcast, o DevShow Podcast, desde lá são mais de 40 episódios com muito assunto legal, sempre com essa pegada pessoal, falando coisas sérias, mas sem o menor compromisso com a formalidade.

Saiba mais...

.NET

Do WCF para ASP.NET Core Web API com Docker no Linux 2/2

Do WCF para ASP.NET Core Web API com Docker no Linux 2/2

Agora é hora de mostrar como podemos tirar proveito dos contratos (interfaces) existentes para promover essa migração. Esse é o momento em que a “SOPA de LETRINHAS” ou melhor, os design patterns fazem sentido. Graças a eles, essa migração que poderia ser dolorosa e desastrosa, se torna algo fácil. Não é simples, mas exige pouco esforço. Esses patterns permitirão que o cliente tenha APENAS A FACTORY alterada nessa transição.

ler mais…
Do WCF para ASP.NET Core Web API com Docker no Linux 1/2

Do WCF para ASP.NET Core Web API com Docker no Linux 1/2

Não sei se você conhece WCF, rodando uma enquete eu percebi que uma parcela considerável sequer conhece WCF. Hoje vamos costurar o assunto com um outro post para que eu possa mostrar como fazer uma migração de WCF pra Web API no ASP.NET Core, rodando em containers Linux.

Nosso cenário de teste é super simples, uma API de Cálculo, que só tem uma operação de SOMA. Sem acesso a dados, uma API tão simples quanto isso.

ler mais…
Troubleshooting Comentado – Docker – ASP.NET Core – NGINX

Troubleshooting Comentado – Docker – ASP.NET Core – NGINX

Já faz muito tempo que eu queria fazer esse formato. Documentar uma ação qualquer de troubleshooting na comunidade para poder transformar em conteúdo, fazendo pausas didáticas e interrupções para poder contextualizar no formato de quebra da 4ª parede.

O Felipe Bossolani, que também é moderador de alguns grupos nossos no telegram, estava estudando NGINX, postou uma dúvida e putz eureka! Pedi para transformar isso em conteúdo e pronto!

O video segue o modelo de um toubleshooting com intervenções onde eu paro para detalhar o porque de cada coisa.

Espero que goste do formato!

Arquitetura

RabbitMQ Operators | Entendendo Kubernetes Operators

RabbitMQ Operators | Entendendo Kubernetes Operators

Embora não seja comum ver conteúdo sobre o assunto, Operators está no coração do Kubernetes e esse definitivamente é um dos temas mais legais na minha opinião no que diz respeito ao projeto.

Nessa série composta por 3 posts, vamos abordar step-by-step os 2 operators do RabbitMQ, mas hoje vamos primeiro elucidar o que são Operators e CRD’s.

ler mais…
Além das 3 camadas | Containers

Além das 3 camadas | Containers

Docker está para o desenvolvimento de software como o IPOD esteve para a indústria da música. Não inventou a música portátil, mas revolucionou a experiência dos usuários.

Se você trabalha com algum backend, java, .NET, node, python, ruby… e docker não está no teu radar, meu amigo… você tá ferrado!

ler mais…
RabbitMQ | Eficiência | Como jogar dinheiro fora, case da Digital Ocean

RabbitMQ | Eficiência | Como jogar dinheiro fora, case da Digital Ocean

A Digital Ocean é um Cloud Provider famoso e muito usado no mundo todo, mas nem por isso deixaram de cometer o amadorismo de usar bancos de dados como filas. E pior, para atender um throughput pífio! Conclusão: Mesmo sendo owners de infraestrutura, ou seja, com dinheiro infinito para infra, sentiram na pele a dor de ter de aguentar um banco de dados com 15 mil conexões. Com RabbitMQ, não passou de 100!

Esse é mais uma demonstração que em casa de ferreiro o espeto é de pau.

Eles sentiram a dor, mesmo com dinheiro infinito para infra. Agora imagina você, ou melhor, seu projeto, que está avaliando custo de cloud semana-a-semana?

A D.O. fez um post, e vamos narrar o que descobrimos com essa implantação incrível de RabbitMQ.

ler mais…

Containers

Do WCF para ASP.NET Core Web API com Docker no Linux 2/2

Do WCF para ASP.NET Core Web API com Docker no Linux 2/2

Agora é hora de mostrar como podemos tirar proveito dos contratos (interfaces) existentes para promover essa migração. Esse é o momento em que a “SOPA de LETRINHAS” ou melhor, os design patterns fazem sentido. Graças a eles, essa migração que poderia ser dolorosa e desastrosa, se torna algo fácil. Não é simples, mas exige pouco esforço. Esses patterns permitirão que o cliente tenha APENAS A FACTORY alterada nessa transição.

ler mais…
Do WCF para ASP.NET Core Web API com Docker no Linux 1/2

Do WCF para ASP.NET Core Web API com Docker no Linux 1/2

Não sei se você conhece WCF, rodando uma enquete eu percebi que uma parcela considerável sequer conhece WCF. Hoje vamos costurar o assunto com um outro post para que eu possa mostrar como fazer uma migração de WCF pra Web API no ASP.NET Core, rodando em containers Linux.

Nosso cenário de teste é super simples, uma API de Cálculo, que só tem uma operação de SOMA. Sem acesso a dados, uma API tão simples quanto isso.

ler mais…
Sobre 1° de Agosto e o Fim do Hangouts On Air – Como resolvemos com Docker, NGINX e RTMP no Azure Container Instances

Sobre 1° de Agosto e o Fim do Hangouts On Air – Como resolvemos com Docker, NGINX e RTMP no Azure Container Instances

1° de agosto de 2019 foi um dia agitado. Fomos surpreendidos com a ausência do Google Hangouts On Air, mas logo reagimos às mudanças com uma solução baseada em Azure Container Instances, NGINX, Docker para fazer streaming a 60FPS em 1080p!!! Streaming gamer para live de código 😎!!!

Confira o vídeo no Youtube ou no Facebook.

Youtube

Não deixe de curtir e inscrever-se.

Ao chegarmos a 1k vou fazer uma live comemorativa!

E vamos escolher o tema dessa live juntos!

Facebook

https://www.facebook.com/gago.io/videos/1666648776811600
Docker Definitivo – Janela de Inscrição – JAN/2020

Docker Definitivo – Janela de Inscrição – JAN/2020

Todo os dias tomamos decisões das mais variadas.

Dormir mais 5 minutos, pegar o celular antes de dar bom dia, fazer café? Será que dá tempo? Tomar café na rua?

Ah! Maldito café de máquina!

Que caminho tomar? Carro, metro, trem ou ônibus?

Prestar atenção na paisagem ou ler um livro? Escutar uma música, assistir uma série no celular ou simplesmente tentar dormir mais um pouco?

O que vestir? Jeans ou social?

Com quem almoçar? Onde almoçar? O que comer?

Boas são as chances de você não estar tomando absolutamente nenhuma dessas decisões diárias. Há boas chances de que uma parte considerável dessas micro-decisões tenham sido tomadas semanas, meses, ou até anos antes. Há casos em que nem sequer podemos escolher.

Quais decisões de fato você tomou hoje? O que você de fato avaliou pontos positivos e negativos, antes de decidir?

Dizem que toda decisão consiste em uma análise, um juízo e uma sentença.

Ao escolhermos o caminho A, estamos abdicando do caminho B, pelo menos naquele momento.

Não fomos projetados para lidar com a perda, mas toda decisão carrega consigo uma ou mais pequenas perdas.

É deixando de tomar pequenas decisões, que damos lugar a uma vida robótica. Uma vida cinza.

É arriscando decidir, que podemos arriscar ter um resultado diferente.

É arriscando tentar um novo caminho para o trabalho, que nos damos a chance de descobrir um atalho, uma paisagem mais agradável, ou simplesmente esbarramos com um daqueles sorrisos que parecem um raio de sol em uma manhã chuvosa.

As decisões e suas consequências produzem resultados compatíveis.

Mas ok, não queremos que tudo seja aventura, previsibilidade também faz bem. É preciso haver um balanço entre risco e segurança/previsibilidade.

Você já pensou se cada decisão importante que você tomasse, tivesse garantia? Tivesse alguém que assegurasse tua decisão mais ou menos assim:

Olha, pode dar muito certo. Mas ruim, não dá, eu garanto!

Tipo: Você compra um carro, passa 1 mês com ele. Se não gostar? Devolve e pega todo o dinheiro de volta. Isso, 100% do valor… sem linhas miúdas, sem entrelinhas, somente isso: 100% do valor!

A essa altura do campeonato, eu imagino que você saiba que Docker Definitivo é o meu pseudo treinamento de Docker. (Pseudo? Eu falo sobre isso mais tarde).

Voltando, essa garantia é isso que estou fazendo no Docker Definitivo, eu reembolso em absolutos 100% caso você desista no primeiro mês.

Não entendeu? Se em 30 dias, por qualquer que seja o motivo, você desistir, terá 100% do seu dinheiro de volta. Não importa o motivo. Você pode não ter gostado da cor do site.

Mas por que isso?

Eu estou comprometido com a produção de uma imersão que lhe possibilite tomar decisões. Não é a toa que a primeira turma começou 28/10 e ainda falta pelo menos 2 meses de curso. Isso, se eu mantiver a lista de itens sem adições.

Não faz sentido pra mim, ter um treinamento raso, que fale das mesmas coisas que todo mundo fala. Eu não estou parando minha vida, para te dar algumas aulas. Eu estou parando minha vida para poder transformar a sua carreira, seu entendimento sobre arquitetura, com a ajuda de uma estrutura de pensamento, de estudo, que solidifique conceitos, premissas que te mostre que dá sim para ser muito, muito sério no processo de aprendizado. Para mostrar que fazendo da forma certa, sem jeitinho, fazemos certo desde a primeira vez.

Não faz o menor sentido você sair desse treinamento tendo de comprar outros treinamentos, outras milhares de coisas. Claro, se você quer se aprofundar, em cada um dos elementos, stacks e tecnolgias que não são Docker, ok você até pode querer comprar, mas há boas chances de você conseguir caminhar sozinho. Mas no que diz respeito a entender Docker e compor soluções com os mais variados recursos como Api Managerrs, Api Gateways, Proxy Reverso, Load Balancer, Banco, Cache, Mensageria, se você quer compor soluções com esses elementos: Aqui é o teu lugar.

Você no mínimo vai conseguir definir soluções com esses elementos. Você saberá decidir quando e como implantar esses recursos.

E se por algum motivo, não lembrar? Terá 4 anos de acesso ao curso para poder voltar nele e assistir novamente.

Mas como assim decidir?

Bom, não sei se você lembra, mas na minha opinião, cada cenário, cada cliente, cada projeto tem seu DNA, sua individualidade. Isso faz com que a solução para o problema de um cliente não seja a solução para o segundo cliente. Eu estou aqui para te ajudar a tomar decisões caso-a-caso. Não quero te ver tomando decisões enlatadas. Estou aqui para te ajudar a olhar caso-a-caso e tomar suas próprias decisões com base ou na experimentação ou com base nas documentações. Sem mi-mi-mi, se está escrito, usaremos, se não está escrito, testaremos. Brutalmente simples como isso.

Comprometimento

A propósito, a respeito de comprometimento, vou te mostrar uma conversa:

Esse chat foi com o Vagner Melo, Brasileiro em Portugal, já estava me cobrando sobre o horário da aula. Justo, eu estava atrasado.

Aqui está minha resposta pra ele.

Aconteceu um imprevisto que inviabilizou o acontecimento da live a partir da minha casa. 20:45 eu estava chegando no hotel:

Todo suado, com 4 mochilas, mala, ring light, cameras, microfone… e R$ 597,45 reais mais pobre.

Ao chegar na recepção, o único atendente disponível estava pendurado no telefone, resolvendo um problema de uma cliente indecisa sobre quantos quartos deveria pegar, visto que vinha com a mãe e 2 crianças.

Bom, não foi um dia fácil, não foi uma noite fácil. Tive de improvisar. Estava sem roteiro nenhum, sabia que tinha uma big idea da live, e só. Eu tinha todos os motivos do mundo para remarcar. Eu tinha todos os motivos para adiar.

A Aula 3 aconteceu 100% no improviso.

Eu só tinha uma Big Idea. Mas não havia estruturado nenhum roteiro. E sim, eu faço, mesmo que mentalmente, o roteiro de cada live.

E note, eu monto um mapa de precedência de conteúdo, de forma a construir uma narrativa:

  • Com um início
    • Introdução
  • Defesa de uma grande ideia
  • Nivelamento (conceitos e premissas)
  • Conteúdo
    • Do mais simples
    • Para o mais complexo
  • Hands on

Essa estrutura está sempre na minha cabeça, o que fazer antes do que, qual a sequencia. Eu paro para pensar isso, para estruturar isso.

Mas não, nessa sexta eu não pude fazer nada disso. Eu estava ocupado tentando resolver problemas e solucionando questões. Por fim o hotel foi a última solução para não adiar a live, e me custo R$ bastante.

Esse é o nível do meu comprometimento.

Faça parte!

Agora é a sua chance de fazer parte do maior treinamento de Docker do brasil!

Já superamos todas as expectativas para essa turma, que está confirmada!

Mais info | DockerDefinitivo.com

Ah, mas você só quer ganhar dinheiro!!!

A forma menos eficiente que eu conheço para quem quer vender algo, é produzir um concorrente gratuito!

Docker de A a Z é uma série gratuita. Que “concorre” diretamente com o Docker Definitivo.

A diferença é que o Docker de A a Z é limitado em atenção, em acompanhamento. Não tem o viés de uma jornada, com uma turma. Não tem lives quase que semanais.

Se o objetivo fosse ganhar dinheiro, não faria sentido ter produzido tanto conteúdo gratuito!

Não teria produzido tantos stacks.

Não teria disponibilizado tantos projetos, no github, ou no docker hub.

Dezenas de milhares de “potenciais clientes” aprenderam docker com o Docker de A a Z. No marketing eles chamam de leads!

Sinceramente! Para muitos só faltava um detalhe. E eu fiz questão de atender a essa expectativa. E o conteúdo gratuito continua arqui: gago.io/docker/.

Use o conteúdo gratuito para me testar

Se quer ver como eu ensino, como eu apresento conteúdos técnicos, você tem zilhões de horas no youtube.

Esse material serve para você me avaliar!

Aproveite!

Limite de Vagas

A primeira turma eu limitei a 20 participantes.

Eu precisava validar o conteúdo, o formato, a didática.

Eu precisava de um ambiente controlado para validar o formato.

Agora é hora de abrirmos para mais gente, e nosso limite será 10 vezes maior.

Garantia

Meu compromisso é com o resultado. Com o teu engajamento nessa jornada. Inclusive é por isso que eu não deixei a janela de inscrição aberta por muito tempo.

E para mostrar meu compromisso, de forma contundente! Te dou uma garantia de 30 dias.

Uma garantia incondicional!

Então se você acha que não tem tempo, não tem aptidão, não tem skill ou sei lá o que. Basta apertar um botão e desistir. Ter seu dinheiro de volta!

São 30 motherfucker dias de garantia!

Sim, todo o risco é MEU, e somente MEU.

Ou você gosta do Docker Definitivo! E esse projeto traz para você a transformação que você quer, ou ok, você cancela e pronto, está tudo bem!

Janela de Inscrição

As inscrições começam hoje, segunda-feira 06/JAN 8:00, finalizando segunda-feira 13/JAN 7:59, ou quando a turma lotar.

O evento que ocorrer primeiro, causa o fechamento da janela.

Vale lembrar que a na última turma bastante gente ficou de fora.

Um conselho? Não deixe para última hora.

Abertura

00DIAS
00HORAS
00MINUTOS
00SEGUNDOS

Fechamento

00DIAS
00HORAS
00MINUTOS
00SEGUNDOS

Depoimentos

Esses são depoimentos que eu coletei ao longo de Novembro e Dezembro.

https://www.youtube.com/watch?v=NmRenbTZ214
https://www.youtube.com/watch?v=njRGHQIu-C4

Esperar a próxima turma?

Hoje eu não tenho previsibilidade sobre uma terceira turma. Não sei se farei, não tenho datas, não tenho nada. Não tenho visibilidade alguma a respeito disso. Sequer estou certo se será nesse formato.

Dessa forma, o que eu posso lhe oferecer e o compromisso que eu tenho contigo é para essa turma que começa agora.

Ainda dá tempo, você precisa participar da Jornada Docker de A a Z para poder ter acesso à essa oferta.

Porque?

  • Eu quero que você entenda como eu ensino.
  • Eu quero que você se sinta familiar com a forma como eu explico.
  • Eu quero que você avalie se essa forma é uma forma compatível com tua forma de aprender.
  • Eu quero que você tente caminhar sozinho, com suas próprias pernas e se possível que use o Docker de A a Z para aprender. Há chances razoáveis do Docker de A a Z ajudar muito nessa sua jornada.
  • O Docker Definitivo é um curso para quem de fato precisa de ajuda, precisa de aulas básicas, de fundamentos, precisa ser pego pela mão na hora de criar um servidor, pra quem ainda tem medo da tela preta e precisa dos passo-a-passo, em detalhes.

Inscreva-se em gaGO.io/docker/jornada/ para assistir aos 3 vídeos da série.

E não deixe de conferir posts e vídeos sobre docker em gaGO.io/docker/.

 

Mensageria

EasyNetQ em perspectiva

EasyNetQ em perspectiva

Abstrações são desenhadas para resolver problemas e abstrair um ou mais aspectos de uma implementação. Uma abstração pode entregar redução de complexidade, maior coesão, configuração facilitada, adaptação e até mesmo suprimir aquilo que não nos é relevante quando um novo padrão emerge do seu próprio uso.

ler mais…
RabbitMQ – Guia de Estudo Gratuito 2021

RabbitMQ – Guia de Estudo Gratuito 2021

RabbitMQ é simples e incrível. São apenas 4 componentes. Relativamente simples, mas cada um tem detalhes que escondem ouro.

Se você conhece estruturas de filas, pode pensar que já sabe do que se trata. E é aí que mora o engano. O RabbitMQ não é simplesmente uma infraestrutura de filas, é um Message Broker. Essa categoria exige que tenha habilidades que vão muito além de simplesmente possuir filas FIFO. Há detalhes que levariam semanas ou meses para implementar e anos para estabilizar, dependendo da linguagem.

Por isso defendo seu uso nos cenários mais variados.

ler mais…

Conteúdo e Posicionamento

.NET + Cloud Native + Cloud Agnostic

.NET | DevOps | Microservices | Containers | Continuous Delivery

.NET muito além do .NET

O mínimo de infra que todo dev e/ou arquiteto deveria saber

Aplicações distribuídas e comunicação entre serviços (RabbitMQ / gRPC)

Containers, Docker e Kubernetes

+

RabbitMQ e Mensageria e comunicação assíncrona entre aplicações e serviços

Arquitetura de Software e Arquitetura de Solução com foco no melhor aproveitamento em projetos .NET

Nossos números

Desde 2002 trabalhando com desenvolvimento de software

Desde 2002 ajudando outros devs

Desde 2010 trabalhando exclusivamente como arquiteto

Contas atingidas no telegram/facebook

Alunos

Microsoft MVP

2018-2020

2020-2021

2021-2022

2022-2023

2023-2024

2024-2025

Conteúdo Gratuito

Tudo que está aqui no gaGO.io é conteúdo gratuito, feito para ajudar desenvolvedores dos mais variados níveis.

Cursos

Tenho também alguns programas de acompanhamento. Esses programas tem a função de ajudar desenvolvedores em áreas específicas ou de forma mais abrangente na jornada do arquiteto.