Mark Vincze

Software Developer

Posts

Overriding configuration in ASP.NET Core integration tests

asp.net-core testing integration-testing

This post gives an overview of the various ways to override configuration values in ASP.NET Core integration tests.


Shadow mirroring with Envoy

envoy

An overview of implementing shadow mirroring with Envoy, to safely test a service with real production traffic without affecting the end clients.


Graceful termination in Kubernetes with ASP.NET Core

asp.net-core kubernetes

An overview of the challenges and solutions for implementing graceful termination when using ASP.NET Core in Kubernetes.


How to use Envoy as a Load Balancer in Kubernetes

envoy kubernetes

An introduction to using Envoy as a load balancer in Kubernetes, and configuring various load balancing algorithms.


How to gracefully fall back to cache on 5xx responses with Varnish

varnish

Varnish can gracefully fall back to cached values in case our backend is down. This post describes how we can handle 5xx errors this way.


Automated, portable code style checking in .NET Core projects

c# .net-core linting

A quick introduction to setting up automated code style checking for .NET Core projects with StyleCopAnalyzers and editorconfig.


Introducing Code Fragments extension in Visual Studio Code for managing snippets during presentations

visual studio visual studio code presenting

Introducing a simple Visual Studio Code extension for saving pieces of code, and later easily insert them into source files, intended for coding demos.


Build and publish documentation and API reference with DocFx for .NET Core projects

.net-core appveyor docfx

This guide shows how to generate and publish API documentation for a .NET Core library, using DocFx, GitHub Pages and AppVeyor.


Secure an ASP.NET Core api with Firebase

asp.net-core security firebase

How to secure an ASP.NET Core application with Firebase Authentication by verifying the access tokens in the Authorization header.


Troubleshooting high memory usage with ASP.NET Core on Kubernetes

.net-core asp.net-core kubernetes

Chasing down why ASP.NET Core applications might use unreasonably much memory in Kubernetes, and how to it can be mitigated.


Running ASP.NET Core in auto-scaling containers? Warm up!

web api asp.net-core kubernetes

The first request to an ASP.NET Core API is always slow. This post shows a way how to warm up our application before deploying it to production.


Tear down your ASP.NET Core api between integration tests

c# couchbase asp.net-core testing integration-testing quartz.net

Static state in an ASP.NET Core application can cause problems when running subsequent integration tests. In this post we take a look at how to solve this.


Setting up Coveralls with OpenCover for a .NET Core project

.net-core testing appveyor opencover coveralls

This post describes setting up coverage generation with OpenCover for a .NET Core project, and shows how the report can be uploaded to Coveralls.


A data model exercise in two languages, part 2: F#

c# computer science f#

Second part of an exercise illustrating how F# can provide an elegant solution to some of the challenges we face when designing data models in OO languages.


A data model exercise in two languages, part 1: C#

c# computer science f#

A simple data model exercise illustrating some challenges we encounter when designing domain models in object oriented programming languages.


Playing with the composition of the Kleisli category in C#

c# f# category-theory

Taking a look at how the composition of the Kleisli category can be implemented in C#, and what are the limitations we have to face in type inference.


Two gotchas with scoped and singleton dependencies in ASP.NET Core

c# asp.net-core dependency-injection

Two possible problems (and their solutions) we can run into when registering objects with various lifecycles with the DI container of ASP.NET Core.


Bulk updating document expiry in Couchbase

couchbase

A simple approach to update the expiry of all the documents in a Couchbase bucket, using a view and a custom updater script.


Jumpstart F# web development: F# with Suave.IO on .NET Core

.net-core f# suave

An introduction to get started with web development in F#, using the Suave web framework on .NET Core.


Jumpstart F# web development: F# with ASP.NET Core

asp.net-core f#

An introduction to get started with web development in F#, using ASP.NET Core.


Jumpstart F# web development: F# with Suave.IO on classic .NET

.net f# suave

An introduction to get started with web development in F#, using Suave.IO on the classic .NET Framework.


Jumpstart F# web development: F# with ASP.NET on classic .NET

asp.net web api f#

An introduction to get started with web development in F#, using ASP.NET on the classic .NET Framework.


Series: Jumpstart F# web development

asp.net f# suave

Instructions to get started with F# web development using either ASP.NET or Suave.IO, targeting the .NET Framework or .NET Core.


Programmatically refreshing a browser tab from a Golang application

golang websocket livereload

Programmatically refreshing a browser tab from an application can be done with a WebSocket connection. This post describes how to achieve this in Golang.


Setting up a Travis-CI pipeline for Golang

golang travis

This post gives and Introduction to setting up a continuous delivery pipeline for a Golang-based project in Travis-CI.


Setting up an AppVeyor pipeline for Golang

golang appveyor

This post gives and Introduction to setting up a continuous delivery pipeline for a Golang-based project in AppVeyor.


Download artifacts from a latest GitHub release with bash and PowerShell

github bash powershell

Downloading artifacts for a particular GitHub release is easy, but to download artifacts from the latest release we need some extra steps in our scripts.


NDC Oslo 2016 recap

ndc conference

A summary of my experiences at NDC Oslo 2016, and excerpts from the sessions I found the most interesting.


Matching route templates manually in ASP.NET Core

asp.net mvc

It can come handy to manually match a request path to route templates, and extract the arguments. This post describes how it can be done with ASP.NET Core.


Stubbing service dependencies in .NET using Stubbery

asp.net .net .net-core asp.net-core testing integration-testing

Stubbery is a library for creating and running Api stubs in .NET. The post shows how it can be used to stub service dependencies during integration tests.


How to fix the empty SpecFlow HTML report problem with vstest.console.exe

specflow

The slightly changed TRX generation in vstest.console.exe causes SpecFlow to generate empty HTML reports. This can be fixed with a custom Logger.


Migrating a Ghost blog from SQLite to Postgre on OpenShift

ghost postgre sqlite openshift

A guide about how to migrate a Ghost blog using SQLite to PostgreSQL running on Openshift.


How to validate action parameters with DataAnnotation attributes?

asp.net c# .net-core asp.net-core

A simple approach to evaluate DataAnnotation validation attributes not only on model properties, but on the action method parameters as well.


ASP.NET Core 1.0: hints to get started

asp.net c# .net .net-core asp.net-core dnx

Some random tips and tricks I have learnt during spending a couple of weeks with getting started with ASP.NET Core.


Simple client-side compression for Couchbase - with benchmarks

c# .net couchbase

Implementing client-side compression for Couchbase is pretty simple. In this post we take a look at what this costs us and how significant the benefits are.


Couchbase Server: tips for troubleshooting issues

c# .net couchbase

This blog post describes some quirks and issues with Couchbase Server which can make getting started with it more difficult and troublesome.


Back to basics: Dictionary part 4, custom GetHashCode

c# .net basics computer science


Back to basics: Dictionary part 3, built-in GetHashCode

c# .net basics computer science

GetHashCode plays an important part in the implementation of a hash map. We should be familiar with it when using a custom type as a Dictionary key.


Back to basics: Dictionary part 2, .NET implementation

c# .net basics computer science

A look under the hood of Dictionary<TKey, TValue>, an overview of how the hash map data structure has been implemented in the .NET Framework.


Back to basics: Dictionary part 1, hash tables

c# .net basics computer science

An introduction to how a hash table works, which is the foundation of the key-value stores implemented in many environments.


How to store state during SpecFlow tests?

visual studio specflow c# .net

There are different ways to store state during SpecFlow tests, and all of them have benefits and drawbacks.


Use Glimpse with ASP.NET Web Api

asp.net mvc web api glimpse

Glimpse is not fully supported for the Web Api, but it can still be a valuable tool.


Attach to specific Process shortcut in Visual Studio

visual studio debug tooling visual commander

How to create a shortcut in Visual Studio to attach the debugger to a specific process.