Lançamos, na última semana, quatro novos vídeos no canal técnico da EximiaCo no Youtube. Começamos a semana falando sobre como avaliar a necessidade de micro-otimizações durante a escrita de código. Também apresentamos algumas técnicas comuns e métodos confiáveis para verificar resultados. Também iniciamos mais uma série no canal: “DDD do jeito certo”. No primeiro vídeo, falamos sobre o […]
Patrick Smacchia recomenda: Dê atenção aos “feedbacks” das ferramentas de análise estática
“Como ser um programador melhor?”. Encerramos uma Patrick Smacchia, para nosso canal no YouTube, fazendo exatamente essa pergunta. No vídeo abaixo, destacamos o que ele respondeu. Patrick é o líder criativo e técnico do NDepend – Uma das melhores para análise estática de código .NET disponíveis do mercado. Ele enxerga código como “dados” e, por isso, há […]
Como “Bloom Filter” pode ser utilizada para melhorar a performance
O código mais rápido que existe é aquele que não precisa ser executado. Considere, por exemplo, que esteja implementando uma funcionalidade para recuperação de senhas. Nesse caso, é um completo desperdício de recursos fazer uma requisição ao servidor apenas para constatar que o e-mail informado não está cadastrado. Entretanto, como fazer para determinar se um […]
Stack, Heap, Garbage Collector, Performance & Arquitetura de Software
Lançamos, na última semana, quatro novos vídeos no canal técnico da EximiaCo no Youtube. Começamos a semana falando sobre a stack. Usando C#, C, C++ e até Assembly, mostramos como ela funciona e qual seu propósito. Além disso, ressaltamos sua importância para a melhoria da performance em aplicações. Depois, explicamos como funciona a heap e […]
Utilize versões atualizadas do SQL Server e níveis de compatibilidade adequados para evitar riscos e desperdícios
Versões desatualizadas do SQL Server são um problema recorrente, mesmo em empresas com DBAs responsáveis por cuidar da infraestrutura. A cada novo service pack disponibilizado pela Microsoft, diversas melhorias são implementadas com o intuito de resolver problemas com segurança, performance, memória, entre outros. Porém, geralmente por negligência ou desconhecimento dos responsáveis, os servidores sequer são atualizados com […]
Performance, arquitetura de software, NoSQL e dicas para programar melhor
Lançamos, na última semana, quatro novos vídeos no canal técnico da EximiaCo no Youtube. Abrimos a semana falando sobre performance. Mais especificamente, como processar arquivos CSV grandes. Indicamos os impactos causados pelo GC, destacando conceitos aplicáveis para o dia-a-dia. Na sequência, publicamos o segundo vídeo da playlist em que discutimos os “Fundamentos para Arquitetura de […]
Ayende recomenda: “Estude código ‘dois níveis’ mais avançados do que aquele que você escreve”
“Como ser um programador melhor?”. Encerramos uma conversa com Oren Eini (aka Ayende Rahien), para nosso canal no YouTube, fazendo exatamente essa pergunta. No vídeo abaixo, destacamos o que ele respondeu. Oren é o líder criativo e técnico para desenvolvimento do RavenDB – base de dados NoSQL, escrita em C#. Também é um dos maiores […]
Fazendo “parsing” de arquivos grandes
Esta publicação está disponível em vídeo, ampliada e revisada, no canal da EximiaCo. Realizar o parse de arquivos grandes é uma tarefa recorrente no dia a dia de desenvolvedores, ao mesmo tempo em que pode ser desafiadora. É muito fácil, ao fazer parsing, escrever código lento que consome muita memória. Como exemplo, vamos considerar um arquivo […]
Software Architecture for Developers (volumes 1 & 2)
Os dois volumes de Software Architecture for Developers, escritos pelo criador do modelo C4, Simon Brown, são, ambos, referências abrangentes e qualificadas para a prática de Arquitetura de Software. No primeiro volume, o autor discorre, majoritariamente, sobre as soft skills necessárias. No segundo volume, a ênfase para as práticas de elaboração e documentação de arquiteturas, […]
Quando fazer o “aparentemente errado” é certo
[tweet]Um dos maiores desafios à manutenabilidade é o alto acoplamento. Entretanto, muitas vezes, tentativas ingênuas de combatê-lo levam ao aumento desnecessário de complexidade, implicando, exatamente, no aumento dos custos de manutenção.[/tweet] É comum, por exemplo, encontrarmos sistemas, sobretudo escritos em linguagens orientadas a objetos fortemente tipadas, como C# e Java, com cuidado demasiado na separação […]