By: Clay Shannon
Abstract: Liz Albin talks about writing a compiler in Fortran, being raised by commie pinko leftist academics, political science at the Fashion Institute of Technology, Aikido, Joe McCarthy, John Muir, C++, and why she doesn't like Star Trek.
Liz, you are (seemingly) a ubiquitous presence on the Borland newsgroups. On a typical day, how early in the morning do you first check the groups, and how late for the last time?
Almost. (Of the newsgroups to which I'm subscribed)
How many messages do you send per day on average?
Gulp. Check with Eric Johnson :)
How many Borland newsgroup denizens do you know personally?
If you mean "Met At All" well, any one who was at TeamB picnic in 2001 - so that's Rudy, Ralph, Deborah, Mike Oriss, Dave Oriss, Woody, John McGrath, Joi .... etc.
Plus Jeff Rhodes, Lesley Ann. If you mean "Made an effort to involve to make into a friend" then, Vik, Eliza, Guido, Rob Claffie, Mart, Mark Lauter, Ken Camargo.
But, anyone from the newsgroups who wishes to come to NYC, or to have me as a house guest as part of my aikido travels --
Are they as strange in person as they seem on the newsgroups? <g>
No comment -- and anyway, I'm weirder.
Are there any other newsgroups you prowl besides Borland's?
Yes. I prowl chronic pain and lurk in comp.lang.c++
In a preliminary email to me, you said that you were born and raised in New York by commie pinko leftist academics. Assuming you are at least partially serious about that (other people view them that way, that is), did they have a tough time during the McCarthy era?
Yes I'm serious, and no they didn't -- they're too young for that. My father was born in 1934, and my mother in 1936. He taught at NYU and then, when John Cammett (who is an authority on Antonia Gramsci, the Italian communist) was transforming John Jay College of Criminal Justice from the police academy to a real college, he headed the economics department there. The joke at the time was that to be hired at John Jay, all you needed was leftwing politics and good game of tennis. Daddy had both. He had a stroke 11 years ago and is incapacitated now. My mother taught (and still teaches) political science at the Fashion Institute of Technology. As FIT is part of the state university system, it has to have an academic side. I couldn't make this up.
BTW, on behalf of all the freedom-loving citizens of Wisconsin, I would like to apologize for that, ahem, character (McCarthy)--who was also, dagnab it, an Irishman. What a disgrace...
Well, at least he wasn't really a tail gunner :)
John Muir lived in Wisconsin, too, for a time, but unfortunately Wisconsin is probably better known for McCarthy.
I hadn't known about Muir. But I'm not surprised. My mother tried to push me to go to school at Madison.
You wrote a compiler. Tell us about that, and are you still a compiler writer?
Citbank had hired Transaction Technologies Incorporated to create their ATMs (this was in the late 1970s). I knew the guy who was contracted to design the language TTI used for simulating machines to be added to the ATMs they already had. By "machines" I mean: drums that hold money, keypads, card swiping machines, card holding machines, screens, printers (for receipts). We'd define the sorts of things a generic "machine" could do, and then set up a syntax for defining characteristics and actions (er... data and methods). I didn't do the language definition (I was a 20 year old twit, what do you expect?) but I wrote the code for the compiler commands (for actions and definitions). The first cut, was in fortran (don't ask) on some DG thing -- probably a MicroNova. The second cut was in PL/M and 8080 assembler on an 8080 PC. From Intel.
Then the company went out of business, owing me 2 months salary, so I got a job writing code for Citibank, in one of their international consumer divisions.
You have worked for many brokerage houses in NYC. What is the corporate culture like in that industry--does it differ much from company to company?
It varies a bit, but as a general rule the people are quite nice. One of the best things about working on Wall Street, by which I mean working in financial services in NY, is that people accept that you value yourself. You' d think this means they're all mercenary idiots -- but it doesn't. It means they don't ever resent it if you leave a job (particularly for money); or if you tell people that your time is worth a lot to you. They may not accept your valuation (they wouldn't do what you do, perhaps) but if you have the guts to say what you want, people don't bother you a lot. It's quite helpful to know that, you stop being quite so scared.
There are exceptions. I can think of two brokerages where the entire staff is treated as if they've been bought. That's fine for those who have very high bonuses, but the bulk of the IT staff never fit in that category. (I didn't work at either place, but I've known a lot of people who've quit both for just this reason)
You are a practictioner of aikido. I though an aikido was a white furry dog. Fill me in.
Hah! You're thinking of Akitas - and I had two of them. (Actually the white dogs are Samoyeds. Akitas can be any color) Aikido, like Judo, is a jujutsu derivative. It's the martial art Steven Seagal does. What it looks like is semi-dangerous dance. Elizabeth Lynn, the science fiction writer, used aikido as the basis of the art in her Towers novels. It gets a lot of mention in SF and fantasy. The funny thing is that it's quite concrete and technical.
So the guy who wrote "Love Story" does Aikido too? Sorry, just joking...
You wrote to me "Unlike most computer geeks, I don't read a lot of science fiction or fantasy." What do you think it is about "geeks" that attracts them to sci-fi? (BTW, you burst my bubble with that statement, because I always used to say that I was the only programmer in the world who didn't like science fiction--well, I did like "Fantastic Voyage" by Isaac Asimov).
A lot of sci-fi has computers in it. Ok, more seriously, sci-fi seems aimed at outsider adolescents. It's written for adults, but a smart kid (and all of us were smart kids right?) can understand it.
Like a mystery novel, a sci-fi novel gives the reader a complete world where the problems are relatively tidy. The world will end, or the government will fall apart, or a species will die -- but the actual problems that we face in life, like joblessness, and dying relatives, and no love even though we are special (or whatever your fear is) are rarely part of the mix. I stopped reading it because I prefer a different sort of artificiality these days. (Thrillers mostly)
Does that mean you don't like Star Trek (I admit I'm a heretic--those flabby guys who were always too lazy to get out of their pajamas irritated me to no end)?
It means I don't like Star Trek. But, it's important to note that I have terrible TV reception, so that practically speaking I haven't watched TV in more than 10 years.
Actually what always bothered me in Star Trek is that they were in shoes all the time. And, even though it's a joke, I found it very hard to believe that the only job open to a black woman in the 24th century was receptionist.
Do you still live in NYC? Have you ever lived anywhere else?
I live in NYC. I went to school in New Haven Ct. As a kid we lived in Cambridge (England) for a year and a half, and in Berkeley for another year. I spent summers in Connecticut, and on the beach in the Hamptons. Ooops doesn't sound so commie pinko does it? Yes, it was a bourgeois upbringing.
How did you get started in programming (How were you introduced to it, when did you realize you wanted to pursue it as a profession)?
My father, who is a very odd economist, was programming simulations in FORTRAN in the mid-1960s (or earlier), he liked programming and was fairly good at it. I think like him, so I took a course in college.
At some point in an astronomy class, we were supposed to graph our homework. It wouldn't have taken more than half an hour to draw the graph, but instead I wrote a lousy FORTRAN program to accept the data, and plot the points. Took me 6 hours. However, it was something I'd created from scratch and was quite proud of. That's when I knew I was probably not totally unsuited.
A year or so later, I more or less flipped out, and decided I had to support myself. I was damned if I'd wait tables again or do something secretarial -- so I got a job writing that compiler.
How many years experience do you have as a programmer? What was your career path to where you are now?
I'm not really sure! I started working in 1980 or so. but I took a lot of time off, plus spent a year or two as a tech writer for (UBS) Union Bank of Switzerland. (That was a disaster). Mostly, I wanted to stay in New York, which meant I wrote quite mundane stuff. So I got a job writing for TTI, then another at Citibank. Then back to school for a bit, then at a consultant firm. Then a year off to putter... then at American Express... Do you get the idea? I didn't work seriously between 1982 and 1986, and then I puttered between 1991 and 1993, After 1996 though I appeared to be earmarked for brokerages. My current employer is a financial printer. I took the job because I liked the people enormously. They were interesting, intelligent, and really bound up with the idea of creating new business for the firm.
What tool[s] did you use prior to Borland C++ Builder (you are a BCB coder, right)?
Er tools? EMACS? Um... Visual Studio? I'm not quite sure what you mean by this
Yes -- I write in BCB.
What languages do you know besides Borland C++ Builder? Which ones do you currently utilize?
FORTRAN, COBOL (briefly, I wrote an ISAM editor), a few proprietary databases (ADMINS springs to mind), C, BASIC. VAX Macro Assembler, 8080 assembler APL (a very long time ago), Delphi (whe). For this job what I've done has been C/C++ and VB and AWK. A lot of AWK.
Would you recommend a career in programming to young people today?
Yes, if they wanted to. But I'm constantly surprised by how many people seem temperamentally unsuited to it.
What courses would you recommend they take? What languages/technologies should they key on?
One of the earliest courses (the second) I took, had an interesting approach. In a semester you wrote an APL interpreter in APL, a Pascal interpreter in Pascal, a four function calculator in assembley language. The good thing was that you did quite a bit, not very deeply of course, and saw three different types of languages. I think that versatility would be helpful to many people.
But in terms of being good or productive programmers, possibly the best lesson people can learn is to use other peoples' code. I'm not sure what classes teach that, and any language would be suitable.
Which software project/product that you have participated in are you most proud of?
Broker's Edge 4.0. Merrill Lynch had a suite of productivity tools for brokers. My coworker and I completely redesigned and reworked them. What I was pleased with was the character based windowing system that the programs required, which I designed. It took a lot out of me (this was in 1985)
I did a small error tracking database for one of our clients two years ago. It was moderately clever, and meant that we didn't have to write a few programs, because all we had to do was set up the Access database.
What project[s] are you currently working on?
Some very dull 401K reporting projects. Sigh.
What is the name of your business and/or employer?
Bowne & Co.
What is your web site URL?
If you had a webcam on your shoulder throughout a "typical" workday, can you give us an outline of what we would see ?
liz on exercise equipment
liz on PC at home
liz on PC at work
liz on phone about work survey
liz on phone with client
liz looks at newsgroups again
liz's mother calls
more email about the requirements we can't meet.
more email from liz's mother
liz goes back to newsgroups
more email about how it will in fact take me 8 hours, counting testing if you'll give me a file layout.
liz goes back to the newsgroups
liz gets yet another call from her boss this one asking if the ... software has arrived (how would I know, it's addressed to him)
liz calls the "technology" guys to ask why they haven't installed the .... software
liz goes back to the newsgroups
liz writes a small awk script to reformat client data
liz at dojo
liz at dinner with friends
liz on PC at home or liz on couch reading
What do you do when you're not involved with work, directly or tangentially? (Hobbies? Sports?)
Aikido. I train every day (except when my back is out). Even if it's only one class, I practice with weapons or just think about it when I'm at home. Otherwise, I read.
What was the funniest experience you've ever had related to programming?
A friend from Merrill Lynch called me two years ago to ask about some code we'd written in oh- it must have been 1988 or so, because one of the company's top brokers was still using the program.
To put this in perspective: the programming suite was "replaced" by the broker's workstation in 1992. The friend I'm referring to hasn't been at ML since 2001, I haven't been there since 1991. And yet, the broker still calls him and he still calls me :)
What was the most interesting experience you've ever had related to programming?
My favorite bug. I wasn't getting the right results. I was tracing carefully through but the code was clearly doing the wrong thing, The value was one, and yet on a test against 0, it was taking the True branch. I was using a system routine for IO and I passed it a 1 as a parameters. Turns out that this parameter was changed by the routine. This was FORTRAN. The constant number 1 was actually a memory location. The value in that location was being set to 0 by this function.
Ok, I really learned the difference between call by reference and call by value.
What was the most frustrating experience you've ever had related to programming?
Not figuring out how to write an extension for Word. Oh I hated that! I was trying to learn C++, and had decided that a nice small project would be to write a template manager for MS Word. Don't ask why I wanted to. I must have been drunk or something. Two months later I had a better idea of C++ but the template manager had constant AVs. That year the only money I made came from writing research reports on wireless companies for an acquaintance who was a stock analyst.
No, maybe working for Motorola's HR department was the most frustrating. I was a consultant, and I got them the prototype in record time and they loved me. Then came the real project. No real specs. I didn't know how to tell them I was stuck, I didn't really know how to tell my agent in NY either.
"I learned a lot from that". Mostly what it feels like to completely screw something up.
Aha! That's a good column idea for a programming journal: "I learned about programming from that". The guest columnist could write about some bad mistake he made and how its dire consequences (or close shave) taught him to never make the same mistake again.
What 3rd party tools do you find essential?
What do you hope to see from Borland, especially as regards Borland C++ Builder, in the future?
I hope it's not gone! Seriously, it's not Borland's biggest seller, yet it's a much cleaner compiler than VC. What I want is more compliance to the standard and fewer bugs in the IDE.
Where would you be without C++ Builder?
Doing VC code probably. Less happily, because I'd have convinced myself that the world should adapt to VC 5.
Where would C++ Builder be without you?
Exactly where it is. I'm a developer. I love the product but I haven't been instrumental in it's creation,
Where would you be without Borland?
Less happy. I've liked products like Sidekick for example, and that's why I took a chance and got Borlands C++ compiler. It's where I started
Where would Borland be without you?
Where it is now.
What effect do you foresee C# and VisualStudio.NET having on Borland in general and Delphi in particular?
Long term Borland may drop Delphi. I hope not. Certainly it's preferable to VB.
What do you think of the .NET framework and the C# programming language?
Not enough. I haven't played enough to give an intelligent (or even funny) answer.
What effect do you think the .NET framework will have on C and C++ (since not all of the C and C++ "features" are supported by the .NET framework)?
Long term... very little. Ultimately I believe that .NET will add the functionality it's missing. Short term, a lot of people will believe that .NET is C++. Perhaps most of the C++ work will move off of the windows platform?
How many hours per day do you spend programming/at the computer?
8 - 10 minimum, but realistically, I don't work more than 3 months per year.
Which programming web sites do you have bookmarked?
Yikes : Rudy's, Howard Howe's, c++ faq lite, joel on software
How do you keep current with your programming skills?
Reading. Trying stuff out for friends. Basically, by doing. Actually, I don't know that I do.
Do you think programming is an art, a science, a craft, or...?
At my level, which is probably journeyman, a craft. It takes work and a knack. At a truely high level -- which I haven't achieved, it's an art. Perceiving new ways of approaching problems is not skill, it's art.
Which Borland Conferences have you attended?
None. I have no money :)
Who do you consider to be the best programmer you know personally, or know of?
A guy named Jim Barclay, because he was inspiring to others as well as capable of really odd ideas.
What is your "claim to fame" outside the realm of programming?
4th dan in aikido.
If you weren't a programmer, what do you think you'd be doing for a living?
Teaching history, or maybe aikido.
If you could live anywhere on earth at any time, when and where would it be, and why?
It would be now. The where would be any place in the industrialized west or possibly Japan. It's difficult for me to believe that I would be a great lord or lady in the past, and the life of a peasant doesn't appeal. Moreover, I have a hard time projecting a really different me into the past -- and I'd have been dead before I was 10 without antibiotics and surgery. The realization of this changed my perception of the past. (I had appendicitis at 8, I was told later that it was just short of a rupture. Peritonitis killed in the past)
If you were given 30 seconds of free television air time, to be broadcast all throughout the earth, and could say anything you wanted, what would it be?
Read a book. Preferably by Madison Smartt Bell.
What is your favorite programming book?
Design Patterns (well, it's computer related)
What is your favorite non-programming book?
Probably Soldier's Joy by Madison Smartt Bell or Not in Our Genes by RC Lewontin Steven Rose & Leon J. Kamin.
What is your favorite quote?
"Against stupidity the gods themselves struggle in vain." (Schiller)
"It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife." (Austen)
What is your favorite food?
Varies enormously. Possibly salmon, possibly duck b'stilla, quite likely spinach. Although shrimp fried rice is pretty darn good.
What is your favorite beverage?
What is your favorite color?
What is your favorite movie?
Hmmm. Right now: Dead Again
What is your favorite song?
right now: Uno lo mio y lo tuyo (Aterciopelados)
Or: Madamina (Mozart, from Don Giovanni)
Who is your favorite musician or musical group?
Dawn Penn? Norah Jones? Aterciopelados? The New Deal?
I don't know
What is your favorite line from "The Princess Bride" (unofficial movie of the Borland community)?
"Hello My name is Inigo Montoya. You killed my father, prepare to die."
Finally, the question I always like to ask: What would you rather eat: the fat from behind a caribou's eyeball, or a frosted poptart?
The fat from behind a caribou's eyeball -- but only because I don't like sweets.
This interview took place via email June 2003.
Clay Shannon is a Borland and PDA-certified Delphi developer and the author of "Tomes of Delphi: Developer's Guide to Troubleshooting" (Wordware, 2001) as well as the novel he claims is the strangest one ever written, "the Wacky Misadventures of Warble McGorkle" (see Wacky Warble, etc. for more information on the 4 Novels application, which contains this and three other novels he has penned).
You can find out more about Clay at: http://hometown.aol.com/bclayshannon/myhomepage/index.html
You can look into Clay's shareware and determine his current availability at: http://hometown.aol.com/bclayshannon/myhomepage/business.html
You can contact him at: BClayShannon@aol.com
Free 30-day license of new C++Builder XE6! Develop for Windows, Mac, Android and iOS!
Click to download now!
More social media choices:
C++Builder on Google+
@RADtools on Twitter
Server Response from: ETNASC02