HCI: Human-Canine Interaction, the UX of puppies
Bruce the land shark

HCI: Human-Canine Interaction, the UX of puppies


My wife and I have always wanted a dog.


We always had excuses for why we couldn't get one, though. We travelled constantly. We didn't have a backyard. Time was always in short-supply.

But then on December 3rd, my father-in-law passed away after battling with pulmonary fibrosis, a terrible lung disease that slowly robs your body of oxygen. It was a terrible, traumatic experience that we're still grappling with.

That same day, sleep-deprived and shaky, I made a spontaneous decision. I surprised my wife at the door with a small bundle of golden fur. It took a few days, but soon enough we were cuddling this new life while trying to navigate the awful loss of a loved one.


woman holding a golden-doodle puppy


In the 3+ months since, we've learned a lot. Frustrations and joys abound. While trekking through the woods with Bruce (yes, he has a human name 🐶), my wife made a joke about the UX of having a puppy. "I should write an article about that," I chuckled.

Let's use Jakob Nielsen's 10 usability heuristics to guide this silly discussion.

You'll enjoy this article if you don't take it too seriously. Yes, I understand that my examples don't perfectly match the intended spirit of each heuristic. But as Jakob Nielsen might say, "Hov, hov ... Klap lige hesten." 🇩🇰


#1: Visibility of system status 👀


"The design should always keep users informed about what is going on, through appropriate feedback within a reasonable amount of time."


a dog chasing its owner in the snow

The most helpful advice I read when adapting to puppy life was this: if you're thinking about taking your puppy out to pee, do it now. If you wait three minutes, there will be pee on the floor (or worse).

Through positive reinforcement, Bruce learned to tell me his system status. But mostly, it came down to me recognizing the tell-tale (tail) signs that an action was needed to avoid an error. Now he's great about scratching at the back door to go outside.

I've also gotten better at reading his behavior. Particular type of zoomies at a particular time of day? He's got to poop!


#2: Match between system and the real world 🌎


"The design (or puppy) should speak the users' language. Use words, phrases, and concepts familiar to the user, rather than internal jargon. Follow real-world conventions, making information appear in a natural and logical order."


puppy chewing on a beef stick

My dog's love language is treats. The smellier the better. Beef tracheas, lamb lung, or even some yogurt is enough to get him to pay attention. One of the most amazing yet overlooked aspects of dog training is that a dog can learn to understand not only gestures but vocabulary. With our primate cousins, a human pointing results in the animal looking at the tip of the pointed digit. With a dog, however, the animal looks in the pointed direction. Dogs understand intention! The users' (my) language is not overly complex and it doesn't vary. I give Bruce simple, conventional commands that he can easily recognize to perform a requested action. I use words, phrases, and treats that Bruce is familiar with.


#3: User control and freedom 💻


"Users often perform actions by mistake. They need a clearly marked "emergency exit" to leave the unwanted action without having to go through an extended process."


dog runs through a field

Hmm, this one is a mixed bag. In the analogy where I'm the user and Bruce is the interface, he could use some redesign in this regard. At 5 months, Bruce is more independent than he was when we first got him. But he's still a velcro-dog. I haven't come across any web apps that require your constant undivided attention. (Except Facebook but I deleted that ages ago.) In a perfect world, I could pause the puppy when important work arises, allowing me the freedom to resume puppy-mode when convenient. The best solution I've found for this usability issue is to take Bruce on long, early-morning hikes. His performance notably improves for the remainder of the day.


#4: Consistency and standards 📐


"Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform and industry conventions."


a puppy laying down for a nap

The key to training a puppy is consistency. Because he's mostly poodle, he's smart enough to learn that he can get away with different things around different people. We have to set standards for how we train and reward him. If I teach him sit means lay down but my wife teaches him sit means do a backflip, he will be one very acrobatic yet confused creature. No one enjoys mixed signals.

Dogs also do best when meal-times and routines aren't variable. At 6:00 PM EST, you can bet your bottom dollar Bruce will be at his food bowl. Don't be late.


#5: Error prevention 😇


"Good error messages are important, but the best designs carefully prevent problems from occurring in the first place. Either eliminate error-prone conditions, or check for them and present users with a confirmation option before they commit to the action."


No alt text provided for this image

Bruce hates the cone of shame. I chuckled when I learned the actual name of this contraption is 'Elizabethan collar'. How fancy! But it keeps him from touching his stitches (recently neutered).

Likewise, his leash goes back on when we get close to traffic or cars after a long, muddy hike. You'd think he'd be tired after a 5 mile hike, but his favorite game becomes 'catch me if you can'. By leashing him before he knows we're close to leaving, I prevent chasing him around the parking lot of the trail and regretting ever buying a dog.

But who could be mad at that face?


#6: Recognition rather than recall 🤓


"Minimize the user's memory load by making elements, actions, and options visible. The user should not have to remember information from one part of the interface to another. Information required to use the design (e.g. field labels or menu items) should be visible or easily retrievable when needed."


puppy on a snowy bridge with the author

I'll keep this one simple. If you're getting a puppy, have a plan. Your cognitive load will be overwhelming. It's a lot to learn. Keep the details simple. Put the leash by the door. Get a poop bag attachment for the leash. His food container close his bowl. You'll be so busy running around keeping him out of trouble that you won't have time to remember where you left things.


#7: Flexibility and efficiency of use


"Shortcuts — hidden from novice users — may speed up the interaction for the expert user such that the design can cater to both inexperienced and experienced users. Allow users to tailor frequent actions."


No alt text provided for this image


A newbie mistake when dealing with your dog's misbehavior is to yell. Dogs aren't people. They don't interpret your raised voice as carrying more weight or urgency than your normal voice. If they're barking at something or someone they shouldn't be, place a treat under their nose to distract them. Get your puppy to learn it's name by rewarding eye contact with treats. Distractions will be hard to look away from, but for the right treat your dog will learn 'leave it'.


#8: Aesthetic and minimalist design


"Interfaces should not contain information which is irrelevant or rarely needed. Every extra unit of information in an interface competes with the relevant units of information and diminishes their relative visibility."


Don't dress your dog up. There are enough miserable dogs on instagram fulfilling their owners' attention needs. Keep it minimal ♥️.


#9: Help users recognize, diagnose, and recover from errors 🤬


"Error messages should be expressed in plain language (no error codes), precisely indicate the problem, and constructively suggest a solution."


If you're going to correct a dog's unwanted behavior, such as peeing on your floor or biting, you have to correct it the moment it happens. Otherwise, the dog has no idea what you're objected to. A firm, simple no will often suffice. 'Learn it' can be a harder phrase to learn, but is super useful if your dog is part retriever. Allow your dog to make mistakes. Be patient. Reward and praise your dog when they get it right. Dogs are the only example of unconditional love. Cherish that.


#10: Help and documentation 📖


"It’s best if the system doesn’t need any additional explanation. However, it may be necessary to provide documentation to help users understand how to complete their tasks."


Don't be afraid to seek help. Bruce recently graduated from one training program and we're bound to start another sooner or later. There are so many free resources online. Having a dog is a great thing, but it comes with responsibility. You're responsible for keeping this creature happy and healthy. It's worth spending the time to do right.


Thanks for reading 🙏

If you'd like to learn about the magic of dogs, I recommend Kate Leaver's book, Good Dog.

Alright, one final picture 😉

man holding his dog in the woods


Jacques Oloa

Innovation in Fintech & Insurtech for Animal Welfare | Co-Founder & COO at PennyPet I Top 100 Start-up Challenges 2024

2y
Like
Reply

To view or add a comment, sign in

Insights from the community

Others also viewed

Explore topics