They had a golden opportunity, when it was clear that PCs would be transitioning from 16-bit operating systems to 32-bit operating systems. Microsoft had WinNT for 32-bit, Win3.x for 16-bit. WinNT didn't do a good job at the time running people's existing 16-bit Win3.x applications, so migrating to NT was a tough sell. This put MS in a hard place, because they needed something that ran existing Win3.x stuff reasonably well but supported 32-bit for the future--in other words they needed a transition system.
That transition system was to be Win95, but it was months away when Warp came out.
Warp had excellent Win3.x compatibility. In fact, it arguably ran Win3.x applications better than Win3.x ran them. And it had excellent 32-bit support.
IBM should have aggressively pushed Warp as the 32-bit successor to Win3.x. They could argue that instead of waiting for Win95, switch now and you'll get the benefit of 32-bit, and you'll get a better 3.x experience than you have now (or that you'll have under Win95).
What would Microsoft be able to do? If they countered by downplaying the importance of 32-bit, they'd just make people reluctant to switch to Win95 when that came out.
Instead, IBM basically just made Warp available, and then ignored it. Here are some examples of how they ignored it.
1. They didn't spend any money promoting it in stores. A lot of consumers do not realize this, but in retail stores shelf positioning is for sale. When you see a product featured in an end cap, or on a shelf at eye level, or in a high traffic location, it is because the manufacturer of that item paid to have it put there. If the manufacturer doesn't pay for good placement, their product goes on in inconvenient shelf in a less trafficked part of the store.
Guess where OS/2 was in Egghead and CompUSA? Someplace in back, where the lighting was poor, sitting on the bottom of a shelf.
2. They didn't give a fuck about existing developers. I recall reading a column by, I think, Jerry Pournelle, where he went to a trade show. First he went to the IBM booth, told them he'd heard about OS/2, and would like to develop for it. He asked what he needed to do.
They have him a form to fill out. It was an application to apply for developer status. It asked all kinds of details about what he planned to develop, his business plan for it, and so on, and there was an application fee.
Then he went to Microsoft's booth, and said he'd heard about Win95, and asked what he had to do in order to develop for it.
They gave him the SDK and tools right there.
3. They didn't give a fuck about beginning developers. Flash forward to after Win95 was released. Microsoft made developer tools available IN THE RETAIL MARKET. They were for sale at places like Egghead.
Think about that. Some kid playing with Win95 gets an idea for a game, and wants to start programming. He could go out to his local software store, and get everything he needs to start being a Win95 programmer!
Could you do the same for OS/2? Well, actually you could--but not from IBM. Watcom C/C++ was available in retail shops and could build OS/2 applications, and even had some licensed libraries from IBM included. However, Watcom really was aimed at the professional developer. The licensed documentation wasn't as complete as the Microsoft documentation for Win95.
4. They didn't give a fuck about developers who actually developed for OS/2. If you persevered, and actually made OS/2 software, you were on your own. They wouldn't help promote your application. They wouldn't feature it in any ads or provide any co-marketing funds to help you promote it.