This has been a fascinating year full of hacks and breaches with social, political and legal implications. Our world is changing at a break neck pace and I fear we lack the structure and vernacular to guard against the chasms forming in the foundations of society. When it comes to securing data I feel like the tech industry has ultimately made peace with mediocrity.

I am hopeful that in 2017 we are better prepared to combat the inevitable breaches that will be attempted.

Here are links to my most important posts.

Interview Preparation For Full Stack .NET Developers - 2015 - Essential interview topics for today's full stack .NET developers.

One Hard Thing in Software Engineering - The most resilient problem in software engineering is keeping the promise your software made at its inception.

Encryption should protect everybody from everybody - If a security backdoor exists in your software … then shame on your company … and your engineers.

Nerd Life Balance - What happens when a clear thinking mind is transformed into a self sustaining trap, just like Sisyphus.

Seek out vulnerabilities in your software before the criminals do (posted at POCIT) - Software development in many ways has lagged behind other engineering and scientific disciplines in academic rigor and professional regulations. When you take a closer look at most other engineering disciplines, they rest on a foundation of accretive professional standards, and on laws and regulations that expressly guard the public good.

Facial Recognition using Windows Runtime API - Intelligent applications are all the rage and I for one was really surprised to see how easy and quickly some basic recognition can be developed using the Windows Runtime.

Designing apps for efficient battery usage - How do I ensure that I consume as little power as possible on consumer mobile devices?

ASP.NET Core Kestrel - The Need for Speed - Kestrel is the new cross platform .NET web server which runs on Linux, Mac and Windows 10 and will, eventually, run on Raspberry Pi. One the outstanding improvements is the sheer speed.

Does your software need a superhero? - Creating your own Nemesis

Moral Machine - The Problem is Choice - Discussing how automated decisions go into deciding who will lives and die.

Imagining more than 3-Dimensions - Trying to imagine objects in more than three dimensions can feel like an exercise in futility. The most straightforward method for imaging four-dimensions (for me) is to imagine any object in three-dimensional space and using time as an additional dimension.

Remote Pair Programming - So what makes for a positive remote pair programming experience? All the things that make for a good local pair programming session but with a few minor prerequisites that can minimize the disadvantages of not being in the same location.

Have a great new year, peace and many blessings!