Runar Ovesen Hjerpbakk

Science-based software development

Simple cross platform REST-service with .Net, Vagrant og Docker

My former Bachelor student and now co-worker, Andreas Mosti - @amostii, is an industrious young man. This was his first talk at Trondheim Developer Conference, but I doubt it will be his last.

The slides can be viewed at speakerdeck.

.Net is not constrained to Windows. Mono, and Xamarin, makes it easy to run C#, F# and the other CLR languages on almost all platforms.

Client side C# apps on iOS and Android are already popular (just look at me), and now the server side is following suit.


The modern cloud infrastructure in short gives you two options: Windows Server and Azure, or *nix and all other services.

No need to learn Java or Go, just go C#. Even on *nix.

Small big data, aka micro service all the things.

Multiple server frameworks already supports mono. For instance Nancy for hosting REST-services.


Topshelf can run your service as a console app for testing, or host it as a system service when running live.


Dapper is a Mono-ready simple and lightweight data access.

Vagrant enables you to specify your development environment in a structured fashion. The environment can be restored if you break it, and creating a new one is fast and easy. It removes the fear of breaking your environment, enabling fearless experimentation.


Docker - a package manager for infrastructure. Or a lightweight VM. VM v 2.0.


One container per dependency, orchestrate and scale with Docker-Compose.

C#: Code anywhere, deploy to anything.