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.…

Forward Disqus comments to Slack using Azure Functions

by Anders Austad

Hello! Today we're cooking up a new recipe titled "Potion for forwarding Disqus comments to Slack". It's experimental, and sometimes smells bad, but it's fun and gets the job done. Bring your apron! (If your blog is using the Disqus commenting engine, the following solution can be used…

Novanet Christmas calendar 2016 (Open sourced)

by Hallstein Brøtan

Christmas is closing in, and during this last month of the year we've been running a company Christmas calendar quiz. The calendar has been a success internally, but also attracted attention from customers and colleagues from other consultant firms (who wants to join in, but are not allowed..) The purpose…

Three non-coding tips for Visual Studio Code

by Anders Austad

I find myself spending more and more time in Visual Studio Code. It's a light-weight, extensible and fast editor, and it can be used for just about anything. Having explored some options lately, here's a writeup of three non-coding use cases I've found helpful. New to Visual Studio Code? Download…

Rewrite rules in ASP.NET core middleware

by Hans Arne Vartdal

If you, like me, came from the ASP.NET MVC world when you started with SPAs and Angular, you have probably at some point created a "one controller, one view MCV application", hosting the starting point of your Angular application. We could question how sensible that is, but…

You should check out Yarn

by Christian Brevik

Not too long ago, Facebook announced Yarn, a new package manager for JavaScript. Yarn has been developed as an alternative to npm, addressing some shortcomings the latter tool has. I know what you're thinking, "Yet another new tooling in the JS ecosystem?", and "Weren't we just done…

Make Selenium wait for ajax calls using AngularJS (and TypeScript)

by Hallstein Brøtan

Acceptance tests for GUI are commonly regarded as painful, mainly caused by two factors: They have a long feedback loop Their stability is poor A common stability issue is dealing with asynchronous requests. Because ajax calls takes an unknown amount of time to complete, the test might do some assertion…

The shocking effect of beards, seen through the Microsoft Cognitive Services

by Hans Arne Vartdal

This is a semi-scientific research project based on a cool technical solution. Clearly the best way to do research. It all started when my colleague Tom Einar showed me a simple demo of the Emotion API, a part of Microsoft Cognitive Services (previously the Oxford Project). Instantly I found the…

How many work days are there per month for a given year?

by Hallstein Brøtan

True story: I got a request from our economy guy, he asked me if I knew some online service to give him the number of work days for a given month. Turned out that he was manually counting the number on his calendar (probably several times to be sure), and…

Hooking up ASP.NET Core 1.0 RC1 web api with Auth0 bearer tokens

by Hans Arne Vartdal

Even though you don't see security and bleeding edge release candidates in the same sentence every day, you need to secure your API's. I have been using Auth0 as my identity provider for a recent project, and they have AMAZING documentation that include everything you need, including complete code examples…