Thomas Ardal

Thomas Ardal

Meet Thomas, the founder and developer behind elmah.io. Thomas blogs about everything technical from C# and ASP.NET Core to machine learning.

Denmark
317 posts
Create a colored CLI with System.CommandLine and Spectre 🎨

No matter how fancy desktop, web, and mobile applications get, we will always need command-line interfaces (CLI). We already blogged about how you can build a CLI here: Building a command-line tool with progress bar in .NET Core. Since writing that post we have introduced the elmah.io CLI where ...

Adding CAPTCHA on form posts with ASP.NET Core 🚦

We all know and dislike them. Those pain-in-the-... CAPTCHA challenges you need to complete to complete form posts online. I cannot count the number of fire hoses, trains, trucks, and light signals I have identified over time. But, while annoying, CAPTCHASs also serve a purpose. In this post, I' ...

Pretty print/syntax highlight .NET stack traces in a browser ✨

Being a perfectionist like me, I cannot help notice every time someone publishes an either unformatted or non-highlighted .NET stack trace online. I mean, StackOverflow is filled with these things. I have built this online Stack Trace Formatter to help. But what if you want to print stack traces on ...

Subscribe users to a Mailchimp newsletter from .NET/C# 📧🐵

You have spent a lot of time building your high-quality newsletter and now you want people to sign up. Including the usual <script> element, provided by Mailchimp, on your website is easy. But what if you want to ask people to subscribe as part of signing up as ...

We are looking into GitHub Sponsors (and you should too)

Ever since GitHub Sponsors was announced back in 2019, we have been looking into using that to give back a little to some of the people behind the open-source projects we use and love. Being a bootstrapped company we don't have thousands of dollars to hand out, but ...

Avoid password reuse with Pwned Passwords and ASP.NET Core 🔒

Let's face it. Password re-use is something that should be avoided. Breach after breach are published and giant lists of users unhashed passwords available for hackers to exploit. In this post, I'll show you how we are avoiding people to re-use pwned passwords on elmah.io ...

6 free tools for .NET developers

I just wanted to quickly highlight 6 tools for .NET developers that we provide free of charge. There's an overview of each tool on the Tools page too, but here goes. Web.config Validator Writing correct Web.config files can be quite a challenge. Visual Studio luckily provides ...

How to map IPs to country for free with .NET and IP2Location 🌎

We do a lot of enrichments when processing log messages from our users. One of them is a mapping from an IP address to a location. We use a commercial database from IP2Location, but you can map IP addresses to location for free using their Lite dataset and .NET. In ...

Introducing support for Xamarin

You already know elmah.io as a great system for logging from .NET web backends and JavaScript. Today, we are ready to show a new type of integration we have been working on: Xamarin error logging support. That's right, logging errors from mobile applications developed in Xamarin and ...