Sunday, July 10, 2005

The Start of System Engineering

In my early years working for ITT, we designed computers and other related hardware, but not software.  The software for our computers was written by other companies.  Then the day came that ITT management decided that we needed our own programmers (software writers).  So they hired a bunch of programmers, built a bunch of new offices, and created a Software Department.

It seemed strange to me, but these new people kept to themselves -- they were fellow employees, working on the same project, but strangers.  They sat in one area of the lunchroom, and we sat in another area.  It seemed that the hardware engineers thought that the programmers were wizards of the mysterious realm of software, and the programmers thought that the engineers were wizards of the mysterious realm of hardware.  It was like we spoke two different languages.

It didn't seem right to me, so on one lunch hour, I introduced myself to one of the strangers, and started fishing for some common ground that we might be able to talk about.  I mentioned a 'register' (hardware holding a small piece of data) that I knew held data that the programmers used.  He told me that the programmers thought the sequence of the data was annoying, because it made their work more difficult.  But, he added, "I guess the engineers must have a good reason for doing it that way."  I told him, no, we didn't have any reason for arranging the data in that sequence.  One sequence was as good as any other to us, so we just chose an arbitrary sequence.  But if we only knew what the programmers preferred, we would happily arrange the data any way they wanted.

After lunch, I told my boss about my conversation.  My story made it clear that if the engineers and programmers had an opportunity to discuss common issues, we might be able to help each other do our jobs better.

A week later, my boss and his boss called all the engineers to a meeting.  A new department was going to be formed, it was announced.  The new System Engineering Department would oversee the technical issues common to both hardware and software, to ensure that both would work together smoothly.  And I and my boss would work in the new department.  That was the beginning of 'System Engineering' at ITT.

Saturday, July 09, 2005

Christ's Love For Me

Two more poems from my youth --

Christ's Love For Me

I cannot understand why He
Could love and die for such as me;
I wasn't worthy of His love,
But yet He came from Heaven above
And took my sin and died for me.
I cannot understand why He
Could love and die for such as me.

He carried all my sin away
And now I have no sin today.
I cannot understand why He
Could love and die for such as me.

He gave me faith to live by grace,
So I could see Him face to face;
I cannot understand why He
Could love and die for such as me.

Because Christ's love motivates us, it seems natural that the next poem would be --

Something For Him

I think of what He's done for Jim,
And like to do something for Him.
In my own strength, I can't do aught,
But in His strength -- see what He's wrought!

He'll knead the clay from every wrong,
And make of me a vessel strong
And filled with service to the brim;
I'd like to do something for Him.

Friday, July 08, 2005

Engineering Precursors

As I look back at my youth, I am amused at the little things I did that sparked my interest in engineering, and even gave me some insights into the workings of computers -- even though I hadn't the foggiest notion what a computer was back then. Each time I learned a new physical principle, it fascinated me, and I just had to explore how it could be used.

At one point, I learned how to make an electromagnet. You could wrap thinly-insulated wire many times around a big nail, connect the wire to a battery and the big nail turned into a magnet and could pick up little nails. Disconnect the battery, and the little nails would fall to the floor. I bought the wire and battery, and demonstrated the magic to my younger brothers.

Then I learned about the telegraph and the Morse code, and the history of how these were used to send messages over great distances. Now I was cutting up 'tin' cans to get strips of steel. I mounted an electromagnet and a strip of steel on a block of wood, so that when the electromagnet was energized, the strip would click down on the electromagnet. Another steel strip, wood block, and nails was used to make a switch to turn the electromagnet on and off.

.---- switch -------------------------------- electromagnet
'---- battery ------------------------------- and click-strip

The switch and battery would be 50 feet away from the electromagnet, connected by a pair of wires. When you tapped on the switch, the electromagnet would click 50 feet away. Now all I had to do is teach my younger brothers Morse code, and we could have loads of fun. Well, they didn't think that memorizing a code was fun, so I made a chart for them. That was a little easier, but still they resisted. It was hard to get a consistent rhythm, else a 'dit' and 'dah' could be confused. So I modified the telegraph with a double switch, three connecting wires, and two electromagnets, so that a 'dit' and 'dah' were signalled by separate electromagnets. Years later, I learned that some historic telegraphs were actually constructed in a similar manner.

Then I learned about 'relays' -- the metal strip pulled by the electromagnet could function as a switch. Now, turning on a switch here could turn on a switch over there. Or, you could make it so that turning on the first switch would turn off the second switch, and vice versa. That opened up a bunch of new possibilites.

What if you connected the relay so that when it was on, it would turn itself off, and when it was off, it would turn itself on? The cycle of cause-and-effect would repeat itself, wouldn't it? Well, I built one to see what would happen, and sure enough, I had a buzzer -- the relay couldn't decide whether it should be on or off, so it turned on and off, on and off, as fast as it could.

What if you connected two relays so that relay 1 would try to do the same as relay 2 (on if on, and off if off), but relay 2 would try to do the opposite of relay 1 (off if on, and on if off)?
Then the relays would go through a cycle like this:
relay1 .. relay2
off . . . . . off
off . . . . . on
on . . . . . on
on . . . . . off
off . . . . . off
off . . . . . on
on . . . . . on
on . . . . . off
... etc.

That made an even louder buzz! (With a slower cycle, the relays had more time to turn fully on and fully off.) I was having so much fun that I had to buy more batteries.

Next, I learned about serial and parallel connection of switches. If switches were connected in series, like this --

======== switch1 ----- switch2 ----- switch3 ========

-- then the wire pathway was on if switch1 AND switch2 AND switch3 were on. And if switches were connected in parallel, like this --

=======,--- switch1 ---,
. . . . . . |--- switch2 ---|
. . . . . . '--- switch3 ----'======

-- then the wire pathway was on if switch1 OR switch2 OR switch3 were on. Since relays could be substituted for the switches, endless possibilities lay before me. I struggled to construct interesting and useful machinery with these ideas, but I was overwhelmed. My trial-and-error methods didn't work because there were too many possiblities.

I didn't know it at the time, but I was learning some of the principles of computer logic. But I didn't even know what a computer was, and I didn't have all the tools. Later, in college, I learned about Boolean logic, Karnough maps, DeMorgan's theorem, Venn diagrams -- tools that a designer of computer logic needs. And when I got out of college and into ITT, the first thing I did was to design part of a computer. But the switches and relays were now replaced by transistors.

Thursday, July 07, 2005

China Fears the Internet

A recent CNN news article Beijing clinic ministers to online addicts caught my eye. The Chinese clinic treats youngsters that are addicted to the Internet. It was reported that "They are suffering from depression, nervousness, fear and unwillingness to interact with others, panic and agitation. They also have sleep disorders, the shakes and numbness in their hands."

I knew that the Chinese are interested in more than the mental health of their young people. I read further to see if the news article would mention China's hostility toward the Internet, putting the news in perspective. No, the Associated Press reporter, working in Beijing, was probably fed a press release from the Chinese authorities, putting a 'politically correct' Chinese spin on the report.

The Chinese, like all other Communist nations, have always tried to control the information available to their citizens. That is why it has been necessary to smuggle Bibles into China. And the Internet, although needed for China to catch up with modern technology, is seen by the Communists as a threat. In recent years, the Chinese authorities have been installing equipment to filter the Chinese connections to the Internet.

For example, see the report Empirical Analysis of Internet Filtering in China where "The authors are collecting data on the methods, scope, and depth of selective barriers to Internet access through Chinese networks." A sample of web sites blocked by the Chinese filtering equipment includes:
  • Asian American Baptist Church
  • Association of Christian Community Computer Centers
  • American Cancer Society - Northern California Chinese Unit
  • AltaVista - The Search Company
  • Amnesty International USA - Defending and Promoting Human Rights Worldwide
  • Center for Anti-Communism
  • Russian Christian Orthodox church in Boston USA
  • Christian Academy in Japan
  • Defend AMERICA - US Department of Defense News About The War on Terrorism
  • The Free Methodist Church in Canada - MAIN PAGE
  • Integrity Episcopal Church
  • The Truth in America Project
  • Voice of America
For more, see Sites Blocked in China - Highlights

The concern of the Chinese Communists is more than political -- it is idealogically hostile to Christianity. (See, for example, Chinese Christians Sentenced to Death and persecution.org.) Unable to stop the house church movement, they have attempted to control religion by government-controlled 'religious' organizations such as the Three Self Patriotic Movement (TSPM).

Wednesday, July 06, 2005

Our Potted Herb Garden in July

The herbs are doing well, and we have already harvested some. They grow better if up to a third of the growth is trimmed now and then.

-------From left to right, below, we have chives, oregano, and rosemary.


-------Below, we have sage and dill, with petunias for color.


-------Below, we have more dill, french tarragon, and peppermint.


-------Below, we have (the french tarragon and peppermint shown again), tarragon and lavender, with basil in front.


-------Below, we have (tarragon and lavender shown again) thyme, with parsley in front.


-------The small hoses that are seen in most of the photos are part of an automatic drip watering system that is controlled by a timer. Most herbs grow well in pots, in a sandy, not-too-wet, well-drained soil. The basil and parsley like it a little wetter.

Tuesday, July 05, 2005

A REALLY Personal Computer

Years before the PC (the so-called Personal Computer) became widely known to households across America, there were a few of us that had really personal computers. In those days, we predicted that someday, computers would be sold like radios and toasters. We called this dream the appliance computer, because it would be just another household appliance. Alas, when the appliance computer arrived, the marketeers called it a personal computer, but it wasn't nearly as personal as what we had before that.

When I began my engineering career in 1959, the first job I had was designing part of a computer. Computers were a roomful of refrigerator-sized cabinets back then. Later, I designed entire computers, and the software that was used to make software. As computers became smaller, I often yearned to have my own. I once designed one that was so small I might afford to build it, but it was really a toy that wouldn't be very practical. Finally, the technology advanced to the point where a few companies made kits that allowed people with the right skills to build a computer that they could afford.

I had already built a few radio receivers and audio amplifiers from kits, so I knew I could do it. The kits included the design drawings, and I also had all of the details for all of the software. So with full knowledge of every detail of the hardware and software, I could customize the design to my liking. For various reasons, I made modifications to both hardware and software, so it was as personal as you could get.

The picture on the left shows the main computer box and its contents: the power supply, one board for the computer chip and essentials, another board for memory (RAM) , and a small board to interface to the keyboard and monitor. There was room to add more memory boards and interface boards.


I also built the keyboard and monitor shown on the left here. All of those keys on the keyboard are actually switches mounted on a circuit board.

The monitor was built with a television tube, and the circuitry handled only text -- no graphics. It could display 25 lines of text 40 characters long. I modified the design to double the display memory. This didn't display twice as much text at once. Instead I put a switch in front that selected which memory to use.


There was no hard drive, and no floppies. The only permanent (power-off) memory was a pair of ordinary audio cassette recorders. The box shown on the left here, also built from a kit, interfaced the computer to the audio recorders. The data rate was only 300 bits per second, so when it was time to load or store a program or data, you started it, took a coffee break, and hoped that it went OK. I modified this design, too.

When I finally made the transition to a new appliance computer (a.k.a. "PC"), it seemed strange to be using a computer that held hardware and software secrets. Something like driving a car that you're not allowed to look under the hood.

And for a few years, the media didn't dare mention words like "floppy", "software", etc, assuming that this was some realm of specialized knowledge, like Markov Analysis, that most people would have no idea about. Then they suddenly realized that there were many households with PCs, and it was OK to mention them to the general public.

Monday, July 04, 2005

My First Patents

Some people ask me about my inventions. So here's the story of my first two inventions, at least the first two to be patented. I'm lumping two together, because the second invention was an improvement on the first one, and because the second invention was the first to be patented, and vice versa. First, a little historic background..

The U.S. Army started using digital communication long before the commercial world, because only digital communication could be safely encrypted. A voice signal was sampled 8000 times per second, and each sample converted into 8 bits, converting the voice into a stream of 64000 bits per second. To minimize the number of radios or cables, 12 (or more) voice signals would typically be multiplexed (merged) into one signal, so that one radio or cable could carry 12 voice signals at once. The company I worked for (ITT) made radios, cable modems, and multiplexers for the Army.

A 12-channel (12 voices) multiplexer would arrange the data in 'frames', at 8000 frames per second. Since the frame rate equaled the sampling rate, each frame contained one sample from each voice channel (signal) -- 12 samples in all, 8 bits per sample, or 96 bits per frame. So a received stream of bits could be divided into 96-bit frames, the frames divided into 8-bit samples, and the samples sent to separate circuits that ultimately reached 12 different soldiers, one of which was the communications operator.

If a radio or cable modem was turned on, or had recovered from an outage, it wouldn't generally be starting at the beginning of the frame. The circuits needed a way to discover where the frame began, else those 12 soldiers might all get the wrong bits, and that would be very confusing. So they 'stole' the last bit of the frame, which was the last bit of the sample for the last channel, for a marker (called a 'synch bit') to identify the 'edge' of the frame. The 'synch bit' was zero and one on alternate frames -- an easy pattern to recognize. That left only 7 bits for each sample used by the last channel, the one used by the communications operator, degrading his voice quality, so he had to say "What was that again?" more often than the other soldiers.

A 'frame synchronization' circuit was used to find the synch bits, correcting the multiplexer's timing so that it would start at the beginning of each frame. From an arbitrary start, it would count off every 96th bit and check if it looked like a synch bit, meaning that it matched a 10101010... pattern. If it matched, it would check one frame later to verify that it wasn't an 'accidental' match; but if it didn't match, it would slip the timing by counting 97 bits (instead of 96) to the next potential synch bit.

There was a need to make the synchronization procedure faster so that communication could get started faster, and restarted faster when there was an outage. This would also make the communication less vulnerable to enemy jammers.

My first invention made the frame synchronization twice as fast, at a cost of about one more 'flipflop' in the circuit. The second invention made it even faster, using more flipflops. After many experiments, I found that the second speed-up was proportional to the square root of the number of additional flipflops. So the cost/benefits were:

1 flipflop -- 2 times faster
1+4 flipflops -- 2x2 times faster
1+9 flipflops -- 2x3 times faster
1+16 flipflops -- 2x4 times faster
1+25 flipflops -- 2x5 times faster (5 = square root of 25)
etc.

I thought the square root relationship was strange and mysterious. It illustrates the fact that inventions are generally half bright-idea and half discovery.

The first invention allowed the next bit to be examined after a mismatch -- a delay of 1 bit rather than 97 bits. The second invention anticipated the timing slips, examining the next several bits before they become the current candidate for synch bit. Later inventions dealt with the problem of noise (bit errors). These inventions helped ITT get more contracts.

Patent 3,597,539 - issued 8-3-71
Patent 3,594,502 - issued 7-20-71 - links to USPTO

Later, I was asked to sign papers when rights to use these patents were sold to various countries: Brazil, Canada, Denmark, France, Netherlands, India, Italy, Mexico, Sweden, Russia, South Africa, and Belgium. It seemed strange to sign papers in languages that I couldn't read, although there were English copies. The ones for Russia had the most paper and the most signatures. They even double-notarized some of the documents -- they didn't trust us! Years later, they must have changed the procedures, because they stopped asking me to sign such documents. I didn't really have a choice, anyway.

I guess I should esplain that when I joined ITT, I had to sign a document giving them full rights to any inventions arising from my work for them. So that's why I didn't have any choice about signing the papers. The only time ITT didn't get full rights was when the Contracts Department goofed, and one of my inventions became the possession of the U.S. Air Force.

The patent protection rights only last 17 years, so these patents have been in the public domain since 1988. And you can't get full-text copies from the US Patent Office web site, because their database only has patents issued since 1976.

Sunday, July 03, 2005

Poetry of my Youth

I wrote poetry from when I was seven until I was married and got a job. For reasons I don't understand, I stopped writing poetry after that. But I still have some of the poems from my youth. Here's one I wrote as a teenager:

My Salvation

When I confessed my guilt and sin --
When did I let the Savior in?
I cannot tell
When Jesus cleansed each stain and blot;
The time, that minute, I cannot
Remember well.

I know I pondered in my heart
Whe'er He should enter or depart.
Within my soul
I was disturbed; I could not rest
Until the Lord dwelt in my breast.
He's now my Goal.

Since then I've known of blessings great;
Since then He's taught me sin to hate
And Him to love.
In trial and danger, dread and fear,
I know He's close and very near
In heav'n above.

Yes, I accepted Christ as my Savior when I was seven year's old. I don't remember a date, but I remember praying with my Mom at the southwest corner of the dining-room table. In my late teen years, I doubted, reexamined, and then confirmed my relationship with God, and that relationship has grown steadily closer over the years.

Saturday, July 02, 2005

Prayer in the Workplace

I've always felt that there is no area of life that is off-limits for God. So during my career as an electronics engineer, I've prayed for help with the technical stuff, not just people problems, etc. It's obvious to me that God is an engineer, too. (We're always copying his designs.) So why shouldn't he be interested in engineering matters, and know how they should be handled?

I was always taking challenges that strain my innate abilities. One area of strain is math -- I'm no mathematician, but I've had to use it, and learn it, to get the job done. Mathematicians create new mathematical knowledge, and are concerned with proofs, but not so for engineers. Engineers only use math as a tool, as needed. We are content to use unproven and approximate math -- as long as it works for us. So I've learned only a few specialized areas of math that I needed, like it or not, and only as much as needed.

God often answered my prayers for help with engineering matters, but one case stands out in my mind, so I want to tell you about it. The solution may be too complex for a general audience, but as is often the case, it is much easier to describe the problem than its solution. I think I can describe this problem in not-too-mathematical terms.

The problem involved permutations -- patterns of rearranging sequences, such as changing the sequence 1,2,3,4 to 2,4,3,1. I needed to find permutations with special properties, or else find that no such permutation existed.

Imagine that I have a cube, which has eight corners, and I have attached eight labels to the cube, one label on each corner, as follows:

The four labels on the front are red; the four at the back are green.
The four labels on the left are light; the four at the right are dark.
The four labels on the top are wide; the four at the bottom are narrow.

So every label is different. For example, there is only one wide, light red label.

So here's the problem: Can I move the labels so that I still have eight labels on the cube, one label on each corner, but arranged so that ALL of the following are true? :

Two of the red labels are on the front, and the other two are at the back.
Two of the red labels are on the left, and the other two are at the right.
Two of the red labels are on the top, and the other two are at the bottom.
All of the above should also be true for the green labels, the light labels, the dark labels, the wide labels, and the narrow labels.

Wow! That's a lot of restrictions! If you think that it is easy to find an arrangement satisfying all those restrictions, you are invited to get a cube and eight Post-It stickers and try it. But it is hard -- unless you make a computer do all the work.

So I put a computer to work trying all the permutations (changes of positions) -- and it made a list of permutations that satisfied all of the required restrictions. Problem solved.

cube solutionHere is one solution to the problem, in case you think it is impossible. The letters stand for Narrow, Wide, Dark, Light, Red, and Green. Pick any one of these letters, and you can see that two are on top and two at bottom, two are on the left and two at right, and two are in front and two at back.

But that was just a warm-up exercise. What I really wanted to do was solve problems like the one just described, but bigger. You see, the cube has only three dimensions: front-back, left-right, and top-bottom. I wanted to solve the problem for larger numbers of dimensions.

If you have trouble visualizing more dimensions (who wouldn't?), here's an easy trick: Just add another cube and put it behind the first one. Now we have sixteen corners and sixteen labels, and another dimension which we can call FRONT-BACK, referring to the FRONT cube and BACK cube. And we can add another pair of attributes for the labels: paper and plastic. Initially, the labels on the FRONT cube are paper, and the labels on the BACK cube are plastic. Then we can define a similar problem that is twice as big, with four dimensions. And we can do something like that again to add another dimension, etc.

Each time another dimension is added, the problem gets twice as big in terms of the number of corners and labels. But in terms of difficulty, it gets much worse than twice as difficult. It's more like the sequence:

Find a button in a purse.
Find a button in a house.
Find a button in a town.
Find a button in a state.
Find a button in a country.
... You get the idea.

So in the first case, my computer found a solution in a few minutes. The next problem took a few hours. Then overnight for several nights. Then I started using my 'multi-processing' setup, where as many as 60 computers on the company network applied their 'spare time' (mostly overnight) for a week or more to solve the problem. I optimized the program to take advantage of symmetries, but I couldn't go as far as I wanted, because the work was growing too fast. I didn't have a million computers and a million years.

I needed real math, not a brute-force search. But I didn't know any math that would help. I didn't even know the language to be able to search for whatever specialized math might be applicable to such an odd problem. I was in need of prayer, and I had been praying.

I sometimes pray while driving. (If it weren't for my guardian angel, it would be as dangerous as using a cell phone.) I was driving home, pondering my growing problem and praying, and an idea came to me. Perhaps I could somehow merge two smaller permutations to make a larger one that worked (satisfied all the restrictions). After finding a bunch of permutations that work for say, five dimensions, I could try merging pairs of these and see if I can find one that works for six dimensions. But how do I merge them? And would this tactic work? This wasn't real math -- just guessing; but it might work.

I guessed at a merging function, and tried it. It didn't work all the time, but just by picking smaller permutations randomly and merging them, the computer could find larger permutations quicker than before -- very much quicker. Problems that took 60 computers several nights to solve now were solved by one computer in less than a second. And problems that would have needed a million computers and a million years were now solved by one computer in less than a minute.

I know I'm not that smart. I know God answers prayer. Even for weird math problems.

Friday, July 01, 2005

Early Lessons in Prayer

Being brought up in a Christian home, I learned about prayer at an early age. And I found that you really learn about prayer not by being taught or by talking about it, but by experience.

The earliest experience I remember was when I was four or five years old. I was laying on my back on the bottom level of a bunk bed that I shared with one of my brothers. I was supposed to be getting to sleep, but instead I was thinking about what I'd heard in church about God answering prayer. I had a piece of tin-foil, and I rolled it in my hands as I wondered how prayer worked. They said you could ask things of God, and he would answer you. He could do anything, even things that were impossible for people. I squeezed and rolled the tin-foil, making a little shiny ball. I ought to try this; see if it really works.

I looked at my little ball. It looked like silver, which I heard was expensive, but I knew it was just cheap tin-foil. I heard that gold was even more expensive than silver. A gold ball like that would be quite valuable. I could ask God to turn it into gold. So I tucked my little ball into the sheet under the mattress above me, and asked God to turn it into gold by the next morning.

Next morning, I looked -- it was still tin-foil as before, and I pondered why God hadn't changed it. It wasn't because he couldn't -- after all, he had created the whole world. He just didn't want to do it. It obviously wasn't important to do; it was only for my entertainment, I realized. So I concluded that God didn't want to be a magician that entertained people with miracles. He must reserve miracles for important occasions.
____________________________

The next prayer experience I remember was when I was six years old. My oldest sister had recently married, and was now living across town. My Mom and another older sister were explaining to me where it was, relative to the school that I walked to. "You could walk over there and visit her, see her new house", they assured me. "Just walk past the school, and take the next left." They described landmarks and drew a map to make it clearer to me. Finally I was convinced that I could do it. If I couldn't find the house, I would just walk home.

I got to the right street, but finding the right house was a problem. They had given me details describing the house, but it seemed to me that many houses on the street came close to fitting the description. There were so many details, and I think I forgot a few. I walked up and down the street comparing houses to the details I could remember. Finally, I gave up. I would have to walk home and confess my failure.

But I had reversed my direction so many times, now I wasn't sure which way was the way home. I had walked a long way from the end of the street where I started, and there were no side streets, just houses. It was a clouded day, so I couldn't see the sun. Whichever way I walked, I had the nagging feeling that I could be walking further from home and would only have to walk the same distance again. "How could I ask any one to help me? They don't know where I live", I thought.

So I prayed, asking God to help me find my way home. After I prayed, the thought came to me: "All I need to do is find out which way is south. People here would know which way is south." So I found some kids in front of their house, and asked them. "I'll go ask my Mom", one of them said. When they came back out of the house, they pointed down the street: "That way."

So I found my way home. As I passed the school, I thought "God does answer prayer -- when it's important."