Surface Book 2

I was a good boy in 2017 so Santa brought me a Surface Book 2 machine. After spending a week with it I am writing down my impressions. Right off the bat I would like to point out that I firmly believe this is the best machine in its class. I am noting this because I will mostly focus on the negative sides in this review. You can assume that anything I did not mention is perfect and best in class. Readers should also keep in mind that their use case matters. If you are an iOS developer the MacBook is a better choice and the Surface Book is borderline useless. I also do not know what will happen in the future. If it turns out that six months from now all Surface Book 2 machines out there fail it will make them a bad choice but there is no way to know that yet. To be honest it seems that Apple has the best historic track record with reliability over time not only compared to Microsoft but also compared to all PC manufacturers. With these issues out of the way let's see what the Surface Book 2 has to offer...

StarCraft 2 Political Compass

The ThrowIf* Method Pattern

There is a simple pattern that is extremely effective and increases source code readability with practically no downsides. Sadly this pattern is underused and many developers do not even think about it. I am talking of course the ThrowIf methods used to throw exceptions when validating state and arguments.

Dreamhack Valencia 2017

Last week I went to Dreamhack Valencia. I took part in this event once in 2014. You can read about it here - Dreamhack Valencia 2014. My impressions did not differ significantly. I am a bit sad that WCS does not allow Koreans to compete for points in foreign tournaments but otherwise the event was pretty much as exciting as the previous one. Yes, I did play and lost 0-2 to Mana and 0-2 to RiSky.

C# 7.0 Features

With C# 7.0 now released, it is time to share my opinion, also known as the correct opinion, on the new features. People who are too lazy or uninformed to form their own opinion can safely use mine. I will not charge you for that. Sharing my opinion is absolutely free. If you are interested in more impartial overview of the features (i.e. if you really want to form your own opinion and risk being wrong) you can read Microsoft's post on the topic and the Stack Overflow documentation article. So let's begin...