Dataverse ALM CLI. Structured workflow, git-tracked solutions, fast push to DEV.
Power Platform · Dataverse · .NET
Everything has to earn its keep.
Architect at heart, tinkerer for fun. I build the tools I wish existed and figure things out in public. These days the day job lives at Avanade Malaysia. Here, it is just about what I build.
Things I built
All of it →ServiceClient instrumentation for OpenTelemetry .NET.
Money as a first-class citizen in .NET. Currencies and formatting handled properly, so you stop passing decimals around and hoping.
Latest writing
All posts →
Why I Built Flowline, a Dataverse ALM CLI
My dev flow ran on Daxif and NUKE Build for years. Daxif handled auth, solution sync, and the day-to-day loop. NUKE Build handled packaging and deploy. It worked, until both tools stopped keeping pace. Daxif’s F# codebase made community contributions hard and updates from the Delegate A/S team sl...

You Don’t Need a Solution Mapping File
What pac solution pack ships to production planted a fork. Pack from the folder pac solution sync just captured, not from whatever a solution mapping file pulls in fresh at pack time. Then the DLL you ship is the one you actually tested. I left it there on purpose. The post wasn’t built to litiga...

Compound Engineering Has What HVE Lacks
Microsoft named its AI development workflow Hypervelocity Engineering. Every named theirs Compound Engineering. Different vendors, different branding, and underneath both of them, the same move: compress the unit of engineering work and hand the ceremony to agents. Look at the two loops side by s...
Who writes this
I have spent 25 years building on the Microsoft stack, most of it in Dynamics 365 and the Power Platform. I like the unglamorous parts: the integration nobody wants to touch, the deploy step everyone does by hand.
More about me →