Blog
Dev ou Ops, de quem é a responsabilidade?
Muitas e muitas vezes me envolvi em discussões sobre responsabilidades sobre serviços de suporte e...
Quais dados, logs estruturados precisam ter?
Eu estava escrevendo sobre logs estruturados, em especial sobre o Enterprise Application Log, e...
Como descrever um roadmap de arquitetura de forma clara
Em um mundo cada vez mais voltado para a tecnologia, a arquitetura de soluções desempenha um papel...
Publish com VS em produção: Impactos e Consequências
A Microsoft sem sombra de dúvidas é uma empresa com um foco incrível no desenvolvedor. Diariamente...
A Jornada DEV PRO
Ao longo dos últimos anos eu vi muitos desenvolvedores batendo cabeça, cada do seu jeito. Não...
O CÓDIGO – SEXTA – 15/JAN
8:30 - Dicionário Docker - Entendendo esses nomes novos Container, Imagem, Kubernetes, Docker,...
Kubernetes em C#, seria possível?
Você já pensou em criar seu próprio Kubernetes em C#? Hoje eu vou mostrar como você pode dar os...
O CÓDIGO – QUINTA – 14/JAN
8:30 - Poltys - Decisões de Arquitetura de um Web Crawler. Hoje eu vou detalhar algumas decisões e...
RabbitMQ – Guia de Estudo Gratuito 2021
RabbitMQ é simples e incrível. São apenas 4 componentes. Relativamente simples, mas cada um tem...
Docker Definitivo – Última turma 2020
Quando eu idealizei o Docker Definitivo eu me propus a resolver, em escala, um problema que eu...
Kubernetes sem Docker! É o fim do docker?
Ontem a comunidade parou diante da notícia de que o Kubernetes não daria mais suporte ao Docker...
Service Mesh vs API Gateway vs Proxy Reverso
Durante a live de kong da semana passada rolou uma dúvida bem pertinente, mas como a live já...
Abstrações duplicadas, quem nunca?
Quando uma abstração está exercendo seu papel, seu código tende a cada vez parecer mais simples....
Abstrações e seu ciclo evolutivo
Uma das ideias que tenho amadurecido ao longo dos últimos anos está ligado às implementações de...
Be Welcome .NET 5
É incrível ver que mesmo diante do dilema de uma mudança abrupta de rotina, o calendário de...
Register/Resolver e suas implicações para a modelagem e reaproveitamento
Você já notou que desde a chegada do .NET Core, consistentemente reaproveitamos menos nossas...
Como perder mensagens com RabbitMQ
É comum falarmos sobre receitas de sucesso e como resolver problemas, mas será que você está...
Enterprise Application Log + Access Log NGINX
Embora esse tutorial trate detalhadamente de configurações do NGINX e LogStash, no lugar do NGINX...
Ring Buffer – Antecipe, otimize e evite custos excessivos
Ring Buffer, também chamado de Circular Buffer é uma estrutura de dados muito poderosa. Seu nome...
MVP | Developer Technologies | 2020-2021
Em Outubro de 2018 eu recebi o primeiro prêmio Microsoft Most Valuable Professional! Como faltava...
Azure Functions + Containers (Parte 2/2)
No post passado o foco estava nos Agnostic Services e no uso de containers. Agora é hora de...
Azure Functions + Containers (Parte 1/2)
Certa vez rolou uma discussão sobre Function as a Service (FaaS) e Containers questionando se um...
Dockerfiles: Entrypoint vs CMD?
Você viu Entrypoint e CMD em algum lugar, seja em um dockerfile ou em um docker run, mas não faz a...
Comunidade Solidária Microsoft
Tudo bem aí? Tá sabendo da Semana Nacional de Tecnologia? Nessa segunda-feira começou a Semana...
Docker no WSL² – Walkthrough
No post anterior eu contei um pouco da história do projeto, mas agora é hora de olharmos para ele...
Enfim Generally Available do WSL2 que chega ao Windows 10 na versão 2004
A maior expectativa que eu tinha nos últimos anos era esse lançamento: WSL2 em Generally...
Tesseract OCR + ASP.NET Core
Esse projeto nasceu de uma iniciativa de combate a SPAM. Spammers no telegram usam novas táticas...
Docker Definitivo – Gravação de Aula
Meus queridos, preciso gravar aulas para a turma do Docker Definitivo, estamos na reta final....
A mecânica das decisões
Chegou a hora de avaliarmos o mercado, a situação na qual estamos e entender quais movimentos são...
Live Coding – Coravel Application Framework
Pessoal, vamos animar essa quarentena? Essa é a primeira vez que vamos fazer isso e vamos...
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.
Comprometa-se a tomar a melhor decisão
Todos os dias, ou quase todos, no suporte à comunidade vemos um estereótipo: Muita informação para...
DevWeek 2019 | Canal .NET
O Canal .NET apresenta pelo 5° ano consecutivo o DevWeek. O evento começa hoje, segunda-feira e...
Microsoft Orleans 3.0
Sobre esse lançamento vemos algumas novidades, mas eu não abordarei elas. Referenciarei alguns...
Docker Definitivo – Janela de Inscrição Aberta!
Na tarde desse domingo, dia 27/out alcançamos o limite de alunos.As inscrições para a primeira...
Dapr – Distributed Application Runtime – Primeiras Impressões
Nessa quarta-feira a Microsoft anunciou no Open Source Blog um projeto curioso chamado Dapr. Entre...
OSBAPI – Open Service Broker API
Em um mundo conectado, com cada vez mais soluções SaaS e PaaS. Há uma boa tendência e convergência...
CNAB – Cloud Native Application Bundle
No post anterior eu falei sobre Open Application Model (OAM) o que me leva a falar de CNAB...
Open Application Model
2019 tem sido um ano intenso, cheio de novidades e muitos novos padrões e standards. Kubernetes já...
Post Resposta: POR QUE ADOTAR KAFKA PARA MENSAGERIA?
Esse é um post resposta ao post POR QUE ADOTAR KAFKA PARA MENSAGERIA? do Elemar JR no site da...
Oragon Spring 2.0
Finalmente trago o Spring.NET em seu fork Oragon.Spring para o .NET Standard 2.1 e ASP.NET Core...
Proxy Reverso: Pra quê? Por quê?
Você já nos viu falando de Proxy Reverso, em geral usamos NGINX nessa tarefa, mas afinal? Pra quê...
The Microservices Journey – S1E2
No post passado eu citei alguns elementos que precisam ser levados em conta, e não detalhei muita...
The Microservices Journey – S1E1
Ainda não estruturei como uma jornada, portanto o começo dessa jornada é um brainstorm. Como toda...
Consciência Crítica vs Comportamento de Manada
Tomar decisões implica, ou deveria implicar, em conhecimento prévio somado ao discernimento e...
Docker – de A a Z – 20 – Volume TMPFS – o poder do file system em memória
Uma das coisas lindas do Linux é a separação volumes e file system. E você não faz ideia do que dá...
Azure na Prática
Bom, você não está aqui à toa, você me conhece. Muito provavelmente você também conhece essa...
Dev Desktop – Fresh Setup – Windows Features & Tools
As vezes me peguntam sobre meu setup. Bom, nessa última semana por conta das ferramentas de...
Entendendo Docker
Afinal, o que é essa sopa de letrinhas? Docker, dockerd / daemon, Docker Toolbox, Docker for...
O fim do IIS
Talvez você esteja acostumado com o Internet Information Services, talvez conheça-o, assim como...
Desenvolvimento de Software: Não deixe seu código-fonte contar mentiras para outros programadores
No telegram fazendo suporte à comunidade, acabei me deparando com um exemplo que me chamou muita a...
Isso não é microsserviço!
No post passado eu introduzi uma analogia sobre o automobilismo profissional, e como os avanços...
Sobre Formula 1 e Microsserviços
A busca pelo Santo Graal, agora personificado nos microsserviços, causa uma euforia semelhante ao...
DevHero – Resumo
Pessoal, carreira dev nunca foi a menina dos olhos e nunca foi um tema que eu tivesse interesse de...
Oragon Design Guide – Agnostic Services
Seu serviço deve rodar sob qualquer host, ou sem host (como uma dependência de library), com...
Eu tentei, tentei muito e falhei
Pessoal, vou contar um pouco da minha história, mais especificamente um subset, acho importante...
Oragon – Princípios de Design – Complexidade Reside na Arquitetura
Alguns poucos lembram, pois alguns poucos estavam lá, mas quando comecei minha carreira...
Global DevOps Bootcamp @ Le Wagon & Coders In Rio
Vai rolar amanhã o Global DevOps Bootcamp na Le Wagon - Sábado, 15 de Junho 2019 - 10 às 17h...
gRPC no ASP.NET Core – Guia Introdutório
Há inúmeros bons argumentos para deixarmos de usar HTTP + JSON para boa parte de nossos serviços,...
Envoy ganha novo amigo: Consul
Essa é uma notícia que poderia passar despercebida, mas não, é muito relevante para nós. Se você...
Diário de Bordo – Poltys – #2
Esse é um post complementar que endereça algumas dúvidas da galera que viu esse post e me chamaram...
De Docker Definitivo para Cloud Native .NET
Nada muda por dentro, mas tudo muda por foraSabe quando você está escrevendo código e dá um nome ruim para uma classe ou um método, ou mesmo para um projeto ou library? Pois bem, Docker Definitivo foi um desses nomes errados.
Por dentro Docker era apenas uma fração, o ponta-pé inicial do curso e por mais que eu tentasse expressar o que víamos aqui dentro para quem estava do lado de fora, eu simplesmente não conseguia.
Agora temos um nome que representa o que fazemos aqui!
Seja bem vindo Cloud Native .NET!
Cloud Native expressa esse desenho de solução projetado para a cloud, sem apego a nenhum cloud provider.
.NET expressa o foco e o compromisso com o desenvolvedor .NET, minha tribo.
Diário de Bordo – Poltys – #1
Talvez se lhe perguntarem como você anda de bicicleta ou como dirige possa lhe deixar constrangido(a). Pode até parecer uma pergunta quase impossível de se responder. Fato é que quanto mais habituados com a forma de lidar com alguma situação, menos pensamos sobre o...
Adeus MobyLinux – WSL 2 Suportará Docker sem a necessidade de máquinas virtuais no Windows
São tantos títulos possíveis para esse post: Windows embarca Kernel Linux real (v4.19) WSL suporta Docker sem VM's São muitos títulos possíveis para um só anúncio, e por mim um dos mais esperados para esse ano (na verdade espero isso desde a primeira release do WSL)....
Feedback da Comunidade
Nem todo mundo gosta de ouvir verdades, eu particularmente gosto. Por mais dura que seja, eu me sinto à vontade para pedir feedback e compartilhar com vocês o resultado. Feedback, pra que? Já faz 2 anos que rodo pelo menos 2 vezes por ano um feedback com a comunidade,...
MVP Conf 2019 – Avaliação da Audiência
Pessoal, tenho uma notícia muito boa e gostaria de compartilhar, mas também de agradecer. Dia 12-13 / Abril rolou o MVPConf. Não está sabendo? Eu conto um pouquinho aqui 👇 https://gago.io/blog/mvpconf-2019/ Bom para minha felicidade saiu o resultado do evento...
Notification Pattern – Estão te vendendo um conceito errado
Notification Pattern prevê uma forma permissiva que troca exceptions por notificações em um determinado contexto, no entanto embora a maioria das publicações a respeito falem em não lançar exceptions, veremos que isso não é bem assim. Esse post é uma retaliação...
Don’t Do That – One size fits all
Não! Uma solução ou decisão não serve para todos os casos! Com base nas discussões da semana e muita farpa trocada em grupos de discussão, vejo cada vez mais jovens buscando uma solução única para os problemas de arquitetura e design. Seja ao modelar um domínio, ao...
Abstrações – Tradeoffs e co-responsabilidade
Embora a prática seja linda, é hora de falarmos de algo abstrato: as próprias Abstrações. Primeiro preciso lembrar que essa é uma opinião pessoal, fruto das diversas experiências, criando ou consumindo abstrações das mais diversas em projetos de todos os tamanhos. O...
MVPConf 2019
Apesar dos mais de 2000 participantes, sempre tem gente que não faz ideia do que está acontecendo. São os perdidos! Não tem problema, vou te contar o que rolou. Dias 12(sexta) e 13(sábado) de Abril rolou o MVPConf LATAM 2019, um evento organizado pelos Microsoft MVP's...
IntelliCode no Visual Studio 2019
Em menos de 6 minutos nesse vídeo vemos, como habilitar, como treinar seu primeiro modelo, como compartilhar com seu time e como importar um modelo criado por outra pessoa. Além, de claro, mostrar a diferença e o impacto em produtividade no dia-a-dia! Não perca esse...
RabbitMQ & AMQP – #8 – Redis, um Message Broker?
Então você já usa Redis no seu stack, e optou por usá-lo também para publicar mensagens de um lado para outro em sua aplicação. Talvez seu amigo tenha dito que "não precisa de RabbitMQ", ou que "é um canhão para matar uma formiga". A começar pela pergunta: Você busca...
Dev Desktop .NET Core: Windows ou Linux?
Esse post fala sobre ambiente de desenvolvimento. O lugar onde você está escrevendo código, compilando, rodando, debugando, e testando o que está produzindo. Aqui vão recomendações para quem está começando. Essas recomendações são amparadas pela minha experiência...
RabbitMQ & AMQP – #7 – Pipelines & Youtube Downloader
No finalzinho de 2017 eu falei de um projeto chamado youtube downloader, um projeto de exemplo, experimental, que emprega o uso de filas para fazer todo o processo de download e encoding de mídias, a partir do youtube. Mesmo tendo o propósito de exclusivamente falar...
Containers no Ambiente de Desenvolvimento #MVPConf
Pessoal acabou de sair a confirmação da minha palestra no MVPConf na trilha #DevOps. Você que ainda não comprou seu ingresso saiba, corre lá no MVPConf.com.br e compre seu ingresso! Todo MVP e principalmente os MVP's Community Leaders (que lideram comunidades...
Insights da Atlassian – The future of software development
Saiu na Atlassian um report com alguns indicadores muito legais. Uma pesquisa feita com um público controlado de 500 profissionais apontou: 73% of software development teams spend 10% – 50% of their time on updates and upgrades to their self-hosted software. Who knew...
Não estude por tutoriais
A polêmica continua, e essa aqui é uma dica que vale ouro. A galera da mentoria sempre fica "chateada" quando eu digo isso, mas é a pura verdade para mim. Hoje abordamos muitos assuntos, mas não abordamos métodos para estudar, eu vou contar o que faço. Afinal, o que...
RabbitMQ & AMQP – #6 – Show me the code
No post anterior eu mostrei como as coisas acontecem na interface de gerenciamento do RabbitMQ. Agora é hora de mostrar as principais iterações com o RabbitMQ via código. Naturalmente, privilegiarei C# aqui, mas você pode usar as principais tecnologias para realizar...
RabbitMQ & AMQP – #5 – Management UI, Filas e Exchanges
Vamos começar? Que tal de fato olharmos para o RabbitMQ para nos acostumarmos com ele, e dar vida ao que falamos até agora? Subindo RabbitMQ com docker Há diversas formas de subir uma instância do RabbitMQ, uma delas é com Docker, e está aqui um exemplo com Docker...
RabbitMQ & AMQP – #4 – Perguntas e Respostas
Vamos às principais perguntas e respostas sobre RabbitMQ e mensageria em geral. Fugirei das formalidades e serie mais raso nas argumentações. A tentativa é de deixar as respostas mais claras. Como eu pego uma mensagem na fila? Esse nem é uma dúvida, é um erro...
Forçar IP’s nos Containers Docker – Erro de Principiante
Se você tem um background de infra grande e está acostumado a entregar IP's para suas máquinas virtuais, é super natural que você considere essa a solução ideal para containers. Não é! Se sua resposta foi sim, você não poderia estar mais errado! Em um ambiente com...
RabbitMQ & AMQP – #3 – Conceitos
Agora é o momento de falarmos brevemente sobre cada elemento do AMQP. Nesse post ainda estamos tratando com superficialidade, mas é importantíssimo passar por aqui para progredirmos nessa jornada. Standard vs Implementação Standard que trata de mensageria. No AMQP não...
RabbitMQ & AMQP – #2 – Pra que Mensageria?
Embora fosse a hora de falar do standard, acho que é preciso definir mensageria antes. Vamos aos principais pontos. Mensageria É pra mim? Talvez você já tenha se perguntado a respeito do sentido de usar uma solução de filas, mensageria, enfim um message broker como...
RabbitMQ & AMQP – #1 – Prefácio
Todas as semanas, algumas semanas mais, outras menos, me questionam sobre RabbitMQ. Sua utilidade, se vale a pena ou não aprender ou usar, ou até se não é mais adequado criar uma tabelinha no banco para controlar o que foi processado e o que não foi. Na prática a zona...
Oragon.Spring no ASP.NET Core – Get Started Tutorial (PT-BR)
Quem trabalhou de perto nos meus projetos sabe que tenho uma opinião bem radical a respeito da maioria dos frameworks de injeção de dependência. Aliás, compartilhando contigo minha opinião: Eles fazem injeção de dependência, mas pouco sobre IoC, e podem, diversas...
Código Paranormal – Um fenômeno conhecido
É mais comum do que você imagina, pessoas considerarem programação algo quase mediúnico, cheio de eventuais efeitos e manifestações paranormais. O que é uma abominação, visto que se de fato fosse algo de outro mundo, o Stack Overflow poderia ser considerado um site...
[Workshop] [Online] [Pago] – Docker + Bancos de dados #NaPrática
Você deve ter ouvido falar que Docker não serve para executar seus bancos de dados de produção, eu concordo, mas talvez você não saiba que essa não é a única forma de usar docker para aumentar sua capacidade de entregar projetos com Bancos de Dados. Docker pode te...
Riscos Técnicos: Tomar ou Declinar?
Então você se deparou com a necessidade de tomar decisões e está inseguro? Será que alguém já fez aquilo que você está pensando? Será que sua decisão é uma gambiarra ou não? Bom, eu já me questionei sobre isso diversas vezes, e algumas decisões difíceis de fato já...
Modelagem – Conectando os pontos
Já faz muito tempo que gosto de modelar os elementos de uma arquitetura como componentes reaproveitáveis, em geral abstrações que me proporcionem a qualquer consumidor simplesmente usá-la, e para isso há algum esforço na modelagem para abstrair aspectos que são...
Estratégia Técnica
Meio a tantos incentivos e pressões para gerarmos ciclos de entrega cada vez mais curtos, não passam despercebidas as oportunidades de entregar código de baixa qualidade para agradar um chefe, um gerente, um cliente, ou quem quer que esteja interessado na data da...
Jornada DevHero 2019 – 1ª Edição
Uma minoria de devs nunca se questionaram a respeito das suas conquistas, dos seus objetivos e das suas realizações. Fato é que a maioria vive esse dilema, principalmente no início da carreira. Alguns tentam usar toda a sua malandragem para queimar etapas e o mercado...
Feedback 2018 – Roadmap 2019
2018 chega ao fim, e 2019 vem dando as caras. Mas afinal, o que eu posso dizer de 2018? 2018 foi incrível em diversos aspectos, foi um ano pessoalmente muito gratificante, e profissionalmente cheio de realizações e feitos importantes. Mas esse não é um...
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.
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.