Life as a Reformed Mainframe Programmer in the .Net World

One of the skeletons in my closet is that at one time I actually wrote code for the mainframe. COBOL, Assembly, CICS, DB2, JCL (that still brings back nightmares), I've done them all, and survived. I've have been reformed mainframe programmer for a long time now, and haven't touched code for that platform in over 5 years. But still I get calls from recruiters, trying to tempt me back into the fold. I was very young when I got started (it definitely wasn't something others my age were doing), and did it for about seven years. I tried to quit for a number of years, but my manager's would never let me. I'd get a taste of freedom, by worked with VB (starting with VB 3), but I wasn't able to quit the habit until 1998. While everyone else was busy doing Y2K work, I escaped to a Microsoft DNA project, and never looked back.

But still, there is so much that I learned back in those days. The stateless Internet reminds me so much of CICS. If I need to make sure something scales, I think back to CICS, and try to implement a technique similar to how I'd do it on CICS. EnterpriseServices (aka COM+) feels so much like CICS to me. The browsers are really just dumb terminals. Web Services are just advanced screen scrappers. The one thing that I really miss, and haven't found the equivalent in .Net, is Temp Storage Queues. I've tried a couple times to get MSMQ to work like TSQ, but since MSMQ is more of a FIFO architecture, I've never got it to work right. TSQ, was a great place to stuff statefull info. It was a bunch of application level queues, but they were indexed by UserId, so you could easily dump info based on an app and the user, and then get it back quickly the next time through. It was also persisted, so that if the machine failed, you would be able to recover, and continue. Stuff that, as a .Net developer, you could really use, if it worked out of the box.

DonXML

[Listening to: Wake up Dead - Megadeth ]

3 Comments

Comments have been disabled for this content.