Wrapping it up June 20, 2009
Posted by secondtimer in Computer programmer's memoirs.add a comment
That was about it for my programming career. I never knew I was a control freak until I got mixed up with computers, but I think that was what drew me to them: the thrill of typing in a few lines of code and watching the computer do what I told it. (Nothing else did.) Maybe I didn’t really realize that was the charm until Windows came along. I really hated having all that user-friendly graphic garbage between me and the machine. Going on the Net, at my boss’s insistence at work and my father’s at home, just made it worse–like being on the old experimental network multiplied. There wasn’t as much programming to be done any more anyway; so one day, I just quit. It took me a long time to get around to quitting for good–I’d quit a couple of times before, stayed away a year or two, and then come back; but this time, I wasn’t sure I’d ever want to do anything with a computer but use it as a typewriter. I hauled all my old computer books out to the storage room behind the carport and quit buying new ones; quit reading computer magazines and even catalogs. It was good riddance.
Looking back, I wonder that I stayed at it so long. If I had it to do over, I don’t think I would. On the other hand, if all the old magic of seeing code turn into action on the screen is gone–if my love affair with small computers is really over–why am I now, in retirement, taking a Web design course that requires me to blog about something on the side while trying to write valid XHTML?
Beats me.
Real-World Programming 101 June 19, 2009
Posted by secondtimer in Computer programmer's memoirs.add a comment
My first venture into on-the-job programming–other than maintaining programs other people wrote–was pretty much a fiasco. The boss told me he wanted an inventory program–I’m pretty sure he actually used the word “inventory”–but the two of us never got together on what an inventory program was supposed to do. Ithought I knew: our final project in Systems Analysis and Design was an inventory system. With my mind running happily ahead, I said, “Okay, we’ll probably have to put a terminal in the parts room so the guys in the shop can debit the parts they’ve used…”
I didn’t get any farther. There was to be no mention of a terminal anywhere in the shop area, nor any mention of the mechanics learning to keyboard. What the boss wanted was for the girls in the office to be able to enter all the parts shipments as they came in.
“But we won’t actually know what we have in the parts room unless somebody takes out the parts as they’re used,” I said.
No matter: the guys in the shop could look at the shelves and tell what was there. But then, what was the point of…
Mine not to reason why: I wrote something, and they used it for a while, but to what purpose, I never understood. I harbored uncharitable thoughts about my instructors, who didn’t make it nearly clear enough what management in the real world was like–although there was one who used to tell what he called “war stories” about his days as a mainframe programmer. After the inventory program debacle, I started writing my own to the head of the department, who had taught me in at least half the computer-related courses I’d taken. He never wrote back, but when I ran into him on campus, he always let me know he’d read about my adventures–and found them more entertaining than I did.
My next opportunity to shine as a programmer was a long time coming. The boss didn’t like the old transportation software, and the office manager didn’t like the old accounting program, which was written in BASIC, but furnished already compiled, without the source code, so there was relatively little I could do to change it, unless I wanted to violate that perennial license agreement thing about not decompiling, reverse engineering, disassembling, etc., and everything always had to be changed. It had finally come to me that what small business owners and managers wanted was to do everything exactly the way they had always done it, but on the computer, so they could brag about it to their friends. Sometimes the way they’d always done things wasn’t the best way, computer-wise. At any rate, the old accounting program and the old transportation software needed to go; given my experience with the inventory that wasn’t, I wasn’t as upset as I might have been that they didn’t let me write the replacements. Instead, we got a new set of consultants.
The entrepreneur in this one had actually worked for a trucking company and knew BASIC. He had written industry-specific software he wanted to sell us, but had decided dBAse would be a better choice of language, so he’d talked his accountant wife into learning it so she could redo the system in it. Being a startup operation, they were willing to do lots of customization, so she spent a good bit of time in my office for a while. (It was originally intended for a board room, I think, and there was plenty of room for both of us, as there was, later, for me and whole teams of auditors. The joy of having a room with a view was that I got to share it with anybody who came calling, including, occasionally, small children and Jack Russell terriers. I never really minded the Jack Russells.)
Before she left, our new outside programmer found us a new accounting package that could be bought module by module as we decided to implement it and could be had complete with source code–in dBase–so I could modify it. She recognized the need for this because she had to do one set of changes to the check stub before she got away. (She managed to talk the boss into getting a modem–about 8Kbps, I think–so she and I could communicate long distance and pass new bits of programming back and forth. The modem was a step up from the network, but barely.) Out of curiosity to see if she understood the boss any better than I did, I asked the office manager how he liked the check stubs after the first payroll run following the changes. He didn’t, of course–check stubs had been a constant irritation to him with the old system as well; but I didn’t really think he’d push the issue right away, so I’d been spending my free time on the job flow-charting the transportation software, which was sprawling and multi-faceted and multi-moduled, so I would know where to look when problems arose, as it was quite certain they would do. I hadn’t spent much time looking at the payroll program, except to see that it was written in a style I’d never seen used in dBase and that seemed a bit convoluted even for a bigger system than ours. I nodded over the boss’s expected dissatisfaction with the check stub, hardly even listening to the catalog of things he wanted on that weren’t and things he wanted off that were and things he wanted in a different order, and was heading for the stairs when the office manager stopped me dead in my tracks.
“And he wants it all adjusted to fit on the old payroll checks,” she said. “I told him you’d have it ready for next week’s run.”
Next week was a short week because there was a holiday tacked onto the weekend, and short weeks made getting the drivers, who were paid on commission and were sometimes late getting back with their paperwork, figured in time to have the checks ready to be signed before some of them headed out again. If I hadn’t been heavily enough involved in day-to-day operations to know that, maybe I’d have felt more confident of having time to do the changes; as it was, I spent the holiday weekend with the manual for the new payroll program and printouts for several modules of code, trying to understand the data-flow in and out of files, strings, variaables and data-type changes well enough to do what amounted to a complete rewrite of the module that printed the check stubs.
When I went in Tuesday morning, I had it pretty much under control; but I wasn’t happy about it. I had to cross boss’s everyday office–the messy one in the middle of everything–to get to the stairs to mine, and on impulse, I paused in the doorway and asked if he’d ever seen the code that print the check stubs. He hadn’t, of course, and didn’t much want to, rightly suspecting he wouldn’t know what he was looking at; but I showed him anyway: I let the end of the relevant printout drop to the floor in the doorway and unfold behind me as I walked across the room, past his desk and up the stairs.
I don’t know whose eyebrows went up higher, his or the office manager’s, but they started asking me how long a change would take before they decided when to implement it.
As big a job as the check stub was, it was still working on somebody else’s code instead of my own. When my one-and-only chance to do a fair-sized programming job from scratch came along, it was appropriate, considering I’d started my career by learning COBOL just as the IBM PC came out, that it would be re-inventing the wheel. The new accounting system didn’t suit, either. We Payroll and maybe Accounts Receivable, as we had used Payroll and maybe Accounts Payable in the old one, but to trust the main accounting tasks to a computer was very hard for the O.M., another bookkeeper before her elevation, to do. There were plenty of accounting systems available for desktops by now, but she didn’t like any of them I brought to her attention; still, the boss wanted his bookkeeping done by computer, so she was in a bind and tried to pass it on to me. Exasperated, I asked if I wrote an accounting program if she’d use it. You guessed it: for my crowning achievement as a programmer, I pulled out my old Accounting book and wrote a general ledger program. Whee!
The program I was proudest of, though, was a little shorty. Figuring the drivers’ Christmas bonuses was always crunchy, given all the criteria upon which parts of them were based and the boss’s tendency to sit on the data he was evaluating beforehand until the last minute. One year, he got the idea he wanted a program to make it easier on the girls in case he had to be out of the office at the critical moment. I knew this was a program nobody was ever going to use, because he not only wouldn’t trust it to figure just the way he would, he didn’t even really want anyone else to do the evaluating or checking the figuring. Still, it made him happy to think he wanted it, and it made me happy to write something exactly the way I wanted to, without benefit of forms, conventions or good sense, in the sense of what worked faster–case structures, which had never been as intuitive for me as good old “if…then” clauses. I used a lot of them, one inside the other–almost as many, in fact, as the interpreter was supposed to be able to handle. Of course the boss didn’t like it; he let it crunch the numbers only once, then redid it all himself with the help of the other girls; but I was pleased with it and showed the code to my old COBOL instructor–he of the war stories–and he allowed as how he’d never seen that many nested “if” clauses before–in a program that would run.
Offline–thank goodness! June 16, 2009
Posted by secondtimer in Computer programmer's memoirs.add a comment
The network continued to be a problem even with the boss and bossling on their best behavior. I thought it needed some code in the trip software to handle two of us trying to access the same file at the same time. The technical consultant seemed to think that was taken care of in the network setup; but if the downstairs secretary and I happened to need to enter trips at the same time, there were always hang-ups.
When we acquired a new “secretary”–this one, an office manager, whenever the boss thought to call her that to the rest of us–I was not particularly thrilled; in fact, I considered walking out as soon as I met her. A new layer of heavy-handed supervision between me and the boss was not something I felt a need of. I changed my mind about the O. M. because of the network. She was now the one who frowned over its problems and questioned me about reasons and solutions. I told her my theories and tried work-arounds, but nothing “worked around” every situation. Finally one day she gave me the perfect opportunity to say what I really thought: she asked me if there was anything I could do that would keep hang-ups over shared files from happening.
“Sure,” I said. “Take the network cards out, make separate copies of the software, separate the data files and use the Bernoulli box as storage for one computer and a hard drive for the other.” (I never counted the boss’s computer as anything but recreational.)
The office manager stared at me a few minutes, stared into space a few more, then went to talk to the boss. It had been long enough when she came back so I wasn’t quite sure what she was talking about when she said, “Do it!”
Oh, joy! She meant take out the network cards.
I had talked to someone who was supposed to be more knowledgeable about IBM PC’s than our consultants had apparently been and had asked if he’d heard of other problems using PC’s with the particular network we were using.
“There are no networks that work with PC’s yet,” he said emphatically. “IBM says so. They’re working on it, but…”
I never could decide how to feel about “our” consultants–whether to admire them for daring to try what Big Blue said couldn’t be done yet or be angry with them for saddling “us” (the company I worked for) with something even the consultants had trouble making work. (The differences between what the contract specified and what they had had to substitute to make things work at all told a story all their own.) At times, I even felt sorry for the consulting trio, considering that they had expected to set the network up, install the software, show the staff how things worked, and leave. I’m sure they hadn’t expected all the phone calls they got before I arrived–from people they could barely communicate with– or all the phone calls they got after I got there. I don’t think they knew how to feel about me, either. I made it harder for them to just walk away from a job they felt should have been over; but at least, I spoke their language.
The one thing I was really sure of, after dealing with the results of the trio’s consulting, was that I was very glad I hadn’t gone into being a computer consultant for small businesses myself. Of course , I wasn’t batting 1000 as a programmer, either; but we’ll talk about that next time.
Far from Jurassic Park… June 4, 2009
Posted by secondtimer in Computer programmer's memoirs.add a comment
I confess that I still don’t know the things real network administrators need to know to keep real networks running smoothly. I knew I didn’t know all I needed to when I became one–in fact, if not in name, since the boss thought of all the women in the office as secretaries. I did realize pretty quickly, though, that even given my ignorance of network basics, I was probably the best qualified person on site to deal with any problems.
The previous network administrator, a secretary who liked the idea of being “on computer,” had left abruptly (I always wondered if it was because being on computer wasn’t all she thought it was going to be), giving a few very specific instructions to the bookkeeper (also a secretary, to the boss), who was going to fill in until somebody more enthusiastic showed up. I found the instructions out a few at the time, as things came up. The one that took the cake involved the care and feeding of the Bernoulli box.
I suggested you think of the Bernoulii box as an external diskette drive, but our box had two drives, side by side instead of stacked, both sized for an older, larger diskette than the five-and-a-quarter-inch floppy. I think the size was about eight inches, but I never actually saw a floppy that big–just the tagboard pockets for them glued into the backs of the manuals for the accounting software we were, so far, using only one module of–the one that printed the paychecks. What one saw of what went into the drives in the Bernoulli box was only the rigid, rectangular black plastic case, called a “cartridge.” At the end that went in first, there was a little “door” (for want of a better word) which was caught by a mechanism inside the drive and pushed open to expose the floppy-like material inside to the read/write heads. When I discovered the disks the accounting package had come on were missing from the manual pockets and the only copy we had was on one of the cartridges, I decided backups were called for even of the parts we weren’t using yet. (Why were the diskettes missing? The consultants said we didn’t need them since the original server with big drives didn’t work out. True that we couldn’t have used them; but–we bought and were still planning to use the software, so who else had a right to them?)
When I started to label the new cartridge, I found there was a spot just the right size for the label that lacked the almost pebbly texture of the rest of the cartridge surface–clearly, a spot intended for the better sticking of labels. Just as I was about to put the label on, the bookkeeper gave a horrified gasp and stopped me. The previous administrator had told her never to stick anything on that spot or even leave finger marks on it because that was where the reading and writing was done. I just looked at her, showed her how the little door worked and stuck the label in the nice, shiny smooth spot. I’d never seen a Bernoulli box until that one, but common sense should tell you some things. The bookkeeper apparently decided that for herself at that moment, and didn’t burden me with advice from the previous administrator unless I asked.
As administrator of this network, my first duty of the day was to get the system up and running so the downstairs users could log on. (I was upstairs with the bookkeeper; the downstairs users were the secretary who had taken the previous administrator’s place, the boss himself and his little daughter, who liked to come in and sit in Daddy’s lap and help him play with the computer.) Once everything was humming along, I turned into a data entry clerk and input the trips (“we” were a transportation company) that had accumulated overnight. It didn’t do to get started on this too early, though, especially on rainy mornings or very cold ones, as the secretary from downstairs, who input the trips for a client who used us as their terminal, was subject to call me and emit frantic cries for help because her PC had come up in BASIC instead of DOS.
I think this was the normal boot-up sequence, but the consultants, who consisted of one each entrepreneur, programmer and hardware technician, had put on an autoexec file of batched DOS commands that brought the PC up in DOS instead and put a nice little framed menu on the screen over the DOS prompt so the user didn’t have to remember the commands to get to the two or three pieces of software we were actually using or any other DOS commands he or she might need, such as the one to format a diskette in a particular drive. I hadn’t though of Disk Operating System commands as a programming language before, but the first opportunities I had to program on the job were modifying those DOS “.bat” files.
To return to network administration, however: coming up in BASIC was considered a dreadful thing by the downstairs secretary because it put nothing much on the screen but an unfamiliar prompt. This is probably more than most users who’ve grown up with Windows can imagine. I once offered one of my old un-user friendly computers at a yard sale at a price the parents of a child who had been “using computers all the time at school” were overjoyred to see. They couldn’t wait to go home and get their young teen-aged son and let him see if he wouldn’t like to have this computer they could get so cheap, despite my cautions that it probably wouldn’t be what he wanted. When they came back with him, I turned on the computer, let it go through its little boot-up sequence, and then waved the boy toward the keyboard to try it out for himself. He just stood there and stared at the prompt and the otherwise blank screen and then gave me a bewildered look. Even people who’d been using computers for a while were subject to forget what to say to them. One place I temped, there was a really nice lady who kept forgetting how to get into her software. I finally made a little menu like the ones I’d modified so many times, using DOS commands and ASCII characters for the frame, so she could just type one number off the menu and the computer would do the rest. I got a job offer out of it, when the manager got back, but the place drove me a little nuts. The noise in my workspace was unbelievable when the printer was running, and when it wasn’t the mouth of the girl who shared the space was. Bact to that first real job and the network, though.
Eventually, when the pattern of “bad weather equals interrupted start-up of computers” had been officially recognized, we reached a point at which the people downstairs could be talked through re-booting on their own over the telephone; some even learned to get from BASIC to DOS by themselves. Subsequent computers were somewhat less sensitive to cold and humidity, but the problem never went away entirely because it was company policy not to leave anything in the office but the under-the-counter refrigerator running overnight, not even the heat or air conditioning. Usually, the boss got there early enough so we humans only had to keep on a sweater instead of a coat for the first couple of hours, but leaving the dust covers on the computers when they were on didn’t seem like a good idea.
More difficult to sort out was what was throwing the downstairs secretary’s computer offline at odd moments, usually when she had a lot of data entered, but not yet batch processed and saved, so that some of it was lost. I made lots of trips downstairs to see what could be salvaged and get her back online with the server and even did a certain amount of crawling around under desks and tables with a multimeter checking the resistance in the network connection boxes. (I had started taking a National Radio Institute correspondence course in computer electronics that was supposed to culminate in my building my own computer from the last lab kit. It was a Sanyo, more or less IBM-compatible, a newish thing, but only some assembly was required. For the time being, though, I was happy to be able to use some of my new tools.) I didn’t find out anything constructive about what was plaguing the network, though, no matter how many times I moved everybody out of the way so I could play technician.
Eventually, a pattern emerged without benefit of meters. The downstairs secretary’s PC got thrown off the network more often when the boss was in and even more when his little girl was there. She loved to see things come up on the screen, and the easiest way he’d found to entertain her was to log off the network, go to BASIC, run a little program that brought up a big clock face on screen, go back to DOS, log on…
Child-like, Baby Boss wanted to see it over and over again. One afternoon when I had already been downstairs two or three times for damage control, passing the two of them, whose voices floated in to the secretary and I, that it suddenly occurred to both of us what the problem was: every time the boss’s computer went offline and then back on again, the secretary’s computer got thrown off.
I wasn’t sure I understood enough of what I was reading about nodes and such in the network manual to be able to figure out a real network administrator’s solution, but the quick fix was perfectly obvious: I told the boss either get on and stay on, or get off and stay off–and acquired a not-altogether-deserved reputation for courage above and beyond. It’s easier to tell unpleasant truths to your employer if you aren’t quite sure the job is one you want to keep for long.
Dinosaurs OR Desktops June 1, 2009
Posted by secondtimer in Computer programmer's memoirs.add a comment
The computer lab for programming students–there was another, somewhere, for lesser folk–consisted of two adjoining rooms filled with long tables cobbled together from workstations. The tables in one room were completely lined with terminals connected to the computer downstairs–a much smaller and less isolated creature than the old UNIVAC, requiring only a row of tall cabinets against one wall of a modest-sized room, which, though still supposedly off-limits to unauthorized personnel, could often be viewed over a half-door which allowed people to hand things to the operator and catch glimpses of the computer at work. (Not much to see but a few lights flashing.) The tables in the other room of the lab were divided between more networked terminals for COBOL and RPG and fresstanding TRS-80’s, which were used for BASIC, Assembler and Pascal. I was constantly back and forth between them. I loved COBOL and the sort of programs we were being taught to write in it, but I preferred working on the freestanding desktops.
COBOL–Common Business Oriented Language, if I’m remembering correctly–was a major step up from the machine-specific assembler languages my old math-whiz pal was using, but it was still designed for the way things were: big computers, big files containing big amounts of data to be processed for big companies who could afford to have a systems analyst to do much of the preliminary design, programmers to write the code (though we were being taught to do our own analysis and flow-charting) and, if the programmers were lucky, yet others to do the testing and debugging we were doing ourselves. Once the program was perfect–the ideal, of course, was for it to be so carefully thought out in advance and so perfectly coded that it would run without hitches the first time, since hitches on big computers were time-wasting and expensive–an operator would load the program when it was needed, be sure the files it used were updated, choose the process desired off the menu, if any, and the program would run itself, top down, drop through, without human intervention for, sometimes, quite a while, before sending any required reports to the printer.
Nobody knew for sure what change desktops were going to make, if they caught on with businesses, as it was thought they might do, since IBM had entered the field. The hobby/home use sort could be adequately handled with BASIC, which came built-in on most models, and there were beginning to be a few serious programs available for specific small computers. (These were the days when there was enough difference in the operating systems as well as the processors so that a program written for one model couldn’t be expected to run on another without porting–revision by programmers for the desired platform.) Some enterprising souls were coming out with cut-down versions of COBOL and other languages for desktops, but it was simply too early to know how things would go.
A part of me wanted to be a part of the new thing, to be an independent consultant for small businesses whose staff and management knew nothing about computers and couldn’t afford big ones, to help them ease into the computer age. A part of me wanted to work for a big company and write COBOL programs. When I reached the stage of applying for jobs, it turned out the choice wasn’t necessarily mine to make.
It really seemd to bug prospective employers that I had an M.A. in English and was going to come out of the community college with just a two-year degree in programming. Some wanted to hire me to write documentation–a laughable job, these days, if you’re thinking of the offline kind; but back then, every computer and every piece of packaged software worth its salt came with a good-sized manual, written by native speakers in actual words instead of a series of little pictures. It was probably the plethora of reading material that led to the oft-stated “Programmer’s Motto”: If all else fails, read the manual. I certainly didn’t want to write manuals, even though I found some of them helpful to look things up in, to begin with.
If they didn’t try to steer me toward technical writing, big company interviewers could always come up with some Catch 22 in the hiring guidelines. There was one guy who seemed particularly interested in my insurance background who said he couldn’t hire me as a programmer because I had only a two-year degree in programming. (Things had changed a lot since my old pal graduated; nobody minded, back then, what the degree was in.) There was another route, this interviewer said: people hired as computer operators, who were only required to have a two-year degree, could be promoted from within to programmers. Just as I began to get my hopes up, he looked back at my application and said, oh, sorry, he couldn’t hire me as computer operator because I had a four-year degree (actually, five, counting the master’s) and the guidelines said people with more than two years of training tended to get impatient stuck as operators. I pointed out that my four-year degree had nothing to do with computers, but he said guidelines were guidelines.
In order to get some sort of experience working with computers, I took a variety of part-time/temporary jobs, the latter mostly data entry, though, mercifully, not on key-punch machines, which were on their way out. In two of these jobs, the computers were 70 or 80 miles away from the terminals and shared with other equally distant input locations. The time spent in the break room waiting for the system to unclog on busy days made me think favorably of desktop computers and small businesses again.
When I saw an ad in the paper from a bigger nearby town for a COBOL programmer, I sent off a letter of application anyway and was surprised to get a call for an interview almost at once; but the location for the interview gave me pause. The town in question was the one I’d gone to college in and the location for the interview was a table in a bakery notorius for being the center of the counterculture that ranged along a street a block or so from campus. I looked at my navy blue suit, the sort we’d been told we’d want to wear in the unlikely event we interviewed with IBM, thought about all the aging hippies, Beatniks, flower children and couldn’t quite see it. Still, an interview was an interview, and one wanted to look businesslike. In the end, because it was the dead of an unusually ice-and-snow-ridden winter and quite cold for the sunny South, I chose a heavy red wool suit I’d bought for an office Christmas party and tried to sound breezy rather than self-conscious when I explained my choice to the interviewer–who wasn’t all that dressed up. I blame that red suit, and maybe the breeziness, for what happened later.
At the interview, over coffee and pastries, things went pretty well. It turned out that interviewer was the head of a small software company he ran from the house he shared with his boyfriend, and he really wasn’t looking to hire a programmer, he just wanted one to subcontract for him on an extensive set of revisions to a program he’d done several years before and didn’t have time for now because of new jobs he had started. Subcontracting sounded good to me, so we agreed on the details, and I went home to wait for his call to come get the materials. When the call came, it was a bummer: he had lost the contract for the work, so there was nothing for me to do, as a subcontractor. He wanted to hire me, anyway, though–as a sales rep for his burgeoning business. That’s what I blame on the suit and breeziness. Only somebody who was even less of a glad-handing people person than I am, though, could possibly have mistaken me for sales rep material.
It was my own doubts about that side of my character that held me back from going the independent consultant route. It’s just possible that, inexperienced or not, I might have been able to handle the preliminary analysis, the hardware selections, the software planning and coding and testing; but there was no way in the world I could ever have sold anybody on my plan over someone else’s. When the few small business owners I talked to, just feeling things out, began to waffle around about what this friend’s consultant said, and what hardware that rival’s consultant got him, my natural instinct was to say, “Fine. Get one of them to set you up. If you can’t decide for yourself or trust my judgment, I’m not your girl.”
Finally, I decided it was time to get a job whether it was what I wanted or not–and found one the way I’d found the ones I’d liked best before: somebody I knew knew somebody who needed office help and said why didn’t I go check it out. I did, and after a frank talk with the boss–I told him I still had some applications out for programming jobs, and if I was offered one, I’d take it on a minimum notice–I got the job. As I discovered later, he was always optimistic about his pet projects: if he needed somebody who knew something about computers, even if he didn’t know what to call the sort of work he needed them to do, he expected somebody to appear–and I had. He had already been “consulted” into buying a whole little network consisting of three IBM PC’s, a Bernoulli box (think of it as an oversized external drive), assorted printers and software and the network cables, boxes and cards.
It was a week or so before I found out how I was going to fit into this. Whether I liked it or not, I was about to become network administrator.
Dinosaurs to Desktops May 29, 2009
Posted by secondtimer in Computer programmer's memoirs.add a comment
Computers weren’t even on my radar when I finished high school in 1961. The first inkling I had that they might have anything at all to do with me came with a notice from the university I was headed for in the fall that the computer would be doing roommate assignments for new students. If there was any doubt in anyone’s mind that all computers understood was numbers, it was dissipated when we arrived on campus. There wasn’t a pair of computer-matched roommates on East (the women’s campus) who couldn’t wear each other’s clothes quite comfortably. Apparently, the only numbers the computer found to match us up by were heights and weights. (Maybe they didn’t want the key-punch girls to know our College Board scores.)
My best friend was a math whiz who spent time in the computer lab and went straight from college into mainframe programming. It distanced us a little, since I was usually either majoring in a people language, like French or English, or in one of the social sciences and didn’t understand one word she said about her new obsession.
I didn’t even have any curiosity to find out more about computers until I started work on my first job, as secretary to the assistant to the president of a retail variety store chain. The president’s office was downtown over the Number One store; my boss’s office–which had my desk in it–was at the accounting office that stretched across the whole long front of the warehouse. I found out pretty quickly why my boss was there: he needed to referee between the head of computer operations and the comptroller.
Hand-delivering things to the head computer honcho took me past the key-punch machines (where I discovered what they did with the little cards like the drop-add ones we had in college) and sometimes almost to the door at the far end that was always closed. Behind it was the room where the UNIVAC lived in splendid, dust-free, heat and moisture-controlled isolation, and only the superprivileged, of whom I was not one, ever got to go in to see it. There were, however, some at least fairly privileged people who had desks in a little enclosure right outside it. They were programmers, a different breed, and they did not mingle with the rest of us.
I suppose the seed of wanting to be one was sown right there, but I might have forgotten all about it if I hadn’t changed jobs so much. Even then, it took me nearly 20 years to get around to doing anything that brought me into closer contact with computers.
I had been a CPA’s receptionist and a clerk-typist in a government office, gone back and finished college (this was the 60’s, remember; we were supposed to wander around), worked for a newspaper, gone to graduate school for a year, done some substitute teaching and worked for an insurance agency; then I found my way back to the same newspaper in a new building with computerized typesetting instead of the old linotype machines. The newsroom was only half-computerized at the time: the smart terminals were there, but nobody had been taught to use them yet and they weren’t networked with each other or the typesetter. Disks–the five-and-a-quarter-inch size–had to be carried manually from one terminal to another and to the reader attached to the typesetter, once someone from the company came to train us with voluminous manuals. I caught on quicker than the editor and was inordinately pleased to have my terminal tamed enough to spit out my byline at a single keystroke while he was still having trouble with his.
When I left the paper and went back to the insurance agency, the owners began talking about the possibility of getting a desktop that could run the new software some of the companies the agency represented were pushing. Nobody there knew much about computers, but a couple of us decided to take some night course. The best the local community college had to offer for beginners was BASIC, the programming language used most on desktops, which were still new. My mother came along because the bank she worked for was beginning to think about computers (not yet to replace bookkeeping machines, but to communicate with the Fed), and my aunt came, too, because she was having to learn to use a computer at the automobile dealership where she worked. The course wasn’t much good to either of them, as the terminal the auto manufacturer furnished the dealership wasn’t a TRS-80, like the ones in the computer lab, and the one the bank bought was an Apple. I fell in love, though.
I think it was the same year the IBM PC came out that I enrolled as a degree student and started learning COBOL.