Work

I was amused to find this in my fortune cookie last night.

For most of the last thirteen years, I have worked on IBM’s z/OS Communications Server mainframe networking product. Over the last two years I have still reported to Comm Server management but have been on loan to other IBM product areas as part of helping to lend our networking, security and high-availability expertise. I’ve only had three managers in the last thirteen years, which I think is fairly unusual.

But now I’m making the move to the IBM PureApplication System organization, where I have been working for the past year. You can think of it as “cloud in a box” (although this is both a little inapt and also oversimplified).

I’ll miss working with all of the wonderful folks in Comm Server. But I’m looking forward to wrestling with a new challenge.

Cube

While growing up there were a few issues of technical magazines that really captured my imagination. In the basement of the music store where I took flute lessons, there were some old Byte magazines. I remember being captivated by an article about OS/2 and Taligent, asking permission to take the issue home with me. Byte also sparked my interest in NeXT. For better or worse, this had the ultimate result that I was inspired to huddle over my PC for months to write a graphical file manager for the QNX platform. I’m not sure that anyone ever used it, but it’s still available for download.

Often we would go to the Hershey public library’s annual library sale. Several times I scooped up batches of Scientific American issues. The March 1981 issue occupied hours upon hours of my time. In this issue, Douglas Hofstadter’s “Metamagical Themas” column addressed the Rubik’s cube, and I was hooked.

Hofstadter’s article was a brisk introduction to cubology. But instead of giving a quick how-to on solving the cube, he described the underlying concepts and patterns for manipulating the cube. No solutions: only a framework for building a solution piece by piece. But this only whetted my appetite to struggle on to understand what he had to say about group theory. Hofstadter did teach me how to disassemble and reassemble the cube, which was a great help as I stumbled along. (This is not only less destructive than peeling stickers, but is actually much easier.)

Hofstadter introduced a notation for operations on the cube. Each face had a letter: F, B, L, R, U and D for front, back, left, right, up and down. Any operation on the cube could be expressed in these terms, with exponents to indicate repeated turns of the same face (positive exponents for clockwise turns, prime symbol indicating a counter-clockwise turn). So, for example, to go from Start to a simple cross pattern on each face, you could execute F²B²L²R²U²D². Another pretty pattern, which Hofstadter calls “Dots,” can be reached from Start with BF’UD’LR’BF’.

My first excited discovery was a move that swapped two pairs of edge pieces: F²U²F²U²F²U², alternately (F²U²)³. From this one operation I was eventually able to derive all of the operations I needed to solve the cube.

These are not the shortest operators by a long shot, but these are the ones I came up with. I use Hofstadter’s notation for the cubes that are affected by each operator. These rather awkwardly tend to focus on solving the bottom face; I may take the time eventually to rewrite them in terms of the upper face. And thus we come to my motive in writing this post: I can never find my “cheat sheet” when I want it.

  • Edge operators
    • Double edge pair swappers
      • (dr,dl)(df,db) — L’RDF²D²F²D²F²DR’L
      • (dr,dl)(df,db) — F²D²F²D²F²D’F²D²F²D²F²D
      • (fr,fl)(dr,dl) — F²D²F²D²F²D²
      • (fr,fl)(br,bl) — F²D²F²D²F²B²D²B²D²B²
    • Double edge flippers
      • (dl)+(dr)+
        F’L’R’B’FD’F’LF’D²F²D²F²D²
        F’L’FDF’BRLF’D²F²D²F²D²
    • Three-cycles of edges
      • (dl,df,dr) — L’DLF²D²F²D²F²D²L’D’LF²D²F²D²F²D²
      • (df,dl,db) — F²B²DR’LF²RL’U²D’F²B²
  • Corner operators
    • Double corner pair swappers
      • (dlf,drb)(drf,dlb) — L’RDF²D²F²D²F²DR’LD²
      • (dlf,drb)(drf,dlb) — F²D²F²D²F²D’F²D²F²D²F²D’
      • (dlf,drb)(drf,dlb) — L²R²D²L²R²U²DL²R²D²L²R²U²D
    • Meson makers (quarkscrews)
      • (drf)+(dlb)
        F’UFU²F’U²FL’RDF²D²F²D²F²DR’LD²
        F’U²FU²F’U’FL’RDF²D²F²D²F²DR’LD²
    • Three-cycles of corners
      • (dlf,drb,drf)+- (introduces a quark)
        RUR’BLB’L’RDF²D²F²D²F²DR’LD²
        BL’B’L’RDF²D²F²D²F²DR’LD²RU’R’
      • (dlf,drb,drf) —
        R²DF²D²F²D²F²DR’LD²R’D’R²DUL’UL
        RDF²D²F²D²F²DR’LD²L²U’LU’D’R²DL’

Hofstadter’s article inspired me to put in the effort to read his fascinating book Goedel, Escher and Bach. It is not an exaggeration, as I do here, to describe it as a romp through a variety of fields. Perhaps second only to my high-school programming mentor, I owe Hofstadter my interests in math and computer science.

If you’re interested in Hofstadter’s article on the cube, you can find it online in this anthology: Metamagical Themas.