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.

Books by Steve Fenton

Pro TypeScript Second EditionWeb Operations Dashboards, Monitoring, and Alerting by Steve FentonExploring Octopus Deploy by Steve FentonCranked by Steve Fenton

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.

Adobe Analytics Segment Applicability Posted in: Analytics - Adobe Analytics makes it super-easy to add segements, with a visual designer that will help you build the logic. As well as traditional and/or logical tests, you can use time based “then” tests to create segments where things happen in a specific order. For example, you might be interested in visitors who arrive from a […]
Rate Limiting Googlebot Across Many Websites Posted in: Programming - Googlebot is one of the good guys. It will check your robots.txt file and respect any crawl delays you’ve asked it to use. However, if you run hundreds or thousands of websites across your infrastructure you can encounter waves of Googlebot traffic due to it coincidentally selecting many of your websites to crawl at the […]
Change an Excel Cell’s Colour Based on Data Posted in: Programming - This might be a bit niche, but I needed to collect RGB values in an Excel spreadsheet and I though it would be neat to preview the colour in another cell. To cut a long story short, the only way I could make this happen was with a bit of Visual Basic for Applications. It’s […]
The Ethics of Scale Posted in: Automation - One of the tenets of automation is that while you can produce stuff faster, your mistakes will happen at the same speed. You might replace manually updating 100 files with a process that updates them all in the blink of an eye… but what if it updates more files than you intended. In developer terms, […]
Lookup DNS on a Specific Nameserver with NSLOOKUP Posted in: Windows - The nslookup command is really easy to use. You just type nslookup [host-name] and you get an answer. But what do you do when it looks like it is working, but your monitoring is detecting intermittent issues connecting to a website? The answer is, you check each nameserver individually to make sure they are all […]
Awesome Microsoft Edge Vertical Tabs Posted in: Browsers - I’ll be honest, it has taken a day or two to retrain my cerebellum for this one, but it is totally worth it. Modern day displays happen to be wider than you need. Horizontal real estate is in surplus and is cheap, but vertical space is more valuable. That’s why Microsoft Edge is getting a […]
Increase Productivity by Quantifying Simpler Tasks Posted in: Opinion - The full title of this article should really be “Increase Productivity by Quantifying Simple Tasks; Protect Complex Task Productivity by Not Quantifying It”. This is the result of a study by Aruna Ranganathan, co-authored by Alan Benson, that studied workers in a garment factory and I’ve added my opinion because sometimes I’m a narcissist like […]
Skipping the Chasm: How a Crisis Accelerates Progress Posted in: Opinion - Full credit to Geoffrey Moore, whose seminal “Crossing the Chasm” keeps proving to be a useful book thirty years after it was written. Credit also to Hans Baumhardt who introduced me to the book and who critically shaped my thinking about work and life. What I hope do, now that the credits are over, is […]
Execute Raw SQL Scripts in Entity Framework Core Posted in: Programming - Most of the time, Entity Framework Core will just do the right thing. Every now and then, though, you’ll find that it’s doing something in a bit of a sticky way and you’ll want to take control. Usually it’s when you’re deleting a range on a table with cascading deletes. Here’s an example of the […]
Simple Conditional Updates to Entities in ASP.NET Core MVC Posted in: Programming - When you accept a view model in your .NET Core MVC application, you can request that only certain fields are bound, like this [Bind("Title")]. Neat. But when you want to apply the changes to your domain object, you often want to do a similar thing and only update certain fields (and only if they really […]