This and the rest of your post is about one specific kind of developer, and I honestly wonder how you can think that's it.. Lack of experience or just bad luck and only ever met this kind perhaps? Anyway while I know for a fact these exist, your feeling is sort of wrong in that there are also developers who just use VS as the IDE it is (to write code and debug; it's good at that) and for the rest automate build environment setup, deployment and whatnot just like you'd do on another OS. I just don't know the numbers, i.e. which share of developers using VS act like you describe. It's not like using VS somehow makes people blind for concepts like CI. Data point: we have a bunch of scripts (combination of PowerShell/Python/MSbuild) which will install and setup the complete build environment from scratch (VS/Miniconda3/Vcpkg/...) checkout all code (yes from git, not from a network share), build a myriad of different flavors of the product, package it; all in one commandline command.
Python used to do this, it still may.
I think what you're noticing is that Visual Studio makes it easier for point-and-click developers to participate while a bash shell takes a little more effort to learn. You can have poor developers in both worlds or great developers in both worlds.
I have also build in Go, nodejs, Php, RoR.
But VS is truelly the best IDE experience I have witnessed.
Database changes are automatically migrated and deployed using entity framework fyi.
The big deployment button changes the connection string per deployment, deploys with feature flags directly and automatically migrates the db to the latest version
Something VS based development, build and deployment based workflows have been doing for over a decade through the largely Web..config files and .csproj files.
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy...
That might have been true once, but I think Microsoft-stack devs are a lot more command line savvy these days.
The move towards DevOps and scripting makes the command line much more necessary, and makes the benefits of the command line clear. The move towards cloud has introduced Linux to a lot more organisations, yes, even Microsoft shops.
I don't think it's ever been that true. It's just a handy stick for some people to bash their perceived out-group.
I'm detecting a bit of disdain for the VS world
As someone who learnt to program using linux/Mac OS, when I got a job somewhere that used windows and VS exclusively, trying to get my head around the (to me) needlessly confusing and convoluted way in which windows-dotnet devs seemed to do things was a painful experience.
Watching some of them try and debug docker files was amusing because that was a total role reversal.
It wouldn't surprise me at all to find some windows based companies that have classic windows VMs in the cloud, running Visual Studio, and production deployments are: RDP in, stopping with the little red button, updating the codebase (with a copy over a network share), and then re-running the code on the production server with the little green play button. Database changes are done by hand in SQL Server Manager.
I know this isn't at all related to the post here - but it's just an interesting phenomenon - the fact that Azure is about 50 percent windows means it's mostly running things like Office backend products, crazy running copies of Visual Studio. It is probably a total mess if half of Azure goes down for 5 minutes. Linux servers would come back up and continue running whatever. All the Windows companies get a call, have to RDP in and do shit.