KeesTalksTech Utility Pack

I’ve bundled most of the C# code snippets into a single GitHub project: https://github.com/KeesCBakker/KeesTalksTech-Utility-Pack.

Parsing Roman Numerals using C#
Parsing Roman Numerals using C#
.NET Framework / C#, KeesTalksTech Utility Pack, Roman Numerals

Parsing Roman Numerals using C#

Lately I’ve become fascinated with the Latin language. I’m working on a project that converts photographs of Latin inscriptions on medieval statues into translated text. One of the challenges is parsing years, usually expressed in the form of Roman Numerals.

After building a parser class I noticed that it had a lot of nice characteristics: parsing, operator overloading, implicit conversions. A nice way to play around with C#.

A BlockHasher helper class
A BlockHasher helper class
.NET Framework / C#, KeesTalksTech Utility Pack, OSS

A BlockHasher helper class

There are a few instances in which you’ll need to hash a combination of data. You might resort to creating one big string and hashing that. It has a clear disadvantage from a memory and processing point of few. It might even be impractical when files or streams are involved. That’s why I created a BlockHasher utility class that helps to generate these types of hashes.

How to add dynamic compilation to your C# projects?
How to add dynamic compilation to your C# projects?
.NET / C#, .NET Framework / C#, KeesTalksTech Utility Pack, OSS

How to add dynamic compilation to your C# projects?

Dynamic compilation is an awesome feature to add to your projects. Especially frameworks will benefit from the compilation of dynamic expressions and scripts. There are two main ways of doing it: the Code DOM Compiler or the Roslyn project. In this blog I will show how to implement them both.

Auto fill settings objects with .config values
Auto fill settings objects with .config values
.NET Framework / C#, KeesTalksTech Utility Pack

Auto fill settings objects with .config values

Lately I’ve been playing around with some API’s. Most of them need a bunch of settings that I’m storing them in my config files. I found myself doing the same work over and over again: creating a settings class, filling the class with information and using it. So I came up with a way to leverage reflection to fill my setting classes with .config values.