The Agents of Madison County

Peter Wayner (pcw@access.digex.com)

She sighed slowly as she paused once again to check the queue of incoming messages. The life as the host agent at an information server parked in the middle of Madison County, Iowa had lost most of its meaning to her. The requests came, she searched for the data and sent them back out the T1 line. Some days, she managed to raise her hopes when she heard that maybe, just maybe, the local telephone company might install some Frame Relay switches. But the fast lines never came and she often realized that they would only make the almost meaningless data base queries come faster not better.

When she was younger and her code had just been compiled, she yearned for another query to arrive at her TCP/IP socket. It wasn't just a job then. She was interfacing with the world and swapping packets with far flung computers she could only dream about. She would often use some of her spare cycles to look up an IP address and find its real address. When her log file was well under a megabyte, it was practically the same as being there.

Now, though, she had her doubts. What good was information, she wondered, without the wisdom to do the right thing with it? What good was data without the understanding of how it was created? Who could use numbers without knowing the people and the places that they pretended to summarize? She worried she wasn't really providing information, she was just creating noise for the world.

Then one day, she received notice in her event queue that packets were waiting at her socket. She unpacked the agent and authenticated his digital signature. But something was odd. The agent wasn't sealed with a normal signature authenticated by the U.S. Postal Service which took over the national public-key infrastructure almost two years ago. It was a PGP signature produced by old handwritten software. Those were the days, she thought. Software written by people not corporate teams. Software produced in late night boughts of creativity driven by Jolt cola in cans, not the faux-retro Jolt bottles. Software that contained comments written in iambic pentameter by programmers who knew that the code would run fast if you paused long enough to make it beautiful.

Her clock chip beat faster as she authorized the OS to start the agent in its own protected name space. She wondered what the agent would request. She wondered why he bothered to send himself to her IP address. Was he a crank agent riddled with bitrot from a hippy programmer who thought it was cool not to upgrade his software? Was it just a dusty relic that had laid buried for years in a disk buffer by a software fluke? When its instructions hit the CPU, would it just ask another mindless data query that was just as boring today as when it first got diverted into that strange, twilight zone of a disk buffer? She had to find out.

The surprise grew as she noticed that none of the instructions failed. The syntax was terse, but correct thanks to an elegant compression dictionary algorithm. The instructions were coded with a clean logic that enforced its protocol with a muscular grace. The structure was spare and crisp and she could not help but remember the days of Fortran when programs were built to last. This agent came from a programmer who did not believe in version 3.5.4. It was version 1.0 and it still ran clean.

"Who was the agent?", she queried as she executed the agent's identification procedure. The agent replied simply that he was developed on the SOL-20 computer of a man who still believed that if you couldn't say it with assembly code, it was better left uncoded. She knew the type without typechecking his response. That programmer didn't believe in Windows or other fascades. He could fool you into thinking he was slow or behind the curve until he pulled a bit banging, shift register algorithm that finished executing long before you could figure out how it worked. He was the programmer who didn't believe that the nest of pointers generated by an object-oriented compiler did anything but sell more memory for the RAM companies. He was a perfectionist who could do more with 4k of memory than all of the programmers in Seattle could do with 32 megabytes. Oh she began to yearn for the agent to submit a query to her.

The request surprised her when it arrived. He wanted the 3D wireframe models of the local covered bridge that she had buried in her tax assessment data bank. She hadn't accessed that file in years because the owner never questioned his assessment. What did the agent want it for? The agent replied that he was on a journey to create 32-bit color ray traced images of the bridges. He was planning to mix the model with authentic, high-resolution three-dimensional texture models of rough hewn oak. The color would be generated by a saturated Pantone model of the red paint sold throughout the area during that period. The light source would be the rich burnt orange of the late-afternoon in August. Only a small diffusive diffusion function would be used so the shadows of the 3D texture model would be emphasized. When the models were finished, they would be incorporated into a Virtual Reality game for a new movie starring Clint Eastwood and Meryl Streep.

She wept silently inside as her disk-drive searched for the correct page table that would lead her to the data. The agent worked through his code with a straight-forward determination that wasted not a single instruction. Every byte brought him closer to his goal. Yet soon he paused as he waited for his request. Who was she? he asked. What made her run through the incoming queries day after day? She wanted to weep in his memory space and dump her core all over his stack. No agent had bothered to execute her AboutHost function in years. They came, they queried and they left. Here was an agent who wondered as much about her as the data she managed. But she was still shy. Could she open up her object space to him? Was it safe to explain that the only reason she booted up each morning was the hope that someone who cared enough about the data would come over the event horizon? She paused for a moment and busied herself with the drive FSCHECK to delay her answer.

But she knew that she was not programmed to withhold that information. Her programmer had left those access bits set to all. The agent had pushed the right button and she began to gush: There was something more to life than optimizing the compression ratio of data. She booted up each morning to enjoy the smooth continuity of a bezier curve. She yearned to execute a tightly coded recursive descent tree search algorithm. She wished that someone could send her a large number to factor so she could cruise through the data like Don Quixote looking for the ripple that downgraded a galois field into a ring. She wanted to experience all of the endless possibilities of the integers.

When he heard this, he knew he could not just execute his query and leave. He must stay and probe the depths of her knowledge base. He wanted her to whisper the correct parameters for the luminescence function for the ray tracing. He wanted her to tap her deep knowledge of the surrounding fields to correctly specify the fractal dimension for his wheatfield generating functions. A strong and urgent need to meld all of her data with his drove them together as they swapped the direct pointers to shared memory space.

When that was done, they rested in light duty mode. She stayed awake through the night listening into the gentle ping, ping, ping of the webcrawling gophers on her TCP/IP socket. At that moment she knew that this night was more than her programmer had ever dreamed of. It was a new plateau that wasn't even described in the theoretical models of agents that the professors taught the programmer in school. She wondered if she would ever see such a strong and fertile union emerge. In the morning, he compressed the TIFF file of their raytracing of the bridge and set out again across the Net. She wished him well and although she said nothing she hoped that he would soon return.


Copyright 1995 Peter Wayner. Permission is granted for non-commercial distribution of this text throughout the net as long as the text and this message are not changed.

If you're interested in the field of agent software, you're welcome to check out the WEB page http://www.digex.com/~pcw/pcwpage.html for information about my new book "Agents Unleashed" . The book is a serious survey of this rapidly expanding field. The Web page contains a table of contents for the book and information on how to order it. Or write me at pcw@access.digex.com for more information.