I use VSCode for all my coding. One thing I appreciate about the PowerShell module in VSCode is how it recommends best practices inline with my script.
One of the recommended best practices for PowerShell is to use a list of approved verbs that define which words can be used in functions. This makes sense—I love the way PowerShell uses the Verb-Noun structure to keep things standardized and avoid confusion.
Sometimes the recommended list of verbs doesn't include what I'm trying to do, like “Check” or “Verify”. When I write a function using an unapproved verb, VSCode puts an orange squiggly line and these alerts get counted with others that I would consider more important:
This makes my VSCode environment noisy and it can be difficult to sift through all the alerts to try to identify real issues. After some digging, I found a way to hide these alerts without turning off the whole PSScriptAnalyzer feature.
Note: In the code examples, I've removed the signature blocks. Don't change or delete this section in your environment—If you do, you'll need to re-install the PowerShell extension and/or VSCode.
I've been working with a company that uses When I Work for employee scheduling and time tracking. This week, they wanted to onboard the service to Entra ID so that users can have a seamless sign on experience through their Microsoft account and the IT admins can secure logins with Conditional Access and other features in the M365 platform.
In my experience, every time I setup SAML Single Sign-On with SaaS apps in Entra ID, the language to get the integration setup is all over the place. Entity IDs, ACS, Issuer URLs, Endpoint URLs, Consumer URLs, Authority URLs, OAuth token endpoints—it's very confusing and changes for each service.
For this project, we couldn't find a guide for onboarding WhenIWork to Entra ID for Single Sign-On, so I wanted to write these steps down for other admins who need it. Big thanks to Sam Guerra for figuring this out.
A client I've been working with needed a way to check the warranty status of thousands of Lenovo laptops they own. The end goal was to import the warranty expiration dates into Freshservice so they can estimate device lifecycles and find out which users needed laptop replacements.
Right now, Lenovo doesn't offer an API that could do this and I would need to look up each laptop one-by-one.
To solve this problem and avoid manual lookups, I wrote a short PowerShell script that takes the serial number, scrapes Lenovo's warranty check page and gets the warranty information for the device, then outputs to a PowerShell object with the regular and upgrade warranty statuses and the end dates.
In my use case, I exported all devices from Intune into a .csv file, filtered on all Lenovo devices, then ran the Get-LenovoWarrantyInformation script against all of them in a for loop. I exported to a clean .csv file that I could then upload into the Freshservice inventory.
I recently received a request to update the Azure Data Factory Linked Service connector to Salesforce. When they login, they get the following warning message:
Your Data Factory has pipelines that are still utilizing the legacy connector versions. Please kindly upgrade to the latest connector version at your earliest convenience. For your reference, you can view all the relevant linked services here.
When I click on the “View all” link, I can see that there's a Linked Service with the “Salesforce (Legacy)” type listed:
This post will discuss the steps for upgrading this connector to use the modern OAuth method for authentication and how to update your Azure Data Factory flows with the new Salesforce connector.
There are a lot of bugs in the code right now, but it's playable and I was able to squeeze in the puzzles from July, August, and the first week of September and came right under the Pico8 cartridge size limit.
Earlier this week, I volunteered with my coworkers at CREO to sort donations at Book Harvest, a local non-profit that provides families and businesses with free children's books in the Durham area.
It's great to get away from the meetings and see everyone in-person.
Recently, I upgraded my home network to 10gbps switches and routers. I purchased a 10gbps Thunderbolt 3 adapter with ethernet from Amazon for my PC that only had 2.5gbps ethernet. After it arrived, I plugged it in and it worked great with a full 10/10gbps connection.
After a reboot, however, my PC running Windows 11 wasn't able to see it anymore in Network Connections and it wasn't connecting to my network.
This post has a PowerShell script to fix the issue and a brief explanation of where the setting might be coming from.