Subscribe

David Fowler doesn't have a blog. I think the psychic weight of having a blog would stress him out. Fortunately, David's 'blog' is actually hidden in his prolific GitHub commits and GitHub Gists. David has been quietly creating  an amazing piece of documentation for Minimal APIs in .NET 6. At ...

I really like minimal Web APIs. I've liked the idea for years. With .NET 6, it's starting to happen! Damian Edwards has an interesting minimal API Playground on his GitHub and Maria Naggaga did a great talk on Minimal APIs in .NET 6 that's up on YouTube! Let's explore! I'm running the latest .NET 6...

I've long blogged about my love of setting up a nice terminal, getting the prompt just right, setting my colors, fonts, glyphs, and more. Here's some of my posts. How to make a pretty prompt in Windows Terminal with Powerline, Nerd Fonts, Cascadia Code, WSL, and oh-my-posh Patching the new Cascadi...

Hey friends! I wanted remind you about my podcast! It's http://hanselminutes.com/ and just a few weeks ago I published my 800th episode! My first episode was in January of 2006 so that's over 15 years of shows. And, if I may be a little boastful for a moment, they are pretty darn good. Maybe the fir...

I blogged about the open source Carter Community Project in 2019. Let's check in and see what's going on today in 2021! The open source Carter Community Project adds opinionated elegance to ASP.NET Core routing With .NET 6 on the near horizon, one notes that Carter has a net6 branch. Per their webs...

I write about minimal Web APIs in 2016 and my goal has always been for "dotnet server.cs" to allow for a single file simple Web API. Fast forward to 2021 and there's some great work happening again in the minimal API space! Let's do a 'dotnet new web' with the current .NET 6 preview. I'm on .NET 6 p...

I used to call this technique "type tunnelling" and noted its use in XML in 2005. When you are using a strongly typed language but instead your types are stringly typed, you are passing strings around when a better type exists. Here's some examples of stringly typed method calls:Robot.Move("1","2")...

I've had a number of emails asking questions like I'm sure you have a ton of tips and learnings on how to create inclusive meetings where some people are remote and some not. Do you happen to have it in written somewhere? We are discussing what guidance and technology we could use for the teams whe...

I blogged about The quiet rise of E Ink Tablets and Infinite Paper Note Takers - reMarkable 2 vs Onyx Boox Note Air and my love for the Remarkable 2 e-Ink tablet. Now I see that Colby Newman is working on a .NET API for the Remarkable series of tablets. As you know, Dear Reader, I will install .NET ...

At our house, we use home automation for a lot of different things. One of them is the ability to get a quick overview of the state of our appliances such as the washer, dryer and dishwasher. That way we don’t accidentally forget to turn over the laundry or empty the dishwasher. A red tile on our ...

After showing some pictures of our smart home dashboard, questions started coming in about the cables going in behind the books. Where is the modem and what else is going on? Spoiler alert, the books are fake. Here you see a couple of cables going in behind the books on the top shelve. Removing...

I’ve had some questions lately about how we keep track of all the home automation devices spread across the house. So, I thought I’d share how our dashboard is set up. The dashboard is the web-based SharpTools that runs in Fully Kiosk Browser on an Amazon Fire Tablet HD 10 which is magnetically atta...

Hey! It’s been a few years since I last blogged here! Let’s get this blog thing back in action, starting with something non-technical that I’ve had a few requests for – my story of two years of daily exercise. Happy New Year! Today’s a day where half the world contempla...

Motion, contact, and light sensors are the most commonly used sensors for home automations in my house. With these sensors, you can make a wide variety of automations. But there are so many different manufacturers, protocols, and price points that it can be hard to choose which devices to buy and us...

Here are a bunch of home automation ideas for your inspiration. These are examples of automation rules that have worked well for my family. They might work well for yours too. The ideas are technology agnostic and describe the concept rather than the exact implementation. They should work with just...

After having spent a lot of time and effort installing smart devices throughout my entire house and automating them, I’ve learned a lot of do’s and don’ts. It’s been a long process of trial and error to come up with the right automations that work for all scenarios. Along the...

Recently, I’ve updated over 30 of my extensions to support Visual Studio 2019 (16.0). To make sure they work, I got my hands on a very early internal build of VS 2019 to test with (working on the Visual Studio team has its benefits). I’ve learned that the upgrade process is probably the easiest I’v...

I’m often asked how to best learn to build Visual Studio extensions, so here is what I wished someone told me before I got started. Don’t skip the introduction It’s easy to create a new extensibility project in Visual Studio, but unless you understand the basics of how the extensibility system wor...

Having great samples to help you learn about any programming language or paradigm can be very valuable. In my opinion, a good sample can be characterized by: Being easy to replicate Having clear steps that guide the reader to replicating the behavior of the sample into their own code base is param...

Building extensions for Visual Studio has its challenges, but as the new PM on the extensibility team I’ve made it my mission to make it easier. One way of doing that is to provide features that can take some of the pain out of common tasks associated with extension authoring. Here are three brand ...

< Older