As developers, we are constantly surrounded by rules. Rules for code-style, rules for better performance, rules for good design, but who is setting those rules? …
Continue ReadingAzure Websocket Timeouts on Long-Living Connections
I’ve been recently working on a gateway service hosted in Azure that is primarily a TCP server. One of the key requirements of the project …
Continue ReadingHashing and Salting Passwords in C#
UPDATE: This example previously used a SHA256 algorithm to hash and Math.Random to generate a salt, it has been correctly pointed out that there are …
Continue ReadingString and string in C#. What’s the Difference?
It can be a little confusing if you are very new to the language. Why do we have a keyword in lower case and the …
Continue ReadingThe Power of Extension Methods
Changing code. It’s a minefield. If you’re attempting to abide by the laws of the Open Closed Principle, we want to avoid changing previously written …
Continue ReadingHot Reload in Server-Side Blazor
At the time of writing this post, without third-party plug-ins, server-side Blazor doesn’t have native support for hot-reload. I was kind of spoiled with this …
Continue ReadingRestricting Access To MVC Views
There are so many different mechanisms for authentication and for claims verification in .NET for MVC applications with ASP.NET Identity, JSON Web Tokens, and Azure …
Continue Reading‘SQLizing’ Excel Spreadsheets with ThinkAutomation.
I Have the Power! (To Query) In a business-administrative context, we often refer to spreadsheets as databases. It could be a database of customers or …
Continue ReadingWriting code for an audience
It seems like the most unnatural thing for many programmers; this notion of ‘live coding.’ The very idea that we would choose to opt-in to …
Continue ReadingHow to extract text inside an image without writing any code.
In the modern-day battle to transfer our information from paper to the digital realm, OCR (Optical Character Recognition) has become essential to the smooth running …
Continue Reading