The existing keyword in Bicep
Project Bicep is GA for already quite some months and I had great fun writing some awesome templates. Now it's time to explore one of the hidden gems in Bicep. The keyword `existing` is only eight characters long, but its power is underestimated. In this post, I will explain what the existing keyword means and how you can use it to write even more awesome Bicep templates.
2021-06-15    
Comparing ARM templates with Bicep
The Azure Resource Manager is the only mechanism that allows you to provision Azure resources. In one way or another, you will always use the ARM. The Azure 'native' way to do Infrastructure as Code (IaC) is using ARM templates. But ARM templates are complicated and confusing, because of their syntax and size. Bicep (the largest muscle in your ARM) addresses those issues and allows you to write IaC more easy, and leaves you with way smaller files.
2021-05-19    
Windows Terminal Context Menu
Just a simple tweak in your registry allows you to change the context menu in Windows Explorer. In this blog post, I show you how to add a 'Windows Terminal here' context menu, opening a new Windows Terminal in the location you're currently at.
2020-10-22    
Azure Functions Jwt Validator Binding
It's #ServerlessSeptember so time for some awesome serverless stuff. This time, writing a custom binding. When you want to use a login provider other than Azure AD, you want to validate incoming requests and make sure the caller is authorized. Doing this each and every request with a copied and pasted piece of code is not very convenient. So today we'll be writing a custom Azure Functions binding, validating JWT Tokens for functions with an HTTP Trigger.
2020-09-18    
Using Redux in Angular to call an ASP.NET Core Backend
This is a demo project that shows you the power of Redux. This demo project is just an ASP.NET Core 3.1 Web API with an Angular Client app. The client app retrieves data from the API. But this data needs to be filtered. I show the use of Redux to define a data filter and make calls to the backend to refresh the list.
2020-09-11    
Building a Boardgame in Azure - Part 5 - Migrations
On of the big disadvantages of using SQL Server in a software system is that you're going to have to deal with migrations. In this post, I will provide a nice solution allowing you to take full control of your database migration and run them from within your CI/CD pipeline.
2020-08-21    
Building a Boardgame in Azure - Part 4 - Pipelines
One important factor of agile software development is the OPS part of DevOps. As a developer, you'll probably know how to write code. But do you know how to do OPS? What is this OPS thing? OK, obviously the OPS is an abbreviation of Operations, but still... What do 'operations' mean?
2020-08-18    
Building a Boardgame in Azure - Part 3 - Domain Model
'The game' is the heart of this system. It's important to understand how user actions relate to each other and how to maintain a valid state of the game. Now I'm not a DDD expert, but I know Domain Models are a pretty nice way to do validation and propagate changes to 'a system'. So in this blog post, I'll discuss the design of the domain model.
2020-07-03    
Building a Boardgame in Azure - Part 2 - Friendships
This is part 2 of my game development blog. It's all about friendships. Keez is a game you play with friends. So when logged in, you need to be able to make friends in order to play the game. At first, the game requires exactly four players, meaning you need three friends in order to create a new game. In case you have no friendships, you can still be someone else's friend and thus be invited to games. This means that friendships are not (yet) bi-directional. Now how do we do this?
2020-07-01    
Building a Boardgame in Azure - Part 1 - Planning
This blog post is part one of what I expect is going to be a large series. It's my opportunity to build stuff in the Azure Cloud while ending up with a cool online playable game. It's a board game, played against others. The game is not even half-way finished and I don't know when it's going to be finished. I don't want to spend _all_ my spare time. In this series, I will blog about my progress, how I designed the game from an architectural perspective, and how I solved problems as a (C#) developer.
2020-06-25    
Hi, my name is Eduard Keilholz. I'm a Microsoft developer working at 4DotNet in The Netherlands. I like to speak at conferences about all and nothing, mostly Azure (or other cloud) related topics.