Subscribe

Many apps today are just static files on the front end - HTML and JavaScript - with something powerful on the server side. They aren't "static apps" as they have very dynamic front end experiences, but they are static in that their HTML isn't dynamically generated. As such, you don't need to spend t...

Speedscope.app is an online "flamegraph visualizer" that you can also install offline. It's open source and on GitHub. It will allow you to view flamegraphs that have been generated by diagnostic tools, but Speedscope is good at dealing with large files without issues or crashing. There's lots of ch...

.NET Core is cross-platform and open-source. Tell someone, maybe your boss. A good reminder. It's been this way for a half decade but I'm still bumping into folks who have never heard this. Moving forward, .NET 5 will be a unification of the .NET Framework you may have heard for years, and the new ...

I'm continuing my "Computer Stuff They Didn't Teach You" series on YouTube. Please subscribe! I've set a personal goal to get to 100k subs by Christmas. This episode is very special as it features a Surface Duo *AND* a 1U Rack-Mounted Azure Stack Edge! It's a gentle and clear explanation of cloud co...

My 14 year old got tired of paying $7.99 for Minecraft Realm so he could host his friends in their world. He was just hosting on his laptop and then forwarding a port but that means his friends can't connect unless he's actively running. I was running a Minecraft Server in a Docker container on my S...

My long love of Synology products is well-documented. I checked my Amazon history, and I bought my Synology DS1511+ NAS in May of 2011! I have blogged about the joy of having a home server over these last nearly 10 years in a number of posts. I setup a home backup strategy without the cloud I late...

Nearly 16 years ago I complained that Windows is completely missing the TextMode boat. It's 2020 and it's TIME FOR TEXT MODE BABY. I keep bumping into cool utilities made with Gui.cs. Miguel de Icaza made Midnight Commander (not Norton Commander, but evocative of it) and it's a joy. Head out to an a...

Coravel claims it is a "Near-zero config .NET Core library that makes Task Scheduling, Caching, Queuing, Mailing, Event Broadcasting (and more) a breeze!" A lovely claim, that is, in fact, true! It's open source and on Github at https://github.com/jamesmh/coravel so give Coravel a star! Coravel is a...

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 ...

It’s a new year! Even though years are an arbitrary construct and all that, you feel reinvigorated! Alive! Ready to take on the world! And you’ve read all those posts and tweets and instatumblrs about blogging! They’re pretty compelling, really, and you’re in a suggestible st...

< Older