Microsoft utterly screwed up ...
^Login scripts still very useful, even if one is using Windows Server and GPOs: certain things that even GPOs cannot do
Microsoft created roaming profiles so users would not have to rely on the availability of a server for execution.
This was especially an issue with its SMB network filesystem, which is rather stateless.
I.e., a client had no way of synchronizing with a server once it came back up, often leading to file corruption (this is unlike UNIX NFS).
At the same time, it would solve issues with traditional approaches (like UNIX NFS' "hard" v. "soft" approach, or relying on application interrupts, etc...).
Unfortunately, it was an utter screw up, not because of the design of NT, but the ignorance of Microsoft's own developers.
In the end, ironically, it's just easier to use home directories on a server, the whole "roaming profiles" concept had more issues with applications and poor designs on the application/client side.
Although it's improved drastically since the death of DOS-based Windows (95/98/Me), which is utterly network (let alone security) ignorant, it still requires many, manual clean-ups.
Ironically, the approach done over 3 decades ago, years before Microsoft's own existence -- "just works."
POSIX (UNIX) applications know they always go to a user's home directory.
POSIX (UNIX) applications don't require a "start-up" directory (which is a major issue with Windows, and why UNC paths don't work and you have to use maps to drive letters).
And there are many other, legacy Windows approaches that "just don't work" on networks, and there's really no "workaround" without breaking things.
Not surprisingly, although most people don't deal with it, Jobs utterly understood why leveraging UNIX and its approaches was a much better way to do things "underneath."
Which is why Apple "just works" using a UNIX approach, even if it doesn't look like what people think of UNIX in general.
Apple also leverages open standards quite well when it comes to networking, and builds excellent interfaces around them, whereas Microsoft still doesn't understand its own protocols.
I.e., people think the Samba set of CIFS/SMB services on UNIX is "hard" -- no, it's called "complete control" of the spagetti that Microsoft calls "Windows Networking."
If you want to emulate any form of the protocol, the only way you can do it is with Samba, Microsoft often has conflicting handshakes and even broken security implementations between not just Windows versions, but even patches.
That's why many enterprises use Samba, or an enterprise-grade appliance that implements it, instead of Windows itself -- because Microsoft honestly doesn't care to deal with its own bloated non-sense, let alone not older versions or patches of its own.