Code, Space and Drum & Bass

Ben Keating • Professional Button Pusher

Gridlok and Prolix - Poisonous
Now an older tune, it’s still one of my top favorites. This is the sort of Drum & Bass I’d file under an entirely new genre; Neuro Loops. I appreciate complexity, but a tune like this, where its full throlle till the very last bar. It’s loopy neuro funk.

Nature’s Classroom Web reDesign

I started redesigning my children’s schools web site as a weekend challenge.

This is an initial 'tracer bullet' mockup that I intend to use while building out some other suggested features and usability improvments.

While I don’t seem to want to shake gradients and shadows, I’m enjoying the acceptance of flat UI. Im feeling some influence. I don’t have to have a big beautiful button with the perfect shadow. The right typeface and color will do just as good, if not better. Less to focus on. Less to design. Saving time and gaining focus.

One of Benett’s earlier guys.
“Hey Benett, whats your guys name?” “Just Guy. thats all. His name is just Guy.”

Remaking Mirene’s web site

I had the oppourtunity to remake to help prepare for a 230 page, fully illustrated book on Mirene’s century of service afloat along the Pacific Coast from Alaska to the San Francisco Bay. Creating the website took 10 hours from start (collecting information) to finish (pushing live). Thats a record for me and wanted to share some notes and observations on how it was accomplished.

  • Nothing to preserve or port over from current site (I did archive it however).

  • The new site was to take on a look & feel similar to the already beautifully designed book by Shellei Addison of Flying Fish Books. My design hours were simply pulling from the book and optimizing some areas, favoring pure-CSS over images to get basic shapes/color in place. Stuff like that. The logo, typefaces, colors, these were already established.

  • The new site was to host only two basic web forms and we’re not doing anything but collecting the data at the moment. That means additional functionality can be added post-launch.

  • Embraced my time constraint. I took this project on the same week I had a lot of other things going on, including preparing for that talk I mentioned earlier in this blog. No time to monkey around!

  • I wrote the site using Flask, which I never used before. While sites don’t have to be defined in a single py file, this site’s current design allows for such a layout. Having a site configured in a single .py file feels great. It matches the projects simplicity: a single-page website with some form submission views. Despite it being my very first Flask project, I don’t think I would have been able to move as quickly using Django. I bet I change my mind later though, when we start adding more complex features.

  • It was fun. The entire thing. From the new and exciting web framework I’ve been wanting to learn, to the story of Mirene, the book and trying to squeeze it in with everything else that was going on.

Sometimes embracing even the craziest of constraints and going against the current—in my case, picking up a new technology when I should have been deep in another, sometimes it’s exactly what you need to get yourself running in the right gear. Im not saying go out and overload yourself. It never works out well that way, but maybe every once in awhile, with the right combination of oppourtunities (and technologies!) you can get into an incredible rhythm.

Whats neat is once you get there you can experience a ‘melding’ effect across your tasks and interests. It’s a great time to discover solutions you wouldn’t normally cross over or consider. Diving deep into Django somehow helped me pick up Flask with ease. Because both my Django projects and Flask project use Gunicorn, I got use see Gunicorn under a different, not-just-django light. I ‘get’ Gunicorn and Python-on-the-web a lot more now because of this.

Give your horse a kick.

Small Shop / Big Solutions: Django and Long-term Thinking

DjangoCon • Chicago 02013 • Playlist of all Chicago 02013 VideosMy Slides

Im not sure why I wanted to give a talk but now that I have this first one under my belt I know the answer. You. There is a lot of stuff I want to share with you and there is a lot of stuff I can learn from you. Giving this talk pushed me out of my comfort zone. Instead of hacking on my laptop in the corner of the room and just feeding off the conference energy, I barely touched tech during this one here in Chicago. I wasn’t in front of screens, I was in front of faces. I listened to the other talks differently this time around. They weren’t individual speakers and topics; The entire confernece had a theme. A rhythm. When the torch was passed to me, I wanted to make sure mine fit into place.

Where most talks are technical, mine came across as more of a lighthearted story. Experiences and lessons learned. I wanted to get the point across that having fun with what we do results in making cool things™. Solutions come in all shaps and sizes. You are a designer [of your code]. That the Long Now has selected Django because of qualities and guidelines we ourselves follow. And that there is a lot of similarity between the two foundations. See! too much to fit into one talk. I was all over the place, but how could you not? Too many exciting things to talk about.

Looking forward to next year and can’t wait for my next speaking engagement. It was definitely a rush. A valuable experience. Through it I met some new friends Im sure I will be life long.

Im telling you, Django is amazing.

Thanks again, Steve Holden, Nancy and the rest of The Open Bastion gang. They put these conferences on. Thank you Lawrence Journal-World for fostering and open sourcing Django. Thank you so much, Long Now. I had a wonderful time and the most sincere support you could possibly imagine. Probably more so than anyone else; I got a drawing of a cat. :) - shits your diary file out into individual text files

I use to keep a diary file as a single text file. Each note was separated by a datestamp. I wanted to break them out into their own individual text files to use with nvALT so I wrote this quick script with some help. It was worth doing for the name alone. (:

Here is a link to the Gist containing both the script below and an example diary file.

from __future__ import print_function
import re

date_re = re.compile(r'^#(\s)(Mon|Tue|Wed|Thu|Fri|Sat|Sun)(.*)(\s)(.*)$')

def create_note(body):
    filename = "%s.txt" % body[0][2:].rstrip().replace(":", "-")
    del body[0]
    with open(filename, "w") as f:

f = open("", "r")
body = []
for line in f:
    if date_re.match(line):
        if body:
        body = []
if body:

Flying Lotus - Until The Quiet Comes.
Pretty deep video. Beautiful synchronicity between it and the song.