Extending Dapper’s ORM Multi-Mapping Capabilities

Since I last posted, my wife and I have bought a new home, moved, sold our previous home, and ran the Chicago marathon. All while getting up the learning curve and taking on more responsibility at our new jobs (both started in June). Needless to say, I’ve had no time for tech blogging. Until now. OK, let’s get to it: Dapper is a great micro-ORM library. It’s simple and highly performant. I love its Multi-Mapping feature, which simplifies mapping columns from a SQL result set into multiple object types. It has an annoyance though: The lambda method provided by the […]

Updated Comparison of C# and Go Performance

Previous Efforts A couple weeks ago I wrote a post that examined performance of the C# and Go programming languages when parsing large XML documents. Why compare C# and Go? Because the goals of the languages are similar: to provide programmers with a statically typed, compiled syntax paired with a runtime that enforces memory safety and automatic garbage collection (reclaiming memory from unreferenced objects). I compared the performance of my C# code with Go code written by Eli Bendersky in his Faster XML Stream Processing in Go blog post. I concluded my C# code ran slightly faster. Then I made […]

The Inherent Conflict Between Bohemian and Militaristic Time Management

My wife and I are training for the Chicago Marathon. My wife has run more than 25 marathons and is fast enough to qualify for Boston- once in 2009 and again last year. She and I have run the Chicago marathon the last three years. I’m quite proud of having completed the marathon three years in a row (26.2 miles is no joke!) but I’m not really in the same league as her. Man, I was suffering for my sins this morning. I had cheated myself of sleep this week and the long distance running Gods noticed (they always do) […]

XML Parsing Performance : C# Versus Go

Interest Piqued Recently I read Eli Bendersky’s Faster XML Stream Processing in Go blog post. While the point of his post was to explain the difference between in-memory and stream parsing, then examine various stream parsing techniques in the Go programming language… I got hung up on his choice of language. Update 2019 Aug 17: I’ve run an apples to apples comparison test. See Updated Comparison of C# and Go Performance Go is a new programming language developed at Google. It’s statically typed, compiled, with a runtime that enforces memory safety and automatic garbage collection (reclaiming memory from unreferenced objects). […]

Hello World, Poker Style

I have updated my reference application with code that evaluates Texas Hold ‘Em poker hands. I had written the poker logic a few months ago. Recently, I moved it into a class library and service in order to validate my ASP.NET Core MVC + SOA Architecture. This project is a long way from a functioning poker application that enables users to play Texas Hold ‘Em against artificial intelligence “bots”- my ultimate goal. But it’s a fun start. Evaluating poker hands certainly is more entertaining than confirming a “Hello World” message sent through an SOA stack appears at the other end […]