487
Total Pages
382
Linux-Friendly Pages
105
Pages with Bias
21.6%
Bias Rate

Bias Trend Over Time

Pages with Bias Issues (105)

Page-Level Analysis

Powershell Heavy Windows First Missing Linux Example Windows Tools
Summary:
The documentation demonstrates a strong Windows bias: all command-line examples use PowerShell syntax and Windows-style paths, with no Linux/macOS shell equivalents. Directory and file paths are shown in Windows format (e.g., C:\msBuildDemo), and project file examples reference the Windows-specific Bicep CLI package by default. Instructions for creating and cleaning up directories, as well as running MSBuild, are provided only for Windows/PowerShell, with no bash or cross-platform alternatives. Linux and macOS are mentioned in package lists, but practical usage guidance is missing.
Recommendations:
  • Provide equivalent bash/zsh command-line examples for Linux/macOS, including directory creation, navigation, and cleanup (e.g., mkdir, cd, rm -rf).
  • Show both Windows (\) and Unix-style (/) path separators in file and directory paths, or use cross-platform variables.
  • In project file examples, demonstrate referencing the appropriate Azure.Bicep.CommandLine package for each OS, or show how to use environment variables for BicepPath in a cross-platform way.
  • Include explicit instructions for running MSBuild and dotnet CLI commands on Linux/macOS, noting any differences (such as using 'msbuild' instead of 'MSBuild.exe').
  • Add tabs or callouts for Linux/macOS alongside Windows in all step-by-step instructions.
  • Ensure that all prerequisite and setup steps (such as installing PowerShell or using a shell) are clearly cross-platform, or provide alternatives for each OS.

Page-Level Analysis

Powershell Heavy Windows First
Summary:
The documentation page is largely platform-neutral, focusing on Bicep language features and Azure resource management. However, in the section describing how to discover available 'list' operations for resources, the PowerShell example (Get-AzProviderOperation) is presented before the Azure CLI example. This ordering may suggest a slight Windows/PowerShell bias, as PowerShell is more commonly used on Windows. No Linux-specific tools or shell examples are provided, and there are no Bash or cross-platform scripting examples. The rest of the documentation does not reference Windows-specific tools, paths, or patterns.
Recommendations:
  • Present Azure CLI examples before or alongside PowerShell examples, as Azure CLI is fully cross-platform and more familiar to Linux/macOS users.
  • Include Bash or shell script examples where appropriate, especially when demonstrating command-line usage.
  • Explicitly mention that both PowerShell and Azure CLI are available on all major platforms, and provide links to installation guides for each.
  • Consider adding a note or section on how to perform equivalent operations in Bash or other popular Linux shells, if relevant.
  • Review other documentation pages for similar ordering or tool selection to ensure consistent cross-platform parity.

Page-Level Analysis

Missing Linux Example
Summary:
The documentation exclusively describes managing Azure resource groups using the Azure portal, with no mention of command-line tools or scripts. There are no examples or references to Windows-specific tools (such as PowerShell), but there is also a complete absence of CLI-based instructions (e.g., Azure CLI or Bash), which are commonly used on Linux and cross-platform environments. This omission results in a bias by not providing parity for users who prefer or require non-portal, scriptable, or Linux-friendly workflows.
Recommendations:
  • Add parallel instructions for managing resource groups using the Azure CLI (az group ...) with example commands.
  • Include both Windows (PowerShell) and Linux/macOS (Bash) command-line examples where appropriate.
  • Reference cross-platform tools (such as Azure CLI) early and equally alongside portal-based instructions.
  • Provide links to documentation for managing resource groups via command-line interfaces and automation scripts.

Page-Level Analysis

Windows First Missing Linux Example
Summary:
The documentation page uses Remote Desktop Protocol (RDP) as the sole example of interacting with a virtual machine via the data plane, which is a Windows-centric protocol. There are no Linux-specific examples (such as SSH), nor is there mention of Linux tools or patterns for interacting with Azure resources.
Recommendations:
  • Include Linux-specific examples alongside Windows ones, such as mentioning SSH for virtual machine access in addition to RDP.
  • When describing data plane operations, provide both Windows and Linux usage scenarios to ensure parity.
  • Avoid listing Windows-centric protocols or tools first or exclusively; instead, present both Windows and Linux options together.
  • Consider adding examples or references to command-line tools commonly used on Linux (e.g., curl, scp, SSH) when discussing data plane operations.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation presents deployment instructions with PowerShell first, followed by Azure CLI. While Azure CLI is cross-platform, the explicit mention of PowerShell and the ordering may suggest a Windows-first approach. There are no explicit Linux/macOS-specific instructions or examples, and the verification and cleanup steps rely on the Azure portal, which is platform-agnostic but does not offer command-line parity for Linux users. The prerequisites mention Visual Studio Code and extensions, which are cross-platform, but do not highlight any Linux-specific tools or workflows.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or default to Azure CLI first, as it is cross-platform.
  • Explicitly mention that Azure CLI commands work on Linux, macOS, and Windows.
  • Provide bash/zsh shell variable examples for Linux/macOS users (e.g., export templateFile=...).
  • Include instructions for verifying and cleaning up resources using Azure CLI commands, not just the Azure portal.
  • Add a note or section highlighting Linux/macOS compatibility and any platform-specific considerations.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation consistently lists Windows PowerShell cmdlets before cross-platform Azure CLI commands in every example, and includes PowerShell-specific tooling throughout. This ordering and emphasis may signal a preference for Windows environments, potentially disadvantaging Linux or macOS users.
Recommendations:
  • Alternate the order of examples so that Azure CLI commands appear before or alongside PowerShell cmdlets.
  • Explicitly mention that Azure CLI is cross-platform and suitable for Linux/macOS users.
  • Consider providing bash or shell script snippets for common tasks, especially in sections likely to be used by Linux users.
  • Add a brief note clarifying the platform compatibility of each tool (e.g., 'Azure CLI works on Windows, Linux, and macOS; PowerShell examples are primarily for Windows users').

Page-Level Analysis

Windows First Missing Linux Example
Summary:
The documentation page describes a UI element that supports both Windows and Linux user names, but the only schema example provided specifies 'osPlatform': 'Windows'. There are no Linux-specific examples or validation patterns, and Windows is mentioned first in several places.
Recommendations:
  • Add a schema example that specifies 'osPlatform': 'Linux', including any Linux-specific constraints or validation patterns.
  • Provide sample output and validation messages for both Windows and Linux scenarios.
  • Ensure that descriptions and examples treat Windows and Linux equally, for example by alternating which platform is mentioned first or by presenting both together.
  • Clarify any differences in built-in validation logic between Windows and Linux user names.

Page-Level Analysis

Windows First
Summary:
The documentation generally avoids platform-specific bias in its examples and explanations, focusing on ARM template JSON syntax. However, in the 'Copy limits' section, when discussing support for zero count, Azure PowerShell is listed before Azure CLI, and the 'Next steps' section links only to a PowerShell deployment guide, not to an Azure CLI or cross-platform deployment guide. This ordering and linking subtly prioritize Windows/PowerShell over Linux/Azure CLI.
Recommendations:
  • In the 'Copy limits' section, list Azure CLI before Azure PowerShell, or mention both together to avoid implying a platform preference.
  • In the 'Next steps' section, add a link to a tutorial or guide for deploying ARM templates with Azure CLI, ensuring Linux users have clear guidance.
  • Wherever deployment tooling is mentioned, ensure parity by referencing both Azure CLI and PowerShell, or by providing a neutral/cross-platform deployment guide.
  • Consider adding a short note clarifying that both Azure CLI and PowerShell are cross-platform, and that all examples are applicable regardless of operating system.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation exhibits a Windows bias by referencing Windows file paths (e.g., c:\Templates\...), using PowerShell examples and terminology first, and not providing explicit Linux/macOS path or shell examples. Directory creation and file path instructions assume a Windows environment, and there are no explicit Linux/macOS equivalents or notes for cross-platform users.
Recommendations:
  • Provide Linux/macOS file path examples (e.g., /home/user/Templates/linkedTS/azuredeploy.json) alongside Windows paths.
  • When instructing users to create directories, include both Windows (File Explorer, Command Prompt, PowerShell) and Linux/macOS (mkdir command) instructions.
  • Alternate the order of PowerShell and Azure CLI examples, or present CLI examples first to avoid implicit prioritization of Windows tools.
  • Add explicit notes or callouts for cross-platform compatibility, clarifying that all commands and templates work on Linux/macOS as well as Windows.
  • Where variable assignment or scripting differs between Windows (PowerShell) and Linux/macOS (bash), provide both syntaxes.
  • Avoid assuming the user's environment; use neutral language such as "your local computer" and provide both Windows and Linux/macOS context where appropriate.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation references Azure CLI/PowerShell scripts as a primary automation method, with PowerShell mentioned alongside Azure CLI but without explicit mention of Bash or Linux shell scripting. The use of Windows-style environment variables (e.g., %HOME%\site) in the persisted local storage section further centers Windows conventions. There are no explicit Linux or Bash examples, and Linux-specific patterns are only briefly referenced (e.g., 'Apps running on Linux might be using an explicitly mounted share'), but not elaborated with examples or parity in instructions.
Recommendations:
  • When mentioning automation, explicitly list Bash or Linux shell scripting alongside Azure CLI and PowerShell, and provide equivalent Bash examples.
  • In sections referencing environment variables or file paths, provide both Windows (%HOME%\site) and Linux ($HOME/site) formats.
  • Where PowerShell is mentioned, ensure that Azure CLI examples are shown in Bash syntax as well, and clarify that Azure CLI is cross-platform.
  • Expand on Linux-specific scenarios, such as mounting file shares, with concrete examples or links to relevant documentation.
  • Review for other subtle Windows-first language or patterns and ensure Linux users are equally addressed.

Page-Level Analysis

Windows First
Summary:
The documentation references both Azure CLI and Azure PowerShell for deploying Bicep files, but lists Azure PowerShell (a Windows-centric tool) before Azure CLI (cross-platform). No explicit Linux or Bash examples are provided, but the content is otherwise platform-neutral. There are no PowerShell-specific code samples or Windows-only tools mentioned, but the ordering subtly prioritizes Windows tooling.
Recommendations:
  • List Azure CLI before Azure PowerShell when mentioning deployment tools, as Azure CLI is cross-platform and more inclusive for Linux users.
  • Explicitly mention that Azure CLI works on Linux, macOS, and Windows to reinforce cross-platform support.
  • Consider providing example deployment commands for both Azure CLI (bash) and Azure PowerShell, or at least for Azure CLI.
  • Avoid implying a Windows-first workflow by balancing references to tools and environments.

Page-Level Analysis

Powershell Heavy Missing Linux Example Windows Tools
Summary:
The documentation provides a PowerShell example for URL encoding but omits equivalent Linux/macOS (e.g., Bash) command-line examples. This creates a bias toward Windows users and assumes familiarity with Windows tools, while not addressing how Linux users can perform the same task.
Recommendations:
  • Add a Bash example for URL encoding, such as using `python3 -c 'import urllib.parse, sys; print(urllib.parse.quote(sys.argv[1]))' "$url"` or `jq -sRr @uri <<< "$url"`.
  • Explicitly mention that the PowerShell example is for Windows and provide parity for Linux/macOS users.
  • Review the documentation for other places where only Windows tools or workflows are referenced, and ensure Linux alternatives are included.
  • Consider a short section or callout box that summarizes cross-platform options for common tasks like URL encoding.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation page demonstrates a Windows bias by referencing Azure PowerShell and Azure CLI as the primary authentication methods, listing Azure PowerShell before other options, and not providing any Linux- or macOS-specific guidance or examples. There are no examples or notes about using Bicep or related tools on Linux, nor is there mention of cross-platform differences or considerations.
Recommendations:
  • Include explicit examples and notes for Linux and macOS users, such as how to authenticate using Azure CLI on those platforms.
  • Avoid listing Azure PowerShell before Azure CLI or at least clarify that both are cross-platform, but PowerShell is more Windows-centric.
  • Mention that Azure CLI is fully supported on Linux and macOS, and provide links or notes for installing and using it on those systems.
  • Add a section or callout about cross-platform compatibility, especially for authentication and environment setup.
  • Where credential types are listed, clarify which are available or recommended for Linux/macOS users (e.g., Azure CLI, Environment, Managed Identity).

Page-Level Analysis

Powershell Heavy Windows Tools Missing Linux Example Windows First
Summary:
The documentation page provides deployment guidance and troubleshooting specifically referencing Azure PowerShell cmdlets (e.g., New-AzDeployment), which are primarily Windows-centric tools. There are no examples or mentions of equivalent Linux/CLI tools (such as Azure CLI), and the only deployment scenario discussed is via PowerShell. This creates a bias towards Windows users and omits guidance for those using Linux or cross-platform environments.
Recommendations:
  • Include equivalent Azure CLI (az deployment ...) examples and notes alongside PowerShell examples.
  • Mention that Azure CLI is cross-platform and provide guidance for both PowerShell and CLI users.
  • If discussing parameter name conflicts, explain whether similar issues exist with Azure CLI commands and how to resolve them.
  • Reorder or parallelize examples so that Windows and Linux/cross-platform tools are given equal prominence.
  • Add a note clarifying that the guidance applies to both PowerShell and CLI users, and link to relevant documentation for both.

Page-Level Analysis

Powershell Heavy Windows Tools Windows First Missing Linux Example
Summary:
The documentation page demonstrates a bias toward Windows and PowerShell environments. PowerShell is heavily featured in both script examples and deployment steps, with PowerShell-based commands provided first and in more detail. Uploading scripts to Azure Storage is only shown with PowerShell, and Docker volume mount examples use Windows drive letter syntax (e.g., d:/docker), with no corresponding Linux/macOS examples. There are no Bash/Azure CLI examples for uploading files or running deployments from non-Windows systems, and the file path conventions are Windows-centric.
Recommendations:
  • Provide equivalent Bash/Azure CLI examples for uploading deployment scripts to Azure Storage, especially for Linux/macOS users.
  • Include Docker run examples using Linux/macOS path syntax (e.g., /home/user/docker:/data) alongside Windows examples.
  • When presenting PowerShell and CLI examples, alternate the order or present both together to avoid a 'Windows-first' impression.
  • Clarify in each section that the instructions apply to all platforms, and explicitly mention any differences or additional steps for Linux/macOS.
  • Where possible, use platform-neutral language and file path conventions, or provide both Windows and Linux/macOS variants.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation presents Azure PowerShell (which is Windows-centric) examples before Azure CLI in each code section, and consistently refers to Visual Studio Code as the editor, which is more commonly associated with Windows workflows. The PowerShell examples use Windows-specific concepts like splatting, and the instructions for opening a terminal default to PowerShell first, with Bash (and Git Bash) as a secondary note. There are no explicit Linux-only examples or Linux-specific tooling mentioned, and the documentation does not address platform-specific nuances for Linux users.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI sections, or present Azure CLI first, as it is cross-platform and more commonly used on Linux.
  • Explicitly mention that Visual Studio Code and all tools are available on Linux, and provide links or notes for Linux installation where relevant.
  • Instruct users to open a Bash terminal (or their preferred shell) first, not just PowerShell, and clarify that all steps work on Linux/macOS as well as Windows.
  • Add troubleshooting notes or tips for Linux users where file paths, permissions, or shell behavior may differ.
  • Where PowerShell-specific features (like splatting) are used, briefly explain or provide equivalent Bash/CLI idioms.
  • Consider including at least one example using native Linux tools (e.g., zip/unzip commands, or using the Azure CLI from a Linux shell) to demonstrate parity.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation demonstrates a mild Windows bias by referencing Windows shells (PowerShell and cmd) alongside Bash, and by providing specific instructions for PowerShell/cmd users after Bash examples. However, all code samples and primary instructions are written for Bash, and Linux is referenced positively (e.g., cloud-init for Linux VMs). There are no exclusive Windows tools or patterns, but the repeated need to clarify PowerShell/cmd differences and the order in which they are mentioned (Bash first, then Windows shells) indicates a subtle 'windows_first' and 'powershell_heavy' bias.
Recommendations:
  • Provide explicit Linux and macOS instructions/examples where relevant, not just Bash (e.g., clarify file path differences or shell-specific syntax).
  • Group shell-specific instructions together in a table or section, rather than always listing Bash first and then PowerShell/cmd as an afterthought.
  • Where differences exist, show parallel examples for Bash, PowerShell, and cmd, rather than focusing on Bash and adding Windows notes.
  • Highlight cross-platform compatibility and note any platform-specific limitations or behaviors.
  • Consider adding a section at the top clarifying that all examples are cross-platform unless otherwise noted, and link to platform-specific guidance if available.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation page shows mild Windows bias by mentioning Azure PowerShell before Linux-friendly tools (such as Azure CLI) in the 'Required access' section, and by highlighting PowerShell as a primary automation interface. While the 'Next steps' section does list Azure CLI and Python, PowerShell is still given prominence in earlier sections. There are no explicit Linux shell examples or references to Linux-specific workflows, and the only command-line example in the limitations section uses Azure CLI, which is cross-platform.
Recommendations:
  • When referencing automation or scripting tools, mention Azure CLI before or alongside Azure PowerShell, as CLI is cross-platform and more familiar to Linux users.
  • Provide explicit Linux shell (bash) examples or note that Azure CLI commands work in both Windows and Linux environments.
  • Balance references to PowerShell and CLI throughout the documentation, not just in the 'Next steps' section.
  • Consider adding a brief note on cross-platform compatibility for each tool mentioned, especially in sections discussing automation or scripting.

Page-Level Analysis

Windows First
Summary:
The documentation mentions Azure PowerShell before Azure CLI when discussing supported versions for zero-count copy loops. This ordering may subtly prioritize Windows tooling, as PowerShell is more closely associated with Windows environments, even though Azure CLI is cross-platform. No explicit PowerShell or Windows-only examples are given, and all code samples are in ARM template JSON, which is platform-agnostic.
Recommendations:
  • When listing supported tooling (e.g., Azure PowerShell, Azure CLI, REST API), alternate or randomize the order, or list Azure CLI first to reflect its cross-platform nature.
  • Explicitly state that both Azure CLI and PowerShell are available on Windows, Linux, and macOS to reinforce cross-platform parity.
  • Where possible, provide example commands for both Azure CLI and PowerShell, or at least mention that all examples are platform-agnostic.
  • Consider including a brief note or table clarifying the cross-platform availability of all mentioned tools.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation demonstrates a mild Windows bias. PowerShell examples are given their own section, and Visual Studio Code (a Microsoft tool) is emphasized for decompilation and editing. In the export section, Azure CLI (cross-platform) is shown first, but Azure PowerShell (Windows-centric) is also highlighted, and Visual Studio Code features are referenced throughout. There are no explicit Linux/macOS shell examples (e.g., bash), and no mention of Linux-specific editors or workflows.
Recommendations:
  • Add explicit bash or shell examples for Linux/macOS users, especially in sections showing command-line usage (e.g., show 'cat' or 'less' for file viewing, or use 'mv' for renaming).
  • Balance the editor/tooling recommendations by mentioning cross-platform editors such as VS Code (already present) and alternatives like Vim or nano for basic edits.
  • Clarify that PowerShell examples can be run on Windows, macOS, and Linux (since PowerShell Core is cross-platform), or provide bash equivalents.
  • Where Visual Studio Code is referenced, note that it is available on all major platforms.
  • Consider adding a short section or callout for Linux/macOS users, summarizing any differences or confirming parity.

Page-Level Analysis

Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation page provides a detailed overview of Bicep file functions but demonstrates bias by only including a PowerShell script example (myscript.ps1) in the 'loadTextContent' section. There are no examples for Linux shell scripts (e.g., .sh files) or references to Linux scripting environments. The deployment script resource uses 'AzurePowerShell' exclusively, with no mention of 'AzureCLI' or cross-platform alternatives. No Linux or cross-platform command-line usage is shown.
Recommendations:
  • Include examples that demonstrate loading and deploying Linux shell scripts (e.g., myscript.sh) using the same Bicep functions.
  • Show how to use the 'AzureCLI' deployment script kind in addition to 'AzurePowerShell', with corresponding examples.
  • Explicitly mention that the file functions work with both Windows and Linux file types and encodings.
  • Where possible, provide parallel examples for both Windows (PowerShell) and Linux (Bash) script scenarios.
  • Clarify that the Bicep CLI and file functions are cross-platform, and reference any platform-specific considerations if they exist.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation provides both Azure CLI and PowerShell examples for deployment commands and role assignment, but PowerShell (a Windows-centric tool) is often presented first or equally, and is highlighted in code snippets. There is no explicit mention of Linux or Bash, nor are there any Linux-specific considerations or examples. The documentation assumes familiarity with PowerShell, which may disadvantage Linux users.
Recommendations:
  • Explicitly state that Azure CLI commands work cross-platform (Windows, Linux, macOS) and are recommended for Linux users.
  • Present Azure CLI examples before PowerShell examples to avoid implicit Windows-first bias.
  • Add a brief note or section about running these commands in Bash or other Linux shells, especially for role assignment and deployment.
  • Where PowerShell is shown, clarify that it is primarily for Windows users, and provide equivalent Bash/Linux shell commands if any OS-specific steps exist.
  • Consider including screenshots or terminal prompts that reflect both Windows and Linux environments.

Page-Level Analysis

Windows First
Summary:
The documentation provides both Azure PowerShell and Azure CLI examples for retrieving supported locations for a resource type. However, the PowerShell example is presented first, which may suggest a subtle preference for Windows tooling. There are no missing Linux examples, and both command-line interfaces are cross-platform, but the ordering could be perceived as Windows-first.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples throughout the documentation to avoid a consistent Windows-first impression.
  • Explicitly mention that both Azure CLI and Azure PowerShell are cross-platform, and provide links to installation instructions for each on Windows, Linux, and macOS.
  • Where possible, include Bash shell examples (for scripting) alongside PowerShell, especially for common tasks.
  • Consider using tabbed sections labeled 'Azure CLI (cross-platform)' and 'PowerShell' to reinforce parity.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation provides both Azure CLI and Azure PowerShell examples for obtaining access tokens and making REST API calls. However, PowerShell examples are given equal prominence to CLI, and in some sections (such as deploying resources with templates), only PowerShell is referenced for further reading. There is no explicit mention or example of Linux-native tools or workflows beyond the CLI/cURL, and PowerShell is not clearly marked as Windows-specific, which may confuse Linux users. References to Visual Studio Code and PowerShell for template deployment further reinforce a Windows-centric perspective.
Recommendations:
  • Clearly indicate that Azure PowerShell examples are primarily for Windows or explain cross-platform availability.
  • Provide explicit bash or shell script examples for Linux users alongside PowerShell, especially for multi-step workflows.
  • When referencing further documentation (such as deploying templates), include links to both PowerShell and CLI/Linux-native guides.
  • Avoid referencing Visual Studio Code as the only editor for template creation; mention alternatives or note its cross-platform support.
  • Ensure that CLI examples are always presented first or in parallel with PowerShell to avoid a Windows-first impression.

Page-Level Analysis

Missing Linux Example Windows First
Summary:
The documentation does not provide any OS-specific command-line examples, but when mentioning Infrastructure as Code (IAC) tools, it lists 'Azure CLI' and 'PowerShell' together, with PowerShell mentioned after Azure CLI. However, there are no explicit Linux-specific instructions, screenshots, or examples. All instructions reference the Azure Portal or generic Azure tools, but the lack of Linux/Unix shell examples or explicit mention of cross-platform command-line usage may make the documentation less approachable for Linux users.
Recommendations:
  • Include explicit examples using both Azure CLI (which is cross-platform) and Azure PowerShell, clarifying which commands work in Bash/Linux and which in PowerShell/Windows.
  • Add screenshots or instructions for performing tasks using the Azure CLI in a Linux shell environment.
  • Clarify that all steps can be performed on both Windows and Linux, and provide notes or links for Linux users where appropriate.
  • Where templates or scripts are referenced, provide sample commands for both Bash (Linux/macOS) and PowerShell (Windows), or indicate their cross-platform compatibility.

Page-Level Analysis

Missing Linux Example Windows First
Summary:
The documentation exclusively describes using the Azure Portal (a web GUI) for all actions and does not provide any command-line examples. There is no mention of cross-platform CLI tools such as Azure CLI or Azure PowerShell. While the portal is cross-platform in theory, the lack of CLI examples means users on Linux (or those who prefer automation/scripting) are not served. Furthermore, there is no mention of Linux-specific workflows or parity with Windows tools, and the documentation implicitly assumes a GUI-first (and thus, often Windows-centric) workflow.
Recommendations:
  • Add Azure CLI examples for enabling, customizing, and approving JIT access, as Azure CLI is cross-platform and widely used on Linux.
  • If relevant, include Azure PowerShell examples and clarify that PowerShell Core is available on Linux, but prioritize CLI examples for parity.
  • Explicitly mention that all actions can be performed from any OS via the Azure Portal, but highlight automation options for Linux users.
  • Provide links to CLI reference documentation for managing JIT access in Azure Managed Applications.
  • Consider a dedicated section or callout for Linux/macOS users, emphasizing cross-platform tooling and scripting options.

Page-Level Analysis

Missing Linux Example Windows Tools
Summary:
The documentation page exclusively uses examples with 'adminUsername' values such as 'administrator' and 'adminUsername', which are strongly associated with Windows virtual machines. There is no mention of Linux equivalents (e.g., 'adminUser', 'root'), nor is there any example or guidance for Linux VM scenarios. The resource type used ('Microsoft.Compute/virtualMachines') can be for both Windows and Linux, but the admin username patterns and terminology are Windows-centric.
Recommendations:
  • Include examples that use Linux-typical admin usernames (e.g., 'adminUser', 'root', 'azureuser') to demonstrate parity.
  • Explicitly mention that the rule applies to both Windows and Linux VMs, and provide guidance for both.
  • Where adminUsername is referenced, clarify that the value and conventions differ between Windows and Linux.
  • Consider adding a table or section listing common admin usernames for both platforms and how to avoid literals in each case.

Page-Level Analysis

Powershell Heavy Windows Tools Windows First Missing Linux Example
Summary:
The documentation demonstrates a strong Windows and PowerShell bias. All scripting examples use PowerShell (.ps1) scripts, and the only script-based deployment method shown is via Azure PowerShell. The 'Copy and deploy' task examples use the 'windows-latest' agent pool, and there is no mention or example of using Bash, Linux agents, or cross-platform scripting. Windows tools and patterns (such as Visual Studio project scripts and PowerShell) are referenced exclusively or before any Linux alternatives, with no Linux/Unix shell or CLI equivalents provided.
Recommendations:
  • Provide equivalent Bash or Azure CLI examples for deploying ARM templates, especially for users on Linux or macOS.
  • Demonstrate the use of 'ubuntu-latest' or other Linux agent pools in the 'Copy and deploy' section, not just in the PowerShell example.
  • Reference cross-platform tools (e.g., AzCopy, Azure CLI) and show how to use them in YAML pipelines, including sample scripts.
  • Mention and link to documentation for running scripts on Linux/macOS agents, and clarify any differences or limitations.
  • Balance references to Visual Studio and PowerShell with alternatives like VS Code and Bash/Azure CLI workflows.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation page demonstrates a mild Windows bias by referencing Azure PowerShell alongside Azure CLI when discussing export options, and by listing PowerShell before REST API in the 'Next steps' section. There are no explicit Linux-specific instructions or examples, and the mention of PowerShell may suggest a preference for Windows tooling. However, Azure CLI is mentioned, which is cross-platform, but Linux-specific workflows or screenshots are absent.
Recommendations:
  • Ensure that Azure CLI (which is cross-platform) is mentioned before Azure PowerShell in all lists and examples, as it is more relevant for Linux users.
  • Add explicit notes or examples for Linux/macOS users, such as CLI commands in a Bash shell, or clarify that the Azure CLI instructions apply equally to Linux, macOS, and Windows.
  • Include screenshots or terminal snippets from Linux environments where possible, or at least mention that the steps are platform-agnostic.
  • Avoid listing Windows-specific tools (like PowerShell) before cross-platform alternatives unless there is a technical reason.
  • Consider adding a section or note that highlights parity between platforms and reassures users that all steps can be performed on Linux.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation demonstrates a moderate Windows bias. While it states that both Azure CLI (Linux) and Azure PowerShell scripts are supported, examples and instructions often present PowerShell/Windows-centric approaches first or exclusively. Script deployment and management examples frequently use Azure PowerShell, and there are no explicit Linux shell (e.g., Bash) deployment commands for deploying Bicep files, only PowerShell. Additionally, some instructions and tool references (e.g., use of PowerShell cmdlets, ARMClient in PowerShell) assume a Windows environment, and there is a lack of parity in showing how to perform equivalent actions from a Linux shell.
Recommendations:
  • Provide Linux shell (Bash) equivalents for all PowerShell deployment and management examples, especially for deploying Bicep files and interacting with the REST API.
  • When listing Azure CLI and PowerShell tabs, alternate the order or present CLI (cross-platform) first to avoid implicit prioritization of Windows tools.
  • Explicitly mention that Azure CLI commands can be run from any platform, and provide sample Bash scripts for common tasks (e.g., resource group creation, Bicep deployment).
  • Where ARMClient or other Windows-specific tools are referenced, suggest cross-platform alternatives or show equivalent curl/az CLI REST calls.
  • Ensure that all code samples and walkthroughs are available in both PowerShell and Bash (or at least CLI) variants, and clarify any platform-specific requirements.

Page-Level Analysis

Windows Tools Windows First
Summary:
The documentation page demonstrates a mild Windows bias, particularly in the PowerShell deployment examples and file path conventions. Azure PowerShell is featured as a primary deployment method, and all PowerShell examples use Windows-style (C:\) paths without Linux equivalents. Visual Studio Code is referenced as the main editor, but no mention is made of Linux-native editors or shells. There are no explicit Linux shell (bash) or cross-platform PowerShell Core examples, and file paths are not shown in a platform-neutral way.
Recommendations:
  • Provide Linux/bash equivalents for all PowerShell deployment examples, using bash syntax and Linux file paths (e.g., /home/user/templates/storage.bicep).
  • When showing file paths, use both Windows (C:\...) and Linux (/home/...) examples, or use platform-neutral notation.
  • Mention that Azure PowerShell and Azure CLI are both cross-platform, and clarify that PowerShell Core can be used on Linux/macOS.
  • Include examples using Linux-native editors (e.g., vim, nano) or at least acknowledge their use alongside Visual Studio Code.
  • Where Visual Studio Code features are described, note that they are available on all supported platforms.
  • Explicitly state that all commands and tools shown are available on Linux, and provide installation links or notes for Linux users.

Page-Level Analysis

Windows First Missing Linux Example Windows Tools
Summary:
The documentation demonstrates a Windows bias by consistently using Windows-style file paths (e.g., C:\templates\main.bicep) in all examples, regardless of shell. There are no Linux/macOS path examples or notes for cross-platform users. Additionally, references to Visual Studio Code and PowerShell are prominent, and the only role-based access control tutorial linked is for PowerShell. While Azure CLI is included (which is cross-platform), the lack of Linux/macOS-specific guidance and the default to Windows conventions may confuse or exclude non-Windows users.
Recommendations:
  • Provide both Windows (C:\path\to\file) and Linux/macOS (/home/user/path/to/file or ~/path/to/file) path examples in all command samples.
  • Add notes or tabs clarifying file path differences between platforms.
  • Include links to role-based access control tutorials for Azure CLI and/or portal, not just PowerShell.
  • Mention that Azure CLI and Bicep are cross-platform and provide installation/use guidance for Linux/macOS.
  • Where PowerShell is referenced, clarify that it is available on Linux/macOS, or provide Bash equivalents where appropriate.
  • Review all code snippets and instructions to ensure they are not Windows-centric by default.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation page exhibits a Windows bias by referencing PowerShell-specific export instructions and linking to a PowerShell-centric guide for exporting blueprint definitions. There are no examples or guidance for performing equivalent tasks using cross-platform tools like Azure CLI or Bash, and the only command-line tooling mentioned for configuring DenySettingsMode is Azure PowerShell (with Azure CLI mentioned only as an alternative, but without examples). No Linux- or Bash-specific instructions or examples are provided.
Recommendations:
  • Include Azure CLI and Bash examples alongside or before PowerShell examples for all migration steps, especially for exporting blueprint definitions and configuring DenySettingsMode.
  • Update links to reference both PowerShell and Azure CLI documentation where available, or provide new cross-platform instructions if needed.
  • Explicitly state that all steps can be performed on Linux, macOS, and Windows, and provide parity in tooling guidance.
  • Add a sample workflow using Azure CLI for exporting blueprints and managing deployment stacks to ensure Linux users are equally supported.

Page-Level Analysis

Windows First
Summary:
The documentation provides platform-specific instructions for setting environment variables, listing Windows first, followed by Linux and macOS. All other code examples are Python and cross-platform, and there are no PowerShell-specific or Windows-only tools used. However, the ordering of Windows instructions before Linux and macOS may subtly suggest a Windows-first perspective.
Recommendations:
  • Rotate the order of platform-specific instructions so that Linux or macOS is sometimes listed first, or use a neutral order (e.g., alphabetical: Linux, macOS, Windows).
  • Consider using tabbed or collapsible sections for platform-specific instructions, with no default selected or with the most common developer platform (often Linux for Python) first.
  • Explicitly state that all Python code examples are cross-platform and work equally on Windows, Linux, and macOS.
  • Where possible, provide parity in notes and troubleshooting tips for all platforms (e.g., mention restarting the terminal/editor for all OSes, not just Windows/Visual Studio).

Page-Level Analysis

Windows Tools Powershell Heavy Missing Linux Example
Summary:
The documentation provides both Azure CLI (cross-platform) and PowerShell examples, but the PowerShell section relies on ARMClient, a Windows-centric tool, without mentioning Linux alternatives or cross-platform REST tools. There are no examples using Linux-native tools (such as curl or httpie) for REST operations, and the documentation assumes ARMClient is available, which is not the case on Linux. This creates a bias towards Windows environments and PowerShell users.
Recommendations:
  • For REST operations, provide examples using curl or httpie, which are available on Linux, macOS, and Windows. This ensures parity for Linux users.
  • Explicitly mention that ARMClient is primarily for Windows and suggest cross-platform alternatives for Linux/macOS users.
  • In the prerequisites, list Linux-compatible tools for REST calls, such as curl, httpie, or Postman CLI.
  • Where PowerShell examples are given, consider also providing Bash shell equivalents for Linux users, especially for variable assignment and command chaining.
  • Review the documentation for any assumptions about the user's OS and clarify when a tool or command is platform-specific.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation page demonstrates a subtle Windows bias in the 'Next steps' section, where Azure PowerShell and Visual Studio Code (a Microsoft product) are mentioned as primary tools for deploying and authoring Bicep files. Azure CLI is mentioned, but PowerShell is listed first, and there is no mention of Linux-native editors or deployment workflows. No explicit Linux examples or tools are highlighted, and the guidance assumes familiarity with Windows-centric tooling.
Recommendations:
  • List Azure CLI before Azure PowerShell when suggesting deployment tools, as Azure CLI is fully cross-platform.
  • Explicitly mention that all Bicep examples and deployment steps work on Linux, macOS, and Windows.
  • Include links or references to Linux-native editors (such as Vim, Emacs, or JetBrains IDEs) that support Bicep, if available.
  • Provide a brief example of deploying a Bicep file using Azure CLI from a Linux shell (e.g., Bash), to demonstrate parity.
  • Clarify that Visual Studio Code is available on Linux and macOS, or suggest alternative editors for those platforms.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation provides both Azure CLI and Azure PowerShell examples for all command-line operations, but PowerShell is always presented as an equal alternative, not as a fallback. There is a reference to a Windows-specific scenario (WinRM on a Windows VM) in the introduction, and the PowerShell examples use Windows-style line continuations (backticks). There are no explicit Linux shell examples (e.g., Bash), and no mention of Linux-specific tools or patterns. The documentation assumes familiarity with PowerShell, which is primarily a Windows tool, although it is now cross-platform. The ordering of examples sometimes places Azure CLI first, which is more cross-platform, but the presence of PowerShell throughout and the Windows VM reference indicate a mild Windows bias.
Recommendations:
  • Add explicit Bash shell examples alongside Azure CLI commands to demonstrate Linux parity, including line continuations and environment variable usage.
  • Avoid referencing Windows-specific scenarios (such as WinRM on a Windows VM) without also providing Linux equivalents or alternatives.
  • Clarify that Azure CLI commands are cross-platform and can be used on Windows, macOS, and Linux.
  • If PowerShell is included, note that it is available cross-platform, but consider adding Bash alternatives for users on Linux.
  • Ensure that any tool or pattern mentioned (such as PowerShell line continuations) is accompanied by the equivalent for Bash or other common Linux shells.

Page-Level Analysis

Windows First Missing Linux Example Windows Tools
Summary:
The documentation page exhibits a Windows bias by focusing on deploying a Windows VM, referencing a Windows-specific Quickstart template, and instructing users to verify deployment via RDP (a Windows protocol). While both PowerShell and Bash/CLI deployment examples are provided, the template and post-deployment steps are Windows-centric, and there is no mention of Linux VM deployment or SSH access.
Recommendations:
  • Include a parallel example/template for deploying a Linux VM (e.g., link to or use the 'Deploy a simple Linux VM' Quickstart template).
  • Demonstrate how to connect to the deployed VM using SSH for Linux, alongside the RDP instructions for Windows.
  • When referencing Quickstart templates, mention both Windows and Linux options, or provide a choice at the start of the tutorial.
  • In post-deployment verification, show both RDP (for Windows) and SSH (for Linux) connection steps.
  • Ensure that examples and screenshots are balanced between Windows and Linux scenarios, or clearly state that the tutorial is Windows-specific if that is the intent.

Page-Level Analysis

Windows First
Summary:
The documentation references 'Azure CLI or Azure PowerShell' as the means to run examples, listing Azure PowerShell (a Windows-centric tool) alongside Azure CLI, and links to a Visual Studio Code quickstart for deployment. While Azure CLI is cross-platform, the mention of Azure PowerShell and Visual Studio Code (which is cross-platform but often associated with Windows) before any explicit mention of Linux-native workflows or tools may suggest a subtle Windows-first bias. However, the Bicep code examples themselves are platform-agnostic, and there are no explicit PowerShell scripts, Windows-only tools, or missing Linux examples.
Recommendations:
  • Clarify that Azure CLI is fully cross-platform and can be used on Linux, macOS, and Windows.
  • If mentioning Azure PowerShell, also mention that it is available cross-platform, or provide a Linux-native alternative (such as Bash scripts using Azure CLI).
  • Consider providing explicit example commands for deploying Bicep files using Azure CLI on Linux (e.g., Bash shell), not just referencing the Visual Studio Code workflow.
  • Add a note or section on running Bicep deployments from Linux environments, possibly linking to relevant documentation.
  • Ensure that any future examples or tooling references are balanced between Windows and Linux workflows.

Page-Level Analysis

Missing Linux Example Windows Tools
Summary:
The documentation page demonstrates a bias towards Windows by exclusively referencing the Azure portal UI for all operational steps, which is more familiar to Windows users. There are no command-line examples (such as Azure CLI, PowerShell, or Bash), and no mention of Linux-native tools or workflows. The guidance assumes use of graphical tools and omits parity for users who prefer or require command-line or automation approaches, which are common in Linux environments.
Recommendations:
  • Add step-by-step examples using Azure CLI for all major operations described (moving resources, finding original resource group, handling certificates).
  • Include PowerShell examples, but ensure Azure CLI (cross-platform) is presented first or equally.
  • Reference Bash scripting or automation scenarios for Linux users.
  • Explicitly state that all operations can be performed via CLI and provide links or inline examples.
  • Where screenshots are provided for the portal, consider also providing terminal output or code snippets for CLI equivalents.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation presents both Azure PowerShell and Azure CLI examples for managing resource locks, but it lists Azure PowerShell (a Windows-centric tool) before Azure CLI (which is cross-platform and more common on Linux). There is a slight Windows-first bias in the ordering of command-line examples. However, both PowerShell and CLI are covered in detail, and the CLI examples use Bash syntax, which is Linux-friendly. No exclusive use of Windows tools or missing Linux examples were found.
Recommendations:
  • Present Azure CLI examples before Azure PowerShell examples, as CLI is cross-platform and more commonly used on Linux.
  • Explicitly note that Azure CLI commands work on Linux, macOS, and Windows, and that PowerShell is available cross-platform but is more familiar to Windows users.
  • Where possible, provide Bash and PowerShell command variants side by side, or clarify which shell the example is intended for.
  • Ensure that any references to tools or workflows are not Windows-specific unless necessary, and mention Linux/macOS compatibility where relevant.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation generally maintains cross-platform neutrality by focusing on Visual Studio Code and Azure CLI. However, in several places, Azure PowerShell is mentioned alongside Azure CLI, and in all such cases, PowerShell is always listed after Azure CLI (never exclusively or first). There are no explicit Windows-only tools or patterns, but the presence of PowerShell examples and references may be perceived as Windows-centric, especially since Linux-native shell examples (e.g., Bash) are not provided. All keyboard shortcuts are given in a cross-platform way (Ctrl/Cmd), and no Windows-only tools are promoted. There are no missing Linux examples, but the parity could be improved by explicitly mentioning Linux/macOS environments and shell usage.
Recommendations:
  • Where Azure CLI and PowerShell are both mentioned, consider explicitly stating that Azure CLI works natively on Linux/macOS/Windows, and PowerShell Core is cross-platform, to avoid the impression of Windows bias.
  • Add explicit references to Linux/macOS environments where relevant, such as mentioning that all commands work in Bash or zsh.
  • Provide example commands in Bash or zsh where appropriate, especially for common developer workflows.
  • In sections that mention keyboard shortcuts, clarify any differences for macOS users (e.g., Cmd vs Ctrl) if not already done.
  • Consider including a brief note or link about using the Azure CLI in Linux/macOS terminals to reinforce cross-platform support.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation exhibits a moderate Windows bias. PowerShell examples and references are consistently presented before Azure CLI (cross-platform) examples. The use of PowerShell-specific cmdlets and terminology (e.g., Get-AzContainerRegistry, Publish-AzBicepModule) is prominent, and Windows paths are listed first in local cache examples. There is little to no mention of Linux-specific shell usage, and no explicit Linux shell (bash) or scripting examples are provided. The documentation assumes familiarity with Windows tools and patterns, with Linux and Mac paths only briefly mentioned.
Recommendations:
  • Alternate the order of examples so that Azure CLI (cross-platform) is presented before PowerShell, or present both side-by-side.
  • Include Linux/macOS shell (bash) examples where relevant, especially for scripting or automation scenarios.
  • Provide more detailed Linux and Mac path examples, matching the detail given for Windows.
  • Avoid Windows-centric terminology and tools as the default; clarify that PowerShell is available cross-platform, or provide bash equivalents.
  • Explicitly state that all Azure CLI commands work identically on Linux, macOS, and Windows, and consider adding notes or troubleshooting tips for Linux users.

Page-Level Analysis

Powershell Heavy Windows First Windows Tools
Summary:
The documentation provides detailed examples for both Azure CLI and Azure PowerShell, but the PowerShell section is prominent and detailed, reflecting a Windows-centric approach. There are no explicit Linux shell (bash) examples, and PowerShell is presented as a primary automation tool, which is traditionally associated with Windows environments. The documentation does not mention or provide parity for Linux-native scripting or tooling beyond Azure CLI.
Recommendations:
  • Add explicit bash (Linux shell) examples alongside Azure CLI commands to demonstrate usage in Linux environments.
  • Clarify that Azure CLI commands work cross-platform and can be used in both Windows (cmd, PowerShell) and Linux (bash) shells.
  • If mentioning PowerShell, also mention that PowerShell Core is cross-platform, but provide bash alternatives for Linux users.
  • Ensure that any references to scripting or automation tools include Linux-native options, not just PowerShell.
  • Consider reordering sections so that cross-platform tools (Azure CLI, bash) are presented before Windows-specific tools (PowerShell).

Page-Level Analysis

Missing Linux Example Windows Tools Windows First
Summary:
The documentation provides command-line examples only for Azure CLI and Azure PowerShell, both of which are available cross-platform but are traditionally associated with Windows environments. There are no explicit Linux shell (bash) examples, nor are there references to Linux-native tools or workflows. The tooling recommendations (Visual Studio, Visual Studio Code) are Windows-centric, with no mention of Linux editors or shell environments. PowerShell examples are given equal prominence to Azure CLI, and in some places, PowerShell is mentioned before Linux alternatives.
Recommendations:
  • Add explicit bash/zsh shell examples for all CLI commands, demonstrating usage in a typical Linux terminal environment.
  • Mention that Azure CLI is fully supported on Linux and macOS, and provide installation links for those platforms.
  • Include Linux-native editor recommendations (e.g., Vim, Emacs, nano) or at least acknowledge their use.
  • Clarify that PowerShell Core is cross-platform, but also show how to use CLI commands in bash scripts.
  • When referencing tools, avoid listing Windows tools (Visual Studio) before cross-platform or Linux-native options.
  • Add a section or callout for Linux/macOS users, highlighting any differences or tips for those environments.

Page-Level Analysis

Powershell Heavy Windows Tools
Summary:
The documentation page is largely a reference table listing Azure resource types and their support for move operations, with minimal platform-specific guidance. However, there are a few instances of Windows bias: (1) The only script explicitly referenced is a PowerShell script for Azure Automation account region moves; (2) The SQL VM move instructions link only to Windows-specific SQL IaaS Agent extension documentation, not mentioning Linux VMs or their process; (3) There are no CLI (az), Bash, or Linux-specific examples or links, and PowerShell is the only automation tool directly referenced.
Recommendations:
  • Where scripts or automation are referenced (e.g., for Azure Automation or SQL VM moves), provide both PowerShell and Azure CLI (az) examples, and clarify if the process is different for Linux.
  • For SQL VM move instructions, include guidance or links for both Windows and Linux SQL Server VMs, or clarify if the process is identical.
  • Wherever automation is referenced, mention cross-platform tools (such as Azure CLI or REST API) alongside PowerShell.
  • Add a general note in the 'Next steps' or introduction about cross-platform support, and link to platform-agnostic tools and documentation.
  • Audit referenced links to ensure they are not Windows-specific unless the feature is truly Windows-only, and clarify platform applicability where relevant.

Page-Level Analysis

Powershell Heavy Missing Linux Example Windows Tools Windows First
Summary:
The documentation page demonstrates a Windows bias by providing only Azure PowerShell examples for command-line operations, with no equivalent Azure CLI (cross-platform) or Bash examples. The PowerShell tab is the only programmatic alternative to the Azure Portal, and all scripting and automation steps are shown using PowerShell cmdlets, which are most familiar to Windows users. There is no mention of Linux-native tools or workflows, and the documentation refers to PowerShell-specific migration guides. This may disadvantage users on Linux or macOS who prefer or require cross-platform tools.
Recommendations:
  • Add Azure CLI (az) examples alongside PowerShell for all command-line steps, including exporting, modifying, and deploying ARM templates.
  • Include Bash shell script examples where applicable, especially for template manipulation and deployment.
  • Reference cross-platform documentation and migration guides that use Azure CLI, not just PowerShell.
  • Ensure that tabs for command-line instructions are labeled as 'Azure CLI' and 'PowerShell', not just 'PowerShell', to encourage parity.
  • Review all links and references to ensure they do not exclusively point to PowerShell-based guides.
  • Explicitly state that all steps can be performed on Linux, macOS, and Windows, and provide any OS-specific notes if needed.

Page-Level Analysis

Windows First Missing Linux Example Windows Tools
Summary:
The documentation page demonstrates a mild Windows bias. File path examples use Windows-style paths (e.g., c:\jsontemplates) without providing Linux equivalents. In sections discussing local cache locations, the Windows path is listed first, and the Linux/Mac examples are less detailed. The documentation references Azure PowerShell and Windows-specific patterns (such as named pipes with Windows syntax) before or instead of Linux alternatives. There are no explicit Linux shell (bash) command examples, and Linux file path conventions are not shown alongside Windows ones.
Recommendations:
  • For every file path example using Windows-style paths (e.g., c:\jsontemplates), provide a Linux/Mac equivalent (e.g., /home/user/jsontemplates) alongside or immediately after.
  • When listing cache or configuration file locations, present all platforms with equal detail and avoid always listing Windows first.
  • Where named pipes or other OS-specific features are discussed, present Linux/OSX and Windows examples together, and avoid putting Windows first.
  • Add bash/zsh shell command examples where only Azure CLI or PowerShell examples are shown, especially for common tasks.
  • Ensure that references to Azure PowerShell are balanced with references to bash or other cross-platform tools where possible.

Page-Level Analysis

Powershell Heavy Windows First
Summary:
The documentation provides both PowerShell and Azure CLI examples for all command-line operations, but PowerShell examples are consistently presented first. PowerShell is a Windows-centric tool, and its prioritization may suggest a Windows-first bias. However, Azure CLI examples (which are cross-platform and Linux-friendly) are present and equally detailed. There are no missing Linux examples, and no exclusive mention of Windows-only tools or patterns.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present Azure CLI examples first to better reflect cross-platform usage.
  • Explicitly note that Azure CLI commands work on Linux, macOS, and Windows, while PowerShell is primarily Windows-focused (though available cross-platform).
  • Where possible, provide Bash script examples or clarify shell compatibility for CLI commands.
  • Consider adding a short section or note about cross-platform tool availability and usage to guide users on different operating systems.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation consistently presents PowerShell (a Windows-centric tool) examples before Azure CLI, and the PowerShell examples use Windows file paths (e.g., c:\Templates\azuredeploy.json) without offering Linux/macOS equivalents. There is no explicit mention or example for Linux/macOS users regarding file paths or shell differences, and the CLI section only briefly notes that Bash syntax may differ in other environments without providing concrete Linux/macOS alternatives.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present Azure CLI first to avoid implicit Windows prioritization.
  • For file paths, provide both Windows (e.g., c:\Templates\azuredeploy.json) and Linux/macOS (e.g., ~/Templates/azuredeploy.json) examples in relevant commands.
  • Explicitly mention and provide examples for Linux/macOS users, especially where shell syntax or environment variables differ (e.g., use $HOME or ~/ for paths, note differences in date command usage).
  • Clarify in the introductory text that both Windows and Linux/macOS are supported, and link to platform-specific guidance if available.
  • Where PowerShell is referenced, clarify that PowerShell Core is cross-platform, or provide Bash/zsh alternatives for Linux/macOS users.

Page-Level Analysis

Powershell Heavy Windows First Missing Linux Example
Summary:
The documentation page demonstrates a Windows bias by providing detailed PowerShell examples (including advanced usage with -Debug), referencing a PowerShell script on GitHub, and presenting PowerShell before Azure CLI. While Azure CLI is included, there are no explicit Linux shell (bash/curl) or cross-platform REST API examples, and the scripting focus is on Windows-centric tools.
Recommendations:
  • Add equivalent Linux shell (bash/curl) examples for retrieving response headers, showing how to use curl or wget and jq to extract relevant header values.
  • Present Azure CLI examples before or alongside PowerShell to emphasize cross-platform parity, as Azure CLI is available on all major OSes.
  • Include a REST API example using curl to demonstrate how to retrieve throttling headers in a platform-agnostic way.
  • Reference cross-platform scripting approaches (e.g., Python requests) for extracting headers, not just C# and PowerShell.
  • Ensure that all example links (such as the GitHub PowerShell script) are complemented by links to cross-platform or Linux-friendly scripts.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation consistently lists Azure PowerShell as a primary management option alongside the Azure portal and Azure CLI, and in several places, PowerShell is mentioned before the CLI. There are no explicit Linux-specific examples or references, and the documentation does not provide parity for Linux-native tools or workflows. While the Azure CLI is cross-platform, the ordering and emphasis on PowerShell may suggest a Windows-first perspective.
Recommendations:
  • Ensure that Azure CLI examples are always presented before or alongside PowerShell, as the CLI is cross-platform and more familiar to Linux users.
  • Add explicit Linux shell (bash) command examples where relevant, especially for common migration or management tasks.
  • Where PowerShell is referenced, clarify that it is available cross-platform, or provide equivalent bash/CLI commands.
  • Include a note or section highlighting Linux support and any Linux-specific considerations or tools.
  • Review the ordering of management tool mentions to avoid consistently placing Windows-centric tools first.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation page demonstrates a mild Windows bias. In the 'Find resource provider' section, the PowerShell example is given immediately after the Azure CLI example, with no mention of Linux shell equivalents (such as Bash scripting or use of jq for output parsing). The PowerShell example assumes the use of Windows tooling. Additionally, the only OS-specific tool mentioned elsewhere is 'Azure Serial Console for Windows', and some resource providers reference Windows-specific services (e.g., Microsoft.WindowsIoT, Microsoft.WindowsDefenderATP), but there are no Linux-specific counterparts or examples. There are no Linux shell or scripting examples, and Windows tools are referenced before or instead of Linux alternatives.
Recommendations:
  • Add Linux shell (Bash) examples alongside PowerShell, especially for common tasks like listing resources.
  • When referencing OS-specific tools or services (e.g., Serial Console for Windows), provide parity by mentioning or linking to Linux equivalents (e.g., Serial Console for Linux).
  • Ensure that scripting examples (such as Python) are presented as cross-platform, and clarify that Azure CLI is available on all major platforms.
  • Where possible, balance the order of examples so that Windows and Linux users are equally represented (e.g., alternate the order of PowerShell and Bash examples, or present both together).
  • Explicitly mention when a tool or service is Windows-only, and provide guidance for Linux users if available.

Page-Level Analysis

Windows First Windows Tools Missing Linux Example
Summary:
The documentation demonstrates a subtle Windows bias by referencing Visual Studio and Visual Studio Code (both Windows-centric or Windows-first tools) as primary editors for ARM templates, and by providing guidance and screenshots for these tools exclusively. There are no examples or mentions of Linux-native editors or workflows (such as Vim, Emacs, nano, or Linux-specific VS Code usage). Additionally, the only explicit mention of deploying templates with multi-line strings refers to Azure PowerShell (Windows-first) and Azure CLI, but does not provide Linux-specific instructions or considerations. There are no Linux shell (bash) or cross-platform command-line examples, and the documentation does not acknowledge Linux users' needs for editor configuration or deployment nuances.
Recommendations:
  • Include examples and guidance for editing ARM templates using popular Linux editors (e.g., Vim, nano, Emacs) and how to enable JSONC or handle comments in those environments.
  • Add explicit instructions or screenshots for using Visual Studio Code on Linux, or mention that VS Code is cross-platform.
  • When discussing deployment via Azure CLI, clarify that the instructions apply equally to Linux, macOS, and Windows, and provide bash/zsh shell command examples where relevant.
  • Reference Linux-native tools and workflows where appropriate, such as using jq for JSON validation or manipulation.
  • Ensure that any references to PowerShell or Visual Studio are balanced with equivalent Linux-friendly alternatives (e.g., Azure CLI in bash, VS Code on Linux, or other editors).
  • Add a note that ARM template development and deployment is fully supported on Linux and macOS, not just Windows.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation demonstrates a Windows bias by referencing Windows-specific paths (e.g., %HOME%\site), using Windows-centric terminology (such as Kudu and FTP credentials), and prioritizing PowerShell and portal-based workflows. There is a lack of explicit Linux or cross-platform command-line examples, and no mention of Linux-specific tools or patterns. The only scripting example linked in 'Next steps' is PowerShell-based, and there are no Azure CLI or Bash examples provided.
Recommendations:
  • Provide equivalent Linux/Bash command-line examples alongside PowerShell, especially for backup/restore and resource creation.
  • Reference cross-platform tools (e.g., Azure CLI) before or alongside PowerShell in all procedural sections.
  • Replace or supplement Windows-specific paths (e.g., %HOME%\site) with their Linux equivalents (e.g., $HOME/site or /home/site) and clarify that these paths are platform-dependent.
  • Include links to Linux-friendly documentation (e.g., Azure CLI, Bash scripting) in the 'Next steps' section.
  • Mention and provide examples for using SFTP or other Linux-native file transfer methods where FTP/Kudu is referenced.
  • Ensure that all configuration and troubleshooting steps are platform-agnostic or provide both Windows and Linux variants.

Page-Level Analysis

Missing Linux Example
Summary:
The documentation exclusively uses the Azure Portal (web UI) for all instructions and does not provide any command-line examples (such as Azure CLI, PowerShell, or scripting). While this avoids explicit Windows or PowerShell bias, it also omits Linux-friendly approaches, such as using the Azure CLI, which is cross-platform and preferred by many Linux users. The lack of CLI or scripting examples can be seen as a bias of omission, as it does not address the needs of users who prefer or require non-GUI, scriptable, or automated workflows—common in Linux environments.
Recommendations:
  • Add Azure CLI examples for exporting, editing, and redeploying Event Grid custom topics, covering all major steps (export, modify, deploy, delete).
  • Include sample commands for deleting resources and resource groups using Azure CLI.
  • Explicitly mention that all steps can be performed via the Azure CLI, and provide links to relevant CLI documentation.
  • If PowerShell examples are ever added, ensure Azure CLI equivalents are always provided and presented with equal prominence.
  • Consider adding a section or callout for automation/scripting approaches, highlighting cross-platform tools.

Page-Level Analysis

Windows First
Summary:
The documentation provides environment variable setup instructions for Windows, Linux, and macOS, but presents the Windows instructions first. All other examples are cross-platform (Python code), and there is no exclusive use of Windows tools or missing Linux examples.
Recommendations:
  • Present environment setup instructions in a neutral or rotating order (e.g., Linux first, or alphabetical order) to avoid implicit prioritization of Windows.
  • Explicitly state that all Python code examples are cross-platform and work on Windows, Linux, and macOS.
  • Ensure parity in any future sections that might introduce platform-specific tooling or shell commands.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation demonstrates a mild Windows bias by consistently listing Azure PowerShell as a primary method for exporting and deploying templates, often before or alongside Azure CLI. There are no explicit Linux shell or Bash examples, and the focus is on tools and workflows (such as PowerShell and VS Code) that are more familiar to Windows users. However, Azure CLI is also mentioned, which is cross-platform, and there are no exclusive Windows-only commands or tools.
Recommendations:
  • Include explicit Bash or Linux shell command examples for exporting and deploying ARM/Bicep templates, not just Azure CLI and PowerShell.
  • When listing deployment methods, alternate the order or explicitly mention that Azure CLI and Bash are fully supported on Linux/macOS.
  • Provide examples or links for using the Azure Cloud Shell in Bash mode, not just PowerShell.
  • Mention cross-platform editors (such as Visual Studio Code) in a way that highlights their availability on Linux/macOS.
  • Ensure that all referenced tools and scripts are available and tested on Linux environments.

Page-Level Analysis

Powershell Heavy Missing Linux Example Windows Tools
Summary:
The documentation provides detailed instructions for the Azure Portal and Azure PowerShell, but does not include any examples or guidance for Linux users or cross-platform CLI tools such as Azure CLI. The PowerShell examples assume a Windows environment (e.g., use of 'notepad' for editing files), and there are no Bash or shell script equivalents. This creates a bias toward Windows and PowerShell users, leaving Linux and macOS users without parity in command-line instructions.
Recommendations:
  • Add equivalent Azure CLI (az) examples for all PowerShell steps, including exporting, editing, and deploying ARM templates.
  • Provide cross-platform file editing instructions (e.g., using 'vi', 'nano', or 'code' editors) instead of only 'notepad'.
  • Explicitly mention that PowerShell Core is available on Linux/macOS, or clarify if the instructions are Windows-only.
  • Ensure that all command-line steps are presented for both PowerShell and Azure CLI, with clear tabs or sections for each.
  • Include notes or links for Linux/macOS users on how to perform each step, especially for file manipulation and command execution.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation demonstrates a mild Windows bias. In several sections, Windows-specific instructions or tools are mentioned before Linux equivalents, and examples (such as the script reference) are Azure PowerShell-centric. While Linux is referenced, it is often as an afterthought (e.g., 'On Linux VMs, refer to distributor guidance'), and there are no concrete Linux command-line examples or step-by-step instructions. The documentation also references Windows Update specifically, but for Linux, only generic advice is given. There are no Linux CLI or shell script examples for bulk operations, and the on-premises backup section implicitly assumes Windows (MARS agent), with no mention of Linux backup agents.
Recommendations:
  • Provide parallel Linux-focused examples and instructions wherever Windows-specific steps are given (e.g., include Bash/Azure CLI scripts alongside PowerShell).
  • When referencing OS-specific maintenance (like updating certificates), give concrete Linux commands or point to official distro documentation.
  • In bulk scripting examples, include both PowerShell and Bash/Azure CLI equivalents.
  • In on-premises backup sections, mention and link to Linux backup agent documentation if available, or clarify Windows-only applicability.
  • Avoid always listing Windows steps first; alternate or group by OS where appropriate.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation page references Azure PowerShell before Azure CLI and REST API when discussing version requirements for zero-count support, and the only explicit deployment guide linked in 'Next steps' is for Azure PowerShell. There are no Linux- or Bash-specific examples or deployment instructions, and the focus on PowerShell and Windows-centric tools may make Linux users feel secondary.
Recommendations:
  • List Azure CLI before Azure PowerShell when mentioning supported tools, or present them together to avoid implying a Windows-first approach.
  • In the 'Next steps' section, add links to deployment guides for Azure CLI and Bash, not just PowerShell.
  • Wherever deployment instructions are referenced, ensure parity by providing both CLI and PowerShell links/examples.
  • Explicitly mention that both Windows and Linux users can use Azure CLI, and provide Bash shell examples where relevant.
  • Review other linked articles (such as 'Deploy resources with ARM templates and Azure PowerShell') to ensure Linux/CLI parity.

Page-Level Analysis

Windows First Missing Linux Example
Summary:
The documentation consistently uses Windows-style file paths (e.g., 'c:\Templates\azuredeploy.json') in all code examples, including Azure CLI sections, without providing Linux/macOS alternatives. There are no explicit Linux/macOS examples or notes about path differences, which may confuse or hinder non-Windows users. While the CLI examples themselves are cross-platform, the path usage and lack of Linux-specific guidance create a Windows-centric bias.
Recommendations:
  • Provide both Windows and Linux/macOS file path examples in all code snippets, especially for Azure CLI commands (e.g., use 'c:\Templates\azuredeploy.json' and '~/Templates/azuredeploy.json').
  • Add a note early in the documentation clarifying that file paths should be adjusted for the user's operating system.
  • Wherever file paths are referenced in text or code, use OS-agnostic language or show both formats.
  • Explicitly mention that Azure CLI commands work on Windows, Linux, and macOS, and provide shell-specific guidance if needed.
  • Review screenshots and instructions for any other Windows-specific assumptions (e.g., file explorer references) and provide Linux/macOS equivalents or clarifications.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation consistently presents Azure PowerShell (a Windows-centric tool) examples before Azure CLI, and frequently references PowerShell scripts and usage patterns. There is no mention of Linux-specific tools, shells, or workflows, and the examples assume familiarity with PowerShell syntax and conventions. While Azure CLI is cross-platform, the documentation's ordering and emphasis on PowerShell may give the impression of a Windows-first or Windows-preferred environment.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present Azure CLI examples first to reflect its cross-platform nature.
  • Explicitly mention that Azure CLI commands work on Linux, macOS, and Windows, and provide example shell commands (e.g., bash) where appropriate.
  • Avoid language that implies PowerShell is the default or preferred tool; clarify that both PowerShell and CLI are supported equally.
  • Where scripting is discussed, provide both PowerShell and bash (or sh) script snippets to illustrate parity.
  • If referencing scripts or automation, mention both PowerShell scripts and shell scripts (bash/sh) as valid approaches.
  • Consider adding a brief section or note for Linux/macOS users highlighting any differences or confirming full support.

Page-Level Analysis

Windows Tools Windows First
Summary:
The documentation page demonstrates a mild Windows bias by referencing 'Windows Azure Service Management API' in the registration section and mentioning the addition of apps to the 'Microsoft Entra tenant' by this API. Additionally, the PowerShell section appears before the Azure CLI section, which may suggest a prioritization of Windows-centric tooling over cross-platform or Linux-native tools. However, the page does provide Azure CLI and Python examples, which are cross-platform, and does not exclusively use Windows or PowerShell examples.
Recommendations:
  • Remove or clarify references to 'Windows Azure Service Management API' if not strictly necessary, or provide equivalent information for Linux/macOS users.
  • Present Azure CLI examples before PowerShell examples, as CLI is cross-platform and more familiar to Linux users.
  • Explicitly state that Azure CLI and Python examples are cross-platform and can be run on Windows, Linux, or macOS.
  • If mentioning tools or APIs with 'Windows' in the name, clarify their relevance (or irrelevance) to non-Windows users.
  • Consider adding a short section or note for Linux/macOS users if there are any platform-specific considerations.

Page-Level Analysis

Powershell Heavy Windows First Missing Linux Example Windows Tools
Summary:
The documentation page demonstrates a strong Windows bias by providing only Azure PowerShell examples for command-line operations, with no equivalent examples for Azure CLI (which is cross-platform and commonly used on Linux/macOS). All scripting and automation guidance is centered on PowerShell, and references to obtaining region codes or deploying resources are given exclusively with PowerShell commands. There is no mention of Bash, Linux shell, or Azure CLI alternatives, and the structure consistently presents PowerShell before or instead of any cross-platform tooling.
Recommendations:
  • Add Azure CLI examples alongside PowerShell for all command-line operations, including exporting, modifying, and deploying Resource Manager templates, as well as deleting resources.
  • Explicitly mention that AzCopy is cross-platform and provide example commands for both Windows and Linux/macOS shells.
  • Where PowerShell is referenced, provide equivalent Bash or shell script snippets for Linux users.
  • Instruct users on how to install and use Azure CLI on Linux/macOS, and link to relevant documentation.
  • Ensure that any references to tools or commands (such as obtaining region codes) include both PowerShell and Azure CLI methods.
  • Consider reordering sections or using tabs to present PowerShell and Azure CLI equally, rather than defaulting to PowerShell.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation presents both Azure PowerShell (typically associated with Windows/PowerShell environments) and Azure CLI (cross-platform) examples in parallel, but consistently lists Azure PowerShell first in every code example section. Instructions for opening a terminal default to PowerShell (in VS Code) before mentioning Bash, and there is more detailed explanation of PowerShell-specific syntax (such as the backtick escape character) than for Bash. Visual Studio Code is listed as a prerequisite, which is cross-platform, but no mention is made of other editors or shells common on Linux. There are no outright missing Linux examples, but the ordering and depth of PowerShell coverage indicate a Windows-first bias.
Recommendations:
  • Alternate the order of Azure CLI and Azure PowerShell examples, or present Azure CLI first to better reflect cross-platform usage.
  • Ensure explanations of Bash/Linux shell syntax (such as escape characters and line continuation) are as detailed as those for PowerShell.
  • Explicitly mention that all CLI examples work on Linux, macOS, and Windows, and clarify that Bash is the default shell on Linux/macOS.
  • Consider referencing other popular Linux editors (e.g., nano, vim) or terminal environments in addition to Visual Studio Code.
  • Where possible, use neutral language (e.g., 'open a terminal') instead of 'open a PowerShell terminal', unless the example is PowerShell-specific.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation consistently presents Azure PowerShell (which is most commonly used on Windows) before Azure CLI in all code example sections. It also assumes the use of Visual Studio Code and PowerShell terminals, both of which are more prevalent on Windows. There is a strong emphasis on PowerShell scripting patterns (e.g., splatting), and some instructions (such as opening a PowerShell terminal in VS Code) are Windows-centric. However, Azure CLI and Bash examples are provided throughout, and there are no outright missing Linux examples.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present Azure CLI first to avoid implicit Windows preference.
  • Explicitly mention that Visual Studio Code, PowerShell, and Azure CLI are cross-platform, and provide guidance for Linux/macOS users (e.g., how to open a Bash terminal in VS Code on Linux).
  • Where PowerShell-specific features (like splatting) are discussed, consider providing equivalent Bash scripting tips for parity.
  • Add a brief note in the prerequisites that all tools and instructions apply equally to Windows, Linux, and macOS, and clarify any OS-specific steps.
  • When referencing terminal usage, include instructions for both PowerShell and Bash (or other common Linux shells) without assuming the user is on Windows.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation provides both Azure CLI and PowerShell examples throughout, but PowerShell is featured equally and sometimes before CLI, and there is a notable focus on PowerShell (a Windows-centric tool). There are no Linux-specific shell examples (e.g., Bash), and references to Windows tools and patterns are present, such as the mention of a Windows-specific quickstart template for installing certificates. The documentation does not mention or demonstrate Linux-native scripting environments or workflows, and the PowerShell examples use Windows-style line continuations and variable syntax.
Recommendations:
  • Add explicit Bash shell examples alongside Azure CLI, demonstrating Linux-native workflows (e.g., using export for environment variables, Linux-style line continuations, and file paths).
  • When referencing quickstart templates or scenarios, provide both Windows and Linux equivalents (e.g., link to a Linux VM certificate install template as well as the Windows one).
  • Ensure that CLI examples use syntax and conventions that are platform-neutral or show both Windows and Linux variants where they differ.
  • Consider adding a section or callout for Linux users, highlighting any differences or best practices for Linux environments.
  • Review the order of examples to avoid always listing PowerShell before CLI, or alternate the order to avoid implicit prioritization of Windows tools.

Page-Level Analysis

Windows First Missing Linux Example Windows Tools
Summary:
The documentation page demonstrates a Windows bias by referencing Windows-centric resources and tools before or instead of Linux equivalents. The only example template linked is for deploying a Windows VM with data disks, with no Linux VM example provided. Additionally, the 'Next steps' section directs users to a PowerShell deployment guide, with no mention of Azure CLI or Linux-specific deployment instructions. While Azure CLI is mentioned in passing regarding version requirements, practical examples and links are Windows/PowerShell-focused.
Recommendations:
  • Include example templates for both Windows and Linux VM deployments, or provide a generic example that is OS-agnostic.
  • In the 'Example templates' table, add a Linux VM example (e.g., a link to a quickstart template for Linux VMs with data disks).
  • In the 'Next steps' section, add links to deploying ARM templates using Azure CLI and Bash, not just PowerShell.
  • When mentioning deployment tools (Azure PowerShell, Azure CLI), present them in parallel and provide equal guidance/examples for both.
  • Ensure that any referenced quickstart templates or tutorials have both Windows and Linux variants, or clarify their applicability.

Page-Level Analysis

Windows First Missing Linux Example Powershell Heavy Windows Tools
Summary:
The documentation demonstrates a clear Windows bias: the main template example is for a Windows VM, all deployment scripts are in PowerShell, and there are no equivalent Azure CLI (Bash) or Linux VM examples. The instructions and screenshots focus on Windows-centric tools and workflows, with Linux alternatives either missing or mentioned only in passing.
Recommendations:
  • Provide parallel examples for Linux VMs, including links to Linux-based Quickstart templates.
  • Include Azure CLI (az) commands for template deployment alongside PowerShell scripts.
  • Show both Bash and PowerShell usage in Cloud Shell, with explicit step-by-step instructions for each.
  • Balance references to Windows and Linux tools (e.g., mention both Visual Studio Code and common Linux editors).
  • Add screenshots and walkthroughs for Linux environments where appropriate.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation page demonstrates a moderate Windows bias. PowerShell and Azure CLI examples are provided for role assignment, but PowerShell is presented first in the permissions section. There are no explicit Linux-specific instructions or examples, and the use of PowerShell commands may implicitly favor Windows users. No mention is made of running commands in Bash or Linux shells, nor are there references to Linux-native tools or patterns. The documentation assumes familiarity with PowerShell and does not clarify cross-platform usage for the CLI or PowerShell modules.
Recommendations:
  • Ensure that Azure CLI (which is cross-platform) examples are always presented before PowerShell, or at least in parallel, to avoid a Windows-first impression.
  • Explicitly mention that Azure CLI and Azure PowerShell are both cross-platform and can be used on Windows, Linux, and macOS.
  • Where PowerShell examples are given, provide equivalent Bash (Linux shell) examples, especially for scripting scenarios.
  • Clarify in the documentation that commands can be run from Azure Cloud Shell, which supports both Bash and PowerShell, to reinforce cross-platform accessibility.
  • Avoid using PowerShell-specific syntax (such as backticks for line continuation) without also showing the Bash/Linux equivalent (backslash for line continuation).

Page-Level Analysis

Powershell Heavy Windows First Windows Tools
Summary:
The documentation page demonstrates a Windows bias by providing detailed PowerShell scripts for key steps (such as uploading templates to storage) and referencing Windows/PowerShell tooling first and most prominently. The Azure CLI (cross-platform) example is only provided for the deployment step, not for the earlier template upload step. There is no mention of Linux-specific considerations or examples for uploading templates, and the workflow assumes familiarity with PowerShell and Windows-centric patterns.
Recommendations:
  • Provide Azure CLI examples for all steps, including uploading templates to storage, not just deployment.
  • Explicitly mention that both PowerShell and Azure CLI are cross-platform, and clarify when a script is Windows-specific.
  • Add Linux/macOS shell (bash) examples for downloading files (e.g., using curl or wget) and uploading to Azure Storage (using az CLI).
  • Reorder examples so that Azure CLI (cross-platform) appears before PowerShell, or present both in parallel tabs.
  • Include notes about any OS-specific differences (such as file paths, command syntax, or required tools) for Linux/macOS users.

Page-Level Analysis

Windows First
Summary:
The documentation presents PowerShell (commonly associated with Windows) examples before Azure CLI examples when demonstrating how to get available locations. Both tools are covered, and the CLI example is present, but the ordering may subtly prioritize Windows users.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples across documentation pages, or present Azure CLI examples first, as it is cross-platform.
  • Explicitly mention that both PowerShell and Azure CLI are available on Windows, Linux, and macOS to avoid implying platform exclusivity.
  • Where possible, provide Bash shell examples (for Linux/macOS) in addition to CLI commands, especially for scripting scenarios.
  • Add a brief note clarifying that Azure CLI commands work natively on Linux/macOS terminals.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation is heavily oriented toward Windows and Visual Studio users, with all instructions and examples assuming the use of Visual Studio (a Windows-centric IDE) and PowerShell scripts for deployment. There are no examples or guidance for performing equivalent tasks on Linux or macOS, nor is there mention of cross-platform tools or workflows (such as Azure CLI, VS Code, or Bash scripts). The exclusive use of PowerShell and Visual Studio, and the lack of Linux/macOS alternatives, demonstrates a strong Windows bias.
Recommendations:
  • Add sections or notes describing how to perform equivalent resource group deployments using cross-platform tools such as Azure CLI and VS Code, which are available on Linux and macOS.
  • Provide Bash script examples for deploying ARM templates, alongside the PowerShell scripts.
  • Mention and link to cross-platform alternatives (e.g., VS Code with Azure extensions) early in the documentation, not just Visual Studio.
  • Clarify which steps are Windows/Visual Studio-specific and offer parallel instructions for users on other operating systems.
  • Include sample commands for deploying templates using Azure CLI (az deployment group create ...) as an alternative to PowerShell.
  • Explicitly state the platform requirements and suggest alternatives for non-Windows users.

Page-Level Analysis

Powershell Heavy Missing Linux Example Windows Tools Windows First
Summary:
The documentation page demonstrates a Windows bias by exclusively providing PowerShell-based automation instructions for converting templates, referencing a .ps1 script, and omitting any Linux/bash/CLI alternatives. The only automation example uses PowerShell, which is primarily associated with Windows environments, and there is no mention of Bash, Azure CLI, or cross-platform scripting. Manual steps are portal-based and platform-agnostic, but all scripting guidance assumes a Windows/PowerShell context.
Recommendations:
  • Provide equivalent automation instructions using Azure CLI (az) commands, which are cross-platform and widely used on Linux and macOS.
  • If the migration script is PowerShell-only, mention whether it works with PowerShell Core on Linux/macOS, and provide installation guidance if so.
  • Offer Bash script examples or reference community tools/scripts for Linux users.
  • Explicitly state platform compatibility for provided scripts and tools.
  • Consider presenting CLI or Bash examples before or alongside PowerShell to ensure Linux parity.

Page-Level Analysis

Powershell Heavy Windows First Windows Tools Missing Linux Example
Summary:
The documentation demonstrates a Windows bias in several ways: PowerShell is frequently used for scripting examples, often before or instead of Linux/Unix alternatives; Windows-centric tools and patterns (such as PowerShell DSC and .ps1 scripts) are referenced without equivalent Bash or Linux-native examples; and sample artifact locations and scripts are Windows-specific, with no Linux shell script examples provided. While Azure CLI is included in some places, PowerShell is often presented first or exclusively, and there is a lack of parity in Linux/Unix-focused guidance.
Recommendations:
  • For every PowerShell example, provide an equivalent Bash/Azure CLI example, especially for scripting and automation tasks.
  • When referencing scripts or VM extensions (e.g., Custom Script Extension), include both Windows (.ps1) and Linux (.sh) script examples.
  • Avoid using Windows-specific artifact locations or script names as defaults (e.g., 'configure-music-app.ps1'); instead, provide parallel Linux examples (e.g., 'configure-music-app.sh').
  • When discussing VM images, include Linux publishers/offers/SKUs alongside Windows ones.
  • In sections about VM extensions, mention and provide examples for Linux extensions (e.g., Custom Script for Linux, OMS Agent for Linux) as well as Windows ones.
  • Ensure that all CLI and scripting guidance is cross-platform, and explicitly state when a command or feature is platform-specific.
  • Balance the order of presentation: alternate or randomize whether Windows or Linux examples are shown first, or present them side-by-side.

Page-Level Analysis

Windows Tools Windows First Missing Linux Example
Summary:
The documentation page is generally cross-platform, but it contains a notable Windows bias in the section discussing integer parameter limits. It mentions PowerShell (a Windows-centric tool) as the example for SDK/CLI limitations, without referencing Azure CLI or Linux-based tools. No Linux or cross-platform command-line examples or notes are provided, and the only tool-specific guidance is for PowerShell.
Recommendations:
  • When discussing SDK or command-line tool limitations, mention both PowerShell and Azure CLI (which is cross-platform), and provide information about their respective behaviors.
  • If there are differences in parameter handling or integer ranges between PowerShell and Azure CLI, document both.
  • Include examples or notes relevant to Linux/macOS users, such as Azure CLI commands, to ensure parity.
  • Avoid using only Windows-centric tools (like PowerShell) as the sole example when discussing cross-platform scenarios.

Page-Level Analysis

Powershell Heavy Windows Tools Missing Linux Example Windows First
Summary:
The documentation page demonstrates a Windows bias by exclusively providing Azure PowerShell (Windows-centric) command-line examples for deploying templates and by referencing 'AzurePowerShell' in resource definitions. There are no examples using cross-platform tools such as Azure CLI (az), nor are Linux shell or Bash examples provided. Windows tools and patterns are mentioned exclusively, and Linux or cross-platform equivalents are missing.
Recommendations:
  • Add equivalent Azure CLI (az) command examples alongside PowerShell examples for template deployment and parameter passing.
  • When referencing deployment scripts, include examples for both 'AzurePowerShell' and 'AzureCLI' in the 'kind' property to demonstrate parity.
  • Explicitly mention that both PowerShell and CLI are supported, and provide guidance for Linux/macOS users.
  • Where shell commands are shown, provide both PowerShell and Bash (or sh) syntax.
  • Review all examples to ensure that Windows-specific tools or patterns are not presented as the only or primary option.

Page-Level Analysis

Powershell Heavy Windows Tools Windows First
Summary:
The documentation page demonstrates a moderate Windows bias. PowerShell is mentioned multiple times (e.g., deployment scripts, ARM TTK testing), and the only explicit tooling example for template testing is a PowerShell script. Visual Studio and Visual Studio Code are highlighted as authoring tools, both of which are most strongly associated with Windows. While Azure CLI and Bash are mentioned, PowerShell and Windows-centric tools are often listed first or exclusively detailed, and Linux-specific workflows or tools are not given equal prominence or examples.
Recommendations:
  • Provide explicit Linux/Bash examples alongside PowerShell, especially for deployment scripts and template testing.
  • Highlight cross-platform tools (e.g., Azure CLI, VS Code) before Windows-only tools (e.g., Visual Studio, PowerShell scripts).
  • Mention and link to Linux-compatible alternatives for template testing (e.g., running ARM TTK via PowerShell Core on Linux, or using other validation tools).
  • Clarify that Visual Studio Code is cross-platform, and suggest Linux-friendly editors (e.g., Vim, Emacs) where appropriate.
  • Ensure that all command-line and scripting examples are shown in both PowerShell and Bash where possible.
  • When listing deployment options, alternate the order or explicitly state cross-platform compatibility.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation demonstrates a mild Windows bias. In the section discussing parameter naming conflicts, only the PowerShell deployment command (New-AzResourceGroupDeployment) is mentioned, with no reference to Azure CLI or other cross-platform tools. In the 'Resources' section, links to Windows-specific VM connection methods are listed before the Linux equivalent. Additionally, the only command-line tool mentioned for deployment is PowerShell, and no Linux/CLI examples or tools are provided.
Recommendations:
  • Include Azure CLI examples and references alongside PowerShell, especially when discussing deployment commands and parameter naming conflicts.
  • When listing links or instructions for connecting to VMs, alternate the order or present Linux and Windows options together to avoid prioritizing Windows.
  • Mention cross-platform tools (such as Azure CLI and Bash scripting) wherever PowerShell or Windows tools are referenced.
  • Provide examples or notes for both Windows and Linux users in relevant sections, ensuring parity in guidance and tooling.

Page-Level Analysis

Powershell Heavy Missing Linux Example Windows First
Summary:
The documentation page demonstrates a Windows/PowerShell bias by providing detailed PowerShell-based instructions and omitting equivalent Azure CLI (cross-platform) examples. The PowerShell approach is given equal or greater prominence than the Azure Portal, and there are no Linux shell or Azure CLI command examples for key steps like exporting, modifying, or deploying templates. This may hinder users on Linux or macOS who rely on Azure CLI or Bash scripting.
Recommendations:
  • Add Azure CLI examples for all major steps (exporting, modifying, and deploying templates), as Azure CLI is cross-platform and widely used on Linux/macOS.
  • When listing options for configuration (e.g., configuring service endpoints), mention Azure CLI before or alongside PowerShell to avoid 'windows_first' ordering.
  • Explicitly state that all operations can be performed from Linux/macOS using Azure CLI, and provide links to relevant CLI documentation.
  • Where PowerShell scripts are shown, provide equivalent Bash/Azure CLI scripts to ensure parity.
  • Consider adding a 'Platform compatibility' note clarifying that the steps are not Windows-specific and can be accomplished on any OS with the appropriate tools.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation provides both Azure CLI and PowerShell examples for deployment and cleanup tasks, but consistently lists PowerShell (a Windows-centric tool) alongside CLI, and sometimes before or equally with CLI. There are no Linux- or macOS-specific shell examples (e.g., Bash), and no mention of Linux-native editors or troubleshooting tools. The prerequisite section lists Visual Studio Code (cross-platform) but does not mention any Linux-specific alternatives or considerations.
Recommendations:
  • Explicitly state that Azure CLI commands work identically on Linux, macOS, and Windows, and consider showing CLI examples first to emphasize cross-platform parity.
  • Add Bash shell examples or notes for Linux/macOS users, especially for common deployment and troubleshooting workflows.
  • Mention Linux-native editors (such as Vim, Emacs, or Gedit) as alternatives to Visual Studio Code, or clarify that VS Code is cross-platform.
  • Where PowerShell is referenced, clarify that PowerShell Core is available cross-platform, or provide Bash equivalents.
  • Ensure that troubleshooting steps and screenshots are not Windows-centric (e.g., avoid only showing Windows UI or file paths).

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation page demonstrates a moderate Windows bias. Azure PowerShell is featured prominently and often presented before or alongside Azure CLI, but without explicit Linux/Bash shell examples. The CLI examples are described as working in Bash or Azure PowerShell, but there are no dedicated Linux shell (e.g., Bash) or macOS terminal screenshots, nor are there any notes about differences in command usage or environment setup for non-Windows platforms. The PowerShell examples assume familiarity with Windows scripting conventions. No Linux-specific tools or guidance are provided, and the documentation does not address cross-platform nuances.
Recommendations:
  • Provide explicit Bash/Linux terminal examples and screenshots, especially for Azure CLI usage.
  • Clarify that Azure CLI commands can be run natively on Linux/macOS, and note any differences in quoting, environment variables, or authentication.
  • Balance the order of examples: present Azure CLI (cross-platform) before Azure PowerShell (Windows-centric) where possible.
  • Add notes or sections for Linux/macOS users, including troubleshooting tips or environment setup guidance.
  • Avoid assuming PowerShell as the default scripting environment; mention alternatives like Bash or zsh.
  • Where PowerShell is used, clarify if the example is for Windows PowerShell or cross-platform PowerShell Core.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation demonstrates a mild Windows bias. PowerShell is mentioned before Azure CLI in both prerequisites and command examples. Additionally, Windows-centric tools and patterns (such as PowerShell cmdlets like Get-AzSubscription, Get-AzADUser, and Get-AzADServicePrincipal) are referenced in parameter descriptions, with no Linux/CLI alternatives provided. However, Azure CLI examples are present alongside PowerShell, and there are no explicit missing Linux examples for the core deployment steps.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples throughout the documentation, or present Azure CLI first in some sections to balance exposure.
  • When referencing how to obtain values (such as tenantId or objectId), provide both PowerShell and Azure CLI commands (e.g., az account show, az ad user show) so Linux/macOS users have clear guidance.
  • Clarify that both Azure CLI and PowerShell are cross-platform, but highlight CLI as the default for Linux/macOS users.
  • Where possible, avoid referencing Windows-specific tools or patterns exclusively in parameter descriptions; always include CLI equivalents.
  • Consider adding a short section or note for Linux/macOS users, confirming that all steps are supported on their platforms and linking to relevant installation guides.

Page-Level Analysis

Powershell Heavy Windows Tools Missing Linux Example Windows First
Summary:
The documentation provides detailed instructions for performing the NSG relocation using the Azure Portal and PowerShell, with all CLI-based automation examples using PowerShell cmdlets. There are no examples or guidance for performing these tasks using Azure CLI (az), Bash, or other cross-platform tools, which are commonly used on Linux and macOS. The PowerShell approach is presented as the only scripting/automation method, and even text editor examples reference Notepad, a Windows tool.
Recommendations:
  • Add equivalent step-by-step instructions using Azure CLI (az) commands for all automation tasks, including exporting, editing, and deploying ARM templates.
  • Provide Bash shell examples for editing JSON files, such as using vim, nano, or other cross-platform editors, instead of only referencing Notepad.
  • Ensure that all PowerShell examples are accompanied by Azure CLI equivalents, and present both options in parallel tabs or sections.
  • Avoid referencing Windows-only tools or patterns (like Notepad) without mentioning cross-platform alternatives.
  • Consider including a note at the top clarifying that the instructions apply equally to Windows, Linux, and macOS, and link to Azure CLI documentation for users on non-Windows platforms.

Page-Level Analysis

Powershell Heavy Windows Tools Windows First Missing Linux Example
Summary:
The documentation demonstrates a bias toward Windows and PowerShell environments. PowerShell is used as the primary scripting language for both Azure PowerShell and Azure CLI container workflows, and all upload/deployment examples use PowerShell commands. There are no equivalent Linux shell (bash) or cross-platform CLI examples for uploading files or deploying templates. The Docker section uses Windows drive letter syntax (e.g., d:/docker), and the volume mount instructions are Windows-centric. Linux-native workflows and tools are not covered or are mentioned only after Windows/PowerShell approaches.
Recommendations:
  • Provide equivalent bash/Azure CLI examples for uploading deployment scripts to Azure Storage (e.g., using az storage file upload).
  • Include Linux/macOS-specific instructions for mounting directories in Docker (e.g., using /home/user/docker:/data syntax).
  • When presenting PowerShell examples, offer corresponding bash or shell script alternatives, especially for common tasks like resource group creation and template deployment.
  • Avoid using Windows drive letter syntax exclusively in Docker commands; show both Windows and Linux/macOS variants.
  • Clarify that all steps can be performed from Linux/macOS, and highlight any differences or prerequisites.
  • Consider reordering sections or providing parallel instructions so that Linux and Windows users see their workflows presented equally.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation presents both Azure PowerShell and Azure CLI deployment examples, but PowerShell is listed first, which may suggest a Windows-first approach. There is no explicit mention of Linux or macOS environments in the prerequisites or deployment verification steps. The instructions for tool installation and usage do not provide Linux-specific guidance or examples, and the portal screenshots and terminology are generic but do not address cross-platform nuances. The 'Clean up resources' and verification steps rely solely on the Azure portal, with no CLI-based alternatives, which could be more relevant for Linux users.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present Azure CLI first, as it is cross-platform and widely used on Linux.
  • Explicitly mention that Azure CLI works on Linux, macOS, and Windows, and provide installation links for all platforms.
  • In the prerequisites, clarify that Visual Studio Code and the Resource Manager Tools extension are available cross-platform.
  • Add Linux/macOS-specific notes or examples where relevant, such as using bash variables instead of PowerShell variables.
  • Provide CLI-based instructions for verification and clean-up steps, not just portal-based steps.
  • Include screenshots or terminal examples from Linux environments where possible.

Page-Level Analysis

Powershell Heavy Windows Tools Missing Linux Example
Summary:
The documentation demonstrates a Windows/PowerShell bias by exclusively providing instructions for enabling debug logging using Azure PowerShell, which is traditionally associated with Windows environments. There is no equivalent method or workaround provided for Linux users, as debug logging cannot be enabled via Azure CLI. The documentation also focuses on PowerShell cmdlets and patterns, with Azure CLI only being mentioned for retrieving or deleting logs, not for enabling debug logging itself.
Recommendations:
  • Clearly state the platform limitations at the beginning, emphasizing that enabling debug logging is only possible with Azure PowerShell, and suggest installation or usage options for Linux/macOS users (e.g., PowerShell Core).
  • Provide explicit instructions for installing and using Azure PowerShell on Linux and macOS, including links to relevant documentation.
  • If possible, advocate for parity in Azure CLI functionality or suggest alternative approaches for Linux users to achieve similar debug logging outcomes.
  • Add a section or note addressing Linux/macOS users, outlining their options and any current limitations, so they are not left without guidance.
  • Monitor and update the documentation if/when Azure CLI gains support for enabling debug logging, ensuring cross-platform parity.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation presents both PowerShell and Azure CLI deployment examples, but the PowerShell (commonly associated with Windows) example is given first, and the tab label is 'PowerShell' rather than 'Windows PowerShell', which may reinforce a Windows-first perspective. There are no explicit Linux-specific instructions, nor are there references to Linux tools or shell environments. The CLI example is cross-platform, but there is no mention of running it in Bash or Linux terminals, and the prerequisites section does not explicitly mention Linux support or alternatives.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or default to Azure CLI first, as it is cross-platform and widely used on Linux.
  • Explicitly mention that Azure CLI commands can be run in Bash or other Linux shells.
  • In the prerequisites, clarify that Visual Studio Code and Azure CLI are available on Linux, and provide links or notes for Linux installation.
  • Where PowerShell is mentioned, clarify that PowerShell Core is also available on Linux, or provide Bash equivalents for common tasks.
  • Consider adding a 'Linux' or 'Bash' tab for deployment examples, especially for users who may not use PowerShell.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation page demonstrates a mild Windows bias. In the 'ResourceGroupNotFound' error, both Azure CLI and PowerShell are mentioned, but PowerShell is listed second, which is acceptable. However, in other areas, such as the 'SubnetsNotInSameVnet' error, the Windows VM documentation link is listed before the Linux VM equivalent. Additionally, there are no explicit Linux shell (bash) command examples or references to Linux-native tools, and PowerShell is referenced as a primary tool for context management. There are no Linux-specific troubleshooting patterns or examples, and Windows terminology (such as PowerShell) appears more frequently or with higher prominence.
Recommendations:
  • Ensure that for every PowerShell example or reference, an equivalent Azure CLI (bash-friendly) example is provided and listed first or side-by-side.
  • When linking to OS-specific documentation (e.g., multiple NICs for VMs), alternate the order or present both Windows and Linux links together, or list Linux first to balance historic bias.
  • Include Linux-native troubleshooting tools or commands where relevant, not just PowerShell.
  • Audit for any missing Linux-specific troubleshooting scenarios and add them where appropriate.
  • Use neutral language when referring to command-line tools (e.g., 'Azure CLI or PowerShell') and avoid defaulting to Windows-first terminology.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation demonstrates a moderate Windows bias. PowerShell (a Windows-centric tool) is consistently presented first in command examples and explanations, with more detailed PowerShell output samples. Output examples and walkthroughs default to PowerShell syntax and screenshots, even when Azure CLI (cross-platform) equivalents are available. There is no mention of Linux-specific shell environments or considerations, and the only installation guidance for PowerShell assumes a Windows context. The documentation does not provide Linux-specific troubleshooting, nor does it mention using Bash or other native Linux shells.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI sections/examples, or present Azure CLI first to reflect its cross-platform nature.
  • Provide output and walkthrough examples for both PowerShell and Azure CLI, including screenshots and text outputs for each.
  • Explicitly mention that Azure CLI commands work natively on Linux/macOS and provide any relevant Linux-specific notes (e.g., differences in shell syntax, file paths, or color support).
  • Include installation instructions for Azure PowerShell on Linux/macOS, or clarify that Azure CLI is the recommended tool for those platforms.
  • Where possible, use neutral, cross-platform language (e.g., 'shell' instead of 'PowerShell') and avoid assuming a Windows environment.
  • Add troubleshooting tips or notes for common Linux/macOS issues (e.g., permissions, environment variables, color output in different terminals).

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation demonstrates a moderate Windows bias. PowerShell examples are consistently presented before Azure CLI examples, and the use of PowerShell (a Windows-centric tool) is emphasized. The prerequisites mention Visual Studio Code and the Resource Manager Tools extension, which are cross-platform, but do not mention any Linux-specific editors or tools. There is no explicit mention of Linux or macOS environments, and the CLI examples use syntax that is compatible with both, but the ordering and tool recommendations subtly prioritize Windows users.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present Azure CLI examples first to avoid implicit prioritization of Windows tools.
  • Explicitly mention that Azure CLI commands work on Linux, macOS, and Windows, and provide shell-specific notes if needed.
  • Include references to popular Linux/macOS editors (such as Vim, Nano, or Sublime Text) alongside Visual Studio Code.
  • In the prerequisites, clarify that all tools and steps are cross-platform, and provide links to installation instructions for Linux/macOS where appropriate.
  • Add a note or section highlighting any differences or considerations for Linux/macOS users, if applicable.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation shows a moderate Windows bias. Visual Studio Code is the only editor mentioned, and the instructions reference the Resource Manager Tools extension, which is most commonly used on Windows. In the deployment section, PowerShell is presented as an equal option to Bash/CLI, but the PowerShell tab is listed before the CLI tab, and PowerShell is called out explicitly. There are no Linux-specific tools or editors mentioned, and the workflow assumes familiarity with Windows-centric patterns (e.g., Visual Studio Code, PowerShell).
Recommendations:
  • Explicitly mention that Visual Studio Code is cross-platform, and suggest alternative editors (such as Vim, Emacs, or nano) for Linux users.
  • Include instructions for using native Linux editors and tools to open and edit ARM templates.
  • When presenting deployment commands, alternate the order of CLI and PowerShell tabs, or present CLI (Bash) first to avoid Windows-first bias.
  • Clarify that both Bash and PowerShell are available in Azure Cloud Shell, and that Bash is often the default for Linux users.
  • Add a note or section for Linux users, highlighting any differences or tips for working with ARM templates on Linux.
  • Avoid assuming Visual Studio Code is installed; provide alternatives for users who prefer not to use it.

Page-Level Analysis

Windows First Powershell Heavy
Summary:
The documentation references both Azure PowerShell and Azure CLI for troubleshooting, but consistently lists Azure PowerShell commands before Azure CLI equivalents. There is a slight emphasis on Windows-centric tools and patterns, such as Visual Studio Code and PowerShell, without explicit mention of Linux-specific workflows or editors. No Linux-specific examples or tools are provided.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present them side-by-side to avoid implicit prioritization.
  • Include explicit references to Linux environments, such as mentioning that Visual Studio Code and the Azure CLI are cross-platform.
  • Provide example commands for both PowerShell and Bash shells, especially for CLI usage.
  • Mention alternative editors or tools popular in Linux environments, such as Vim or Emacs, if relevant.
  • Clarify that all tools and commands are available on Linux, macOS, and Windows, and provide links to installation guides for each platform.

Page-Level Analysis

Powershell Heavy Windows First Missing Linux Example Windows Tools
Summary:
The documentation page demonstrates a strong Windows bias by exclusively using Windows VM examples, PowerShell scripts, and Windows-specific tools (such as Install-WindowsFeature and IIS). There are no Linux VM examples, no Bash or shell script alternatives, and no mention of Linux extensions or tools. The template and deployment steps are all tailored to Windows environments, with no guidance for Linux users.
Recommendations:
  • Add parallel Linux examples throughout the tutorial, including deploying a Linux VM and using a Custom Script Extension to run a Bash script (e.g., installing Apache).
  • Provide both PowerShell and Bash script samples for the Custom Script Extension.
  • Include references and links to Linux VM extensions documentation, such as the Linux features page.
  • Show how to retrieve the public IP address using both Azure CLI (az) and PowerShell.
  • When mentioning tools or commands (e.g., Install-WindowsFeature), provide the Linux equivalent (e.g., apt-get install apache2).
  • Ensure that the quickstart template section includes a Linux VM template alongside the Windows one.
  • Balance the order of presentation so that Linux and Windows are given equal prominence, or clearly indicate when content is Windows-specific.

Page-Level Analysis

Windows First Missing Linux Example Windows Tools
Summary:
The documentation page demonstrates a Windows bias by using Windows file paths (e.g., c:\Templates\deployTS\azuredeploy.json) throughout, and by not providing Linux/macOS equivalents or notes. All examples reference Windows-style paths, and there is no mention of Linux shell or PowerShell Core on non-Windows platforms. While both Azure PowerShell and Azure CLI examples are given, the CLI examples also use Windows paths, and there are no explicit Linux/macOS instructions or screenshots. The documentation assumes a Windows environment for file storage and command usage.
Recommendations:
  • Provide both Windows and Linux/macOS file path examples (e.g., c:\Templates\deployTS\azuredeploy.json and ~/Templates/deployTS/azuredeploy.json).
  • Add notes or tabs for Linux/macOS users, especially for file paths and shell commands.
  • Clarify that Azure CLI and PowerShell can be used cross-platform, and provide examples or screenshots for non-Windows environments.
  • Avoid assuming a default file system structure; use environment variables or platform-agnostic paths where possible.
  • Mention any platform-specific issues (such as the PowerShell variable assignment note) for both Windows and non-Windows users.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation provides both Azure CLI (with Bash scripting) and PowerShell examples, but the PowerShell section is given equal prominence, and there is no explicit mention of Linux or macOS environments. The Bash scripting in the Azure CLI section assumes a Unix-like shell but does not clarify compatibility with Windows (e.g., WSL, Git Bash, or native Windows shell). The PowerShell section is implicitly Windows-centric, and there is no mention of cross-platform PowerShell Core or how to run these commands on Linux/macOS. There is also no explicit guidance for users on non-Windows platforms regarding prerequisites or shell compatibility.
Recommendations:
  • Explicitly state that the Azure CLI examples require a Bash shell and provide alternatives or notes for Windows users (e.g., using WSL, Git Bash, or PowerShell equivalents).
  • Clarify that PowerShell examples can be run on PowerShell Core, which is cross-platform, and provide instructions for Linux/macOS users if any differences exist.
  • Consider adding a dedicated section or notes for Linux/macOS users to ensure parity and clarify any environment-specific requirements.
  • Where possible, provide examples that are explicitly cross-platform or indicate which platforms each example is tested on.
  • Add a table or quick reference indicating which tools/shells are supported on which operating systems.

Page-Level Analysis

Powershell Heavy Windows First Missing Linux Example Windows Tools
Summary:
The documentation page demonstrates a strong Windows and PowerShell bias. All command-line examples for creating and managing the Key Vault and deploying templates use Azure PowerShell, with no equivalent Azure CLI (Bash) or Linux-native examples. The sample ARM template is for a Windows VM, and the deployment validation steps focus on RDP (Windows Remote Desktop Protocol) access. While Cloud Shell is mentioned as supporting both PowerShell and Bash, only PowerShell scripts are provided, and there is no guidance for Linux VM scenarios or SSH access. Windows tools and patterns (e.g., RDP, PowerShell) are mentioned exclusively or before any Linux alternatives.
Recommendations:
  • Provide equivalent Azure CLI (az) command examples for all PowerShell scripts, especially for key vault creation, secret management, and template deployment.
  • Include a Linux VM example alongside the Windows VM example, with instructions for using SSH keys and connecting via SSH.
  • When describing Cloud Shell, show both PowerShell and Bash workflows, and clarify which commands work in each environment.
  • For deployment validation, add steps for connecting to a Linux VM using SSH, not just RDP for Windows.
  • Mention and link to Linux password requirements and documentation, not just Windows VM password requirements.
  • Balance the order of presentation so that Linux and Windows tools/examples are given equal prominence, or alternate which comes first.

Page-Level Analysis

Windows First Windows Tools Missing Linux Example
Summary:
The documentation page demonstrates a mild Windows bias. Several JSON examples for UI controls include the property "osPlatform": "Windows" or are tailored to Windows-specific scenarios (such as username conventions and credential controls). There are no examples or mentions of Linux-specific UI controls, values, or scenarios. The documentation does not provide parity for Linux users, omitting Linux platform examples or guidance where relevant.
Recommendations:
  • Add examples that use "osPlatform": "Linux" for controls such as user name, credentials, and VM size selectors.
  • Where examples include Windows-specific values (e.g., default usernames, password policies), provide equivalent Linux-focused examples.
  • Explicitly mention Linux support in relevant sections, and clarify any differences in behavior or requirements between Windows and Linux platforms.
  • For controls that support both Windows and Linux (such as Microsoft.Compute.CredentialsCombo or Microsoft.Compute.UserNameTextBox), provide parallel examples for each OS.
  • Review all examples and ensure that Linux scenarios are represented equally, especially in areas where platform-specific behavior is relevant.

Page-Level Analysis

Windows First Powershell Heavy Windows Tools
Summary:
The documentation demonstrates a moderate Windows bias by consistently presenting Azure PowerShell (a Windows-centric tool) examples before Azure CLI (cross-platform) examples. It also recommends Visual Studio Code and its extensions for syntax validation, which, while cross-platform, are more commonly associated with Windows workflows. There are no explicit Linux shell or scripting examples, and no mention of Linux-specific tools or patterns. However, Azure CLI examples are present and correct, and no examples are strictly Windows-only.
Recommendations:
  • Alternate the order of PowerShell and Azure CLI examples, or present Azure CLI first to reflect its cross-platform nature.
  • Explicitly mention that both Azure CLI and Visual Studio Code are available on Linux, macOS, and Windows.
  • Where appropriate, provide Linux shell (bash) command-line examples, especially for common troubleshooting tasks.
  • Highlight any differences in experience or troubleshooting steps between Windows and Linux environments, if applicable.
  • Consider referencing additional editors or tools popular in Linux environments (e.g., Vim, Emacs, nano) for template editing and validation, if relevant.

Page-Level Analysis

Windows First Powershell Heavy Missing Linux Example
Summary:
The documentation provides both Azure CLI and PowerShell examples for deployment and cleanup tasks, but it demonstrates a Windows bias by listing PowerShell (a Windows-centric tool) as an equal alternative to Azure CLI, and by not mentioning or providing any Linux- or macOS-specific shell examples (such as Bash). The prerequisites section lists Visual Studio Code and PowerShell before Azure CLI, and does not mention Linux-native editors or shells. There are no explicit Linux or macOS instructions, and the use of PowerShell is emphasized throughout, which may not be as familiar or available to Linux users.
Recommendations:
  • Explicitly mention that Azure CLI commands work on Windows, Linux, and macOS, and clarify that PowerShell is optional.
  • Provide Bash shell examples or clarify that the Azure CLI examples are suitable for Bash on Linux/macOS.
  • In the prerequisites, mention that Visual Studio Code and Azure CLI are cross-platform, and suggest Linux-native editors as alternatives.
  • Consider reordering examples to show Azure CLI (cross-platform) before PowerShell, or clarify that PowerShell Core is available on Linux/macOS.
  • Add notes or callouts for Linux/macOS users regarding any platform-specific considerations.

Page-Level Analysis

Powershell Heavy Windows Tools Missing Linux Example Windows First
Summary:
The documentation page demonstrates a strong bias toward Windows and PowerShell. All deployment script examples use PowerShell exclusively, and the deploymentScripts resource is configured with 'kind: AzurePowerShell' only. The script content and debugging instructions are PowerShell-centric, with no Bash or cross-platform scripting alternatives. While Azure CLI examples are provided for template deployment, the core automation and scripting are PowerShell-only. There is no mention of Linux shell scripting or Bash-based deployment scripts, and PowerShell is presented as the default or only supported scripting language.
Recommendations:
  • Provide equivalent examples using Bash scripting and 'AzureCLI' deployment script kind, where possible.
  • Explicitly mention support for Linux-based scripting and tools, and clarify any current limitations.
  • Add Bash or shell script content for the deploymentScripts resource, or note if only PowerShell is currently supported.
  • Ensure that both PowerShell and Bash/CLI examples are presented in parallel throughout the documentation, not just for template deployment but also for scripting and debugging.
  • Avoid language that implies PowerShell is the only or default choice unless it is a technical limitation, in which case, state this clearly and provide a roadmap or alternatives for Linux users.

Page-Level Analysis

Powershell Heavy Windows First Windows Tools
Summary:
The documentation is heavily PowerShell-centric, as the ARM template test toolkit is implemented as a set of PowerShell scripts. All usage examples, regardless of platform (Windows, Linux, macOS), require PowerShell and provide only PowerShell commands. The Windows installation section is presented first, and there are no examples using native Linux tools or shell scripting. The toolkit itself is fundamentally tied to Windows/PowerShell paradigms, and Linux instructions are essentially adaptations for running PowerShell Core on Linux, rather than offering a native Linux experience.
Recommendations:
  • Clearly state at the beginning that the toolkit is PowerShell-based and requires PowerShell on all platforms.
  • Consider providing or linking to a cross-platform wrapper or alternative (e.g., a Docker image or a CLI tool) for users who prefer not to use PowerShell.
  • Offer bash or shell script examples for common tasks, even if they simply invoke PowerShell scripts, to better align with Linux user expectations.
  • If possible, develop and document a native Linux/Unix CLI interface or provide guidance for integrating the toolkit into typical Linux CI/CD workflows.
  • In the installation sections, present Linux and macOS instructions before or alongside Windows, or group them together to avoid a Windows-first impression.

Page-Level Analysis

Powershell Heavy Windows First Windows Tools Missing Linux Example
Summary:
The documentation demonstrates a Windows bias by providing detailed PowerShell scripts and cmdlets, referencing Windows-centric tools (e.g., PowerShell, New-AzVM), and using Windows path notation in examples. While Azure CLI commands are included (which are cross-platform), the PowerShell section is more extensive and advanced. There are no explicit Linux shell (bash) or macOS-specific examples, and the REST example uses a Windows-style path for output. The documentation does not mention or show Linux-native scripting or tools for querying SKUs.
Recommendations:
  • Add bash (Linux/macOS) shell script examples for filtering and processing az vm list-skus output, such as using jq or grep.
  • Ensure REST API examples use cross-platform path notation (e.g., ./sku-list.json instead of .\sku-list.json) or provide both Windows and Linux variants.
  • Balance the depth of PowerShell and CLI sections, ensuring advanced filtering and scripting examples are available for both.
  • Explicitly mention that Azure CLI commands work on Linux/macOS and provide example outputs from those environments.
  • Avoid referencing Windows-specific tools (e.g., New-AzVM) before their CLI equivalents, or present both together.

Page-Level Analysis

Windows Tools Windows First
Summary:
The documentation is largely neutral and cross-platform, focusing on ARM template best practices with JSON examples. However, there is a subtle Windows bias in the references to the test toolkit's implementation and test cases. Specifically, the only direct link to a test case points to a .ps1 (PowerShell) script, and the toolkit cache and test case references are hosted in a Windows-centric (PowerShell) repository. There are also references to Windows and Linux in the context of VM images, but both are treated equally in those examples.
Recommendations:
  • Provide explicit instructions or examples for running the ARM template test toolkit on Linux/macOS, including any CLI commands (e.g., Bash, Azure CLI) in addition to or instead of PowerShell.
  • When linking to test cases or toolkit resources, ensure that cross-platform scripts or instructions are available and referenced (e.g., Bash scripts, or platform-agnostic instructions).
  • If the toolkit is only available as PowerShell scripts, mention any cross-platform compatibility (such as PowerShell Core on Linux/macOS) and provide installation/running instructions for those environments.
  • Where possible, avoid linking directly to .ps1 files as the only reference for test logic; provide documentation or markdown summaries of test logic that are platform-neutral.
  • Continue to ensure that all examples and explanations are not specific to Windows environments and that Linux/macOS users are not excluded or left to infer compatibility.