Microsoft had us meet in Redmond, gave us a tour, free books from their bookstore, brought in an Indian chef for lunch (our boss was Indian), gave a big splashy presentation, etc.
IBM met us in a dingy conference room in LA, with a whiteboard, don’t even remember any coffee or bagles. The two guys they sent came across like bad car salesmen, and we were a big IBM customer.
If the sales people earned the same for renewals as they did onboard a new customer you can bet your sweet behind they’d treat you real nice like.
They're so vigilant about bribery that when someone (a general, or someone important) goes to a contractor presentation it's *expected* that there's a little can they put fifty cents or a few bucks into to pay for their share of the bagels.
And if this can doesn't exist? Everyone gets very uncomfortable very quickly - literal jobs are at stake.
Other industries are just wild, man.
Even if the financial part is 100% bribery, there's a difference between "here's a check so you pick us instead of the competition" and spending the effort to work out what your company/decision makers care about and providing that.
It's like saying if I plan a date with someone at a concert I know they're into that I'm bribing them into a relationship. In a literal sense, yes, but having someone care enough to cater to you isn't exactly meaningless in terms of deciding who to pursue a longer-term relationship with, personally or in business.
If you take a personal bribe to tank your business, that's between you and your business partners - a civil matter unless your business partners are John Q public (Which is why the SEC exists). It is entirely legal to enrich yourself at the expense of a business you wholely own, with the obvious caveat that the courts will pierce the veil if you've committed crimes as that company.
Somewhat related, to get my current job I had to sign a bunch of conflict of interest forms because I jumped ships from one side to the other. So some controls exist for the behaviour you brought up!
I'm not saying this stuff never happens, either, I'm just remarking that the professional standards and expectations are very different in military contracting versus software.
So there's a lot of arbitrary requirement shifting between actual requirements and as-bid program requirements... which invites arbitrary requirements adjustment on behalf of the bidders, but that can be explained away as {insert semi-justified reason here}.
OS/2 only made it worse for IBM by shipping DOS+Windows compatibility, so basically zero developers wrote OS/2-native applications. This gave Microsoft nothing but time to get their Windows stability and multitasking performance up to snuff with NT.
In hindsight I feel like the dismal PC situation in terms of constant crashes/need for reboots in pre protected-mode MS-DOS and combinatorial explosion of incompatibilities created by all the random ass hardware peripherals conditioned everyone to fear more change and diversity. If the software being shipped on the computers at the time couldn't make things work well, and these were allegedly the experts most qualified to do it right, what will things be like with some alternative software attempting to emulate the same stuff in a "compatible" way? No way, OS/2 was doomed. And I'm saying this as someone who ran OS/2 WARP for years before discovering an Infomagic 4-CD Linux set in my teens.
Practically zero developers wrote for OS/2 because IBM made it hard to do so. I remember something Jerry Pournelle wrote about his experience at a major trade show (COMDEX?) that IBM and Microsoft both attended, after Warp was out and I think when Windows 95 was still in beta.
At the IBM booth he told them he'd like to do some OS/2 development and asked how to get started. They gave him a form to fill out to apply for their developer program. They wanted details on what he wanted to develop, his business plan, and stuff like that. If that was all acceptable to IBM then they would let him to buy their expensive SDK.
Then he went to the Microsoft booth and said he'd like to develop for Windows 95. They handed him a CD-ROM with the SDK, tools, and documentation.
Later, after Windows 95 was released I remember going to a retail software store (Egghead) and in the developer software section there was nothing at all from IBM. Microsoft on the other had everything one needed to start development there. Watcom C/C++ was also there, which supported DOS, Windows, OS/2, Netware, and major DOS extenders, so at least you could get some OS/2 developer tools at retail.
And if you did go through all the hoops and develop something for OS/2, IBM didn't seem to care. Apple and Microsoft were always on the lookout for 3rd party programs that could promote their platforms and would run ad campaigns featuring them. They'd pay stores to put such software in better locations.
(That same not bothering to market applied to the OS itself. The reason when when you walked into a major software store you would be greeted with a front of store Windows 95 display while OS/2 was on a bottom shelf somewhere in the back of the store most of the lights were burned out and the remaining ones were flickering in a way that made you nauseous is that the stores sell shelf space. Microsoft paid for premium space. IBM did not).
They also did a terrible job of hardware support, particular video card support. I wanted to quad boot between Windows 95, Windows NT, OS/2 Warp, and Linux.
I had to go through something like half a dozen or more cards video before I found one that worked well enough with OS/2 to support a decent resolution and frame rate. I had expected Linux to be the one to give me the most trouble, but it wasn't too bad.
IBM should have had its own team of video driver developers writing drivers for all the common cards that didn't already have good OS/2 support from the card vendors.
One can say a lot about Microsoft and Windows, but they were always keen on building a platform which enabled others to build upon.
Microsoft on the other hand always tried to give developers tools and access to it with quite good documentation. Enabling people to build on top of their platform. Making sure that other people can built upon their platform. This brought Windows in a ton of embedded worlds except the phone, where they missed the reinvention by Apple. But from say ATMs to Trains Windows is still ubiquitous. And that's the way they built Azure. Want to offer your own Service? - You can integrate it into Azures Cloud Console. And at the same time they still foster developers, with GitHub, VisualStudioCode and TypeScript.
Microsoft was sucked into the false idea that people wanted desktops on their mobile devices, but hardware at the time couldn't offer that in a cost-effective way.
Apple was also cutthroat pragmatic in a way that I don't think was ever in Microsoft's DNA -- specifically: killing Flash support.
The latter being firmly in the "scale top-down" camp: big customers are the only customers that matter.
I've worked for both top-down and bottom-up marketed companies, and the latter always seem to have better products.
I think it's because (a) there are so few whale customers, which hyper-specializes your product to their needs instead of getting a representative sample of the actual market's needs, (b) you can do dumb shit like limit your documentation to only customers, (c) it gives you a convenient excuse to ignore customer input ("Oh, they're not a customer that matters"), & (d) it slows you down, because your customers' upgrade processes are glacially slow, which removes pressure for you to be fast.
The cool part was that you could boot OS/2 off of a single floppy disk if you didn't need the GUI. I had that and Forth/2 on a demo disk.
That was major design damage, required by IBM because most of the PS/2 line was on this CPU.
Both Linux and NT required an 80386 with a flat memory model. On capable hardware, this was far superior.
Both Linux and NT quickly ran on multiple platforms besides x86. I think that OS/2 was ported to Power, but nothing else.
"OS/2 1.x targets the Intel 80286 processor and DOS fundamentally doesn't. IBM insisted on supporting the 80286 processor, with its 16-bit segmented memory mode, because of commitments made to customers who had purchased many 80286-based PS/2s as a result of IBM's promises surrounding OS/2. Until release 2.0 in April 1992, OS/2 ran in 16-bit protected mode and therefore could not benefit from the Intel 80386's much simpler 32-bit flat memory model and virtual 8086 mode features."
https://en.m.wikipedia.org/wiki/OS/2
The developer of busybox/toybox also had 80286 discussion.
NSFT was still involved at 2.0 time, though DOS+Windows was pretty obviously going to win, so to speak, and NT OS/2 was still hush-hush. NT OS/2 ran on ia32, mips, alpha, and i860 (wow, freaky to remember that!) at the time - the "new technology" was as much the racy idea of portable OS code as RISC and microkernels...
VMS has great strengths, but hard file locks on OS components require downtime for patching. Cutler didn't foresee the avalanche of updates, and the availability collapse of "patch Tuesday."
POSIX opportunistic locking was a great gift to his competition.
http://www.edm2.com/index.php/HPFS386.IFS
That's the only 386 code in OS/2 1.x that I know of.
- It wasn't from version 1.1; the original OS/2 1.0 was a 286 OS, because IBM insisted it ran on the 286, because IBM sold a lot of 286-based PS/2 computers and had promised that they would run OS/2.
I have written about this recently, and you commented on the discussion.
https://news.ycombinator.com/item?id=33019019
That post was based on a comment here:
https://news.ycombinator.com/item?id=33007995
- It wasn't "forced down". It was originally a 286 OS, by design.
- "Most of the PS/2 line" -- [[citation needed]]. I am not sure about "most" but certainly 286 PS/2 were popular, because they were cheaper.
It wasn't about volumes; it was about an IBM promise to PS/2 buyers.
Even though it wasn't a technical job per se, I learned to create a little Lotus Notes database to help us keep track of the various companies and more importantly, got my own copies of the rare developer manuals which were only available to licensees of Notes. Between that small bit of knowledge and IBM on my resume (a very big deal even in the early 90s), I was able to bald-face my way into getting a programming job and starting my career.
There was a reason, but not a good reason.
OS/2 used a lot of Star Trek code names. IBM forgot to get permission from the Star Trek IP owners before using "Warp" in marketing:
https://arstechnica.com/information-technology/2019/11/half-...
The main problem with it was that is was basically unusable on consumer hardware at the time. We got a new 80Mhz 486 with 4MB RAM around that time and it was just incredibly slow, while Win3.11 ran just fine.
With hardware advancing at an incredible pace back then, it might have had a better chance it they had delayed it by a year.
Slackware came out on CDs.
Also:
> The Linux veterans among the readers will remember that Slackware 1.0 came on 24 floppy disks, 13 of which were the essential A series, while the remaining 11 floppies contained XFree86 and graphical applications. What exciting features could one find in Slackware 1.0? The Linux kernel was at version 0.99pl11 alpha. It came with math emulation and normal hard drive support, TCP/IP, support for ext2fs, msdos and several other file systems, and it even supported a PS/2 style mouse. It was compiled with libc 4.4.1 and g++ 2.4.5. The graphical part of the distribution was based on XFree86 1.3 and the OpenLook Virtual Window Manager was the default desktop environment.