bhutch29 / abv

Bar inventory tracking system
MIT License
6 stars 2 forks source link

"I'm Feeling Lucky" button? #125

Open bran22 opened 5 years ago

bran22 commented 5 years ago

Seems like a lot of people have “analysis paralysis” now when looking at the menu when deciding what to order. It's great that we have awesome bartenders who can try to give a recommendation, but it might be fun to have an “I’m feeling lucky” button that someone could press at the counter, and the system would just randomly pick something for them.

If you really wanted to fiddle with it, instead of returning random results the button could actually have an algorithm that prioritizes whatever you need (for example, prioritize a beer that hasn't been selected in a long time, or prioritize an item that was checked in a long time ago and hasn't been consumed yet). But y'know, random is fun.

bhutch29 commented 5 years ago

The easiest way to implement this would be to add a keybind to the abv ui that writes a random available beer name into the log. Estimated work: 1 hour

If we wanted it to be more fun for the user, we could use a separate screen and a hardware button. Unfortunately it is not the amount of implementation effort that makes me not want to go this way, but the amount of setup effort by the bartenders every week....

Last idea: a hardware button that triggers the menu to display a random beer. This would be the hardest to implement for a variety of reasons, but would combine ease of setup with most interesting customer interaction.

@ryanavella @dvanworkum any thoughts?

bran22 commented 5 years ago

At least in my mind, the appeal of this is that the user would get to see a nice "spin the wheel" animation on the big menu screen when they hit the hardware button. Displaying something on the console handles it practically, but I think takes away from the fun.

I don't know much about the frontend, but it sounds like it's javascript-enabled. You could just randomly select an available beer from the JSON and display a "spin the wheel" animation. This wouldn't need to "push" any updates to the DB because the bartender would still scan the beer out like normal (assuming the user accepts their random fate).

Just need to find a cheap hardware button. Seems like people like mucking around with their Amazon Dashes https://github.com/Nekmo/amazon-dash

dvanworkum commented 5 years ago

I do not see any real value in this beyond the initial novelty. It adds more problems than it is worth.

Here are the options as I see them:

  1. customer has separate screen.
    • The issue is like @bhutch29 said, it becomes a burden to setup.
  2. customer triggers an animation on the main menu.
    • This interferes with other customers trying to read the menu. Imagine if the customer decides that they don't want that beer and trigger the "feeling lucky" animation again. It just becomes annoying to others.
  3. random beer pops up on bartender side
    • This just adds steps to the bar tending process. It will be easier to just randomly reach into the fridge and pull something out.

The idea is fun but, creates more challenges than it solves.

ryanavella commented 5 years ago

One other "solution" we could try is to have at least 1 drink per menu page that is highlighted in a different color (or stands out in some other way, e.g. has a start next to it), which the bartenders can just point to. We could combine this with the algorithm that prioritizes drinks we are trying to push.