Casting poems into hexadecimal
The hex numerical system is indispensable in modern computer art and science. It is used to define colors, allows forensic data scientists to explore and visualize binary files, helps you count up to 272 with the digits of your hands’ fingers, and yields highly descriptive representations of unicode characters that cannot be decoded with ASCII. All the more should it be a priority to establish it in the artistic métiers; in other words: as a new poetic form.
As it is with elevenies and haiku, the hexadecimal poem must, in contrast to previous attempts, obey a certain set of rules:
- It must consist of 16 lines with 16 ASCII characters each. If non-standard ASCII characters are used, an extended character set may be employed, e.g. Latin-1.
- It must be formatted as common hex editors would: Each line consists of three parts that are separated by four spaces. The first part enumerates the number of ASCII characters of the poem at the end of the line with a hexadecimal number as an eight-character string (leading zeros). The second part of the line consists of the hexadecimal representation of the poem’s ASCII characters, separated by single spaces. The last part of the line consists of the decoded, human-readable characters.
- The title (if applicable) is the first line of the poem.
Here are two examples. Number one will help you get started with Python.
00000010 72 69 66 65 20 6d 61 6c 70 72 61 63 74 69 63 65 rife malpractice
00000020 6e 65 77 63 6f 6d 65 72 20 73 6e 61 6b 69 73 74 newcomer snakist
00000030 64 65 6c 69 63 61 74 65 20 68 65 69 67 68 74 73 delicate heights
00000040 73 65 65 6d 69 6e 67 6c 79 20 62 6c 69 67 68 74 seemingly blight
00000050 6e 6f 74 65 73 20 77 65 6e 74 20 61 6d 69 73 73 notes went amiss
00000060 63 61 74 20 6d 61 64 65 20 6d 65 20 74 68 69 73 cat made me this
00000070 62 69 72 64 73 20 74 68 65 72 65 20 72 65 73 74 birds there rest
00000080 63 61 73 65 73 20 77 6f 6e 27 74 20 6d 65 73 73 cases won't mess
00000090 6d 75 74 61 62 6c 65 20 73 74 61 6e 64 61 72 64 mutable standard
000000A0 6d 79 73 74 69 63 61 6c 20 63 6f 6e 64 75 63 74 mystical conduct
000000B0 73 63 6f 70 65 20 61 6c 74 65 72 61 74 69 6f 6e scope alteration
000000C0 77 6f 72 6c 64 20 64 6f 6d 69 6e 61 74 69 6f 6e world domination
000000D0 6e 6f 62 6c 65 20 63 68 61 6e 67 65 6c 69 6e 67 noble changeling
000000E0 69 6e 68 65 72 69 74 65 64 20 70 69 70 70 69 6e inherited pippin
000000F0 66 61 74 68 6f 6d 6c 65 73 73 20 70 72 69 6e 74 fathomless print
00000100 66 6f 72 20 58 65 72 6f 78 20 61 20 68 69 6e 74 for Xerox a hint
The second poem is a translation of Ode to Spot to hexadecimal.
00000010 68 65 78 61 64 65 63 69 6d 61 6c 20 73 70 6f 74 hexadecimal spot
00000020 65 63 63 65 20 66 65 6c 69 73 20 63 61 74 75 73 ecce felis catus
00000030 63 61 72 6e 69 76 6f 72 65 20 73 74 61 74 75 73 carnivore status
00000040 65 73 74 68 65 73 69 61 20 66 6f 63 75 73 65 64 esthesia focused
00000050 6e 61 74 75 72 65 20 6d 6f 6d 65 6e 74 6f 75 73 nature momentous
00000060 69 6e 66 72 61 73 6f 75 6e 64 20 77 6f 72 64 73 infrasound words
00000070 6a 6f 79 6f 75 73 20 64 69 73 63 6f 75 72 73 65 joyous discourse
00000080 61 6c 74 72 75 69 73 74 69 63 20 73 68 69 6e 65 altruistic shine
00000090 6e 65 65 64 20 73 74 72 6f 6b 65 20 6d 69 6e 65 need stroke mine
000000A0 63 6f 6e 73 74 69 74 75 65 6e 74 20 74 61 69 6c constituent tail
000000B0 62 61 6c 61 6e 63 65 20 70 72 65 76 61 69 6c 73 balance prevails
000000C0 66 65 65 6c 69 6e 67 20 63 6f 6e 76 65 79 65 64 feeling conveyed
000000D0 67 6f 72 67 65 6f 75 73 20 64 69 73 70 6c 61 79 gorgeous display
000000E0 70 65 72 63 65 70 74 75 61 6c 20 61 72 72 61 79 perceptual array
000000F0 63 61 6e 27 74 20 63 6f 6d 70 72 65 68 65 6e 64 can't comprehend
00000100 73 75 63 68 20 74 72 75 65 20 66 72 69 65 6e 64 such true friend
You may download these poems as binaries here and here. If you would like to get started yourself, you could use the example script that I used.