Friday, March 30, 2012

BenderPDX: Finding New Portland Bars

Here's a great idea:  a computer program that scours OLCC filings online, and creates a Google map of all the new liquor licenses that have been applied for recently.  Portland computer expert and cocktail aficionado Chris Barker has created just such a program, and publishes links to its maps on Twitter.  Here's this week's map:


View Larger Map

Chris calls his creation BenderPDX. The Futurama reference is a good name for a Twitter bot, especially one that can see into the alcoholic future. If you follow BenderPDX on Twitter -- or even just occasionally click that link to check the feed -- you'll get the link to the latest map.

With a hat tip to #pdxbeergeeks and their series of Meet the Geek blog posts, I decided to bombard Chris with some questions about BenderPDX.
______________________________________

BN: I used to occasionally try to remember to look up the OLCC filings to see what was coming down the pipe in Portland, but I wasn't very regular about it, and it's kind of boring. BenderPDX is like a dream come true for me, with a Google map to boot! Why did you create a bot like this?

CB: Thanks! I'm glad to know that other people are finding BenderPDX to be useful. I live out near Mt. Tabor, so when my "good enough" Thai place closed and I found out it was being replaced with Tabor Tavern via a news blurb in Eater, I realized I wanted to know when more places were coming in. I have done work in Python in the past, so I figured that I could probably find a module to strip addresses from the OLCC PDF that gets posted weekly, and then once I had the addresses, I could do some geocoding and then make a Google Earth KML file to view it. It was only after I had gotten that working that I realized it was only a few more lines of code to get bit.ly url shortening and tweeting worked into the script as well.

BN: How often do updates come out? Is it automatic? How do you make sure it finds the right documents at the right time?

CB: The first iteration of the script is manually invoked, it just dumps the output from the PDF to kml then tweets it. The new version (which does Portland only), scrapes the HTML from Portlandonline.com's liquor license notification page, which includes links to the submitted applications in PDF.  It is still very much a work in progress, and I don't have much in the way of integrity checks yet, so if there is a garbage upstream or I don't parse the location properly, you might end up with a bad link or pin location (usually right in the center of Portland).

Eventually I hope BenderPDX will be able to do a collection of different actions, so weekly OLCC updates, as they come in single business notifications, and random snarky Bender quotes as appropriate. And really, it's an excuse for me to keep playing with Python some more.

BN: How long do entries stay on the map? Are there links from the map to the source documents?

CB: Right now for simplicity, I just show the 15 newest applications in Portland, but each tweet BenderPDX generates is to its own map. So yesterday's tweet is a link to the map it built yesterday, and so on. As I expand on the concept, I hope to clean it up a lot and make it a little less hacky. The pins should link folks to the actual PDF of the business's application, but I have no idea how long Portland Online keeps those records available, and I don't want to get into the grey area of caching/hosting them locally. The rest of the information is just scraped from the same notification page I got the PDF links from.

BN: I met you through my friend Lindsey, who knew you as mrzarquon from Metafilter events. How did you get involved in the Portland Metafilter community? Are Metafilter people as cool as Beer people? Are there flesh-and-blood Metafilter groups everywhere, or just in Portland?

CB: I've been a member of MetaFilter since 2005, and starting going to local events put together by MeFites when I was living in Seattle. I've been to meetups in LA, Chicago, and San Francisco as well. I was actually attending Portland meetups long before I had moved here, as I loved the city and found that it was a great excuse to get to know people here in anticipation of eventually moving. For the tenth anniversary, Metafilter had 67 meetups on all seven continents (yes, even Antartica).

Being a member of MetaFilter means you have a social network stretching around the world full of interesting and strange people. When you hang out with Beer people (or cocktail people, or car people), you can in a way have a diverse group of people who all share this one common interest. When you hang out with a group of MetaFilter folks, the common interest is intelligent discussion on the internet, which can encompass beer, cars, computers, politics, healthcare, mortuary practices, what is the most cost effective way to raise chickens and what was the name of that song you heard that one time while watching Saturday morning cartoons as a kid. I don't know if I have a common definition of Cool, but I find that meetups with other folks from Metafilter to be interesting if not fascinating. I am proud to say I participate in a community where folks like Adam Savage drop by, because they like the conversation and the topics discussed.

BN: What's your day job? Have you spawned any other bots we should know about?

CB: I work for Portland State, doing IT work for the College of Liberal Arts and Sciences. In short, I herd professors and help make sure that they get their labs and systems setup properly, so they can focus on teaching instead of how to get their bioinformatics software working in a new lab. In the past I've worked mostly as an IT consultant, so the change in pace (from 60+ hours/week and travel to 40 hours and a bus commute) has finally allowed me to pursue honing some of my programming skills and working on making some creative projects for once, not just troubleshooting an Exchange server at two in the morning or flying across the country to repair someone's SAN.

BenderPDX is my first bot, I'm hoping to work on extending it out nicely so it is a genuine robust script, and not something "good enough." There is a ton of potential in parsing twitter feeds, and the other day I was thinking how it would be cool for there to be an #ontappdx like system but for food carts, but my programming abilities aren't up to that task yet.

BN: What kind of bars are you hoping BenderPDX finds for you? What are your current favorite places in town?

CB: Interesting ones near my house, so I can walk home afterwards. I like places that do creative things with alcohol, so a bar that actually knows to stir a Manhattan and not muddle the orange in an Old Fashioned are things I am always looking out for.

Of my favorite places in town, it depends on what I'm going for:
  • Brunch: City State Diner, fast, great food, no line
  • Dinner: Over and Out/The Observatory, awesome two for one space in Montavilla, bar in the back with pinball, fine dining in the front.
  • Drinks: Vintage Cocktail Lounge - I've been there so often I run their website now, and they are always trying to think of new ways to mix drinks. If I was going to open a bar, they have the template I would most likely copy from. Also recently I've been hanging out at the Guild Public House, which has had a nice bounce back since they got new owners (one of whom is the owner of Vintage), it helps that I pass it on my bus ride home from work.
But I am also excited just for the rain to finally stop so I can actually have a nice weekend BBQ in my back yard.

4 comments:

  1. Thanks for the hat tip. When are you going to do the interview series?

    http://hops.me/7b6

    ReplyDelete
  2. I spilled my guts to the Beer Wench a couple months ago... that's probably all anyone needs to know about me.

    ReplyDelete
  3. Hahaha google alerts told me you were talking about me... hello boys :)

    Fun interview!!!

    xoxo,

    The Wench

    ReplyDelete
  4. Hi Ashley! Now I'll know to put "the Beer Wench" into each post, so you'll read everything I write ;-)

    ReplyDelete

Thanks for leaving a comment! I will delete spam and long stupid comments. Comments that are smart or short will survive.

Please tag anonymous comments with your name, initials, or CB handle so that people can respond to you.