Unicode — The Beginnings

“For me, the need for Unicode first struck about 12 years ago [1985]. While I had done some internationalization while working in Europe, I hadn’t worked on any of the more interesting scripts.  Two programmers, Ken Krugler and I were working on a “skunkworks” project in Sapporo, Japan. Our goal was to produce the first Kanji Macintosh.

Working with our Japanese counterparts was made somewhat more challenging because of the translation issues. In the best of all possible worlds, we would all have spoken a common language. Second best would have been having a technically savvy translator, experienced with software engineering design and concepts. What we actually had was one, lone Apple marketing person, who happened to be bilingual.

Imagine yourself in that situation, having to discuss how to combine Huffman encoding and run-length encoding to compress Japanese input dictionaries. We soon learned the full impact of the phrase “to lose something in translation!”

But then our translator had to leave, and we were left with just vestiges of English on their side, and miniscule Japanese on ours. We then found out just how useful a white-board can be.

Yet one day we hit a stumbling block, and were just not making progress. We had known that Japanese needed two bytes to encompass the large character set, and we had prototyped how to adapt the system software to use two-byte characters. However, we were having trouble figuring out exactly how things fit together with our counterparts’ data formats.

Remember [that] we were new to this, so it didn’t hit us right away. But all of a sudden, we could see the light go on in both of our faces: we had assumed that the standard Shift-JIS character set was a uniform two-byte standard. We were so, so wrong. You needed a mixture of single and double bytes to represent even the most common text. Worse yet, some bytes could be both whole single byte-characters, and parts of double-byte characters. We weren’t in Kansas anymore!

We persevered, and ended up producing a successful product [Apple KanjiTalk].  But — although we kicked around different ideas for a radically new kind of character set — we never did anything with these ideas. That is, not until we heard about a proposal from colleagues at Xerox for such a new kind of character set, a character set originated by Joe Becker, a character set that he baptized ‘Unicode’.”

Mark Davis, President and Co-founder of the Unicode Standard and the Unicode Consortium:
Quoted from Keynote Address,“10 years of Unicode”
September 1997 Eleventh International Unicode Conference #11 (©Unicode, Inc. 1997)


Playing with Turtle XYZ

3D Rendering has always interested me, but I’ve never taken the time to mess around with it much.

When I was a kid I used to do stuff like this in Basic.  But I didn’t know trig or other similar functions so I was left to basic math and the random functions.

Here is a little turtle program (python) that will make a wrinkled fabric type display.

2015-12-18 - B163539.png

Our new kittens

We got two new kittens from Patches! (if you did not read the blog “Our Cats” or “Kittens” click on Patches for “Our Cats” and click Kittens for the blog on our Kittens.)

We named one Oreo, and the other is Hiccup. We picked the name Oreo because she is black on the ends and white in the middle like an Oreo. We picked the name Hiccup because he looks a lot like the dragon from the movie How To Train Your Dragon but acts like Hiccup in How To Train Your Dragon.

Oreo’s personality is:

  • always wanting outdoors
  • always attacking her sister
  • running over and scratching my brother’s face at night
  • more of a hunter

Hiccup’s personality is:

  • more of a house cat than an outside cat
  • defending against attacks from Oreo
  • a protector
  • not so much a hunter

Thats all for now!


We had a litter of five kittens three weeks ago:

Screen Shot 2015-05-04 at 10.53.40 AM

Screen Shot 2015-05-04 at 10.53.31 AM

Screen Shot 2015-05-04 at 10.54.17 AM

Here they are – sleeping or nursing

Screen Shot 2015-05-04 at 10.53.58 AM

We have two “named” so far.  One is named P.J which stands for Patches Junior because she looked a lot like her mom (who is named Patches).  The other is named Dozer because he is huge and pushes the other kittens out of the way to nurse.

Here is Dozer, P.J, and the others sleeping:

Screen Shot 2015-05-04 at 11.04.35 AM

P.J. is on the top left and Dozer is the one closest to the camera (that looks like a tiger).

They all have their eyes open now, but unfortunately they were mostly sleeping when I took this picture:

Screen Shot 2015-05-04 at 11.04.21 AM

What should we name the other three?

How to Calculate Pi

π (pi) is the ratio between a circle’s circumference and it’s diameter. You can check this by using a tape measure. Measure around a circle. Then measure across the circle.

π = Around / Across

Did you know there is a way to calculate π? There are a lot of different ways, but one is called the Leibniz formula for π.


Where the original Leibniz formula for π ends up calculating π/4, I’ve just factored this 4 into the infinite series.

π = 4/1 – 4/3 + 4/5 – 4/7 + 4/9 – 4/11 + 4/13 – 4/15 + 4/17 – … (forever)

The more terms you add/subtract to it, the closer it gets to being accurate. A problem with the Leibniz formula for π is that it takes a lot of calculations to get an accurate version of pi.

Here is a mini-program I wrote in Python 3 to repeat this one million times.

pi = 0
for n in range(1000000):
  pi += ((-1)**n*4) / (2*n+1)

Here are some of the numbers from that calculation:
…999980 more times…

Here is real PI:

Isn’t it interesting that my version of PI, after a million iterations, is 1 digit off of real Pi, but the digit is in the middle? This has something to do with Euler numbers which you can read about at http://en.wikipedia.org/wiki/Euler_number .

For most practical purposes, 3.14159 is more than enough digits to use with Pi.

Ever wonder if you could use Pie to calculate Pi?