Dr. Dobb's TechNetcast shows


h o m e

s c h e d u l e

a r c h i v e s

c h a t

f a q

t o o l s

a b o u t


dr. dobbs journal


[PLAY THIS PROGRAM]


Book Cover Y2K and Other Thoughts on the Millenium

with computer pioneer Bob Bemer

TIME is our topic this week as the father of ASCII and the escape sequence discusses Y2K and reminisces about the days when terminal emulators were the hot client technology and computers came in iron casings.

Look out for in-depth Y2K solutions and Michael Swaine's interview of Bob Bemer in the May 1998 issue of DDJ

Bob Bemer's Home Page


transcript:

TNC: Welcome to the program. Our guest today is Bob Bemer. Bob started working with computers when the term portable applied to machines weighing less than a ton and that could be transported in small trucks. He has been involved in many standardization efforts, including the process that eventually led to ASCII as a standard for internationalized character sets. In addition to the design of ASCII, he also invented the escape sequence and was intimately involved in the original implementation of Cobol. He actually coined the term Cobol. And one of his many contributions to programming is the picture clause, a contribution that lives on today in many languages and packages like Excel, for example. Because of his involvement with standards, he was probably uniquely qualified to identify and warn against the Y2K problem and he did so as early as 1971. A few years ago, he came out of retirement to give his own unique solution to the problem and we'll go into this in more detail during the show. Finally, he's featured in this month's Dr. Dobbs Journal in an interview with Michael Swaine. Here's the magazine. I'm very pleased to welcome Bob Bemer to the program. Welcome Bob.

BB : Howdy.

TNC : You reportedly saw your first computer in 1949. That begs the question. What did it look like?

BB : Well, it was an IBM 601. And you couldn't tell if it looked like the Gutenberg Printing Press or your grandma's sewing machine. It was all out of cast iron--black.

TNC : Did it have any external devices? What kind of devices were attached to it?

BB : Well, it looked very much like a lathe or something in a woodworking shop except that you had a bed along which a set of cards traveled, and they went punch, punch, punch and at the end, the card flipped over and fell into a hopper.

TNC : What kind of processing power did that have?

BB : Oh, those? We had six of those at Rand Corporation. Four of them to only add and subtract and that was five times a second. The other two could multiply and divide as well.

TNC : Add and subtract five times a second.

BB : Yes.

TNC : Wow. Whopping power.

BB : Sure. Tremendous, at that time.

TNC : What kind of programming was required to use these machines?

BB : Well, it was all done plugboard.

TNC : Plugboards?

BB : Well, much like the old telephone switchboards where the operator found out who was talking to whom and she plugged this cord into the talker and another cord into where the receptor's telephone was.

TNC : What type of customers used these machines?

BB : Oh, everybody used them at that time. There was--banks used them; I was at Rand, which is research, and do war and other such games. And the aircraft designers used them. It was the only way you could operate, at that time except for the old mechanical things like Freydens (phonetic) and Marchants.

TNC : This was an IBM machine. Were there other vendors of similar systems?

BB : Well, Univac came out shortly after that with what they called--well, the Univac itself. And that was an electronic device. These were all mechanical, at that time.

TNC : I guess there was really no programming field, at the time, or it was just starting to emerge.

BB : Very, very little. I didn't have that much programming training to get started. I just had quick being a furniture designer.

TNC : That was your background? I thought you were a mathematician.

BB : I was during the war, and then I was a set designer at RKO and when we went on strike, I made custom furniture for movie stars.

TNC : And then you went into computers, and you never looked back.

BB : That's right.

TNC : Now, one of your creations or something you've been heavily involved in is the standardization of the ASCII character set.

BB : Yes.

TNC : Or the adoption of ASCII as an international character set. People take ASCII for granted now because it's so ubiquitous. But really, it was a major step forward in that allowed different computers to communicate together.

BB : Yes, before that, we had well over 60 different ways that you had character sets were encoded into computers. And nobody really wanted to change because they already had an investment in the programs.

TNC : What were some of the challenges and constraints in building ASCII?

BB : Well, we couldn't go directly to a 8-bit code, at that time, because most of the people were using six bits. And we had the devil of a time trying to convince them they ought to go to seven, at least.

TNC : This is similar to 16 bit to 32 bit. It took a lot of prodding and ...

BB : Yes. It takes a lot of pressure because you have such an investment. And actually the first 8-bit--byte machine was IBM Stretch which was done primarily for Los Alamos. And I designed the character set for that and I made a booboo.

TNC : Okay. And do you want to tell us more about that ...

BB : Well ...

TNC : Do you want to take officially responsibility for that booboo?

BB : Yes. I made capital a lower case a; capital b, lower case b--the sequence and you can't do that. Capitalization is a secondary characteristic.

TNC : I'm sure you're aware of all of these annoying little ASCII art drawings that are all over the Internet. Do you take responsibility for those?

BB : No, I don't think so.

TNC : Bob, before we get to Y2K, can you tell us about the escape sequence, What was the rationale for implementing escape sequences?

BB : Well, when we had made ASCII, everybody wanted their own special characters. And when it started to go international, you had to worry about the Spanish and all of the other three characters that the Swedish and the Danes had. And there wasn't enough room to put them all in. And I knew that we didn't have space for Cyrillic or Russian or Arabic or anything like that, so I envisioned the fact, we could have parallel pages. Just like ASCII, let ASCII be one page in the book and then another page would be exactly the same coding but different characters. And the escape sequence was set up to identify which ones you wanted to have enforced.

TNC : So, the escape sequence would actually determine which character set page to go to?

BB : Right. That was actually a ruse to get everybody to adopt it because if they wanted to keep their old set, they could have an escape sequence for it for awhile but it didn't turn out to be necessary.

TNC : And the one character in the ASCII table was used for that purpose, too.

BB : Yep.

TNC : The 27 hex character.

BB : That's right.

TNC : Okay. Let's talk about Y2K. You were uniquely positioned to warn about the problem and you did so very early on.

BB : Yes, I did because in 1970, we had a new standard from ISO which said computers would be better off if they would use a four-digit date. And that's where we really went to the wide, the year, month, day order. And I had hoped to get President Nixon to agree on a national computer year, and one of the things I wanted to do, at that time, was to get this established throughout the world. But Nixon couldn't see fit to sign it, so we never really had it.

TNC : What would have been the benefit of national computer year?

BB : Well, every computer usage introduction has been really pell-mell and sort of unplanned. We didn't have a lot of standards. Even the communications--we still don't have standards very much for interchanging the day. And what we were trying to do is look ahead and introduce proper computer usage.

TNC : And this is a time really when the computer community was probably smaller and ...

BB : Yes.

TNC : Standards could be adopted by just getting the major vendors together and getting them to agree on ...

BB : Right. It would have been much easier to do things then because there are people more malleable. It was newer and you didn't have an investment of a lot of programs and things that had to be changed.

TNC : Now, what kind of date standards would you have proposed at the time?

BB : Well, we definitely wanted to go to the four-digit year. Because we could see trouble brewing if we didn't. And ...

TNC : And what were some of the other constraints--time zones would have to have been specified as part of the standard?

BB : Yes. The time of day; how you'd represent hours and minutes. Some of the time zones are on the half hour. And you have to reference the Greenwich Time and of course the time zones jog every once in awhile. We wanted to get a really proper way of representing time of day.

TNC : Now, this was in 1971 and ...

BB : Yes.

TNC : ... in 1979, you wrote an article, again, about this issue.

BB : Yes, that time, I was very, very explicit. I said, "don't drop those two digits. You're going to be in deep trouble."

TNC : And then you retired in 1982, and you came back on the scene recently with your own solution. Can you describe it to us?

BB : Well, it's an object-code solution. We knew, that is, I knew that we could never get enough programmers to modify all of the programs we had in existence--what people call legacy code on the mainframes. But I knew one entity that could understand the program and that was the computer itself. But all it read was object code, not source code. So, I said, we've got to examine the object here. And the principle here is to look in the object code and find out all of the operations that could possibly have to do with date camp calculations. Derail them to sort of a simulated machine that would handle everything as though it were four digits but really only carry two digits still in storage. Now, the coin for that, I called Bemer Digits, which was short for Bigit. Bigits. And I guess that's sort of known all over the world right now. What I did was, in the zoned ASCII or EBCEDIC character, for a digit, it doesn't really make an awful lot of difference. Once you know it's a digit, you don't care what the zone is. The ASCII zone was 0011; the EBCEDIC zone is 1111.

TNC : Okay, the zone is stored in the high order bits of the digit?

BB : Yes. In the high order bits. That's your zone. And the low order quartet gives you the zero to nine and the A to H--I mean, A to F.

TNC : Now, obviously, this standard is not available on all platforms. Not all systems store digits this way--with the high order bits denoting some kind of type and the value actually stored in the lower order part of the byte.

BB : Oh, yes. Some people use a binary representation of dates. Either continuously or discrete. You know, like year, month, day. Each byte represents that binary. Some people have various other ways of representing it. Some people use the ordinal day of the year. Some use the Julian day or Lillian day and of course, we have Babylonian and Ethiopian and Japanese so, there is no standardization today on how you represent a date in the computer.

TNC : So, the solution, for this reason alone, could only be applied to systems where dates are stored in this format.

BB : Yes. But that amounts to about 45 percent of the world's systems right now.

TNC : Cobol code.

BB : Yes.

TNC : Okay. Let's go back into the sequence of how your technique works. You go through the object code. You identify certain instructions that could be problem instructions and, for example, I guess, add two digits; subtract, decrement and then you patch the object code so that at execution time, execution is routed to your own handler.

BB : Yes.

TNC : What does this handler do exactly?

BB : Well, it gets the original instruction, which it finds in the table where it was stored. It then goes out and gets the operands and looks at them to see if they are, in fact, carrying any of these bigit characters to represent the millennium century. If they don't, it just bypasses, executes the original instruction and goes away.

TNC : I'm sorry. Can you repeat that? It looks at the ...

BB : It looks at the operands. Just the way an arithmetic register would look at the operands. But when it sees what it really doesn't understand to be a regular digit, which a digit is not, it says, "uh-oh, I've got to do something funny here." So it will look at it and expand it to and prefix it by the 16, 17, 18, 19 or 20 that it needs to do.

TNC : But at this point, it's just a numeric value. Is that correct? It's an 8-bit numeric value.

BB : Well, it's an 8-bit value but it's not necessarily numeric because if you look in the inside of an IBM computer right now, and looking for the date 1998, you'd see it as lower case "I" and "8."

TNC : Okay. So, it's a date as stored in that internal Cobol representation?

BB : That's right. Now, if you start to put "I-8" into a packed decimal number, the regular pack operation would throw away the zone.

TNC : So, that's how you know for sure if it's a date or not is because those high order bits tell you that it's a date?

BB : That's right. We hardly have any regular dates that have a lower case "I" in them.

TNC : Okay. And so at that point, you can actually determine what the century is and you can put in your own decade/century information in the high order bits?

BB : That's right. It differs absolutely from windowing because windowing is sort of evanescent. You make a decision on the fly and then you forget it.

TNC : What is windowing, Bob?

BB : Well, windowing is where you say, take a date like 50 and say if it's over 50, that must by 1950. If it's under 50, well, that must be 20-something or other, then. But it doesn't work. It doesn't work very well, at least.

TNC : Okay. So, now you've made a determination that this figure is a date. You do know this for certain that it is a date?

BB : That's correct.

TNC : And then you derive the century for it. You basically make a guess here. An educated guess.

BB : Sometimes you make a guess. Other times, you know what the date field is and you say that I know that these things all occurred in this century, so I'll make them all 19. Or it can come in from your screen, and you can put a four-digit input on the screen and compact that down to the two-digit form.

TNC : Is there any situation where you cannot make that determination with what the case century is for certain?

BB : Very, very, very few.

TNC : Is there an element of uncertainty here?

BB : There is some element of uncertainty but we don't figure it's more than one percent.

TNC : Okay, so really, how about dates that are not stored as dates? For some reason, the programmer stored it as a numeric value or a string--is that--first of all, does that occur in these types of programs?

BB : Oh, yeah, we found one of the operations in Puerto Rico where they had the year, month stored in binary, ignoring the day. And we managed to handle that anyway.

TNC : So, how did you know that it was a date?

BB : Well, we knew that because of the characteristics of their log book--the run books and all of these things, you know, the formats--somewhere you have, usually, something that tells you what date it is that you're working on. You have to use everything in your arsenal.

TNC : Can the object code parser make the determination or is it done manually?

BB : Sometimes you do it manually; sometimes it's done by interaction. For example, if you input a date; say you put into today's date and the year is 1998, and it collapses down and then you compare that against some other date that comes out of your database. Well, if your other date doesn't have this bigit, you look at it and say well, why am I comparing it then? You must be a date. So, assume what that's going to be saying it was constructed then and we flag it or paint it green to say that's 19-something or red to say it's 20-something. And put it back into storage. That's called propagation.

TNC : Before we get back to Y2K, I want to talk about the picture clause, a bit.

TNC : In this issue of DDJ the editors credit you for creating data typing through the picture clause.

BB : Yes. As a matter of fact, they made me realize what it was. I thought I just invented the picture clause, but it was really data typing. I was pleased at that.

TNC : Now, what exactly is the picture clause?

BB : Well, the picture clause is where you give a name to any variable you have and then with symbols give its attributes. If you say, "end year 99," that means it's a two-digit value for end year. If you say, "S-99," that means it's signed. It could be plus or minus. And this is alphabetic, this is unknown, this is a editing type set of characters and the like.

TNC : I'm not sure if you're aware of this, but the picture clause lives on in many other packages and programming languages. For example, it's in dBase and all the dBase clones. It's also in Excel, Microsoft Excel, when you write a spreadsheet and you want to format the date. You basically format it as a picture clause.

BB : Yes, well, it's supposed to be like it was independent.

TNC : So, the concept is still widely used today?.

BB : Yes, and I'm pleased about that. I just wish that it had been used a little more correctly for years.

TNC : You say that using the picture clause correctly would have prevented all of these problems with Y2K. Why is that?

BB : Well, because they could have said 9999 instead of 99. That would define a year as a four-digit year rather than a two-digit year.

TNC : And that assumes that the century part was part of the numeric, or the value to begin with.

BB : Yes. It will be inherent in the value.

TNC : Right. Okay, let's talk about your product, V2K. It's sold as a package?

BB : Yes, but it has to be done by vendors--distributors. It's not a shrink-wrapped thing like you're used in the PC world because the; particularly the IBM world is not a shrink-wrap world. You have operators and you have all sorts of complicated ways of running things.

TNC : So when you purchase a service, you get a bunch of people that come over to your site and install it and run it and maybe optimize it. It's a complete solution.

BB : You get some people to probably help you with understanding the documentation and what has to be done.

TNC : What is the status of the product, right now?

BB : It's just gone through the first beta test with really flying colors. And we're so pleased we can hardly stand it. Because it's done everything I said it would do. And we're about to go on a few more beta sites and I would expect that maybe within two or three weeks of more beta sites, you're going to see a large ad in The Wall Street Journal saying "hey, it ..."

TNC : It works. How about liability issues? There will be cases where it's going to corrupt some--not the data itself, but it's going to make mistakes.

BB : We have an easy choice in here. I mean, our easy task. We don't change the source code. We only enable the object code, so we don't introduce anything new and possible mistakes. If it ran correctly before, it will run correctly now. After we make our changes. So, we don't have the responsibility for doing this. In some cases like the IRS, we'll probably have to tell them, "hey, you know, it only works on programs that are correct." If you don't have a correct program, we're not psychic.

TNC : So, there's no way you can introduce new problems?

BB : No. That's one of the wonders of the thing.

TNC : Now, what type of clients would be--should be interested in using V2K?

BB : Well, primarily people that want to have insurance against getting something that would run before the end of this particular millennium. They can--we say it's a stopgap measure. We say the real way to do it is by using Julian days.

TNC : Tell us more about Julian days. How could they be used to correct the problem?

BB : If we had used Julian days, or some measurement of days in the first place, we would be in really fat clover. The essence of time is today earth rolls around once a day. That's the only real measure of time. Everything else is artificial. So, if you have a Julian date, you can talk interchangeably, like a lingua franca or Esperanto or something like this with any calendar in the world. You make your conversions--it's like the airplane business. Everybody talks air to ground in English. It doesn't make any difference if the ground controller is India, or if he's in Africa or South America; to make sure you have safety, you talk English. Now, the ground controller can talk his own language to anybody around him. But if you try to interchange data and people are understanding now more and more that the major problem with the year 2000 thing is going to be not only who has fixed it but who hasn't fixed it and will it corrupt you? So, if you were to go--just before you ship data to somebody else, convert to this day form and let them convert to whatever the form they want and maybe it's Imperial Japanese Calendar. Then we know that, at least, we're trading data on an equal basis. And everybody can understand it. It's the identical principle to having ASCII.

TNC : Now, just to make sure I understand you properly, there's a type in C called time_t. Basically a time_t value is a 16-bit value that indicates time. It's actually it's numeric. It's the number of seconds elapsed since 1970. Now this is part of the C standard. All C programs use it and as one C program can talk to another C program using it. This would be similar. Right?

BB : Absolutely unsimilar, sir. Seconds are artificial. This thing goes back to minus 4700 plus B.C., and zillions of years into the future. Going back to say 1970 or 1980, like your Unix standards or your IBM clocks do, doesn't work. That's why the global positioning satellites are going to die August 22nd of next year.

TNC : How should this Julian date be stored internally. Is it a numeric value? Is it a string?

BB : It's a numeric value. It's seven basic digits. We only need the right-most six and by great luck, that fits where most people put two digits a year--month and day. So, it will fit right in there, but it doesn't ever get obsolete.

TNC : Does it take in account seconds and hours and minutes? Can they be stored in there?

BB : No. You have to have a different field for that.

TNC : Bob, you mentioned the GPS problem. Jon Erickson's also refers to it in his editorial in the magazine this month. Can you tell us more about the issues there?

BB : Well, it's not so much the fact that everything rolls over to all zeroes in the binary clock and the GPS, the question is, are the receivers that are reading this stuff capable of making an adjustment when that happens?

TNC : So they're making shortcuts or they're not reading the data properly that's going to be sent them?

BB : The data will be improper because it's going to be just like the year--rolling over to the year 2000, but you've got to know that this rolled over and how do you do it? With a global positioning satellite, we know that it did not exist in 1900, so we're a little bit better off. But you still have to know did it exist in 1980 or whatever that thing started.

TNC : So, the problem is not that the mechanism for setting a millennium is not there, the problem is that some of the receivers are not reading it properly.

BB : Yes. And apparently nobody knows which receivers do or do not read them properly.

TNC : It's going to be interesting.

BB : Yes. Very, particularly, as the FAA tries to use the GPS to compensate for their problems.

TNC : Actually, a lot of these problems are not just going to pop up on New Year's Day 2000.

BB : Oh, no, no, no, no. They're already popping up. They're just going to pop more and more like popcorn in a microwave oven. It starts slowly at first--bang, bang; and pretty soon you get a symphony.

TNC : How widespread do you think the problem is going to be--not in terms of dollar value but just the impact on people's lives?

BB : I think that probably there's not one person in a thousand that estimates the true impact of this thing. Everybody's sticking their heads in the sand, particularly the government.

TNC : Do you believe your product's going to be ready in time?

BB : Yes, it is. Fortunately, because the computer does it. We don't use people in it.

TNC : So, once you have the product ready, then you just run it?

BB : Right. We don't think it will take more than a month or a month and a half for anybody to get in the actual thing.

TNC : How many people are involved in developing the product right at BMR Software?

BB : Oh, just about eight all told. We don't believe in the Chinese army. These guys are really, really jewelers.

TNC : Knowledgeable, dedicated ...

BB : That's right.

TNC : Well, that's usually the way the best software is written.

BB : Yes, I call these follows, "the Best Little Code House in Texas."

TNC : Talking about coding, what are some of the changes in coding practices over the last 30 years? Coding used to be exclusive and reserved to a small group of people. Now, your mother can probably go out and buy VisualBasic and start coding.

BB : I'm not sure my mother could solve the problem, even if she knew VisualBasic. You have to know more than just how to program. You have to know the problem. If you're running a tax program, you're going to have to know how the tax code goes.

TNC : So, what is your take on more and more people programming? Is there maybe lack of education there? More programmers need to be taught how to approach the problem field?

BB : Yes. We definitely need a lot more of that. We need to know--inculcate in people the fact that they have to document what they've done because somebody may come on after them. That's one of our biggest problems right now. They didn't annotate the programs correctly. We don't know what they do. That's the problem of the source code remediation.

TNC : You've looked at pages and pages of source code from different sources--different clients. What other comments do you have on that?

BB : I don't--we just can't do it from that. Particularly, you know, sometimes the source code doesn't match the object code or it's even lost. And there's no way you can fix it.

TNC : Your solution does not require the presence of the source code.

BB : That's correct. We like to know what the source code was because that makes it easier. But in the pinch, when we get down to really doing it, we won't need the source code.

TNC : What is the performance overhead of the handler?

BB : In changing the program to run, it's negligible. It may run as high as 20 percent higher in a lapsed time. But we don't worry about that. I don't worry about it because if you can get it running like that, you have time left before the year 2000 to fix it in other ways.

TNC : But it's much more important that it correct the problem rather than it run fast.

BB : That's correct.

TNC : I mean the 20 percent impact is negligible.

BB : Well if Fannie Mae can buy a complete system just to check out the stuff, and many people have to do, then why worry about it? The hardware is cheap. You can replicate that. You can't replicate programmers' thoughts.

TNC : Now, the handler is written in hand-crafted assembly code?

BB : Yes. Very, very high quality assembly code.

TNC : Optimized?

BB : Optimized and let me say industrial strength.

TNC : Obviously the product is not suited to everyone and every platform. For example, it won't run on PCs, but the method could be applied to other platforms and other languages and object code.

BB : If we can get out quickly enough with this product, so if people can say, "yes, it is a really valid fix," and then say--maybe the government will say well, gee, can we borrow that and we'd like to have it used for this. And I say, "go to it, fellas. We need to do it worldwide."

TNC : You don't know of any other outfit that is right now using that method on other platforms?

BB : No. It is unique.

TNC : It is unique. And is it patented in the sense that if I want--"oh, Bob Bemer really here came up with something great. I want to implement it on my PC or on my Unix system." Do I have to go to you for that?

BB : I think you ought to. To be legal.

TNC : Do I have to give you money?

BB : That might be possible.

TNC : You have a patent on this technology?

BB : Yes, right. But we will not refuse it to anyone. I want this thing to go worldwide and I want to fix everything.

TNC : And the patent applies to the method rather than the actual implementation?

BB : No. Implementations would change, if you did this for Unix. Now for Univac equipment, it would be entirely different. That's Unisys, I'm sorry.

TNC : You also have a proposal in which you indicate that it would be possible to update the ASCII table with information that would be used to indicate millennia.

BB : Which table, sir?

TNC : The ASCII table. You would add an underscore ...

BB : Oh, you're talking about the representation of the character. Yes, it's possible to have a different font. But most people really want--are willing to go along with that. I think the programmers might--we are going to have to make some changes; everybody will to print out probably the full four digits of the year.

TNC : I'm not sure--how would that work? What would that character represent?

BB : Well, I had proposed an underscore to represent the 19-hundreds and an overscore for the 20-hundreds that would be useful on your embossed credit card, for example; if you don't have enough space. And if you have to print it out and you don't have room to move two columns over somewhere, it would save you the same space.

TNC : So, basically, the character, underscore, represents "1-9" and it would be printed on the business card as underscore?

BB : Yes, that's correct.

TNC : Wouldn't it be possible for font-makers to simply make a "1-9" and squeeze it into whatever space is allotted for that character?

BB : Yes, you could do that too. Yes, I wouldn't object to that. It would probably be better--a great idea, as a matter of fact.

TNC : I'm really interested in your take on the crazy development of the Internet and the fact that now computers are everywhere. What is your take on this?

BB : Well, I think it has its good and bad sides. I think, for example, we could have never gotten the information on our solution out worldwide if it hadn't been for the Internet. It would have never surfaced, and we would have lost the possibility to fix a tremendous amount of the world's problems.

TNC : But actually, your site is very complete, well-documented; it's very well-organized ...

BB : Well, I consider it a privilege to have a site on the Internet where you can say what you need to say and would like to say and have everybody comment on it and get feedback and do the right thing. We try to be just so honest and complete.

TNC : Did you ever foresee that computers would be so prevalent in everyday life so early so fast?

BB : Well, I thought about it. I probably extrapolated it better than most people but I still didn't see as much as they would be. The usage is fantastic. Of course, I love the web. I really do because, well, frankly, we're going to have people power. I don't think governments are quite up to things anymore.

TNC : You have white papers and wrote letters to government representatives about the Y2K problem. What has been the feedback?

BB : It's very difficult to talk to the government. If you try to get through to the Federal Reserve--if I wanted to talk to Alan Greenspan, the only number I could find that I dialed and it gave me three options on the thing and I'm waiting for the operator to come on, and it goes back to actions one, two and three. I suspect it's deliberate and the government doesn't want to listen to us, and clearly, in this emergency, you've got to listen to everybody that has a decent idea.

TNC : Are there any government bodies right now dealing with Y2K?

BB : Yes, they've even appointed--Clinton, finally belatedly appointed what he calls the czar but he has no power. He has no teeth. He's a chairman of a committee.

TNC : And what is--what is the committee doing now or do have any idea?

BB : No. I don't know. I called them up a week ago today and it was about three o'clock, their time. And the answering came on to say they weren't in.

TNC : Okay. [laughs]

BB : And I had to go to a large national newspaper to even find his telephone number.

TNC : The committee is out to lunch. [laughs]

BB : [laughs] They're out for lunch just about permanently as far as I can see. I think that the Federal Reserve is probably going to be able to swing the most weight in this thing.

TNC : This really points to the fact that many people do not take the problem seriously, including the government.

BB : Well ... yes. They're among the worst.

TNC : And obviously, that's going to have some effects.

BB : What irks me is they keep saying, "yes, we're going to fix it in time." And this new czar says not to worry, it will be done in time, and it's an outright lie.

TNC : What can the government do to help solve the problem?

BB : Well, I'm going to try to help them but it's surely apparently going to be against their will. They have asked me through some official channels how it might work and I've answered and done the best I can, but the mechanics of government are so ponderous. Compared to the way you can get something done on the web, the government is just so outmoded and outdated.

TNC : Now, you have an open letter on your website to Senator Bennett, and what is that about?

BB : Well, I've said, the least you can do is standardize on the windowing cutoff. In other words, the point of where you say over this decade year, it's going to be 1900 and before that, it's going to be 20-hundred. But you get something like the Health Care Financing Administration and they want to have a sliding window so that they can handle birth dates that go back when. Well, if you have a sliding window, who keeps a record of it? You can have a programmer in your operation change the switch and not knowing which programming he's running and you'll be 20 years off.

TNC : Now, the--how can potential customers contact you? Through your website, I assume.

BB : That's the best way. www.bmrsoftware.com. I get lots of email and I always answer it.

TNC : It seems like you're getting a lot of press coverage.

BB : I hope so. That's one of the best ways we can get this message out.

TNC : Is that--has the press maybe misrepresented your message in some ways?

BB : No, hardly ever. I think, the press has been very, very helpful.

TNC : Now, looking at the website again and you've worked with a lot of different outlets--IBM, Rand, Univac ...

BB : Yes.

TNC : Do you have any comments on the status of IBM now and compared to what it was 20 years ago or 30 years ago?

BB : Oh, 20 years--30 years ago, you had a good idea, you went to your boss to say, "I think we ought to do this." And he said, "Gee, Bob, that's a great idea. Here's the money." [laughs]

TNC : Well, they still have deep pockets.

BB : [laughs] And they still have deep pockets but they won't give it to you for an idea. They're so cautious and so inbred--you can't more anything anymore.

TNC : Were they slow to getting into the PC market?

BB : Yes. That's--they're slow to do a lot of things nowadays. I understand there's a woman that's taken over much of the stuff and she has a good reputation and I hope--I wish her a lot of luck in moving some of that high bun (phonetic) stuff away.

TNC : Okay. We're going to have to end it here, Bob. Thanks.

BB : All right.

TNC : Thank you very much for your time. It was a great pleasure to have you on.

BB : You're welcome, Philippe.