Steve Fenton

Home

Steve Fenton is a three-time Microsoft MVP for developer technologies. He’s a Software Punk, an author, a programming-architect, a pragmatist/abstractionist, and a generalising-generalist. His day job spans the worlds of Product Management, Data and Analytics, Support, and Software Development. These are brought together in the DITE Cycle. Like many of you, he’s too busy to remember all of this stuff, so he writes it all down here.

A Note From Steve

The primary audience for the writing found herein is me. It’s super-easy to forget stuff if you don’t write it down, as I did the second time I had to fix a really tricky certificate problem in .NET. If only I had written down the answer, I could have saved hours of irritating replays of all the same steps I had used to find the problem in the first instance. My goal in life is to start a punk revolution in software development. I am also secretly S. M. Fenton the author of The Vanishing Room.

Recent Thoughts

You can review my full archive of thoughts, but the most recent entries are listed below.

Uptime Checker Mythbusting Posted in: Automation - Whether you use Pingdom, UpDn, Datadog, or some other platform to test if your website is up and running, you will need to keep in mind some common traps that are waiting to ensnare the unsuspecting. The idea behind an uptime checker is that it will visit your site frequently and report whether it managed […]
How to Debug Google Analytics v4 (GA4) Posted in: Analytics - Sometimes you need to see what’s going on under the hood of your analytics tracking. Google Analytics v4 (GA4) provides a simple way to debug your configuration either at the property level, or per-event. The DebugView Screen The DebugView can be found in your Google Analytics v4 property, at the bottom of the menu. One […]
How to Create Important Messages in Teams Posted in: Other - Sometimes you have something super-important to communicate in Microsoft Teams, so you need to be able to send an important message. But how do you create an important message in Teams? All you need to do is use CTRL + SHIFT + i in the compose textarea. This will elevate your message to an important […]
Pretty Output from JSON.stringify Posted in: Programming - We all like to log stuff out sometimes and it would be nice if it were as readable as possible when we do. If you are using JSON.stringify to drop out some values and are tired of getting a long line of text, here’s a simple way to get pretty printed output without adding any […]
Duplication vs Coupling Posted in: Programming - There is a generally understood principle of programming that says if you remove duplication, you introduce coupling. For example, you have two classes that have similar code, so you create a function that they both call. Now the two classes are coupled to the function. You make one thing better, but something else gets worse. […]
The Int Betweeners (or… An Extension Method for Numbers) Posted in: Programming - It is pretty common to need to test a number is between two other numbers. You can do it with an if (number > a && number < b) if-statement, but it is nice when code reads out loud. Now you can read that if-statement out loud if you want to sound like a robot, […]
Check CSS Support in CSS Using @supports Rules Posted in: Programming - For many years, Can I Use? has been the go-to place to find out whether a browser supports a certain feature, like CSS aspect-ratio. However, what do you do when you need to add some additional styling if the browser doesn’t support a feature? Well, in an almost paradoxical way – you can use the […]
Getting Started: Microsoft Edge Tools for VS Code Posted in: Programming - There’s a really neat extension for VS Code that allows you to run Microsoft Edge browser tools. You can use this in conjunction with your own project, or even as stand-alone. It uses browser automation behind the scenes, so it does depend on you having Microsoft Edge installed on your machine. You can add the […]
Creating a Goal Template in Google Analytics v3 Posted in: Analytics - This is a tip for how to manage lots of Google Analytics accounts using version 3. Goals are a pain to set up when you manage hundreds of accounts, so here is a quick way to do it using Goal Template URLs in Google. Google Analytics version 4 is on the way, but I have […]
Strings Contain Empty Strings Posted in: Programming - This is just one of those philosophical moments in programming where one small details can have a big impact. In C# / .NET you will find that when you ask if a string contains an empty string (string.Empty), the answer is yes. This may seem logically surprising so it is worth bearing in mind should […]