Part of the problem is that there are too many competing packages nowadays, so attempts at coding often fail,
as HSE experienced here today (probably my fault).
Once upon a time we all used the same identical Masm32 SDK, and our sources worked identically on all Windows machines. That has changed... I try my best to keep my own package compatible with the Masm32 SDK, with Uasm and AsmC, but it's not an easy job. AsmC, for example, is a Masm clone on paper, but only if you use dedicated options. UAsm behaves better, the default options make it ML.exe compatible. Both WatCom assemblers have myriads of options changing their behaviour - I hope that at least the authors still have the control.
It is not yet as bad as in the C/C++ world, though, where you can't convince Visual Studio to "convert" code that was created more than a couple of years ago
in VS; and we are not yet at the point, as in FreeBasic, where 90% of forum messages deal with compile errors due to the use of half a dozen different "toolchains". But I guess one reason for the endless non-programming threads is that people are tired of fighting with problems related to the diversity of tools.