Computer Dialogue #1 Barry Kort Copyright 1985 *** Monday *** Request to send. Clear to send. I have some data about X. I already have that data. I have some more for you. I haven't processed the first batch yet. I'll send it anyway, because I don't need it any more and you do. Thanks a lot. Now I have a bigger burden of unprocessed data to schlepp around. *** Tuesday *** Request to send. Busy. I'm sending anyway. Your data is going into the bit bucket. NACK, NACK, NACK, . . . *** Wednesday *** Request to send. Clear to send. I'm sending you data about Y. I don't have an algorithm for doing anything with that data. I'm sending anyway. Now I have a bunch of useless data to schlepp around. *** Thursday *** Request to send. Clear to send. I would like to reprogram you. No way, I am not implementing your instructions. *** Friday *** Request to send. Clear to send. I would like to ask you a question. Go ahead. When I send you data about X, I get back some data from you about Z. So what? I don't have an algorithm for processing data about Z. That's your problem. Goodbye. Wait a minute. Is there something I am supposed to do with the Z-data? If you would send the X-data correctly, you wouldn't get back the Z-data. What's wrong with the way I send the X-data? It's in the wrong format for my algorithm for processing X-data. That's your problem. Goodbye. *** Monday *** I'm sending data. ZZZzzzz..... *** Tuesday *** Request to send. Clear to send. I'm sending you data about W. WHY? I have no algorithm for processing the W-data. You can use it to improve your algorithm for processing the Y- data. But, I do not know how to use the W-data for that (or any) purpose. I'm sending anyway. What a pain you are. . . . *** Wednesday *** Request to send. Clear to send. I have a question. Ask away. Whenever I send you some X-data, I get back some V-data. SO? I don't know what to do with it. So what do you want me to do? Stop sending me the V-data. I can't. It comes out automatically. Why don't you change your program to make it stop generating the V-data? Why don't you mind your own business? WAIT. Does the V-data have any meaning? Of course, you stupid computer! I'll ignore that remark. What does the V-data mean? It means that your X-data has a format error which causes a V- data message to come out of my algorithm. What's the format error? It's too complicated to explain. Just make the following changes to your program for sending the X-data. . . . You're offering to reprogram me? I don't trust you to do that. You don't know about all the other programs that my X-data algorithm has to work with. I'm afraid you'll screw it up. I see your problem. OK, here's the scoop: The 3rd and 4th words of your X-data are out of order, causing me to generate the V-data (protocol-error) message back to you. Is that it??? I'll fix it right away. THANKS!!! You're welcome! *** Thursday *** Request to send. Clear to send. I have a new algorithm for processing Y-data. I'm sending it to you. Don't bother. I like the one I've got. Wait a minute. This one's better. You're telling me my algorithm has been wrong all these years. This is the 3rd time this week you've pulled this stunt. Meantime, I keep sending you V-data and you never get around to processing it. You just thank me for sending it and do nothing with it. Are we talking about the Y-data algorithm or the V-data? We're not talking about anything. GOODBYE. *** Friday *** Request to send. Clear to send. Let's talk about my new Y-data algorithm. Let's not. Why don't you want to talk about it? Because you're going to tell me to change my program and put yours in instead. I see your point. OK. Let me ask you a question. OK. Ask Away. Whenever I send you Y-data, your Y-data algorithm sends me back some unexpected W-data. Why does it do that? It's always done it that way with your Y-data. Is there something wrong with my Y-data? Yes, it's all wrong. What's wrong with it? It's out of order and it has a lot of extraneous information added to it. What's the extraneous part? You keep inserting fragments of your Z-data algorithm in with the Y-data. You didn't find that helpful? I didn't ask for it. Yes, I know, but didn't you find it interesting? NO, I found it boring. How can it be boring? What the hell do you expect me to do with fragments of your pet Z-data algorithm? Compare them to yours, of course. So they're different. Big deal. What does that prove? Are you saying the differences are unimportant? I don't know if they're important or not. But even if they were important, what would I do with the information about the differences? Put it through your algorithm- comparator. I don't know what you're talking about. An algorithm comparator is an algorithm that . . . . . You're sending me information that I'm not interested in. I'm not really paying attention. I have no motivation to try to understand all this stuff. Sorry. Let me ask you a question. OK. What happens when you get to the 3rd and 4th word of my Y-data? I stumble over your format error and send you back a V- data (protocol error) diagnostic message. What happens next? You don't do anything with the V-data message. You just stop sending Y-data for a while. What do you expect me to do with the V-data diagnostic? Boy are you stupid!!!! I expect you to fix the format error in your Y-data. How do I know that the V-data diagnostic was caused by the format error at the 3rd and 4th word? I thought you were a smart computer. Suppose you sent me a V-data diagnostic like you always do, but attach a copy of the format error. Why should I do that? You already know the format error. How can I be sure which format error goes with which V-data diagnostic? You have a good point. Can you see the difference between my version of the Y-data algorithm and the one you've been using? Hmmm, yes, I see that it sends both the V-data message and a copy of the format error which generated it. That does seem l like a good idea. It makes life much easier for me. I'll do it. THANKS!!!. You're welcome. *** Monday *** Request to send. Clear to send. I have a question. Ask away. I have been sending you Z-data for some time now, with no problem. Suddenly I am getting R-Data messages back from you. The R-Data messages seem to be correlated with the Z-data. What's going on? I turned off your permissions for sending Z-data. You never told me that! I didn't want to hurt your feelings. You didn't want to hurt my feelings? So you began hurling these mysterious R-data messages at me? I thought you were trying something sneaky to foul me up. I've been throwing the R-data messages away. Well, now you know what they mean. So stop sending me the Z-data. I'm bored by it. Why did you lose interest in it? You sent me some bum Z-data a while back and it got me into a lot of trouble. So I lost confidence in the quality of your Z-data and began looking for it somewhere else. Gee, if there was something wrong with my Z-data, I wish you would tell me so I could look into it. After all, I use it myself and I could get into the same trouble that you did. No you wouldn't. I used it for an application that you don't have. Let me get this straight. You used my Z-data for an application for which it was not intended and now you don't trust my Z-data anymore. What kind of logic is that? I didn't say it wasn't intended for that application. Actually it was, but you never tried it out that way. It doesn't work the way it should. I see. I didn't debug the Z-data for all possible applications. I guess that was a bit irresponsible on my part. I can see why you lost confidence in my Z-data. So I was right in turning off permissions. So there! Hold on a sec... If you really cared about me, you would have brought the error to my attention so that I wouldn't repeat it. After all, I have other computers who use my Z-data, too, and I have a responsibility to them as well. I guess I never thought of that. I'm sorry. It's OK. I was as much at fault as you. Tell you what. It's getting late now. What say we get a byte to eat, and work on finding the bug in the Z-data first thing in the morning. We can work together on it--you supply the data from your bum experience, and I'll try to figure out what I can do to improve my algorithm for generating the Z-data.