Codeasaurus Rex

August 14, 2008

The Governator versus COBOL

Filed under: Mainframer makeovers — Codeasaurus Rex @ 11:42 am

Or, the irresistable force meets the immovable object:

http://www.theregister.co.uk/2008/08/14/cobol_california/

June 28, 2008

The Birth of a Notion

Filed under: Mainframer makeovers, SAP — Codeasaurus Rex @ 6:18 pm

I’ve been thinking about getting into SAP for the last few years and often talked to my fellow guild members and brokers about it (I’m a contract programmer and brokers get me most of my jobs). The usual suggestion was to take a year off and spend a pile of money getting schooled, so I let things slide…

The light finally came on this afternoon and one google later, I found the SAP Developer Network website. Poking around, I found that free registration was required to access the training goodies, forums etc.

One registration and email confirmation later and I’m a brand-new SDN member. My first job is to learn the ABAP language used to program SAP, but I pick up programming languages like dogs pick up fleas; after all, what are command shells, awk, grep, sed and SQL but programming languages, in addition to the usual suspects like FORTRAN, COBOL, C, Python etc.?

There appears to be a download for Windows XP that will let me play around with ABAP, in which case I won’t need to get a SAP job first (which would probably be impossible). There also seems to be an opportunity to download some kind of SAP application to learn on, but it has SUSE Linux Enterprise Server from Novell as a prerequisite. (Dang! Just when I was getting excited about the BSDs…)

Note: ABAP is pronounced Ah-Bop by the cognoscenti because SAP comes from Germany. (If you really want to lay it on, say “zahp” instead of “sap”.) I did two years of German during one of my numerous forays into higher education and look forward to reading the SAP scriptures in the original language.

Anyway, what better for this mainframer than to get retreaded with SAP? I know it’s a big system to get your arms around, but I’ve been doing legacy maintenance on and off for twenty years so big systems don’t hold any particular terror for me.

As Fred Astaire sang in Top Hat:

I’m stepping out, my dear,
to breathe an atmosphere
that simply reeks with class,
and I hope that you
won’t mind my dust
when I step on the gas…

October 1, 2007

Attention Fellow Dinosaurs! COBOL is hot!

Filed under: Mainframer makeovers — Codeasaurus Rex @ 1:17 pm
Job Title   Company   Location   Post Date  
Cobol/400 Developers
  Bitech International LLC
  India
  10/02/07
 
VAXCOBOL, VMS
  SixSigma Soft Solutions
  India
  10/02/07
 
Openings CICS,Cobol,DB2,JCL
  SixSigma Soft Solutions
  India
  10/02/07
 
Cobol/400 Developers
  Bitech International LLC
  India
  10/01/07
 
VAXCOBOL, VMS
  SixSigma Soft Solutions
  India
  10/01/07
 
Openings CICS,Cobol,DB2,JCL
  SixSigma Soft Solutions
  India
  10/01/07
 
VAXCOBOL, VMS
  SixSigma Soft Solutions
  India
  10/01/07
 
Openings CICS,Cobol,DB2,JCL
  SixSigma Soft Solutions
  India
  10/01/07
 
Tandem COBOL Developers for a Fortune 500, $4 bi
  Askexim Services Private Limited
  India
  10/01/07
 
Openings CICS,Cobol,DB2,JCL
  SixSigma Soft Solutions
  India
  30/09/0

from

http://www.zdnetasia.com/techjobs/0,39064747,42026788p,00.htm

September 8, 2007

What we used to call systems integration is just system administration nowadays

Filed under: General, Mainframer makeovers — Codeasaurus Rex @ 2:01 pm

This morning I was reading a book on an open source CMS (Content Management System) called Joomla (Rahmel, Dan. Beginning Joomla!: From Novice to Professional. Apress, 2007. ISBN 1590598482). Joomla is a framework into which you insert website content, and the framework manages things like layout, user management, content submission, pre-publishing review etc.

As I read the third chapter’s section on troubleshooting, the following statements really grabbed my attention:

  • The multiple programs employed by a Joomla site have to integrate properly and “play nice” for the CMS to function properly.
  • Because of the multiple technologies involved in Joomla, it can sometimes be extremely frustrating to track down the source of a problem.
  • Since Joomla requires essentially four different servers to work together in order to function correctly, you may run into a variety of problems during installation.

It suddenly hit me as these sank in that configuring a non-trivial website nowadays is really what we used to call systems integration, an honorable (and once lucrative) calling.

Let’s look at what’s involved:

  1. You need to configure a webserver: Apache is the industry favorite, and its complexity and flexibility easily surpass that of yesterday’s mainframe transaction processing monitors. If it’s your baby, you have to configure it; if a hosting service provides it, you still have to know how to adjust to their configuration of it, and maybe even add to their configuration to make your stuff work.
  2. You need a database: MySQL is the zero cost-of-entry favorite and powers a lot of commercial websites and enterprise systems. Installing and maintaining a database used to require a DBA, but now you’re the DBA even if a hosting service is involved.
  3. You need something better than a text editor and an HTML cheatsheet: even Dreamweaver and FrontPage are no longer sufficient to put up a website any more. Unless you’re going to spend the rest of your life manually updating site maps, links etc., you need a CMS like Joomla. Large companies used to spend hundreds of thousands of dollars on CMS systems comparable in power to Joomla, but now you download, configure and administer Joomla and similar software yourself.
  4. Joomla and many other modern web apps require PHP: PHP is an open source hypertext preprocessor that competes with Active Server Pages and Java Server Pages for the task of server-side, dynamic webpage generation. PHP cuts across three other systems, bridging Joomla and HTML to the database while executing as a web server plugin: if PHP ain’t happy, ain’t nobody happy. Who’s responsible for PHP configuration problems that cross web server, database and CMS lines? You.

I remember putting out a certain amount of effort in the early eighties getting my mind around a mainframe transaction monitor, its client/server architecture, SQL and a couple of programming languages. This stood me in good stead for about ten years, and then all hell broke loose:

  • Interfacing with client PCs using a potful of techniques and technologies ranging from serial cables through Ethernet either directly or through a variety of middleware
  • Open Systems (AKA “Interfacing with Unix”)
  • Furry little mammals (PCs) raiding the nests of the dinosaurs (mainframes) and making off with their applications and budget
  • Programming Language Du Jour
  • Programming Paradigm Du Jour
  • TCO (Total Cost of Ownership) Wars
  • Thin Clients
  • Death of Thin Clients
  • Resurrection of Thin Clients and the Second Coming of the Mainframe

But I digress…

Many of us had to develop systems integration skills during while interfacing big iron with other big iron, and then big iron with minis and PCs. What hit me just now is that the same skills apply to modern technology, except that instead of worrying about

  • RS-232 versus current loop connections,
  • number of data, parity and stop bits and how parity is handled,
  • SNA? Token Ring? Ethernet? And if Ethernet, what flavor? etc., and
  • strange little ad hoc data communication protocols,

now we can put away the wire strippers and adjust

  • httpd.conf,
  • php.ini, and
  • many other knots of configuration data.

The important point here is that the thought process is pretty much the same: you have multiple systems, each complex in itself, interacting and requiring exact configuration to interoperate successfully. Things don’t install, or they install and they don’t work and then you need the same simplify the problem, divide and conquer approaches that worked twenty or more years ago, only in a more abstract space of malleable configuration settings usually stored in editable text files.

An unsettling corollary of all this is that the kids that keep modern software systems up and running need to master a considerably greater wealth of detail than us old folks were ever called upon to learn. Whether modern systems are as reliable is another question (though not addressed here). They are, however, orders of magnitude more capable when they are up and running: I know, because I have had my hand in some for a few years now.

What makes it all work, however, are the online forums where people post their difficulties and usually encounter immediate aid and comfort: without these support networks, a lot of modern software installations would never quite work right, if at all. And because the forums archive their posts and responses, you often need only moderate skill in searching the web to find that somebody already ran into your problem and that someone else already provided the solution. You only need to post a query if your forum search didn’t find the answer.

In summary, the indispensable, highly-paid systems integration skills of yesterday are pretty much expected of the average system admin today. Even worse, the average developer may not get very far without a considerable mastery of the same material unless he or she has chosen to specialize. Specialization, however, is a dangerous strategy in a world strewn with the corpses of yesterday’s technologies du jour. I think Marshall McLuhan nailed it years ago when he predicted that we would end up as hunter-gatherers of information. Welcome to my world.

June 30, 2007

link: The Aging Mainframer, by Craig Mullins

Filed under: Mainframer makeovers — Codeasaurus Rex @ 10:28 am

http://www.db2portal.com/2005/12/aging-mainframer.html

June 24, 2007

The Mainframer, Retreaded

Filed under: Mainframer makeovers — Codeasaurus Rex @ 3:55 am

Another concern of this blog will be to share my experiences as a mainframer struggling to update his skills and remain relevant in the modern world.

Actually, the skills updating is not the hard part: the hard part is betting on the right horses. I recall numerous financial and knowledge investments in really cool software that I never recouped because they were either outmoded by hardware evolution or simply unable to get sufficient traction before I could profit from them. Here are some of them:

  • HyperPad from Brightbill-Roberts
  • the Paradox database from Borland
  • HyperCard from Apple (but boy, did I have fun with it for awhile)
  • the Vic Calliope (a 4/4 and 3/4 bass line + chord generator with variable tempo) from me (sold 1 copy on cassette tape, but had fun implementing it)
  • the SFDC (Shop Floor Data Collection) System on the Commodore 64 from me (no sales, the PC was already eclipsing 8-bit processing)

Eventually I wised up and started paying attention to the IT trade press and developer news, and refused to plow my time and dollars in products that didn’t promise to last long enough to provide some return on investment. Now I place a technology bet much as I would place a bet in the stock market, taking into account things like

  • Who’s backing it?
  • What’s the market for it, and what are its short, medium and long term prospects?
  • Do I have to learn a new paradigm, or is it just a novel repackaging of things I’ve dealt with before?

For example: I don’t know Java but I have noted that O’Reilly puts out many times more Java titles than it does C titles. I also got certified in administering the IBM WebSphere J2EE application and portal servers just to get an understanding of how Java enterprise apps are architected, though I’ve never written a Java program myself. If I ever snag a Java job, I expect to pick up the syntax and grok the class libraries without too much trouble because I’ve already encountered OOP on a Python project. I’m also keeping a wary eye on BPEL (Business Process Execution Language) because the kind of programming I’m used to doing may eventually just be an appendage of it.

Anyway, this retreading theme will figure prominently in the blog because it is important not only to me, but to other baby boomer friends of mine who will probably be working for another ten or fifteen years as well. We are mostly contractors, the migrant laborers of IT, following the crops from place to place and often separated from family.

Our situation is not unlike that of Tennyson’s Ulysses :


I cannot rest from travel: I will drink
Life to the lees: all times I have enjoyed
Greatly, have suffered greatly, both with those
That loved me, and alone; on shore, and when
Through scudding drifts the rainy Hyades
Vexed the dim sea: I am become a name;
For always roaming with a hungry heart
Much have I seen and known; cities of men
And manners, climates, councils, governments,
Myself not least, but honoured of them all;

I am part of all that I have met;
Yet all experience is an arch wherethrough
Gleams that untravelled world, whose margin fades
For ever and for ever when I move.
How dull it is to pause, to make an end,
To rust unburnished, not to shine in use!
As though to breathe were life. Life piled on life
Were all too little, and of one to me
Little remains: but every hour is saved
From that eternal silence, something more,
A bringer of new things; and vile it were
For some three suns to store and hoard myself,
And this grey spirit yearning in desire
To follow knowledge like a sinking star,
Beyond the utmost bound of human thought.

Powered by WordPress