Hans and Franz

Hans and Franz

Hans and Franz is an Slack bot written in Elixir to help me exercise more during the day.

 

https://github.com/dmccraw/hans_and_franz

Why Elixir?

Elixir is a popular new programming language with similar syntax to Ruby and it's built on top of Erlang.

 

It's fast, concurrent, functional and can leverage over 30 years of running in production using the Erlang virtual machine.

Why a Slack Bot?

I always learn better by doing and wanted to make a slack bot since those are so popular and thought I could help myself get healthier in the process.

Inspiration

Someone posted a link to a product hunt slack bot called 'slackbot-workout' and it was written in python.
I investigated writing one in Ruby but never finished it.


https://github.com/brandonshin/slackbot-workout
https://medium.com/@brandonshin/how-slackbot-forced-us-to-workout-7b4741a2de73#.q7incaabo

Inspiration

I came across an article on someone making a slack-bot written in Elixir.

Hans and Franz

Current Features:

  • Wakes up every 30 minutes and picks a random active person in a channel and gives them a random exercise.
  • Picks one of 4 exercises: pushups, jumping jacks, forward step lunges or crunches
  • You can request a random exercise
    @hans_and_franz hit me
  • You can ask for help
    @hans_and_franz help

 

Hans and Franz

Hans and Franz

Configuration:

  • Day Start: 0-24
  • Day End: 0-24
  • Timezone
  • ActiveDays [0,1,2,3,5,6]

 

Hans and Franz

To Do

  1. Need a permanent home
  2. Need to figure out deployment
  3. More testing with multiple users
  4. Determine slack channel
  5. Make sure it doesn't send notifications
    to inactive users

Hans and Franz

Future Feature Ideas:

  • Keep a history of exercises per user.
  • Use a sliding window of users so that it isn't as random.
  • Set fitness level [beginner, intermediate, advanced] exercises
  • Increase reps
  • Call out to everyone in a channel

Hans and Franz

Any other ideas?

Thanks!
Dustin McCraw

Made with Slides.com