Welcome to the Jocha blog!

Fix for slow “Downloads” folder in Windows 10

In the last couple of weeks I’ve been noticing that clicking the “Downloads” folder in Windows Explorer took a long time to load.
After a bit of research, it turns out Windows 10 tries to guess…

Disable Windows 10 Automatic locking screen

We’ve been upgrading a customers environment… for one of their workstation configurations they didn’t want the computers to lock on idle, which is enforced by default.

Windows Backup Mail Report Script

Updated version available: This article covers v4.1 of the script (2016). A fully rewritten v5.0 is now available, compatible with Windows Server 2025 and using the SendGrid REST API instead of the deprecated Send-MailMessage.Read the updated article: Windows Server...

Get Active Directory pictures in Windows 10

We have been working on migrating a customer from Windows 7 over to Windows 10. Our goal is to have Windows 8 and 10 clients pull the pictures from Active Directory to the users local profiles.

Azure Backup Mail Report Script

Jocha previously released a very popular mail report-script for Windows Backup. A downside with the new Azure backup-agent is that it did not offer mail reports… until today!

AI Code Review on Every Pull Request

AI Code Review on Every Pull Request

Every senior engineer has reviewed a pull request, spotted an obvious bug, and wondered why the submitter did not catch it themselves. Claude can be that first-pass reviewer — reading every PR automatically and leaving structured comments before a human even opens the...

Faster PowerShell Scripting with Claude

Faster PowerShell Scripting with Claude

If you spend a meaningful part of your week writing PowerShell, there is a good chance you are still solving the same class of problems you solved five years ago, just with slightly different cmdlets. Claude can cut the time you spend on boilerplate, syntax lookups,...

Deploying Azure Landing Zones with Terraform and GitHub Actions

Deploying Azure Landing Zones with Terraform and GitHub Actions

An Azure Landing Zone is the foundation of every well-governed cloud environment — it defines management groups, subscriptions, networking, policies, and RBAC in a consistent, repeatable way. Using Terraform alongside GitHub Actions gives you a fully automated,...

Bulk Managing SharePoint Online Permissions with PnP PowerShell

Bulk Managing SharePoint Online Permissions with PnP PowerShell

SharePoint Online permissions tend to accumulate over time — stale site memberships, over-privileged guest accounts, and broken inheritance chains create both compliance risk and confusion. PnP PowerShell gives you a concise, cross-site toolset for auditing and...

Deploying Azure Monitor Workbooks with Bicep

Deploying Azure Monitor Workbooks with Bicep

Azure Monitor Workbooks provide rich, interactive dashboards for operational data — but creating them manually through the portal means they live outside your deployment pipeline. By defining workbooks as Bicep resources you can version-control, peer-review, and...

Automating Microsoft Teams Channel Provisioning with Graph API

Automating Microsoft Teams Channel Provisioning with Graph API

Provisioning Microsoft Teams channels manually is fine for a handful of teams, but it quickly becomes unsustainable when onboarding projects at scale. Using the Microsoft Graph API through PowerShell, you can create teams, add channels, and assign members...

Implementing Azure Policy as Code with GitHub Actions

Implementing Azure Policy as Code with GitHub Actions

Azure Policy is a powerful governance tool, but when policies are created manually through the portal they quickly become undocumented and inconsistent across environments. By storing policy definitions in a Git repository and deploying them through GitHub Actions,...