C# - Normalize Whitespace Inside String
· ☕ 2 min read
Simple task - replace all sequential whitespace (tabs, spaces, newlines) with your character of choice, usually a space. Fact - StackOverflow is on top in google results, when searching for “C# normalize whitespace”. How to replace multiple white spaces with one white space c# Fastest way to remove extra white spaces Why this article? Highest voted answers are not the best performing, and some answers are just wrong.

C# - Capture Full Stack Trace Inside Catch
· ☕ 3 min read
When you catch an exception, you only have stack trace relative to the catch point. The problem is very clearly described in this article on CodeProject: .NET: Exception stack trace has no frames above the catch point. Why is this important? Suppose the error occurs when sending email and this is a non-critical part of your application. Let’s say you send confirmation emails to clients as part of the ordering process.

Fix Ugly Fonts in Google Chrome 37
· ☕ 1 min read
Problem - after updating to the latest Chrome version (37), fonts look ugly. v37 is supposed to introduce DirectWrite for font rendering, that makes fonts look better. I’m using a non-standard 125% Windows DPI, it could be why they are ugly for me. Solution, as quoted from here: type "chrome://flags/#disable-direct-write" in your Chrome window and click "Enable" on "Disable DirectWrite". DirectWrite should be off.

Good 24IN LCD Monitor For Home/Office Use
· ☕ 4 min read
Modern monitors today have IPS+VA in one, which means great vertical viewing angles and also 100% color gamut reproduction. So one does not need to choose either and just get both, for some 200-250 dollars. However, they only have 1000 static contrast (read below why this was important for me) and many of them suffer from backlight bleed issue (near bottom of the screen), or produce high-pitch noise. Another thing which I found interesting is that not all IPS monitors make up to 100% of the palette, make sure you read description about how much is exactly covered.

Fix HTC Desire 601 signal (Virgin/Bell Canada)
· ☕ 2 min read
Bought this phone on 2-year contract from a Virgin Mobile booth. On a side note, it’s not advertised as “601”, but I figured this one is closest to the specs of the phone being sold in Canada. Anyway, starting day one, this phone was showing wireless signal problems (mobile network). I live in the GTA, your experiences may vary. I used RF Signal Tracker to investigate. Note RF signal tracker is not very stable for monitoring purposes, so for best results leave your phone open/unlocked with screen on.

Runtime Code Coverage (WCF Service)
· ☕ 3 min read
In this article I will provide a workflow for monitoring code coverage in DLLs called from a WCF Service hosted with IIS. You can use this approach to get runtime code coverage metrics from any service, and also for calls made via reflection. Supported processor architectures are x86, x64 and x64 running as x86 mode. These two tools are installed with Visual Studio 2013 (later: VS) VSInstr VSPerfCmd Found under:

Your best developer's PC (ideas)
· ☕ 7 min read
This was originally planned as a series of articles about things to consider when buying/building your developer’s PC at home/work. I never got back to expanding it beyond the bullet list plan, but I think this list is useful enough to be posted on its own, so here it goes. Most of the points reflected here were written >0.5yr ago, and I kept 99% of the original text. PC (hardware) - custom built Motherboard, any known brand full ATX motherboard, at least 8GB of memory if no virtual machines, and at least 16GB if virtual machines are planned.

Battery life on a Nexus 10 (standby)
· ☕ 1 min read
I’ve had my Nexus 10 for over a year now (ordered directly from Google). Not using it a lot these days, So most of the time it’s sitting on the shelf in standby mode (Wifi’s off). I occasionally take it out, turn on wifi, to show a Youtube video to my parents, or just play a quick game with kids. With this light use, what amazes me in it is the battery life.

Visual Studio 2013 Static Activation Key option
· ☕ 1 min read
I have read people’s complaints about the need to sign in to Visual Studio 2013 for it to run, without a possibility of running a disconnected/offline setup. Introducing a static activation key licensing option (which I just discovered) - you can obtain it from your MSDN subscription page. Just browse to where you would normally download the ISO, and then click on “Product Keys”. You will see a popup similar to the following:

VB.NET - Reading and writing app.config
· ☕ 2 min read
I found so many articles on the internet suggesting the need to write your own classes to read/write app.config. While the read is fairly easy, people are struggling a lot with the write, some are saying that write is not supported by .NET at all. There are numerous examples and training articles on how to get started with writing your own classes for that. Well guess what - you don’t need to write your own classes.