Wednesday, January 24, 2018

How to Build a Globally-Synced Fleet of Information Radiators for Under $30 Each

When the Raspberry Pi 0W was announced, I pre-ordered it immediately before even having a plan for what to do with it. Those kind of details come later when you're talking about a $10 computer with a built-in WiFi and bluetooth antenna. I still had no plan on delivery day because I completely forgot I ordered it.

But like so many other Pi projects, I found a useless proof-of-concept: Why not create a screen in my house on which anyone in the world can leave me messages?

This project evolved quickly when I realized I had an actual use for this in the workplace and could expense the $10. We could use this to build a company-wide "looping stats" monitor known as an information radiator that would display current events, stats, new hires, lunch menus, a gif-of-the-day, new fires, and everything else you'd want to catch out of the corner of your eye while getting coffee in the break room or walking past the Dev department's cave.

Ultimately, we created 10 of these devices and shipped them out: 4 for our Atlanta headquarters, 2 for Chicago, 2 for London, and 2 for Mangalore, India. In each batch of devices, we simply needed to modify the WiFi router name and password to match the network of the office. All 10 devices show the exact same information at all times.

The beauty of this project is that you are creating a series of synced devices that require almost no setup by the end user. They'll run off the USB power of the TV they're plugged into, so they boot when the TV turns on, and within a minute, they're displaying the most current information.

That information is maintained in a cloud-based collaborative Google Slides presentation that autosaves, and each device is configured to grab the newest slides periodically. You can give any number of users access to the presentation—either locked down via password or fully public and anonymous—to collaborate on the content displayed. They simply need to make changes to the slides and within minutes their content is displayed on all your information radiators worldwide.

Gather Your Hardware

For each device, you'll need:
  • Raspberry Pi 0W ($10)
  • Micro SD Card with 8GB capacity ($6)
  • An HDMI adapter ($3)
  • A USB cable ($3)
  • An HDMI cable ($5)
To set up each device, you'll need:
  • A computer with an SD card reader
  • a Micro SD to standard SD card adapter (usually included with SD card)

Gather Your Software

First, we'll get the Pi's operating system, called Raspbian. At the time of writing, the newest version of Raspbian is Stretch. You must use the full version of the operating system—not the Lite version, as it doesn't have the critical tools that are required to get the Pi set up to run in kiosk mode. You should be able to find the newest version of Raspian here.

Next, we'll need software to flash the image of the operating system onto your SD card. I highly recommend Etcher, which you can download here for OS X, Windows, and Linux.

Install Raspbian on Your SD Card

If you're like me and you ripped a micro SD card out of an old mobile phone with a cobwebbed screen, there's likely to be stuff on it. I recommend putting it in the standard SD adapter, plugging it into your computer, and making a copy of its contents to preserve all those amazing photos you're still getting around to revisiting, because this process is about to nuke all of it forever.

Now launch Etcher. Most likely, it already selected your SD reader as the drive to mount onto, so you'll simply need to select the Raspian .zip file you downloaded and click the Flash! button. (Good news: This GUI-enabled imaging tool actually has a progress meter, so you don't have to wonder whether it's working.)

Create a Google Slides Presentation

The presentation you're about to create will be the final "production" location of all content that will be displayed on your globally synced information radiators. If you have a Google account and are logged in already, simply go to Google Drive and click NEW > Google Slides > Blank presentation. (If you need to sign up for a Google account, you can do so here.)

Give the presentation a title like "Information Radiator" and type a good ol' "Hello World" into the title on the first slide. That's all you need to do for now. Once this whole thing is set up and you've confirmed that it's updating, you can start building content.

Now let's publish this presentation so it's accessible by our Pi via the web and get the embed code. Go to File > Publish to the web and select the Embed tab. Enter the following information:
  • Slide size: Large
  • Auto-advance slides: "every 10 seconds" or greater is recommended
  • Check "Start slideshow as soon as the player loads"
  • Check "Restart the slideshow after the last slide" to enable infinite looping
Click Publish. Next, copy and store the embed code provided in the box below.

Create the HTML File to Be Displayed By the Pi

In the end, the only thing your Pi is going to actually do is power on and display a local webpage. We'll need to make this HTML file from scratch, but it'll be 100% copy/paste. Open a new, empty text file or project in an HTML editor.

1. Define the Head of the HTML file

Enter the first two lines to ensure the Pi's browser reads the file properly:

2. Add a meta refresh tag to enable auto-updating

Enter the following line to instruct the Pi's browser to hit the refresh button for you periodically so that it pulls in any modified slides from our Google Slides presentation:
<meta http-equiv="refresh" content="30">
The value entered in the "content" parameter indicates the number of seconds between refresh. For now, let's leave this set at 30 seconds for testing purposes. In the end, we'll change this to something more realistic, such as 900 for a refresh every 15 minutes.

3. Reset the Style Sheet

Your Pi's browser may assign its own styling to your presentation, so we're going to use a great big block of code to ensure no styling rules are provided. Paste the following <style> section into the HTML file starting on the next line:
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
body {
line-height: 1;
ol, ul {
list-style: none;
blockquote, q {
quotes: none;
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
table {
border-collapse: collapse;
border-spacing: 0;
html { overflow-y: hidden; overflow-x: hidden; }

4. Close out the header and start the body

Add the following two lines to the HTML file to end the definition of the header content and begin the definition of the body content:

5. Paste in the presentation's embed code

Remember the embed code Google Slides gave us earlier? Now's the time to use it. Paste it in directly under the <body> tag.

6. Close out the HTML file

Add the following two lines to the bottom of the HTML file to close the body section and complete the entire HTML file:
Save the HTML file to the root folder of the SD card with a name like "kiosk.html". (You may need to remove the SD card and insert it again for it to be recognized by your computer.)

Enable the Pi to Be Controlled by Your Computer

By default, Raspbian is expecting for you to attach a keyboard, mouse, and whatever else you need to the Pi. And while the Pi 0W is enabled with a bluetooth antenna, none of this is necessary if you have an SSH tool at your disposal. More on that in a minute.

Rather than hunt down all that hardware, we'll simply connect the Pi to the computer via the USB cable in a few moments when we boot it for the first time, then open an SSH session to the device to allow us to use our computer's keyboard to complete programming the Pi to be an information radiator.

To enable the Pi's OTG mode (On-the-Go) to control it over USB, we'll need to modify three things in the root folder of the SD card.

1. Add "dtoverlay=dwc2" to config.txt

Edit config.txt in the root folder of your SD card. Add the following line at the very end of the file and save:
2. Add "modules-load=dwc2,g_ether" to cmdline.txt
Now edit cmdline.txt in the root folder. Just as before, add the following line at the very end of the file and save:

3. Add the "ssh" file to the card

By default, SSH sessions are disabled as a security precaution, so you'll need to manually override this by creating an empty text file called simply "ssh" (with no extension!) in the root folder of the SD card. This tells the Pi that SSH is authorized when it boots.

Connect to the Pi Via USB Cable

Now you're ready to log in to the Pi for the first time. Eject the SD card and put the Micro SD card into the proper slot on the Pi. Connect the USB cable to the port marked USB and not PWR and plug it into your computer. If you're on a Mac, open Terminal from the Applications. If you're on a PC, you can download Putty to open an SSH session.

Type the following command line into the terminal:
ssh pi@raspberrypi.local
The terminal might ask you to add the Pi to the list of known hosts; just type "yes" and hit Enter. If you instead see a really, really scary warning, you may need to locate and delete the known hosts file on your computer and try this step again.

When prompted, the default password for the Pi is "raspberry". You might want to change this at some point, but just leave it alone for now.

Connect the Pi to Your WiFi Router

The Pi Zero W is such a big deal because that "W" stands for WiFi. This is a fully functional computer with a WiFi (and bluetooth) antenna built in for $10. Now let's use it!

Type the following command line into the Terminal window to scan for WiFi networks:
sudo iwlist wlan0 scan
In the deluge of information that follows, scroll back up to where you typed in the command line and look for the ESSID value that matches the name of your router. Hopefully, since you're closest to it, it'll be listed near the top. Make a note of exactly how it's spelled here.

Now we'll open the WiFi definition file in the Pi using the built-in text editor. Type the following:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
At the bottom of the file, enter the following lines, supplying in your router name and password where indicated in red:

Hit Ctrl+X, type y, and hit Enter to save the file.

Within a few seconds, your Pi should connect to the network.

Install the Chromium Browser

Now we'll need to enable your Pi to display the HTML file you created. Raspbian doesn't come with a browser, so we'll need to install Chromium. Fortunately, we can do this using a command line now that the Pi is connected to the Internet:
sudo apt-get install chromium-browser
Downloading and installation should take a few brief moments. Next, we'll need to ensure it installed the configuration we want—called "unclutter"—which basically removes the mouse cursor from the screen.
sudo apt-get install chromium x11-xserver-utils unclutter

Set the Pi to Boot into Kiosk Mode

Last step! We just need to configure the Pi to display a website as quickly as possible. Type the following command line into the terminal window to edit the autostart file:
sudo nano /etc/xdg/lxsession/LXDE/autostart
First, disable the screensaver by commenting out its line. Simply add a # before the @xscreensaver line.

Next, add the following lines down below, replacing the file referenced in red with the name of your HTML file if different:
@xset s off
@xset -dpms
@xset s noblank
@chromium --kiosk --incognito kiosk.html
Hit Ctrl+X type Y, and hit Enter to save.

Let's test!

Test the Information Radiator

Unplug the Pi from the computer. Plug your HDMI adapter into the proper port on the Pi and connect it to an HDMI cable. Plug the USB and HDMI cables into your TV, turn it on, and make sure it's set to the proper input. It might take a few moments, but the Pi will soon boot directly to the local file, which loads the embedded presentation straight from the web.

Any changes you make to your presentation will be pulled in the next time the browser refreshes, so make sure your refresh interval is longer than at least one cycle through all the slides. You could even time it so the refresh interval is the exact number of slides multiplied by the number of seconds each slide is displayed, but if anyone ever added or removed slides you'd have to change the refresh, too.

We cheaped out at the end here. Cases for the Pi 0W kicked the cost up significantly, so we simply left the cards in the static bag they came in with the wires sticking out. As it turns out, this little guy just hangs, suspended by its own HDMI and USB cables attached to the TV, completely out of sight. And all our staff has to do is turn the TV on to boot it.

Monday, October 22, 2012

Day Trip: Burt's Farm

When you drive up into the north Georgia mountains during leaf season, expect to be pissed off. The two-lane roads aren't built to handle the jillions of Atlantans making the short trek up there to see leaves die and change colors. It's the asphalt version of an arterial plaque, but you can't just shove a balloon down the double yellow line, inflate it, and blow all the cars off the road.

So there's one thing you need to know when you drive 90 minutes out of your way to buy pumpkins: leave as early as possible. That's what my family managed to somehow do by a miracle last weekend as we headed up to the far end of Dawson County to go to Burt's Farm.

What's so special about Burt's Farm? An enormous field of pumpkins of all shapes, colors, sizes, and deformities. Those little tiny pumpkins you find at the grocery store that are too small to even carve, but half the price. F'n huge pumpkins that you can't even fit in the back of a pickup truck. Pumpkins that look like they have herpes. Vampire pumpkins. Corn. Oh, and hayrides.

Where's the corn maze, you ask? Take your pick. Burt's doesn't carve a maddening and panic-inducing corn field you intentionally get lost in while wondering if you'll ever find a bathroom again because they don't have a corn field. But if you really want that kind of experience, there's at least 10 on the way there.

Like I said, my family, now involving a 1-year-old, miraculously left the house before 9 AM in order to beat the rush to Burt's, which set a record for efficiency that I'm sure we will never repeat. We took the long way up there, going all the way to Ellijay, then East Ellijay, before missing the turn onto Highway 52 and going way, way too far and turning around. Once we found Highway 52, it was all good because we followed it east until it ends, veered left, and saw the farm on the right. (There are more efficient directions detailed below, although more complicated and scenic.) When you get there, you won't miss it, and the reason is because you've been driving through rural Georgia for a seriously long time and you've suddenly come across the Dawson County version of Disneyworld. Shiny metal vehicles glisten in the sun, packing the parking lot directly in front of the entrance. Patrons from 5 to 90 push around wheelbarrows full of inedible fruits. Port-o-potties as far as the eye can see. A man waved us on while standing next to a sign that said "LOT FULL".

The place looked packed, and it was barely 10:30 on a Sunday. Why weren't all these people in church? The answer came to us later when church let out.

Fortunately, Burt's has two overflow lots: one paved, one grass. Seemed like there was plenty of parking even though the grass lot was full. We found a space, jammed our son into a stroller, and headed down the hill to the entrance.

There was no entrance fee. We strolled straight into pumpkin heaven (or hell, depending on how much you like white people with children). The smell of incredible food was everywhere. Pumpkin pies. Pumpkin popcorn. Pumpkin hot dogs. I'm not sure all those things existed but it sure smelled like it. If you already over-indulged in pumpkin-based foods this year, you'd want to puke, but you'd appreciate the aroma while yacking.

This was not necessarily a stroller-friendly place because of the rough terrain and foot-based traffic congestion, but I had an epiphany as I watched all the veteran white people with children. What do little kids like more than being pushed around in a wheelbarrow? So we obliged my small child and set him down in one with the stroller folded up next to him. Best idea ever.

A massive line of people waiting for the hayride bisected the farm. We didn't touch partake because we didn't want to be stuck there all day even though the prices were decent. At $4 per adult, $3 per child, and $0 per child under a year old, the whole family could ride for a single bill. I don't know what's so fun about sitting on hay and driving through the woods, but it looks like lots of people truly enjoy it, so if that's your thing, have at it. Just make sure you do that first before putting pumpkins in a wheelbarrow, because I imagine people get pissed if you abandon your 'barrow and leave it sitting around in valuable 'barrow-driving real estate while you sit on hay and ride through the woods.

The line for the hayride

By the time church exploded its patrons upon Burt's Farm, the line had backed up all the way to the entrance, making it difficult to 'barrow from one side of the farm to the other, so we grabbed up our pumpkins and headed for the checkout line. We bought:

  • One 5-pound blue pumpkin
  • One 5-pound yellow pumpkin
  • One 4-pound herpes pumpkin
  • One 3-pound exploding-alien-pumpkin
  • Four tiny UFO-shaped orange pumpkins
  • Four tiny UFO-shaped white pumpkins
  • Six ears of petrified corn

And all that only cost us $36 after tax. I know that sounds like a lot of money to spend on inedible fruit, but check out your local church-parking-lot pumpkin patch and you'll see that they're charging more. Plus, that's not a likely place to find a wide selection of herpes pumpkins.

By the time we left, Burt's was going parking bananacrazy. Cars were doing the creepy Christmastime mall parking lot crawl, stalking people to their parking spaces and waiting patiently for parents to pin their kids down into 20-point harness safety seats. And leaving was a disaster, too, as it took us five minutes to turn left onto the two-lane road that suffered under the stress of a million families headed to the pumpkin patch who couldn't get the kids together before noon.

  • Take I-75 north from I-285 and veer right onto I-575 north
  • When I-575 ends at the Pickens County line, continue north on Highway 5
  • Go past the roads that lead to Jasper (Industrial Blvd. and Highway 53)
  • Turn right on Antioch Church Rd. and immediately right onto Talking Rock Rd.
  • A few hundred feet later, turn left onto Highway 136, going through downtown Talking Rock
  • Veer right at a split not long afterward (do not veer left onto Whitestone Rd.)
  • At the T-intersection, turn right on Jones Mountain Rd. (this is still Highway 136)
  • At another T-intersection, turn left onto Burnt Mountain Rd. (still Highway 136)
  • Enjoy the mountain view and your ears popping as you drive a long, long time on this road
  • When it ends, turn left onto Elliot Family Pkwy (Highway 183)
  • Veer right at the split onto Highway 52
  • Go exactly 1 mile and Burt's is on the right

Wednesday, October 17, 2012

Whatever Happened to Picture-in-Picture?

As I watched yet another house hunting show with my wife, despite having bought our house more than a year ago, something I used to say all the time came back to me. A couple was negotiating down on a house, feeling that they were getting a good deal at $435,000. This in itself is not totally outrageous, unless you live in Atlanta, but the fact that they were buying a one-bedroom condo nearly made me vomit. It wasn't in New York City. It wasn't in SanFran. It was somewhere like downtown Oklahoma City. They immediately gutted the brand new kitchen and trashed the marble counter tops because they were the wrong color. Didn't even attempt to recycle them at all!

I then turned to my wife and said "When they show stuff like this, there should be a picture-in-picture of an African kid with flies on his face, and a subtitle that says 'Meanwhile in Africa, this kid walks 6 miles a day for water that doesn't give him horrific diarrhea!'"

"You say that all the time," she responded, which may have previously been true, but no longer is. But I couldn't help thinking about it. As we watch our first-world problems on television, like the $3500 wedding dress that's not quite right, how much would it change our perspective to have that small child with fly apathy staring at us from the corner? He doesn't do much in heart-tugging commercials for opening our wallets, but giving us the stinkeye all day while we watch white people lament over the bottled water brand that the convenience store doesn't stock might make us appreciate what we have a bit more.

Watching two shows at once in the 90s
Then I got off my internal soap box as I became distracted by that archaic concept of the picture-in-picture. Suddenly, I realized that I haven't seen one in years. And why not?

First, let me refresh all the millenials on what PIP is. Back in the day, we were sufficiently obsessed with television to watch two television stations at once. This was extremely useful for watching Nascar, because you could leave the cars zooming left in a tiny box in the corner while you watched something funny. Yep, you could catch up on Friends while watch Dale Earnhardt take the lead.

Picture-in-picture was a feature of higher-end TVs that placed a tiny box in the corner of the screen displaying another channel. You could switch between the two with the PIP button on the remote, or display and remove the box. Most people used it for amusing themselves with something else while commercials played on the program you actually intended to watch. With the commercials silently droning away in the corner, you could be entertained while keeping an eye on your program and seeing when the commercials ended and the program came back. So what offed this genius idea?

  1. The Internet. Instead of watching another program, lots of us sit in our living rooms with our laptops and iPads, finding an alternate way to amuse ourselves until the program comes back.
  2. DVRs. With the main program recording on another channel, it doesn't matter if you miss the end of the commercial break, because when you switch back, you can just rewind it.
  3. Cheap, flat TVs. PIP was useful in sports bars for showing Nascar juxtaposed with baseball, but now we just put 50 TVs in one room because they weigh hardly anything and cost even less.

DVD bonus features
So it looks like picture-in-picture isn't making a big comeback anytime soon. In fact, the only new use for the technology appears to be DVD/Blu-ray special features that utilize it to show video in the corner of the screen while a movie or television show is playing, allowing a talking head to spew facts at you. Neato!

But with all those ads and watermarks television stations put at the bottom of the screen these days, surely they can spare some real estate for a fly-covered kid. It might make you appreciate your toothbrush a little more.

Monday, July 23, 2012

Daytrip: Babyland General

What began as a sunny Saturday with a 30% chance of rain turned into a raging 5-hour storm that downed trees and ruined our daytrip. I had planned to explore the legendary tourist traps of White County, Georgia, but was locked in at Babyland General, the faux maternity ward where Cabbage Patch Dolls are born.

The drive to White County from Atlanta is longer than you'd expect by looking at a map, but if you watch any 90 minute comedy on the way up, the drive will be over before you think to look at the road. You jump on highway 400 going straight north from the city and slam on your brakes as hard as possible when your 80 mile per hour drive on a limited access highway suddenly has a red traffic light in the middle of it. Meandering through Dawsonville, you decide not to stop at the outlet mall or get any fast food. Then 400 ends, and you continue straight up route 19 to highway 52, where you turn right for the first time, arriving in White County a few miles later.

It was at this point that my wife's iPod had randomly selected to play "East 1999" by Bone, a hilarious rap song I had ironically placed on it to remind her of middle school.

"Cleveland is the city where we come from so ruuuuun," it repeated, made even funnier by the "CLEVELAND CITY LIMITS" sign we passed on the way into our first intended destination of the trip.

Dark storm clouds loomed to the north. The plan was to hit up Cleveland first, visiting the incredibly cheesy doll factory, eat at the fabled Ma Gooch's home cooking restaurant, and then travel a few more miles up to the Bavarian city of Helen to browse chocolates and throw garbage into lederhosen-adorned trash cans. But the storm had other plans.

My son needed to eat, so we stopped in a drug store parking lot and fed him his lunch as I watched the storm overtake the sun and turn day into night. White County residents, all appropriately white, walked barefoot across the asphalt with dogs off the leash.

"Look! A mexican!" a small boy shouted. I looked, and saw a hispanic man riding a bike down the street.

"Look, a horrific storm," I said to my wife as I put the car in gear and proceeded toward Babyland General. The downpour began as we walked through the front door of the building and entered into a wonderland of marketing hell.

Wow! Quincy Jones!
In 1978, a 23-year-old art student named Xavier Roberts from Cleveland developed a line of baby dolls he called Little People, and began producing them in an old medical clinic in his home town which he named Babyland General. Despite being a relatively small operation, by 1982 the recently renamed Cabbage Patch Dolls were a nationwide fad in high demand. The utter popularity of the dolls brought visitors from across the country, including untold numbers of celebrities immortalized on the celebrity wall (now located next to the bathrooms). By the end of the millennium, almost 100 million dolls had been sold.

Of course, the fad slowly faded away, but Babyland General was always yet another thing for daytripping Atlanta tourists to see on their way to Helen. The centerpiece was its Magic Crystal Tree that a Licensed Patch Nurse would deliver a new baby from once an hour, pulling it from the cabbage patch and allowing the visitors to name it. I remember my trip there as a child, roughly six years old, with my friend Jared from Missouri.

"Who would like to name the baby?" the LPN asked. Jared raised his hand.

"Jared!" he shouted. The baby was then given a middle name by another audience member, and was eventually sold to someone who gave it its last name.

Babyland General also featured numerous other rooms, such as the nursery for newborn babies, the intensive care unit for premature births, the school house, a bridge over an indoor creek, glowing crystals everywhere, and many more things that are incredibly magical to a child and horribly cheesy to an adult.

Oops, the Earth disappeared
We were standing in the lobby, happy to have dodged the cold rain, inside of the new $2.5 million mansion that sits on 600 acres of land. If the old building was a tiny used medical facility near the Cleveland square, this massive compound just outside of the city limits would have to be spectacular, right? We moved through the entrance and into the nurseries.

Three small rooms contained rare Cabbage Patch Dolls, all for sale, generally in the range of $300. We passed through the nurseries, excited to see the Magic Crystal Tree and all the other fantastic treasures that awaited us.

Instead, we exited into the ultimate gift shop. If you've ever been to Disneyworld and ended up in a huge gift shop at the end of a ride, you know exactly what I'm talking about. It was a massive room filled with stuff to buy. Around the perimeter were glowing crystals with dolls in various states of birth from the cabbage patch, moving via electric motors. A school bus filled with dolls stood in the middle of the room. The birthing tree was visible from every corner of the room.

An announcement was made that a baby was dilated at eight leaves and that we should all head to the center of the room to witness the birth. An LPN gave the same speech that had been told for thirty years, birthed the baby, and then asked if anyone wanted to name the baby. An excited adolescent girl waved her hand vigorously in the air.

"BAAHHAN!" she shouted in excitement.

"Uh, I'm sorry, what was that?" the LPN asked.

"BAHHNK!" she again excitedly yelled.

"Hold on, I think I'm getting some feedback," he said, and turned his microphone down.
Banks and his unfortunate hair

"Banks," she quietly said.

"Okay, Banks? Banks, and a middle name? Simon. Everyone say hello to Banks Simon!" We all applauded, except for my son, who sat on my shoulders and had no idea what was happening.

We continued to peruse the gifts as the storm raged outside, held captive by its relentless downpour. Not everything was CPD-related; the store held Legos, Sesame Street characters, and a wide variety of third party merchants' products that had contracted to be held inside this gigantic gift shop. We went to the nursery to see young Banks Simon placed in the window, and then gave up, bought a $5 caterpillar that my son wouldn't let go of, and I pulled the car around to bravely rescue my family from the store and storm. It was a long drive home.

Both my wife and I had remembered a much better experience at the old Babyland General. There seemed to be more character, more things to be awed by, more of the spirit of the original shop that cranked out the fixed-gaze dolls with yarn-like hair. The new, $2.5 million mansion on 600 acres was a massive disappointment compared to the old medical-building-turned-doll-shop. But at least it was free.

Or maybe it's still magical to children.

Tuesday, May 29, 2012

Torq's Field Guide to Fonts

"What is this font I keep seeing everywhere?"

Ever notice that you see the same fonts everywhere you go? No? Well, I do. And I verbalize the experience often enough that my wife gets annoyed and violently twists my nipples every time I point at a font and shriek its name.

There's at least a few good reasons that these fonts have stood the test of time and become so wildly popular for marketing and design. Though being bundled with Microsoft Office is one of those reasons, they're also just well-made and highly applicable.

The bad part of this is overexposure. Sure, you may not notice Helvetica everywhere you go, but Curlz sticks out like a 12-year-old girl's flowery-painted thumb. It's a bit like using the same word over and over again. I mean, there's only so many times you can say "cabbage" out loud before it begins to sound weird, and then completely lose its meaning.

However, you might see a font while riding around on your dirt bike and realize that it's perfect for your PowerPoint presentation, wedding invitation, emancipation proclamation or whatever else you're currently working on. And the deadline is in 6 hours because you procrastinated so badly. And the guy at the bus stop is too concerned about you riding your dirt bike on the sidewalk to offer you any help identifying the font.

So here's my Field Guide to Fonts. It's like identifying leaves out in the woods or inverted insects on your windowsill, but in true word nerd fashion, it involves letters.

Copperplate Gothic

You'll see it anywhere that a classy all-capitals font needs to be used. Signs, t-shirts, websites, book titles, and everywhere in-between. Copperplate Gothic is clearly legible from a far distance because of its wide letters and uppercase-style lowercase letters (a typography style called "small caps.")

This classic typeface dates all the way back to 1901, when Frederic Goudy created it for the American Type Founders. The glyphs are intended to resemble carving or etching into metal or glass. Now that you've read this, you will actually see it carved or etched into metal or glass everywhere you go.

Crimefighter BB

You can make anything feel like a comic book by using this classic handwritten-style font. It gets its roots from the Marvel Comic classics of the mid- to late-20th century.

Lots of people think that Comic Sans would fill this role, but it doesn't, and most people hate it. While Comic Sans is seen as a trademark of poor design skills, Crimefighter BB is seen as a secret weapon.


Omigosh it's so cute! You might think that these characters had been lifted straight from the pages of a middle school girl's math notebook if I didn't know for a fact that two grown men whipped it up in 1995 for Agfa Monotype.

These were the times when many typefaces that had been popular for centuries were still being converted to vector models for use in home word processing. Carl Crossgrove and Steve Matteson noticed a significant lack in the market for girly fonts for girls that girls everywhere would print entire book reports in, and so began a trend of wacky out-there typefaces.

It's one of the most popular fonts for signs because of its lighthearted nature and easy legibility from far away. And if you never noticed it before, you're going to now. Sorry.

Hill House

Due to its erratic and high x-height and popularity on signs visible from roads, I've dubbed Hill House the new Papyrus. (You'll know what I mean if you read the snarky Papyrus entry below.)

Jon Hicks didn't want to just use Papyrus for his wedding invitations. How could a graphic designer allow that to happen? And for a marriage to another graphic designer, too! Nope, he could handle it himself. It was time to try his hand at typography and create something brand new.

The result was Hill House, an uppercase-only typeface based on the handwriting of renowned architect Charles Rennie Mackintosh, completed in 1997 — just in time for the Hicks wedding invitations to be mailed out at 29 cents a piece. Hicks went on to create all those sassy monsters you see gleefully chomping things on the Firefox website.


This font doesn't generally live up to its name, because it's clean and doesn't carry a bindle. However, much like the nomads of the American railroads, it's been everywhere.

Hobo was cranked out of the American Type Founders factory thanks to typeface magician Morris Fuller Benton. In 1910. NINETEEN-FREAKING-TEN. You can imagine that this font looked like space robots to the people of that time. Yep, people wanted something that looked like a typewriter, which translated into very official-looking serif fonts. Hobo didn't catch on until relatively recently.

It's serifless like most fantasy fonts, which makes it ideal for large print. Couple this with its friendly, curvy lettering, and you have the perfect typeface to use for a sign or poster. Want more business, but can't afford a graphic designer? Print your store's sign in Hobo. And now you know why that happens so often.


So you want the ultimate throwback font, eh? What screams 1980s nostalgia more than your standard, uppercase-only monospace video game font, pixels and all?

Joystix looks like it was screenshot straight off a Ms. Pac Man machine, which is almost exactly correct. Ray Larabie pieced together this font pixel-by-faux-pixel to recreate a typeface you'd see in just about every early video game — specifically those on the NES. Then he went on to be hired by an actual video game company. (See Pricedown.)

From the jagged A to the angled exclamation point, this font makes you want to go punch Donkey Kong in his stupid smug face.


Also known as "Matisse ITC", this typeface was produced in 1995 by the International Typeface Corporation who have since eaten Letraset (owners of Papyrus) and Agfa Monotype (makers of Curlz).

Despite being an erratic and not particularly attractive font, it's got its share of fans who reportedly like its schizophrenic design. Unfortunately, it tends to look a lot like squiggles from far away.


A favorite of apartment complex signs worldwide, this is one of the oldest fonts in our field guide. Each glyph was hand-drawn by Chris Costello in 1982 using a calligraphy pen. He wanted to create a typeface that would embody the scribing methods from two millenia ago using English characters.

Any time a classy, yet somewhat whimsical atmosphere needs to be conveyed (think apartment complex signs), Papyrus is a viable option. It's such a ready-to-go artistic font that many high-profile individuals and corporations will simply type their name out using the font without changing much of anything. (See Edible Arrangements.)

Unfortunately, the font has become so ubiquitous that it's earned it place in the Graphic Designer Hall of Hatred. Even Costello himself has lamented its overuse.


Looking at Pricedown gives me this incredible urge to walk up to the nearest automobile, swing open the door, throw the driver on the ground, and run him over with his own car. It's not that I'm a bad person. It's just that this font is most well-known for being the main font of the ultra-popular Grand Theft Auto series.

Ray Larabie was the resident typographer at Rockstar Games during the early days of the series' heyday, and created this font to capture the feeling of legendary game show The Price is Right. I'm still not sure what that game show has to do with extreme criminal activity, but I'm sure the link is in there somewhere.

Thursday, May 3, 2012

Using "%s" Bookmark Shortcuts in Firefox

I sit at a computer from 7:30 AM to 5 PM. Seems like I have an awful lot of time to get stuff done, right?

Despite this, I'm always looking for ways to make my job faster and more efficient so I can spend more time as an amateur cartogrophile with Google Earth. Sometimes I just can't stand to spend all that time spelling out the entire word "thesaurus" to go to

As a writer, I need an endless supply of synonyms to keep me from losing my mind. But man, I hate that word! And I hate having to visit the home page first to do a synonym query! If only there was some way to skip directly to the results, straight from the browser's address bar, without having to type out "thesaurus" yet again!

As it turns out, there's a simple way to do this with Firefox. If you're not using Firefox, then good for you—unless you're using Internet Explorer, in which case, please use Firefox.

Whenever you do a search query on, or Google, or Amazon, Youtube, Wikipedia, or just about any other site, you're redirected to a URL that includes your search keywords. For example, if I search for "yay," I'll be redirected to this URL:

I can bookmark this resulting URL, using the variable "%s" in place of "yay", and apply the keyword "the" in the Bookmarks folder to spawn this bookmark. Now, I can go to the browser's address bar and simply type "the yay" to get the same result. Way faster!

Here's how it works:

In the Bookmarks library, you can supply a keyword for each bookmark. These keywords can be typed into the address bar to take you directly to that bookmark. Anything typed into the address bar after the keyword will be inserted into the bookmarked URL wherever %s is.

Here's how to do it:

Go to a website and do a search. Bookmark the resulting URL by going to Bookmarks > Bookmark This Page.

 Now go to Bookmarks > Show all Bookmarks and click "Recently Bookmarked" to see the page you just bookmarked at the top of the window. Select it, and click the down arrow in the bottom left corner to expand more options.

In Location, replace the part of the URL that refers to your search terms with "%s".

In Keyword, include whatever you want.

You're done! Now you can type your keyword and your search terms in the address bar to run a quick search on the webpage you bookmarked.

There are tons of ways this can be used:

  • Wikipedia:
  • The Weather Channel:
  • YouTube:
  • Songmeanings (Artists):
  • Amazon:
  • eBay:
  • Twitter:!/search/%s
  • Google Image Search:
  • Craigslist (Atlanta):

Hey, don't ever say I haven't saved you 8 seconds of your life.

Sunday, April 8, 2012

Why Does the Easter Bunny Exist?

Ever wondered how the Easter Bunny came to be? Seems kinda far removed from the whole "savior of the world being resurrected" thing, doesn't it?

On Good Friday (possibly the least accurately titled holiday ever), Jesus was brutally executed. On the Sunday after his execution, the tomb that held his body was discovered to be empty, and it was determined that he had risen from Earth to heaven to be with God. That's the reason Easter exists to begin with.

It's not called "Easter" because this all happened far east of the United States. The word is derived from the ancient German month Eostur-monath (what is now known as April) which was named for the pagan goddess Ä’ostre. 8th century pagan Anglo-Saxons held feasts in her honor during this time of year to celebrate the blooming of Spring.

It just so happens that Jesus was offed right around the same time that this traditional festival came to be celebrated. When Christianity made its way to the highly pagan realms of Europe, the festival was replaced by Paschal month (known to Jews as Passover) and celebrated the resurrection of Jesus. The original festival's name came along and evolved into the word Easter.

Christmas and Easter are two very similar holidays. They both celebrate the birth (or re-birth) of Jesus. They both have mascots that overshadow the whole Jesus thing. They both have traditions that seem wildly random.

Christmas has Santa, stockings, decorated trees, and seizure-inducing light shows. Easter has a bunny, eggs, candy, and baskets. Analyzing Christmas is for a different time, but why do we have such bizarre Easter traditions if it's all about Christ?

Remember that the resurrection celebration was rolled into an already-existing Springtime party celebrated by nature-happy pagans. Right around the month of April, stuff is growing. Flowers are blooming. Animals are coming out of hibernation to freely copulate with vigor. It just so happens that Jesus' re-birth is an excellent metaphor for fertility.

And what other symbol of fertility do we have? Eggs. Just about every animal comes from an egg of some sort, and chicken eggs are abundant and edible even after serving as holiday decorations. The tradition of adorning them most likely comes from ancient times in which eggs were boiled with fresh Spring flowers to create colorfully dyed hard-boiled eggs.

Rabbits, as well, have long been symbols of fertility. They're superfetative, which means that they can get pregnant with another set of babies before even giving birth to the first, and they hump like crazy when all the flowers are in bloom in the Spring. Maybe they find it romantic. (Also, they're cute. Frogs can lay 10,000 eggs at a time, but we don't have an Easter Frog.)

So, much like Christmas and Santa and the gift-giving frenzy that now defines it, Easter is marketed using a somewhat non-denominational symbol: The Easter Bunny. Businesses want to make money, and holidays are good times to catch people when they're willing to be less thrifty than usual because "it's a special occasion." Appealing to as wide a demographic as possible is generally more profitable, so rather than using Jesus to sell candy, the Easter Bunny became the official spokesperson of the season.

And that's how we got from this:

To this: