Do modern tech companies ever move to mainframes?
In my mind, mainframes are associated with either:
1. Old software
2. Large not-tech companies who outsource their IT department.
Do any modern tech companies actually migrate to mainframes? I've never heard of one doing so. I'd attribute it to a few things: 1) modern tech companies already have a workforce that's familiar with the cloud and modern technologies. They're unlikely to have many employees with Cobol experience (both coding experience and general Cobol interaction) 2) few of these companies want to be beholden to IBM and the like for their mainframes. 3) Many of these tech companies have requirements for near real-time streaming whereas Cobol's wheelhouse is batch processing 4) Reputation that it's difficult AND expensive to keep cobol/mainframe divisions well-staffed as there aren't many new developers coming onboard and many of the existing developers are retiring 5) Relative uncoolness of Cobol Minor note, CICS (and impls with screen divisions) implement psuedo-stateful interactions similar to http with tempoary storage queues in place of sessions. The 3270 client is textual as opposed to graphical like html of course. Only when someone is extremely stupid (or has a stake in the outcome) and falls for the marketing bullshit like the following: https://www.ibm.com/it-infrastructure/z (warning - graphic content) Once you had database clusters, it became possible to run a bunch of machines rather than one giant machine. That turned out to be less expensive for most people. The machines were cheaper, because they could be commodity machines, because each individual machine didn't have the insane reliability requirements that mainframes have. Yes, MPI and HDF5 are still a thing and processing on a supercomputer is still orders of magnitude faster than the usual distributed approaches. However applications would likely be science, engineering and finance. All you have to do is go to a vendors page and check out the flagship customers. For me, the mainframe is a big expensive box. Vertical scaling is still a thing. Most RDBMS work best on big boxes. Some Java applications would require hundreds of GB of ram. There are use-cases for mainframes but people prefer new shiny Kube clusters. What’s the difference between a mainframe and ‘the cloud’? I'm pretty sure you're being facetious, but I'll answer anyway for anyone reading this that doesn't get it. There was a great article a few years back talking about how mainframes and the cloud were similar architectures with a focus on the challenges of multi-tenancy and focused on the fact that the cloud companies were hiring some people who had helped develop mainframes. For the life of me, I can't find it now (all my searches just bring up articles about migrating mainframes to the cloud). Some of the main differences is that mainframes had an integrated coding environment (and usually no dev/staging/prod separation). Probably more important is that mainframes are usually built to be highly reliable (hardware failures are rare), whereas most cloud providers are using commodity servers that are meant to fail often (If you're using AWS at any sort of scale, you've probably seen a server go down because of a hardware failure). With mainframes you're typically paying the cost upfront (CapEx) and amortizing the cost over time (with mainframes being expected to last 10+ years?) vs the OpEx cost of the cloud. I have read some similar article(s), I think. Pricing models don’t necessarily rely on the underlying technology, IMO. (Consider the ol’ paid-for vs vendor-bundled browsers.) I’m not sure whether reliability makes for different categories either: different OSes have different focus on reliability, but are all OSes, after all. Definitely makes for different use-cases, though! I also wonder whether the integrated coding environment and staging aspect primarily reflects general developments in coding workflow. That is, whether they are an incidental or intrinsic difference. It would probably have been much easier to make up my mind on that if I had any mainframe experience. Categorization depends on how you draw the lines, and I definitely have a bias towards assuming hyped-up stuff is probably less interesting or new than the hype makes it out to be. Though, I haven’t made up my mind whether to consider mainframes and ‘the cloud’ different instances of the same thing. Thanks for the reply, interesting stuff!