C# Code Style in Visual Studio 2017

by Olav Nybø

The Code Style options for C# in Visual Studio 2017 have improved a lot since Visual Studio 2015. In Visual Studio 2015 there wasn't a lot of options to choose from, there were only 4 settings. I don't think I ever changed any of them from their defaults. The Visual…

Linq and Expressions

by Olav Nybø

Recently I was writing some Entity Framework linq queries at a client. Nothing unusual about that, but the compiler was complaining: "An expression tree lambda may not contain a null propagating operator". Sure enough I had included a '?' aka "null propagating operator in my query.…

Hot loading React Components in TypeScript

by Olav Nybø

Hot loading of React Redux components makes for a absolutly fantastic developer experience. The ability to get immediately feedback in the browser when any part of my javascript application is changed and saved is priceless. It is simply awesome! I have been using Angular for a long time, but watching…

Generate HTML in the backend

by Olav Nybø

Recently I was working on a Azure Web Job that was reading from an Azure Queue. The requirements of this job was that it should read the queue messages, do some processing and then generate and send an HTML-email based on the incoming message. Since the request isn't a regular…

Connection strings in Suave on Azure

by Olav Nybø

I recently used the suave web development F# library to develop a proof of concept application. Of course we wanted to deploy the application to azure and this looked very easy as both Tomas Petricek (Dojo suave) and Scott Hanselmann had posted samples on how to do this (Running Suave.…

NCRAFTS 2015 Paris - My Experiences and thoughts

by Olav Nybø

This week I went to NCRAFTS 2015 in Paris. NCRAFTS is a conference focusing on the craftsmanship of software development. Subjects presented varies from Domain Driven Design, Continuous Delivery to Functional Programming and F#. In other words, exactly my favorite subjects. There was only two tracks at this conference, but…

FSharpx and Railway Oriented Programming

by Olav Nybø

TL;DR: Railway Oriented Programming (ROP) is a technique that enable us to write clutter free code. FSharpx.Core is a nuget package that has the building blocks needed for ROP in addition to much more. I first heard about Railway Oriented Programming from Scott Wlaschin in his NDC2014 talk…

FluentValidation with ASP.NET Web API 2 and Castle Windsor

by Olav Nybø

Proper validation of input to REST APIs is important and if you also can provide good error messages in case of erronous input you will make the API a lot easer to use for the consumers of your API. Using FluentValidation doing validation and error messages becomes very simple. Combined…

Only use factories if you really need to control the lifetime of the created objects

by Olav Nybø

On the project I am currently working on we need to implement various processes consisting of a series of steps. We have created some reusable classes based on the command pattern. Using these classes we can implement very complex processes in a very readable way. Below is an example of…

Developer Conferences 2014

by Olav Nybø

There are a lot of developer conferences. Most developers have a limited budget to spend on conferences. Which conferences to choose can be diffcult. I have compiled a list of conferences I think may be relevant for a .NET developer. If you know any conferences that you think should be…