LK DevConf 2020: Building for the Cloud-Native Era

Last weekend I presented at LK DevConf 2020 in Letterkenny. The theme this year was cloud-native development, and the energy was incredible. My Session: Kubernetes for .NET Developers I showed how to take a .NET Core application from local development to production on Kubernetes: Dockerfile best practices for .NET Kubernetes manifests and Helm charts Health […]

Read more โ†’

React Testing Best Practices in 2020

Testing React applications has evolved. Here are the best practices I’ve learned for writing maintainable, effective tests in 2020. Use React Testing Library Enzyme is out, React Testing Library is in. Test behavior, not implementation. Query Priority getByRole – Most accessible getByLabelText – Form elements getByPlaceholderText getByText getByTestId – Last resort Avoid These Testing implementation […]

Read more โ†’
Posted in Uncategorized

Entity Framework Core 3.1: Performance and LINQ Improvements

EF Core 3.1 is the LTS version with three years of support. It’s also got significant performance improvements. Here’s what matters for production apps. LINQ Query Improvements EF Core 3.1 translates more LINQ patterns to SQL: Breaking Change: Client Evaluation EF Core 3.x throws exceptions for client-evaluated queries instead of silently evaluating. This catches performance […]

Read more โ†’
Posted in UncategorizedTagged

Azure Landing Zones: Enterprise-Scale Architecture

Azure Landing Zones provide a prescriptive architecture for enterprise Azure deployments. Think of them as a foundation for your cloud journey. Key Components Management Groups: Organize subscriptions hierarchically Azure Policy: Enforce governance at scale Hub-Spoke Network: Centralized connectivity Identity: Azure AD integration patterns Management: Logging, monitoring, backup Enterprise-Scale Principles Subscription democratization Policy-driven governance Single control […]

Read more โ†’

TypeScript 3.8: Private Fields and Top-Level Await

TypeScript 3.8 brings ECMAScript private fields and top-level await. These are significant additions that change how we write TypeScript. Private Fields (#) Private vs private private: Compile-time only, accessible at runtime #field: True runtime privacy, JavaScript feature Top-Level Await Export * as Namespace References TypeScript 3.8 Release Notes

Read more โ†’
Posted in Uncategorized

GitHub Actions for .NET: Complete CI/CD Guide

GitHub Actions is now my go-to for .NET CI/CD. It’s free for public repos, integrated with GitHub, and surprisingly powerful. Here’s a complete guide. Basic .NET Workflow Deploy to Azure Tips Cache NuGet packages for faster builds Use matrix builds to test multiple .NET versions Store secrets in GitHub Secrets Use workflow dispatch for manual […]

Read more โ†’
Posted in UncategorizedTagged