O blog

Esse blog tem a função de aglutinar um pouco do que venho fazendo ao longo dos últimos anos. De restruturações, a implantações, debates sobre arquitetura, suporte à comunidade, diversos projetos open source. Enfim,  há muita coisa para falar, e quando eu esbarro em temas em que a discussão não progride por não encontrar conhecimento, eu venho aqui e tento explicar um pouco sobre as coisas que as pessoas ao meu redor tem dúvidas. É um forma de contribuir e garantir que na próxima vez que formos falar de determinado assunto, já não seja tão novidade.

A série Docker de A a Z nasceu da necessidade de conversar sobre .NET no Linux, sobre como usar uma série de elementos legais como Redis, RabbitMQ, MongoDB com um custo de aprendizado extremamente minimalista. Muito do que você vai encontrar aqui destina-se a traçar uma base de conhecimento que permita conversarmos sobre esses assuntos. Não são mega tutoriais, não detalham melhor do que nenhum manual específico, mas têm a já ambiciosa proposta de chamar sua atenção para uma possibilidade.

Oragon Architecture – estratégia para 2016

Quem segue esse blog conhece o Oragon Architecture, sabe pelo menos do que se trata e o que ele faz. Então vou encurtar as apresentações, pois já fiz isso em diversos posts.
De fato as mudanças, no desenvolvimento de software em si, nunca foram tão drásticas e disruptivas. Não há nada de ruim nisso, mas é necessário adaptar-se a novos dilemas, propostas e abordagens. Cheguei a cogitar, o abandono do projeto, por completo, acreditando que pudesse contribuir mais talvez em outro momento, com outras coisas menores, já que tudo o que tenho construído e desenhado baseia-se em algo que tende a não ser mais interessante para mim.

Veja mais

Por onde andei, andei frustrado

O mundo está cheio de pessoas felizes, sorridentes, as redes sociais estão abarrotadas por todos os lados de adoradores de potássio(1). Acho que é hora de falar do mundo real, e de algumas frustrações.
A minha ausência se dá a um caso bem complexo na carreira, quando após entregar uma plataforma inteira, completamente escalável, altamente configurável e robusta, permitindo um ganho de mais de 1000% (mil) na capacidade de processamento da empresa, esbarrei em aspectos políticos, e na necessidade de manutenção do caos, exercida por alguns e alguns.

Veja mais

AssemblyInfoVersionManager

Muitas vezes usando Jenkins para CI/CD, você deseja alterar as informações do AssemblyInfo. Nos meus projetos, sempre tenho um AssemblyInfo Global, e durante o processo de build, é mesclado com o AssemblyInfo local. Dessa forma, informações comuns a todos os projetos são mantidas em um ponto centralizado, enquanto o que compete a cada projeto, fica no…

Veja mais

NugetTools

As demandas mais comuns na hora de publicar NuGet packages Você já tentou publicar algum projeto no NuGet? Se não foi uma tentativa isolada, só para testar você deve passar pelo seguinte problema: Novas referências são lançadas Você realiza o update das referências, atualizando seu package.config Mas seu arquivo NuSpec permanece desatualizado Na hora de publicar… inconsistência! Outro…

Veja mais

Oragon Architecture – Retomando os trabalhos

Bom, talvez você tenha notado que o projeto deu uma esfriada. O motivo dessa esfriada no dia-a-dia de posts e commits é que estou no meio de uma reestruturação no iMusica. A primeira demanda para remodelar o Oragon Architecture era justamente para mudar a dinâmica de hospedagem de aplicações, permitindo a hospedagem dinâmica de aplicações,…

Veja mais

Be welcome, now boarding, Oragon Architecture 7

Bom, a freqüência de posts está bem reduzida, e isso acontece em virtude da refatoração que estou fazendo no projeto. Nem lancei a release 7, e as features solicitadas já sugerem uma grande reestruturação. What’s new Reestruturação dos metadados de troca de mensagem para tornar mais flexível e dinâmico. Permite estender a interface de management…

Veja mais

Oragon.BuildTools.NugetTools – Utilitário de linha de comando para sincronizar arquivos NuSpec

Olá, como vai você? a partir da seguintes demandas, criei um executável utilizável de linha de comando que ajuda na atualização de Nuspec files. Premissas Minha solution tem uns 25 projetos e são todas bibliotecas publicáveis no NuGet. Se tentar gerar os pacotes com base no CSPROJ, faltam metadados (assemblyInfo) para preencher todos os campos de…

Veja mais

Apresentação Oragon Architecture

Olá,
como vai você? Bom, espero que nesse dia das mães não esteja enfurnado no computador. Bom, do meu lado a minha fica distante de mais, em muitos os sentidos, portanto, lá vamos nós!
Hoje não vou falar muito, vou compartilhar apenas uma apresentação que fiz sobre algumas features do Oragon Architecture. A maioria já é bem conhecida, mas algumas outras são novinhas. Abaixo temos a apresentação, espero que goste.

Veja mais

Oragon Architecture – Application Hosting – Suporte para Nijnect e SimpleInjector e qualquer outro container

Bom, tenho escrito o bastante para nem precisar perguntar como você está! Né?!

Já estamos íntimos e agora vou contar uma novidade! Implementei o suporte a dois containers bem conceituados no mercado e simplifiquei o modelo para que você possa implementar facilmente uma nova extensão para qualquer IoC container que tenha o interesse de trabalhar.

Só para mostrar como é simples, está aqui todo o código para estender o Oragon Architecture Application Hosting para o Ninject.

Se não se convenceu ainda, aqui está o código para criar uma integração nova com o SimpleInjector

Simples né?!

A escolha dos dois frameworks se deu pelas suas características enquanto o SimpleInjector é o mais rápido em diversos benchmarks, o Ninject é de cara o mais procurado.

Veja mais

Oragon Architecture – Application Hosting

Olá, como foi sua páscoa?

Espero que tenha sido muito boa, com muitos doces e família. Já por aqui essa páscoa teve muito doce e muito trabalho. Consegui implementar algumas mudanças no Oragon Architecture, espero que goste! Nesse post vou falar um pouco sobre o novo host de aplicações, o subsistema Application Hosting. Muita coisa mudou nessa versão, e agora não exigimos mais que use Spring.Net, embora tenha suporte prioritário.

Veja mais

Roadmap da Reestruturação do Oragon Architecture

Olá, como vai você?

Espero que esteja tudo bem! Nesse post vou falar das mudanças previstas para o Oragon Architecture nas próximas semanas. No post Oragon Architecture – A evolução e os novos desafios eu falo da evolução ao longo dos anos e do que pretendemos fazer focando no big picture do projeto. Agora é hora de especificar os detalhes que envolvem a construção do projeto. Enfim, transformar uma ideia em resultado, para isso é necessário planejar. Abaixo vamos abordar a estratégia de migração do Oragon Architecture. Espero que goste!

Veja mais

Oragon Architecture – Por que? Pra que?

Olá, tudo bom? Vou falar um pouco do meu projeto pessoal o Oragon Architecture. Se você me acompanha, sabe que falo bastante dele, e vou aproveitar para responder algumas perguntas que já me fizeram nos últimos dias.   Já fui questionado algumas vezes porque criar um framework de aplicação, uma arquitetura relativamente gorda, baseada em…

Veja mais

Roadmap de Arquitetura – Um exemplo real

As vezes sou questionado sobre meus desenhos de arquitetura e porque criar tantas abstrações, tanta configuração e tantas dependências e frameworks de terceiros, alguns que só eu e um tibetano conhecemos. No post Como definir Arquitetura de Software, cito quais são os pensamentos primários necessários para se desenhar um arquitetura, mas vamos aplicar isso a um…

Veja mais

Legado Versus Design – Database First e Code First

Bom, quem acompanha o Oragon Architecture ao longo dos anos, mesmo que de forma despretensiosa, em algum momento me questiona sobre algumas decisões tomadas. Vou tentar ser breve para relatar alguns dos problemas e soluções que motivaram minhas decisões. Nesse tópico, vou falar de gestão de base de dados, Code First e Database First. Esse…

Veja mais

Oragon Architecture – A evolução e os novos desafios

Para quem trabalhou comigo no BTG Pactual viu no Oragon Architecture o início do Oragon Architecture Services, que consistia em uma camada de abstração para a criação de serviços baseados em WCF, ainda configurado side-by-side com a configuração de WCF do .Net Framrwork. Para atender às demandas da B2W Viagens, não tivemos muita evolução, mas…

Veja mais

Oragon Architecture disponível no NuGet

Bom, admito que já faz algum tempo que tenho pensado em migrar as referências do Oragon Architecture para o NuGet. A direita está a lista completa de referências, armazenadas na pasta [References], uma prática bem antiga, mas extremamente eficiente. Por diversos motivos, incluindo retrocompatibilidade, venho sofrendo com a vontade e concomitantemente com a preguiça de…

Veja mais

Oragon Architecture Now On GitHub

Bom galera, movi meu projeto pessoal o Oragon Architecture para o GitHub ( https://github.com/luizcarlosfaria/Oragon.Architecture.git ). A intenção é estar mais próximo da comunidade, permitindo melhor integração com todo mundo que usa de alguma forma o projeto. O Oragon Architecture me acompanha a muitos anos e pretendo fazer bastante material sobre ele. Espero que gostem! CheckOut It (…

Veja mais