Monday, September 22, 2014

Smart Dining & Dining Smart: Technology in the Restaurant Industry

An area that we have been doing some amazing things in, and winning some sweet awards, has been the restaurant industry. Like the majority of the people reading this I spend quite a bit of time sitting on the other side of the table of this industry. From coffee shops and ice cream parlors, to white table cloths, I'm always doing a little bit more than looking at the menu and trying to figure out what to eat.

As a nerd to every extent possible, I am constantly trying to figure out how to use technology to make things better, easier, more efficient, less complicated, and able to fit into my life, while providing a product or service that has some cool factor to it. Every once in a while a few products come along to do that. I want to talk about some of the capabilities, but first, here's what spurred this:

"Restaurants will need to wholeheartedly embrace smart dining or risk their brands quickly becoming stale."
- Hospitality Technology Magazine, Sept. 17 2014. (Sorry, couldn't find the author)  

Smart Dining. That's definitely a way to look at it. From Yelp reviews that encourage users to game the system, to scrolling through a bourbon selection last week at CUT, technology is not only feeding restaurants in the most creative ways possible, but it's allowing a level of relevant interaction that is unprecedented, in a space that celebrates personalization. We're on the cusp of some amazing things, my favorite being those that require very little human interaction to fuel, but provide an atmosphere that is truly unique. This all hits pretty close to home for me and the team at Scrape with what we've been working on, but its one of those things that I never get tired of dreaming about. (The next trick up our sleeves is using location awareness to change the color on Philips HUE bulbs to highlight empty seats in a restaurant so that people can get seated and start spending .. ahem, eating, quickly.)

ApplePay coming along with the OpenTable integration is definitely going to change things in the space, but if you haven't heard of or seen TabbedOut in action, there is so much more that can be done that just paying your ticket. Granted, in Texas we're pretty proud of our locals, but this is one of those services that has the capability to increase efficiency, provide better customer service, and put me in more control of my dining (or bar hopping) experience everywhere.



So now that the problem of paying tabs and booking reservations is easy, what about when someone shows up at the restaurant or a busy streak is hit? One of my personal faves that I have seen is NoWait. It seems pretty simple to get in the hands of the restaurant, and it gives them incredible amounts of data.



What I see here though, is a huge open opportunity. Using things like social profiles, why not take this a step further for customization? Why not already know who is coming into the restaurant before they come in the front door, assuming they're a return visitor to the location or chain? By combining different technologies, I see that there is a huge opportunity. The thought that you could know who's coming in, what their food preferences are, what they are celebrating, what they might be interested in eating based on past history, where they like to sit, what the day for a living, etc, to me, is amazing.

I guess I don't see the future of the industry as merely a Smart Dining experience, I see it as an opportunity to do more than just provide a great restaurant visit. By leveraging data, location, transactional simplicity, customized visits, etc., I see this as a way to create a unique experience for each venue that allows technology to assist. From having a crowd-sourced playlist to being able to walk out with an automated tab, the times they are a changin'.

Let me put this out there: what I would love to see is data driven customization and personalization in the restaurant industry. I am not talking about a dining room full of robots. There HAS to be human interaction, I'm not at all saying replace the staff. I'm saying give them data and tools to create a better experience. I want, I crave, being able to have a great recommendation on appetizers, beer, wine, or a main course. I can't even imagine how great it would be to know that every time I sit down something is presented to me that will give me a great dining experience. I want the best of the restaurant all the time, any time. With technology, we can do that..and naturally, I'll be more than happy to help. :)




Friday, September 12, 2014

No Luv for Southwest Wi-Fi

To say that I became a little obsessed with my terrible Wi-Fi experience on Southwest Airlines from LAS to HOU today is an understatement.



As anyone who may have been a follower of mine for the last 4 hours and has since decided to mute me will tell you, I was a little upset. So, instead of just randomly venting on Twitter about the whole thing, I figured I would be pointed and a bit constructive.

First, let me say how much I appreciate Southwest Airlines Customer Service. A kind fellow name Sean took care of me via Twitter and immediately had the $8 charge reversed, while still allowing me to use the painfully slow access to vent and investigate. So, kudos to you guys Southwest for not kicking me off even though I was hating for 2 hours on your service. Well played, and much appreciated. Despite what I said, your customer experience will keep me coming back as a customer, as long as I don't have work to do on the plane. Fair?

So, what's the issue?
Check this out: one of the great things about SWA is that they let you watch all the video you can ingest from a few channels through a partnership with Dish. Cool huh? Yeah, if that's all you wanna do.

Without actually having any under-the-hood privileges, I'm gonna make some assumptions:
1. The video is pushed to a local server on the plane and then fed to the customers. Multicast style, right?
2. Users are so swept away with the video offering, watching the game, TLC, and what not, that they do that the majority of the time .. unless they're a nut like me who's trying to do a few things at a time.
3. All of that video is basically on-net at that point so the quality is perfect. And it is perfect, beautiful streams to tablets, mobiles, and laptops alike.

Here's where I *think* the issue is: the Access Point on the plane.
Here's why:

I dug around as much as I could to find out who on God's green Earth was responsible for the Southwest Wi-Fi offering. I even reached out to @FlyerTalk on Twitter to see if they had any thing I could reference.

You bet they did, 5 pages worth of posts dedicated to how terrible the Wi-Fi is on SWA. Some even hitting directly on the head of what I thought part of the issue was:


What I found was that a bunch of years back Southwest awarded the contract to a group called Row44. Row44 was acquired by Advanced Inflight Alliance back in 2012. Since then an award was made to Kontron to take care of the in-flight entertainment and inflight wi-fi component of the system.
So, Kontron has the contract via Row44, and they deploy this thing:


Even if you have very limited experience with Wi-Fi you'll probably notice the batwings on this thing. A trained eye shows you it's a Motorola 7131. But hey, it lists that on the product page, so if you don't know (as Biggie Smalls would say) Now ya know.. 

So, all that being said, let's look at what we have. A satellite feed to the internet from the airplane, a media server pulling in feeds from 8 or so networks, a Motorola 7131 AP distributing the service, a bunch of clients connecting. On my flight, I used my trusty super fancy AngryIP tool to show me 16 users pingable.

If, let's assume, 80% of those 16 are streaming video, let's say 13 users, at a pretty high bitrate from the media server, lets say 4mbps, you get 52mbps steady flowing through that device. On the network connection side, if it's pulling in 8 feeds at 8mbps each, that 64mbps on the satellite link. 
I don't know what the capacity of the sat feed from Row44 is, but that's gotta be taxing it .. jus a lil bit.

UPDATE: it's 11Mbps. Ouch. Here's what I read:

http://new.row44.com/products/inflight-broadband-internet/

On the AP side, pushing a steady 52 mbps across that access point to 13 clients might be making things more than uncomfortable.

Let's reference Keith Parsons fantastic Wi-Fi Stress Test Report from last year to see some digits.

Enterprise class AP's under a load similar to that of what we are dealing with basically begin to implode at around 15 user mark when streaming video. Even more fun happens when you look at error rates. 


Look at that.. right around the 12-15 device mark.

Truth be told, I had forgotten what the specifc numbers were from this report until I just now opened it to grab some screen shots. The fact that it's right on the money isn't a surprise, it's just reassuring that Keith and I both know what we're doing :)

So, how do you fix it?
Well, Southwest Airlines, all ya gotta do is call. :) Your APs are wetting the bed and making customers like me think twice about who I fly, all because of your WiFi. If you don't think its a big deal, all you gotta do is wait. Wait for the iPhone 6 to start sucking down even larger amounts of data. Wait for more carriers to adopt T-Mobile's wi-fi texting and multimedia messaging. Wait for more customers to move all their apps to the cloud and demand higher amounts of service because their Dropbox is updating and their Office 365 won't load. 

I hope this helps ya. And if you need anything, my contact info is on the right of your screen. I can help you fix this.

Monday, September 1, 2014

Making Your Private Network Public. Hello, World. Got DHCP?


I want to talk about one little issue that keeps popping up over and over to reiterate something that might be overlooked, as it is so many times in the field:

DHCP Scope Size on Public Wireless Networks

It sounds ridiculous, I know, but I've had to troubleshoot so many networks where the DHCP scope was not configured to:
  1. Accommodate the number of users that were anticipated to join the network, 
  2. Have the appropriate lease time set to expire out the clients that were no longer there.

My advice is to keep in mind the combination of those two items in order to properly plan out your network. Building out a public wireless network isn't just about providing great RF coverage and signal quality, it's about making sure the network capacity is there, and the network is set to support the onboarding of so many new users.

As a best practice what I do, for a number of different reasons including security and networking configuration, is set the access point up as a DHCP server, if it's supported, for the guest network. Grant most of the deployments are single AP in retail, however in an enterprise environment there is usually a controller or cloud service that allows me to do to support multiple APs. Since the guest network is usually the lowest priority and offered as an amenity, I don't have to worry about routing or static IPs, specific ports being opened up, etc. Segmenting it onto it's own subnet and enabling client isolation on the AP is usually the recipe I use.

One of the key reasons that I started to use DHCP services on my own equipment, aside from any networking configuration the end user might have, was for ease of install and desire not to tinker with something on the customers existing network.  

I don't have to tell any integrator how many times I've been to the customer site, plugged in a piece of equipment that does nothing other than receive a DHCP lease from their server, and I'm the one who ends up destroying the network because of a static IP issue. The way I figure, the less interaction I have with their network, the better. Most retail plays and a majority of one-offs are an over-the-top service to their existing infrastructure, so this saves me and the customer some heartache.

The one thing that I think gets overlooked the most is the DHCP lease time. If you have a router that's unable to set the DHCP lease time and you're thinking about making your network publicly available or offering free Wi-Fi, go buy something that supports it. 

Secondly, when setting your least time think about how much time the average user spends at your facility, shopping mall, coffeehouse, etc. and set the lease time according to that. Each situation is different and there is no specific time that fits for everyone. An hour at a coffee shop, 3 hours at a clothing store, 6 hours at a mall, 8 hours at my pediatrician (seriously, she must have the worst waiting room time EVER.) The key here is to have the leases expire as soon as they can so that everyone has a fair chance at getting on the network. Keep in mind, the lease will be re-requested at the halfway mark; if it's set for 3 hours, 1.5 hours into it a DHCP transaction will fire off.



I've seen it happen too many times where the size of the pool is usually appropriate but the least time is not appropriate (usually it's set to the factory-default 24 or 72 hours). That means you have to wait a day or so before those leases expire. For the next 12 to 36 hours, those clients that have long since gone are taking up spots that could be given to other users who are trying to use network resources.

In the almost perfect storm case of a local shopping center in the Silicon Valley area:
The least time was set to 72 hours, the standard default setting up at Draytek router. There's a great restaurant in there that usually has a great lunch and dinner crowd. All it takes is a busy lunch and dinner where before you know it 200 leases are dished out .. and hung on to for a day and a half. By the time the lunch crowd comes in the next day, they're down to only a few leases that have expired out, and by day 3, there are no more or very few IPs.

All in all, I guess the point of this whole post just to make sure that you check the DHCP server when you decide to offer free Wi-Fi access. There's so many things that can go wrong with the network, taking for granted the DHCP is working fine is a simple oversight they can affect everything.