A few months ago, I was drawing in Adobe Illustrator for an animation we were producing, and I was having trouble with my laptop bogging down and becoming completely unresponsive when Illustrator threw up its hands at copying or pasting the hundreds of tiny switches and buttons I had drawn on a retro-style computer bank.

When that happened, my options were basically to wait 10–15 minutes for Illustrator to get itself together and return control, or log in remotely and kill the process. Thankfully, Gil showed me how to do the latter. Here are the instructions, in case I need them again:

Read more…

I’m testing out django CMS for a small personal site,, and installing it on my WebFaction hosted server. I’m writing down the steps, so you don’t have to! (And by “you,” I mean “future Mark who has forgotten these steps.”)

I’ve had a great experience with WebFaction — they’re both inexpensive and reliable. If you’d like to give them a try, please use this affiliate link to sign up for a free trial, and try installing for yourself.

Read more…

My goal is to have made at least one tiki mug for my home tiki bar, by the end of the year. I’ve been poring over Tiki Central’s forums to learn more about the process. I have also picked up a couple of books on it, and have been creating a big workflow list of all of the tips and tricks I’m finding so far.

Read more…

I’m controlling everything in this project with a Raspberry Pi 2, a system on a chip. Essentially it’s a really tiny Linux computer that you can use for most anything you could use a full-size computer for. It’s just not quite as powerful.

NeoPixels (WS2811)

I was afraid, when I first started this project, that I would need to attach an Arduino to the Pi, to use as a slave to control the LEDs. The Adafruit NeoPixels, that I had picked to light the tiki mug shelves, are very sensitive when it comes to the timing of their communication, so if you’re not sending data to them at just the right speed, they won’t show the colors you want them to show (or maybe they won’t light up at all). The Pi, being a modern multitasking computer, might be busy doing something else, and not be able to communicate to the NeoPixels on the schedule it wants. The Arduino, on the other hand, is a real-time microcontroller, which means it can schedule its communications on a real-time clock and communicate at the required speed all day long.

Thankfully, someone much more clever than I figured out a way to drive NeoPixels consistently from the Pi by combining the Pi’s PWM (pulse-width modulation) module with its DMA (direct memory access) module, so that the NeoPixel data signal can be sent without being interrupted by the Pi’s multitasking operating system. The resulting library, rpi_ws281x, was exactly what I needed, and Adafruit’s tutorial on setting it up is killer.

The only thing that’s different in my setup is that I used a different level shifter chip to get from the 3.3V Pi logic level to the 5V logic needed by the NeoPixels. I used a Sparkfun PCA9306 Level Translator Breakout, which was also quite easy to set up. You just need a reference voltage attached on either side of the breakout, and then connect the data wire to each side, and the voltage gets shifted up or down as necessary. Here’s my circuit layout:

NeoPixel control from RasPi

Anyway — success!

PaleoPixels (WS2801)

Surprisingly, the bigger challenge was getting the pixels I already had hung from the air duct to be controlled by the Pi as well. Those LEDs are controlled by older chips, the WS2801, which use a different communications protocol. It should have been just as easy, but I really started looking in the wrong place, and it led me down this path of trying to deconstruct these really convoluted projects that were doing way more than I needed. I’m sure they’re great for the folks who made them, but man, I was way more confused than I needed to be.

Eventually, my salvation came in realizing that the Pi’s Serial Peripheral Interface bus would be the best place to connect these pixels, and a rough test code file from Adafruit pointed me in the right direction. The test code worked great, but the functions didn’t match up with the NeoPixel functions, so I spent a decent chunk of the afternoon writing a new library for the SW2801 Pixels that I’m calling PaleoPixel. (Because they’re older!) That way, once I load both kinds of pixel strips into my eventual master control program, I can issue the same commands to pixels of either type, and they’ll react the same, even though the underlying hardware is different.

Controlling just the PaleoPixels with the Pi, here’s my circuit:

PaleoPixel (WS2801) control from RasPi

And the latest version of my PaleoPixel code can be found on Github.

The upshot of all of this is now I can get rid of the Arduino entirely, and save both communications overhead and a big chunk of space inside my project box. Now, I just need to control them together… next time!

I’m gonna build a volcano.

Movies are a huge passion in my life, so of course I have a screening room (which most other people would probably call a “home theater”) in my basement. Tiki is a passion of mine too, and while I haven’t brought too much tiki decor into my home (just a bunch of mugs, at the moment), that’s starting to change.

The screening room is now getting a name: the Lava Lounge, somewhat after the upstairs Lava Room at the now-closed Trader Vic’s Las Vegas, but I’m a sucker for alliteration, so “Lounge” it is. (I never actually went up to the Lava Room on my one trip there, but I fell in love with the neon sign.) The Lounge already has deep red walls, red leather recliners, and a Shag print that features a volcanic island. Plus, I’ve recently added red LED path lights that make it feel even more lava-like. I’d like to add a faux-neon mini sign to the door, among other upgrades, but some of those plans will have to wait for a bit.

Update 2016-05-15: Due to unintentional overlap with a Seattle bar called “Lava Lounge,” I am changing the name to Kilauea Cove. This name refers to the complete area, with both the Screening Room and the Tiki Nook.

Just outside of the door to the screening room, there is a little nook that I usually call the “tiki nook”, which has a tiny bar-top for mixing drinks and some shelves for my more interesting tiki mugs. Extending that lava feeling out to the tiki nook is the next project, and this is the first in a series of posts that will show how I’m building that out.

Tiki Nook History

Tiki Nook v01

The tiki nook space is pretty basic — bare white walls and a really awkward HVAC duct that plows through the space. I’ve dressed it up with faerie lights zip-tied to the duct for a while, but as the lights would burn out, and I had real trouble figuring out which bulbs to replace without spending a really tedious weekend with my multimeter, I eventually added another string of new faerie lights and then another, so there was this web of broken lights and working lights, all zip-tied together into some sort of terrible fishnet. To top it all off, the newer faerie lights I picked up just weren’t very bright, and it was pretty much impossible to see well enough to make a drink without propping the refrigerator door open. I could have bought some bright LED faerie lights, but then it would just be this ugly bright mess all the time. Obviously, something must be done.

First steps

The first order of business was to replace the old, busted lights with something I could mold into the roles of both swank, dim tiki lounge and mixing a drink here, so my eyes need a few more watts. I clipped the old zip ties and strung up a new set of Adafruit 12mm Diffused Thin Digital RGB LED Pixels. These LEDs use WS2801 controller chips, and I had an old Arduino Diecimila laying around doing nothing, so I hooked ’em up, and temporarily set up a basic lighting pattern so I could get a feel for them. I won’t get into the code for this here, since it isn’t my final lighting look, but it’s a simple tweak of Adafruit’s test code for the pixels.

Tiki Nook - New Pixels

Once I had the new pixels up, and we got the insurance payout for the damages incurred during #SewerSaga, I decided that I could finally do some cool stuff with the nook, with even more animated lighting and some special effects. Some of the lighting is still wending its way across the country, but there’s one thing I had to test now that I had the basic parts.


I’ve long wanted to have a real tiki bar attraction in my home, and inspired by the volcano show at The Mirage and Trader Sam’s volcano windows, I thought I could finally do a miniature volcano in my tiki nook. We’ll get into the specifics of the design in future posts, but now that I have everything I need to control the smoke machine, I wanted to give that much a try!

I’d put together a Sparkfun Beefcake Relay Kit, which lets a 5V signal from a microcontroller essentially turn on a switch that can handle a 120V mains connection. At the moment, the relay will be triggered by the aforementioned Arduino, but eventually everything will be controlled by a master Raspberry Pi.

Anyway, I got that wired together, and based on Control a Fog Machine With Your Microcontroller by Jeff Haas, I hacked up an IEC power cable to connect to this remote. I thought I had everything together correctly, but I’d just tested it manually and not by triggering with the Arduino at all, so when I finally did that, I discovered a short in my 1/8″ plug connector. I solved that with a judicial application of hot glue, but now the LED on the relay lights when it’s supposed to, but doesn’t actually trip the switch and… Okay, I thought I solved it with the hot glue, but there’s still something loose, because if I wiggle the connector around, it works fine.

Yay! Sort of!

Arduino controlled smoke machine via @sparkfun relay. #tikinook #LavaLounge

A video posted by @bobtiki on

I think the big challenge is going to be ducting the fog in such a tight space, as well as controlling it, so that it will act on cue the way I want it to. I suspect the answer may be in quickly filling a reservoir with smoke and then pushing it out on cue with a solenoid — or a woofer, much like what this project with binary smoke signal communication uses — but I’ll cross that bridge when I come to it!

Since I was recently diagnosed with ADHD, my shrink suggested that I go to bed earlier, get up earlier, and have a regular morning routine. He recommended a few things, like meditating and eating a good breakfast with plenty of protein, but I thought I’d dig a little deeper, and see what the “top ten”-style lists say that you should do in the morning. I searched DuckDuckGo and from the top ten results, I tried to see what they all had in common.

You can see the full list of links below, but here are the results in order of which tips were shared most often:

  • Shared 8X: Exercise. I’m totally surprised that “wake up early” wasn’t number one! 20–30 minutes of bodyweight exercises or other movement is recommended. If nothing else, walk around the block for 10m. It reduces the stress hormone, cortisol, plus the usual exercise benefits.
  • Shared 7X: Get up early. Like, crazy early. 5:30am, 4am, you name it. Get up at least an hour earlier than you’re doing right now.
  • Tied at 7X: Plan your goals for the day. Take 10+ minutes to work out your plans, and visualize positive results for your goals. Planning longer-term goals is good too. Ask yourself, “If today was the last day of your life, would you still want to do what you’re about to do today?” (attributed to Steve Jobs) or “What good shall I do this day?” (Benjamin Franklin).
  • 6X: Meditate. It doesn’t have to be any sort of religious practice; just be still. Sit and enjoy the morning calm. Start trying to meditate for 5 minutes, and gradually increase to half an hour.
  • 5X: Listen to motivational stuff for 15+ minutes. In line with your long-term goals, create a mantra for yourself that you repeat every morning. Maybe also set your alarm with a motivating song and/or “blast jams” first thing. Listening to inspirational music (even pop!) can apparently also lower cortisol levels.
  • 5X: Start with the hardest thing, or the thing you dread doing most today. Early in the day is when you have the most willpower. “Eat a live frog first thing in the morning and nothing worse will happen to you the rest of the day.” (attributed to Mark Twain, but more likely corrupted from Nicolas Chamfort)
  • 4X: Eat a healthy breakfast. High in protein is best for brainpower.
  • 3X: Spend time with your family and/or partner. Make it a breakfast date.
  • 3X: Go to bed earlier. The amount of sleep you get is critical. You would think this would automatically go with getting up early, but for me, I know it’s hard to break the cycle of being a night owl. I appreciate the extra nudge.
  • 2X: Coffee. Only two calls for imbibing the beverage that allows my brain to function at all‽ Must be nice not to need it.
  • 2X: Journal. Write down things you’re thankful for, ideas, strategies, progress, reminders, etc.
  • 2X: Read, study, and learn. Read things that will improve your work/life, but also “fiction or non-fiction in fields not directly related to your own” as a cross-pollination thing.

Some additional one-off tips:

  • Lay out things the night before (workout clothes, whatever), so you have less friction in the morning.
  • Pack snacks, like protein bars. Good to keep your brain energy levels up, and less temptation to give in to Pop Tarts or whatever crap is in the office snack room.
  • Get exposure to morning sunlight to reset your body’s clock and energize your brain. This certainly helps for me — and I have a wake-up light alarm clock for those dreary Seattle winter days.
  • Get rid of clutter. Throw one thing away. I like this one a lot, being a bit of a clutterbug myself.
  • Monday mornings, connect with your team face to face. You have a team, right? Get a team.
  • Only tend to urgent emails in the morning. Save the rest for later. It’s a time suck and willpower drain.
  • Start with a quick win — which seems to directly contradict the “swallow the frog” advice above, but maybe on difficult mornings, this is a good fallback for a confidence boost.
  • Make your bed every morning. This one seems to fall into the “correlation is not causation” camp, but I don’t suppose it would hurt.
  • Use rosemary, orange, or lemon scented toiletries, to “invigorate your senses.” Supposedly there’s science behind this. I think you might have more luck with caffeinated soap.
  • Some sort of dream bullshit? I don’t know. Maybe they were trying to go for visualizing successful outcomes, but it was coated in so much new age mumbo jumbo that I couldn’t suss it out.
  • Commit to leisure time on the weekend — and other weekend things from that one HuffPo article that really isn’t about weekday mornings. However, I see where they’re saying that you need time to recharge and not let yourself burn out.

Got more tips? Let me know on Twitter or Facebook!

The top ten articles from my search were:

  1. Lifehack: 10 Morning Habits of Highly Successful People That Make Them Extraordinary
  2. Forbes: 10 Morning Habits Successful People Swear By
  3. Today: Steal the morning habits of the world’s most successful people — an interview with Laura Vanderkam, who wrote a whole book on the subject.
  4. Lifehack: 7 Monday Morning Habits Of Highly Successful People
  5. HuffPo: 10 Daily Habits Of Successful, Intelligent People — mostly about weekends, oddly.
  6. Business Insider: 5 habits of people who are both happy and successful — overall habits, not just mornings.
  7. CareerBuilder: 7 Morning Habits of Highly Successful People
  8. The Ladders: 5 things successful people do each morning
  9. Yahoo! Finance: 10 morning habits successful people swear by
  10. Quora: What are some examples of the morning routines and habits of successful people?

No.7 was originally a link to a book on Amazon, with no immediate tips, so I disqualified it. No.9 is a copy of the Forbes article, so it should really be disqualified as well, but there wasn’t much in the way of results below the articles I listed here. All the same, I only counted the Forbes tips once.

Found these photos, I think they’re from the Washington (DC) Car Show in 1990 or so. They had a couple of the “future” cars from Back to the Future: Part II, and I stood in line for half an hour to sit in the Delorean. Fun times!