This page contains Windows bias

About This Page

This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.

Bias Analysis

Bias Types:
⚠️ windows_first
⚠️ missing_linux_example
⚠️ windows_tools
⚠️ powershell_heavy
Summary:
The documentation exhibits a strong Windows bias: all code samples use Windows-specific command syntax (cmd.exe), file paths use backslashes by default, and there are no Linux/bash equivalents provided. The only mention of Linux is a note telling users to change backslashes to forward slashes, without any actual Linux example. The code sample and workflow are centered around C#/.NET and Visual Studio, with no mention of cross-platform development tools or languages. The sample project is a Visual Studio solution, further reinforcing the Windows-centric approach.
Recommendations:
  • Provide equivalent Linux/bash command examples for task commands (e.g., use bash shell syntax in addition to cmd.exe).
  • Show file path examples using both Windows (\) and Linux (/) conventions, or use platform-agnostic path joining.
  • Include code samples in at least one cross-platform language (e.g., Python) in addition to C#.
  • Mention and demonstrate how to use cross-platform development tools (e.g., VS Code, CLI) rather than only Visual Studio.
  • Explicitly document any platform-specific considerations (e.g., line endings, shell differences) and provide guidance for both Windows and Linux users.
  • Reference and link to Linux-specific Azure Batch documentation or guides, if available.
GitHub Create pull request

Scan History

Date Scan ID Status Bias Status
2025-08-17 00:01 #83 in_progress ✅ Clean
2025-07-13 21:37 #48 completed ✅ Clean
2025-07-09 13:09 #3 cancelled ✅ Clean
2025-07-08 04:23 #2 cancelled ❌ Biased

Flagged Code Snippets

CloudBlobContainer container = storageAccount.CreateCloudBlobClient().GetContainerReference(containerName); await container.CreateIfNotExists(); new CloudTask(taskId, "cmd /v:ON /c \"echo off && set && (FOR /L %i IN (1,1,100000) DO (ECHO !RANDOM!)) > output.txt\"") { OutputFiles = new List<OutputFile> { new OutputFile( filePattern: @"..\std*.txt", destination: new OutputFileDestination( new OutputFileBlobContainerDestination( containerUrl: container.Uri, path: taskId, identityReference: new ComputeNodeIdentityReference() { ResourceId = "/subscriptions/SUB/resourceGroups/RG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name"} })), uploadOptions: new OutputFileUploadOptions( uploadCondition: OutputFileUploadCondition.TaskCompletion)) } }
new CloudTask(taskId, "cmd /v:ON /c \"echo off && set && (FOR /L %i IN (1,1,100000) DO (ECHO !RANDOM!)) > output.txt\"") { OutputFiles = new List<OutputFile> { new OutputFile( filePattern: @"..\std*.txt", destination: new OutputFileDestination( new OutputFileBlobContainerDestination( containerUrl: containerSasUrl, path: taskId)), uploadOptions: new OutputFileUploadOptions( uploadCondition: OutputFileUploadCondition.TaskCompletion)), new OutputFile( filePattern: @"output.txt", destination: new OutputFileDestination(new OutputFileBlobContainerDestination( containerUrl: containerSasUrl, path: taskId + @"\output.txt")), uploadOptions: new OutputFileUploadOptions( uploadCondition: OutputFileUploadCondition.TaskCompletion)), }