|
I worked for Southwest as recently as last year. In the industry, ALL reservation and ticketing systems are written by specialists. The major players are Sabre ( think IBM ) / Navitaire / ITA ( which was bought by Google not too long ago ). Southwest is a great company, and they pay well, but their engineering staff is made up of the neckbeard brigade . . . lots of guys in their 50s that have either retired before retiring, or finally decided to learn this new fangled "java" language and move on from C and COBOL. There is simply not the engineering skill, nor the organizational will, to develop anything that complex in house. They tried once about 5 years ago and after 4 months it exploded in a ball of flames because they couldn't solve the the throughput issue. This outage was almost certainly a Sabre issue. The reservation system itself runs on old school IBM big iron written in C. The system is so damn old that when you go southwest.com, all the information retrieved is done via screen scraping. Not XML, not JSON, not even CORBA. The key point is when the spokesman describes the "weight" of the airplane, something that is calculated by the system according to how many people checked in, how much luggage, etc. Without the system up and running, the flight cannot be "closed" and therefore tracked properly. Southwest hosts all of their own in house applications ( except for a few things on GCE ), but the Sabre system is run out of some nuclear proof bomb shelter in Tulsa. It goes down 1 ~ 2 a year, but typically it's only out for 10-15 minutes. For planes to be called back to the gate, the outage would have had to have been over 60 minutes, as that's how long they buffer in a separate system in case it does go down. Finally, Southwest pays Sabre by . . . wait for it, requests executed per second. |
Man, say what you will about old mainframes and critical systems and C and COBOL versus racks of commodity x86 boxes and Java and Ruby and "scaling out" and load balancers and reverse proxies and ..., but those old business apps running on the AS/400s and mainframes?
They just work(TM).
I agree that these old systems need to come into the 21st century but some of the most stable, reliable systems I've seen in my career are 20- or 30-year-old applications running on that old iron.
(mmm, 5150, 3270, CICS, JCL, RJE, IBM printers as big as refrigerators... sigh... sometimes I miss those days.)