Skip to content


Ads...I know they employ people, make the world go round, gave us google.... but seriously I hate almost all ads.

If my ranking in google search drops to the end because of this post... well.... I'm ok with that.


I've been using this for over a year as a beta tester (they provided license for me to test and use latest versions). I had a perfect case to demo the craziness of some sites with ads vs using Adguard the other day and figured I'd share it if you... like me... hate the clutter they provide on many sites. Now, note that other factors come into play here. For example, the site I hite should have been using some optimization for images presented. This site was pretty insane on the ad content, so others aren't as dramatic. I just saw this as a Google Now recommended article and checked it out.

Site With Ads

WITH NO ADBLOCKING 679 Requests 11.3 MB for a single webpage load Finish Time 1.1min

Site With Ads

Site With Less Ads

WITH ADGUARD 116 Requests 2.2 MB for a single webpage load Finish Time 7.23sec This was loaded with the mobile emulator. If you are paying for data (for instance I'm on Project Fi), this could be a huge difference in your browsing bandwidth.

Site With Less Ads

Side by Side

This blew my mind. According to Adguard metrics it had saved me over 2GB. Now, even taking this with a grain of salt, I was still pretty impressed by the results. I can immediately tell when I'm not running Adguard on android as the ads are everywhere. Adguard android has some additional functionality that provides the ability to create a local VPN and filter apps as well, so if you are using some app that has a annoying banner add right near the menu, this will most likely eliminate it. This is a pretty big image, and I blurred out text/ads to avoid any issues. Any guess at which one was the one with Adguard running?


Final Thoughts

There are options to allow some "acceptable" ads. Not interested in this personally, but those who are should know it's offered. Cost can be a little higher than some options due to yearly cost, but the reward of a constantly developing product seems worth it, especially for folks that browse a lot.

Only con I've come across with this is custom filtering options are a bit confusing for a non-technical user. Hopefully this will improve in the future to offer a much easier ad editing experience like some other similar toolkits. Lastly, a better notification of potentially blocking issues would be nice. I've come across a few sites that Adguard has blocked on various scripts or other "needed" actions that prevent the site from working. Disabling temporarily is acceptable for me, as this is quick with the chrome extension (pause for 30 secs). I'd say a better notification system, if even possible, on potentially site disrupting scripts/cookies blocked would be great enhancement. Overall, highly recommend this cross platform solution if you are looking for a better way to browse... with less ads!

Easy SQL Maintenance with Minionware

{{< admonition type="info" title="Updated 2020-07-06" >}} After a great chat with Sean today (creator), I did see some pretty cool benefits that for those looking for more scalability, will find pretty interesting.

  • Backup tuning: based on the size or specific database, use striped backups to enhance performance of backup jobs
  • Enterprise edition, centrally manage and report on all backups across all servers.
  • Override defaults by just including additional sql files in the InitialLoad configuration. Review the docs for the specifics. This means no need to loop and override like I did below now. Just deploy and your final steps can be setting up your default configuration options.

Overall, great conversation and found out some really cool things about postcode commands that could be PowerShell driven. Definitely worth a further look if you want an alternative to the commonly used Ola Hallengren solution, and especially if you are wanting more table driven configuration options over the need to customize the commands in the agent steps. {{< /admonition >}}

{{< admonition type="info" title="Updated 2017-01-25" >}} While I think the minionware solution is pretty awesome, I think it takes more work for the value, and can be a bit confusing to correctly setup, vs the Ola Hallengren solution, esp since you can install this quickly with dbatools now. I'd lean towards Ola Hallengren for simple implementations, and consider MinionWare's option if you are looking at their flexibility in the table based configuration. The learning curve seems higher to me, but more for those looking to tweak options a lot. Both are great solutions, just be aware MinionWare will require a little more digging to leverage it fully. {{< /admonition >}}

Here's my personal tweaked settings for deploying Minionware's fantastic Reindex & Backup jobs. In the development environment, I wanted to have some scheduled jobs running to provide a safety net, as well ensure updated statistics, but there were a few default settings I wanted to adjust. In particular, I tweaked the default fill factor back to 0/100. I also installed all the objects to a new "minion" database instead of in master, as I'm beginning to be a fan of isolating these type of maintenance jobs with logging to their own isolated database to easy portability. I also adjusted the default retain days on backups to 30.

powershell setup of backup

You can use this template as a guide to help you adjust the default backup settings to fit your environment a little better. There has been various forms of discussion on the adjustments of Fill Factor for example on the defaults. For more detailed explanation, see post An Introduction to Fillfactor in SQL Server. For my usage, I wanted to leave the fill factors as default, so the install scripts flips these back to my desired settings. I also run the sp_config command to ensure backup compression is enabled to save some space.

Maybe this will help you get up to speed if you want to try out this great solution, but tweak a few defaults. The ease of installation across multiple instances makes this my current favorite solution, followed by the fantastic Ola Hallengren solution.

Cannot Generate SSPI Context


I ran into an error: The target principal name is incorrect. Cannot generate SSPI context. (Microsoft SQL Server, Error: 0)

I evaluated the sql server configuration manager protocols for sql server and saw that named pipes was disabled. I tried ensuring that this wasn't causing the issue, but enabling but it didn't fix. Thankfully, Andrew on StackOverflow had the answer here:

First thing you should do is go into the logs (Management\SQL Server Logs) and see if SQL Server successfully registered the Service Principal Name (SPN). If you see some sort of error (The SQL Server Network Interface library could not register the Service Principal Name (SPN) for the SQL Server service) then you know where to start. We saw this happen when we changed the account SQL Server was running under. Resetting it to Local System Account solved the problem. Microsoft also has a guide on manually configuring the SPN. Andrew 3/19/2014

When I went into the configuration manager I changed the format from the DOMAIN\USER to searching with advanced and matching the user. The username was applied as USER@DOMAIN.COM instead. When I applied, and restarted the sql service, this still didn't fix.

I read some help documentation on this on but it didn't resolve my issue as I had the correct permissions, and I verified no duplicate SPN by running the command setspn -x I ran gupdate /force to ensure was properly in sync with the policies and it did get the time updated. However, the problem persisted. I went back to checking for a specific conflict by running

Still no luck....

Finally, I switched the account to use LocalSystem (this was in a dev environment) following the directions by Bob Sullentrup and this allowed it to successfully register the SPN.

I'll update my blog post when I have a better understanding on exactly why this occurs, but for now, at least I was able to proceed.

Centralized Management Server 101

I've used Central Management Server registered servers in SSMS for primarily one purpose, saving connections. :-) This is definitely not the intended usage. As I've explored the benefits of using this a little more, I put a few notes together to help share the concepts I came across. I was brand new to this feature in SQL server, and found some of the functionality pretty powerful, especially if you are in an environment that has a lot of servers to manage and ensure consistent configuration among all of them.

Moving CMS Entries to a new CMS server

If you need to move your Central Management Server (CMS) entries to a new CMS, then use the export and import functionality located under the CMS > Tasks context menu.

Moving CMS Entries to a new CMS server

Run queries across multiple instances at once

Right click on the CMS group and choose new query. This tab will now execute the same query in parallel across all the selected instances, allowing quick adjustments. One creative use of this is to register two databases in the server group, then click new query. They could be on the same server if you wish. Once you start a new query on this group you could run the same query on two separate databases with no extra effort. An alternative to using this is Red Gate's SQL Multiscript which offers a bit more customization in the behavior and project file saving for multi-server, multi-database query running. You can identify a multiserver query at the bottom identified by

Highway to the danger zone

It's easy to forget you are running a server group query. Use some type of visualization and don't leave the query window open longer than you need to, especially in a production environment. One hint can be setting up the Red Gate tab color if you have SQL Prompt. You can see the connection details on the tab are a little different, listed with the CMS server group name + database, such as the image below

Highway to the danger zone

Create a policy

In reviewing technet article on Policy-Based Management

Administration Functionality

From the CSM context menu you can perform some nice functionality such as start, start, restart of SQL services, view error logs, and even pull up the SQL configuration manager for that instance! Take advantage of this to easily adjust settings across instances without having to log into remote machines.


There are a few different types of policy behaviors to know about. From MSDN article Administer Servers by Using Policy-Based Management I found that there were a few ways the evaluation of a policy is handled.

  1. On Demand
  2. On Change: Prevent
  3. On Change: Log Only
  4. On Schedule One interesting comment from MSDN indicating that: "IMPORTANT! If the nested triggers server configuration option is disabled, On change: prevent will not work correctly. Policy-Based Management relies on DDL triggers to detect and roll back DDL operations that do not comply with policies that use this evaluation mode. Removing the Policy-Based Management DDL triggers or disabling nest triggers, will cause this evaluation mode to fail or perform unexpectedly."

Create Policy

This suprised me a little. The policy functionality wasn't available in the CMS registered server tab. Instead, go to the server in Object Explorer and expand Management > Policy Management > Policies

Create Policy

creation dialogue

Add new condition, there is a large list of policies to evaluate. You can detailed information on them on MSDN here.

creation dialogue

Configure the rules

You'll see a huge list of Facets to evaluate and then you can easily setup logic to evaluate this.

Configure the rules

Description Details on Policy

In this case, I linked back to my favorite resource for server configuration... the Ozar! Providing some detail back on this could be great for quickly providing details later back to someone reviewing the results.

Description Details on Policy

All your hard work

For all this hard work, you'll get two fancy new icons in object explorer. With this work, I'm thinking saving your policies for backup with scripts would be a great idea.... scripting this would be much faster than all these steps to check one setting. I wish the dialogue had been focused on setting up multiple conditions quickly instead of all that work for a single Fact to be evaluated.

All your hard work

Evaluate Policy Results

Start the evaluation

Start the evaluation

Results were not what I expected

My first run gave me a failure, despite to my eyes being the right match. I had to change my approach from being @FillFactor != 0 to being Policy should be @FillFactor = 0 and it would pass, else it would fall. I was thinking in reverse. MSDN indicates to be aware that: IMPORTANT! The functions that you can use to create Policy-Based Management conditions do not always use Transact-SQL syntax. Make sure that you follow the example syntax. For example, when you use the DateAdd or DatePart functions, you must enclose the datepart argument in single quotes.

Results were not what I expected

Prebuilt Best Practice Rules

Thankfully, I found that there were a lot policies already presetup by Microsoft. The default location I had for the 2016 installation was C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Policies\DatabaseEngine\1033 . You can navigate to these by right clicking on the Server Group you want to evaluate, and then Evaluate Policies > Choose Source > Files > SQL Server Best Practices folder > Database Engine > 1033 > Rule to explore

Prebuilt Best Practice Rules

Some final thoughts

I can see the value for enforcing policies across a vast number of servers, and monitoring for compliance. For my environment, primarily dealing with a lot of developer sandboxes, the effort this requires is a bit too much. For my scenario, I'll probably stick with some home grown queries, powershell SMO checks, and the awesome OmniCompare tool that is getting better and better each iteration. A previous article I wrote discussed the functionality of this tool here: OmniCompare: A Free Tool to Compare SQL Server Instances

DAW Dive 02 - BFD3 - Drumming for the Rest of Us

Creating tracks at home can be very intensive in time, so I'm always looking for a better way to bring a larger sound to a track with less effort. One of the big gaps for me has been the drum parts. I've evaluated a few options, and finally dived into BFD3 for this latest project that is a post-rock style track. This was my first time diving into BFD3 for a full song, so I had a bit to learn. Disclaimer: BFD3 generously provided me with a copy to evaluate. This doesn't affect my reviews, as I just love dig in and recommend good software!

BFD3 - Drumming Plugin Extraordinaire

I was using this in Presonus Studio One. I created a drum track and then started to explore. I started my exploration based on using the Groove Editor, as I wanted to benefit from the library of preset grooves that were already created, and use these with some modifications to be the drum parts for me song, allowing me to hopefully create the track I wanted quickly. There is a lot of functionality I'm not going to dive into, such as the vast array of microphone adjustments, compression options, and other mixing options. My focus is going to be as a songwriter, how could I use this to help me generate a believable drum track for my song without it being an ordeal.

Modifying Existing Kit

One thing that was really easy to do with BFD3 was modify the kit configuration. I liked the sound of Pork Pie Kick for this song, so I just played a groove, and then switched it over with the checkbox (on hover).

Modifying Existing Kit


The Grooves section provides a preset set of associated rhythms to allow you to easily prepare a song based on related rhythms. This is ideal for helping you create a song quickly by finding associated rhythms.

BFD3 Groove Page

Copy and Replicate a Groove to Tweak

Change Velocity for Realism

This is really important to a natural sounding drum part. You definitely do not want everything at the same velocity as no real drummer would do this. There are some easy ways to adjust the velocity as well as the humanization of the rhythm in both Presonus Studio One 3 and BFD3 plugin. In this example, I adjust it in BFD3 directly.

Humanization of Rhythm

Practice Your Rudiments

One other cool feature for quickly pumping out some grooves is the ability to "paint" the rudiment you've selected. This means you could easily pick some drag paradiddles on the snare without having to click each point in time. I found this incredible helpful for creating some interesting grooves.

Quick Note on Versions

I tried the BFD3 Eco, but due to wanting flexibility to edit the grooves and do more tweaks, the Eco version was not a good fit for for me. If, however, you are looking for an experience that is more groove oriented, with less tweaking/adjustments, then you should consider starting with the Lite version. If you are looking for the full flexibility then you might want to evaluate the full one instead. FXpansion indicates on their support page in the comparison on the differences that:

What are the differences between BFD Eco and BFD2/BFD3? BFD Eco is optimized for ease of use and fast results - it is deep enough for deeply sculpting drum sounds into all manner of shapes but is streamlined enough so that you won't be overwhelmed with options. It has less detailed sounds than BFD2 and BFD3 but is much more light on system resources. BFD2 and BFD3 contain far more control over each aspect of each kit-piece as well as a configurable mixing engine with custom aux channels and much more. They also feature full editing of Grooves, more control over exports and many other features too numerous to list. FXpansion Support Article

Final Thoughts

The power and flexibility of this software is pretty amazing. I've only touched on a small fraction of what it is supposed to be capable of, as I'm using a lot of the simple functionality to "paint" some rhythms. I was a little disappointed in the initial groove library as far as the single 6/8 groove test goes, as it felt more difficult to get a groove I liked than when I demoed Ez Drummer

However, the flexibility in editing with the easy humanization and editing of the kit made up for this. I think the vast sound library of plugin packs is what is designed to expand this, so I'll probably cover some of those later to evaluate if they fill in the gap on providing a even larger variety of preset grooves for the wannabe composer. Note that the library is around 40GB for the initial load, so my isolated 6/8 groove test isn't reflective of the rest of the available library. There is a lot to work with, and the expansion libraries seem to be pretty vast in number.

Another area that would be awesome to enhance is providing something similar to "song finder" that EzDrummer 2 had, where a certain rhythm was tapped, and related matches found. EzDrummer 2 then provides something similar to Grooves where the song structures for verse, chorus, bridge, etc are laid out. I'm not partial to the format that EzDrummer used, I actually prefer the Groove library format of BFD3, but I sure would love seeing the search capability added to help quickly match grooves fitting the feel you are trying for. I'm pretty happy with the documentation and support, as they have a wide range of well made videos showing demonstrations on the product, how to use, etc. I look forward to incorporating this into my workflow and going through some more training videos to better understand a solid workflow, as I'm just starting to wrap my head around it, along with learning how to navigate Presonus Studio One

Check out a trial if you want to give it a shot and post some feedback below on what you think. Remember, I'm not an affiliate, or getting paid for anything on this, I just like reviewing and referring folks to good software. Good luck!

Migrating Database Collation - The Red Gate Way

I had some cross database comparisons that I wanted to simplify, but ensuring the collation matched. The amount of objects that I would have had to drop and recreate was a bit daunting, so I looked for a way to migrate the database to a different collation.Using the Red Gate toolkit, I was able to achieve this pretty quickly. There are other methods with copying data built in to SSMS that could do some of these steps, but the seamless approach was really nice with the SQL Toolbelt.

  1. First I created the database with the collation I wanted to match using SQL Compare 12.
  2. I deployed the original schema to the new location.
  3. Ran SQL Data Compare 12 and migrated all the data to the new database. Since the new database was created with the desired migration, I was good to go!

Note: I'm a member of Friends of Redgate program, and am provided with licenses for testing and feedback. This doesn't impact my assessments, as I just love finding good tools for development, regardless of who makes them!

Fixing non-deterministic error when creating indexed view

I discovered a bit of info on working with float values, while creating a hash value that contained a float value, and a date value.

create unique clustered index ix_clustered_ViewK_Catfood_K
Msg 1901, Level 16, State 1, Line 1517
Cannot create index or statistics 'ix_clustered_ViewK_Catfood_K' on view 'compareCatfood' because key column 'ViewK' is imprecise, computed and not persisted. Consider removing reference to column in view index or statistics key or changing column to be precise. If column is computed in base table consider marking it PERSISTED there.


Msg 2729, Level 16, State 1, Line 38
Column 'Hash' in view 'compare.Catfood_test' cannot be used in an index or statistics or as a partition key because it is non-deterministic.

Stack Overflow to the rescue... The issue is with float values.

Even if an expression is deterministic, if it contains float expressions, the exact result may depend on the processor architecture or version of microcode. To ensure data integrity, such expressions can participate only as non-key columns of indexed views. Deterministic expressions that do not contain float expressions are called precise. Only precise deterministic expressions can participate in key columns and in WHERE or GROUP BY clauses of indexed views. MSDN Restrictions also apply to formatting dates when you are calculating a checksum. This is because every region has variations on the way the date may be displayed. This makes dates non-deterministic in a hash, unless the convert format is explicitly defined.

ensuring date is converted with style

+ isnull(convert(nvarchar(max), do oe.Somedate ,102), ''') + N'''
+ isnull(convert(nvarchar(max),la.SomeDater ,102), N''') + N'''
+ isnull(cast  (ft.ToBeOrNotToBe as nvarchar(max)),''') + N'''
+ isnull(cast  (t2.Fooey as nvarchar(max)),''') + N'''

If you can resolve these issues then you are on your way to resolving the other thousand restrictions on indexed views.... :-) Good luck!

Powershell ISE: Updating Theme

For all the dark theme aficionados, or those who just want a better theme than the default, here's a quick set of directions to update your ISE.1. Go to download a theme from Github > PowerShell_ISE_Themes 2. Unzip 3. Go to ISE > Tools > Options > Colors & Fonts > Manage Themes 4. Import selected theme 5. For consistency, adjust the background and forecolor of the console pane as well as the text background to match if you want to. In my case I took the RGB values from the theme on the script pane background and applied to the console pane below it. 6. If you want the background for the error, warning, and other output streams to match, update the RGB background as well.

ISE Color Options Your eyes will now thank you, especially if you are jumping from Visual Studio dark theme to ISE with it's previously glaring white screen.

Powershell Themed

Syncovery & Arq 5I've tried a lot of file sync/backup utilities.

{{< admonition type="info" title="Updated: 2020-04-29" >}} broken image links removed {{< /admonition >}}

The primary definition to get right is that there are two main functions people try to achieve with this type of software.

  • File Syncing: Syncing Files Between Cloud and Local
  • File Backup: Preserving Files, sometimes with versioning, in order to protect against loss. These two approaches require a diffferent solution many times, as focusing on file syncing means you are more at risk, as handing conflicting sync scenarios might cause loss. However, file backup doesn't give you flexibility to grab files to sync to another machine in many cases (for example CrashPlan does a great job of being quiet and backing things up, however, it is not designed for syncing, rather a single machine archive).


Disclaimer: They provided a license for me to evaluate and provide feedback. This doesn't bias me, as I just love finding great software!

I actually obtained Syncovery back at the beginning of the year and so have had quite a bit of time to utilize.



  1. It's a powerhouse of customization, which provides an incredibly customizable set of options
  2. Typically well documented and easy for a power user to figure out the options
  3. It can solve backups and file syncing inside the same app. Cons
  4. It's a powerhouse of customization. This isn't something I'd recommend for a non-technical user.
  5. I ran into errors syncing with Amazon Cloud Drive with deletes. Wasn't able to figure that piece out completely, but for the most part everything ran smoothly. So, would I recommend? If you are looking to solve some file syncing options between multiple systems, as well as backup files/folders and are willing to deal with tweaking it to get it just like you want, it's awesome. If you want something like plug and play, then you need to look at Arq instead. Arq provides an incredibly simply alternative for those focused on backup, and not on file syncing.

Profile Overview

This provides an overview of all activity. Even though it's not necessarily a styled gui, and has a lot of detail, I think it's well designed for the information it's providing. Having tried some other apps I think I found the majority of what I needed pretty quickly here. I had a huge backup to Amazon Cloud Drive of my entire lightroom catalog (600-800GB) and Syncovery handled the majority of this backup with no issues. I have run into some issues as you can see.

Profile Overview

Profile Settings

I won't go into every option, read their documentation for the full details. At a high level, some of the powerful options I appreciated where the exact mirror vs smart tracking. Smart Tracking looks try and resolve the conflicts that can happen when syncing on several machines by choosing which version wins.

Profile Settings

Running backup in attended mode

Shows the current progress. I have used some backup apps that froze when running large backups in the past. So far, I've had good experinces with Syncovery's stability.

Running backup in attended mode

Detailed Logs

The app provides the output via powershell console, or in your native editor. Since I prefer Sublime Text 3, this was perfectly fine with me. Nice detailed logs give me a chance to figure out any issues.

Detailed Logs

A few other thoughts

Again, the options are too massive to cover them all. However, a few stood out to me.

  • Versioning deletes: Could have deleted files archived into a relative root folder, or a main archive folder, and then removed after a certain period. This provides a safety net for deletes to be reviewed.
  • Safety Checks: Deletes or overwrites over a certain percentage of the files will require manual run. This ensures something accidental doesn't cause a mass deletion of files in your cloud storage.
  • Zip versioning. If you want, you can version your backups with zipped contents
  • Remote agent: If you are using another computer and syncing between them, you can setup the destination to have an agent so a zipped copy could be unzipped locally on the system by the agent, or file scans could be run locally by this agent instead of a remote agent having to do all the work.
  • Run as a Service: I enabled to run as a service to ensure this always was running in the background
  • Change Detection: You can setup near real-time file sync based on monitoring a folder. With additional customization, you can tell it to batch up the changes if over a certain number are detected and do them in a batch run instead.

Arq 5

Disclaimer: Arq also provided me with a license to evaluate. Arq is on the app list for Amazon Cloud Drive supported applications.

Arq approaches things differently

This tool is focused on file backup, so the options are going to be much different in focus. However, the approach reminds me a lot of the "Apple" approach with simplifying things.

Arq approaches things differently

Filtering Backup Selection

This is pretty straight forward. However, I was happy to see the folder filter options actually provide Regex matching as well for power users.

Filtering Backup Selection

Advanced Options

Again, the options are much more limited... and less daunting

Advanced Options

Arq approaches as encrypted backup

One big different to note is that if you are focused on backing up files like photography/video, then you probably want the cloud drive to have those files in their native format, to ensure they are usable to view from the cloud drive. Arq approaches things from a different standpoint. Your cloud drive will have encrypted blocks that this app can download and interpret. For privacy, this is fantastic. For media not so much. You have to decide if you want everything encrypted or "open".

Windows User

This probably is just me, but I've had some issues with Arq 5 on Windows 10. They could probably use some better error messages, as this error detail wasn't very user friendly. When I reached out to support in the past, I got an answer in 2 days, so their support has been responsive.

Windows User

What Would I Recommend?

For the power user wanting to implement file sync and backup in a single utility, Syncovery all the way. For anyone looking to do pure backups, with no configuration or tweaking, and ok with it being completely encrypted, then Arq. They both have different focuses. For me, I've migrated to a hybrid approach. For personal code snippets I use Gists, as I can version control them. For media and settings I use Syncovery because I like the customization options. If I was focusing on something like CrashPlan for simplicity and simple configuration, I'd probably go with Arq for that. One last one that I hope eventually is supported by Amazon Cloud Drive is Stablebits Cloud Drive. It has a lot of promise, but my tests a while back had it peforming really slow (not due to them, but due to Amazon's throttling) Another similar to that was ExpanDrive. I wasn't able to contact them for a license to evaluate in my review, but my short trial seemed promising, as it tries to add the cloud provide as a drive, allowing you to manage in explorer... or Xyplorer (yes I still use it!)

SQL 2016 - Configuration Manager Not Showing in Start Menu

{{< admonition type="info" title="update" >}} 2020-04-29 broken image links removed {{< /admonition >}}

Didn't see SQL 2016 Configuration manager in the start menu. Ran a quick search to see if this was a common issue and found an article: Quick Trick Where is SQL Server for SQL 2012I looked and found the SQL Configuration Manager for 2016 in the same location: C:\Windows\System32\SQLServerManager13.msc

As I'm running windows 10, the location for the start menu entries were located here: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2016

Create a shortcut for SQLServerManager13.msc in the start menu folder and you'll be good to go!

Thanks to @marnixwolf for providing that previous walkthrough that helped me resolve this so quickly.