The History Of (My) Coding – Part 6 Birdies And Bugs

After three contracts travelling to Leeds, Chester and Oldham, it was a welcome change to head back to the easily commutable Manchester city centre…

By Spring 1996 the fashion retailer had ditched Mantis. The 4GL that worked particularly well with the hierarchical database Supra was causing all sorts of problems. Performance, record locks, unfamiliarity; it had to go. They decided to engage a ‘specialist’ company to do this, but what this specialist actually did was to create some rules to convert every single line of code from Mantis to its equivalent in COBOL. The resulting COBOL was a mess. Thousands of unnecessary instructions, many of them executed countless times each, because that is what Mantis did. Mantis had very different concepts to COBOL, and a literal conversion such as this is rarely a good idea. The problem was made worse because there was no one at the retailer who really understood COBOL, and so could verify that they were in fact signing off on a coding disaster. There were the folks who did Gen, a COBOL code generator previously known as IEF and subsequently CA-Gen and AdvantageGen, but they were kept in a separate office, presumably for fear of cross-contamination! Anyway, it got signed off, it went into production, and it remained unchanged except for dire emergencies, as no one wanted to touch it.

However, all was not lost. I returned and was set to work with one of the Mantis contractors from six years earlier. We weren’t touching the converted Mantis, instead we were writing a whole new batch suite to control the parcel sorting process. This involved two sorters, one hundred and sixty chutes split into front and back, and thousands of parcels per hour. Getting it to work was the easy part. Getting it to work efficiently, so that each packer had the right number and weight of parcels that were all going to the same geographical area, was a problem. Sometimes things had to be varied, for instance if a packer was off or even a whole side of the sorter was down for maintenance. Tweaks were not easy in production, no one knew what would happen. So, I decided that the best option was to extract it from the mainframe and run it on the PC, using Microfocus COBOL. By this time there were five installations of Microfocus COBOL, and I commandeered one of them. At that stage running the whole thing on the PC proved to be over ambitious, so we ran it in a test environment and downloaded the results to the PC. I could then run it through my analysis process that displayed in 16 glorious colours the time allocated to each packer, and how much above or below their standard six minutes they were after each batch. It was a great success, and the next stage was to take it all down to the PC.

My colleague and I proved to be really productive as contractors, especially compared to some of the others who struggled with the ageing technology. Friday afternoons became something of a write-off as we ventured further and further afield across Manchester in search of beer and sandwiches. Sometimes we returned around 3 o clock, sometimes we didn’t bother. On one particular occasion we walked about two miles, had shark sandwiches, and just carried on into the evening.

Microfocus COBOL has some great features. It is unsurpassed in terms of debugging, and its ability to compile using different versions was a great help in moving our sortation process to the PC. We had just about finished it when we received the bad news. All contractors would be terminated with one month’s notice. It was disappointing, but not a surprise. It had been another fifteen month journey that I had survived, understanding more about IT (and how not to do migrations) than I did before. I found another contract within a couple of days, and I asked if I could leave early. The response was somewhat surprising in that the hiring manager had never really intended for myself and my colleague to leave, it was the others that they needed to get rid of. It was too late, and I was on my way to a stockbroker in the heart of leafy Cheshire.

The stockbroker’s was a great working environment. About a dozen coders in an office, mainframe on one side and other stuff across the divide. We didn’t seem to actually do much for a quite a while, though my knowledge of Mailsort came in handy as the post office changed their rules. There were social occasions, discussions about football, a girl who brought breakfast round every morning and who was nicknamed ‘Trolley Spice’, but very little actual work. There was some interesting development going on, just not on the mainframe side. The boys across the divide had coded an automated system whereby you could ping the markets every five minutes or so and get the latest price on up to five stocks. You could also manually ping the stocks through the application more frequently. We all set up our portfolios (it was the dot com boom and Pacific Media was the darling of the tech stocks) and watched the tool in action. Occasionally, when we got close to wanting to sell, we pinged the market more frequently. Unfortunately, what we didn’t realise was that all of these pings were relayed to the market makers, giving them the impression that certain stocks were more popular than they actually were. Now, I’m not saying that we actually influenced share prices, but I’m not saying we didn’t either!

The head office of the stockbroker was in Glasgow, and we were invited up for their Christmas party. The hiring manager was already up there, so we were to travel on the train. He gave us strict instructions not to get drunk on the way up. Bad advice. When we got there it was late afternoon, and our Scottish colleagues were already dancing on the tables. We struggled to catch up! They decided to integrate the Cheshire office with the Scottish staff, and one minute I was talking to a very drunk Scottish lady, then the next she was under the table throwing up in a bucket. It was a classy affair.

Another thing that passed the time was golf. The hiring manager was obsessed with it, and most of the other developers played too. I joined in, and very soon we were playing every Monday and Friday afternoon, as well as several lunchtimes. I got a bit better than mediocre, but it wasn’t doing my bank balance any good, then along came possibly the most lucrative project in my career to that point, Y2K! The millennium bug. The threat of planes falling out of the sky, banks not being able to dispense cash, and computers everywhere ceasing to function certainly focused a few minds. Everything must be tested. We must move the clocks beyond midnight on 31st December 1999 and see what happens. And we must prove that we have done it. I did a heck of a lot of software testing for Y2K, and made one or two very minor tweaks to programs that stored the date in six digits instead of eight. Of course, these were quick fixes – with many organisations choosing to shift the problem rather than to cure it. Basically the logic went something like this…

If the year is 50 or above the century must be 19, otherwise the century must be 20. Look out for a new millennium bug in 2049.

However, who was I to question this fully bankrolled project that was going to keep us all safe in our beds? What really racked up the overtime was the audit process. The heavily regulated stockbroker had to prove their due diligence, so every test had to be documented to death. This went on for months, and we eventually realised it was all a pointless exercise. Towards the end, when we were running out of time, one particular suite had not been tested. It was just a few reports and a file extract, so we got a printout from live and I painstakingly went through a printout of the file extract, highlighting everything that looked remotely like a date. The purpose of this? Just to show that we had looked at everything!

One of the advantages of contracting is that you can choose your contract breaks. The stockbroker wanted me to stay, so I agreed to renew, but I wanted five weeks off. Yes, FIVE weeks. I went to Antigua for two weeks, then flew to Florida to meet my mum and daughter for another two, and finally spent a few days in Miami before returning home. The following Monday I sat at my desk like I had never been away. The aftermath of Y2K was tedium. There was still nothing to do, and once again I heard that the fashion retailer were in need of my help. So, after three years with the stockbroker, I reluctantly said goodbye to my golfing buddies in Cheshire and returned to Manchester.

Leave a Reply

Your email address will not be published. Required fields are marked *