Then you’ve misunderstood my point.
The “write once, run anywhere” moniker was originally coined for Java, representing the hypothetical ability to just code against the Java APIs and your bytecode could be run on anything that supported Java, sight unseen.
The reality of Java development was that a more appropriate moniker would have been “write once, test everywhere”. Because, while you may be writing under the same API, the stuff behind those APIs can be very different depending on platform specific issues. And you can’t ignore those issues if you want your program to run well.
OpenGL is similar; you cannot just write applications against the specs and expect them to run on platforms you haven’t tested them on. You never know what driver bugs are lurking out there. So if someone wants to “satisfy as many users as can be”, if they are writing a serious application, then they will have to test on any platforms that they intend to support.
That’s a hefty investment. “Relatively portable” is in the eye of the beholder.
This section seems like it was written when Vulkan was just released, rather than now, when Vulkan has become a pretty clear success. User adoption is about as widespread among serious developers as one could hope at this point, and it’s only growing from there.
If you want proof that Vulkan is doing just fine, consider this: CAD developers want to get on-board the Vulkan train (as evidenced by them asking for certain line drawing extensions). You know, the guys who helped torpedo the real OpenGL 3.0 Longs Peak because they didn’t want to rewrite their code slightly? I’d have thought you’d have to pry OpenGL 1.1 out of their cold, dead hands.
Vulkan is successful because it isn’t as “straightforward”. This is the API that professionals wanted: one that exposes the low-level details so that they can tinker and get the performance they need. That is not, and never will be, “straightforward”.
Intel has plenty of Vulkan implementations. Indeed, it seems like they’ve been keeping their implementations pretty up-to-date with Vulkan releases.
What they neglect is old hardware, and they always have. You may not consider 10 years to be old, but Intel certainly does. They routinely stop supporting hardware after a certain point. As far as Intel is concerned, such hardware it’s outdated, unsupported, and irrelevant.
So it’s wrong to presume that there is some widespread issue of Vulkan support from the fact that Intel doesn’t do things from older hardware.