Monday, November 26, 2012

Heard That One Before, Part 7: What the Mean Means

Welcome to the next installment of "Heard That One Before," the series in which you hear from the front lines of Phoenix Firestorm Viewer support on how not to make it more difficult to troubleshoot your issues. Today's topic got a little lengthy because there are nuances to it, and I wanted to be totally clear about what I do and don't mean by it. Hopefully, it's clear enough.

7) "I'm not a techie / Second Life professional / support person / dev and therefore can't understand a word you're saying / anything on your wiki."

As usual, there are different layers to this, so let me be specific. This is not about those who are aware that they don't know a lot about the viewer or their computer or SL. If by "I'm not a techie," you mean "I'm computer illiterate" or "I need more help understanding what's going on here," then don't worry, this is not about you.

It's about those who, if they don't understand something we tell them or that they read on the wiki, conclude that we're speaking too technically not just for them but for the "average person" and go on to tell us so in a way that suggests that we must be technological elitists who aren't interested in helping the "majority" of users.

In other words, the problem is not in whether the person knows something or not -- it's always ok not to know things -- but in where they attribute any criss-crossings of communication that occur when support is trying to help them.

If you need us to explain anything better, just ask. We work with such a wide range of people with so many different backgrounds that it takes a lot to make most of us judgmental about what you do or don't know. Ordinarily, all you really need to say is, "What does that mean?"

In this context, "What does that mean?" differs from "You're too technical for the average user" in a very important way: it's neutral. It doesn't imply that either of us ought to know more about what the other person knows than we could possibly be expected to.

It would probably surprise most people that I don't think of myself as a techie, either, and this is part of why the "You're too technical" comment is not only unproductive but sometimes startling. I know the viewer decently well, but if you want me to talk about computers, I'll be pleading the Fifth. Anything I know, I learned by lurking in the viewer group, eventually chiming in when I knew something (which, almost without exception, I had learned there in that group), and then picking up more on the "job." I entered support not knowing my operating system was out of date, never having performed a clean install, and terrified that I'd be expected to know things about Macs simply because I'm a Mac user. I wasn't invited to the team because I was a genius or an expert; I was invited because I was helpful and open to learning. There are a number of people on the team with similar beginnings.

Further, the more you know, the more you become aware of not knowing, so I really don't feel like I'm anywhere nearer to being "a techie" (whatever that means) than I was almost two years ago. The most valuable skill I've learned is not how to answer questions but how to ask them. Sometimes I'll be asking for help from others, and other times I'll be asking a user questions to figure out how best to help them. Either way, when you ask questions, you turn the helping process into a conversation where you can gain the information you need, and the helper learns how to explain it in a new way.

When you use the line, "This is too technical for the average user," a barrier comes up. Unlike "This is too technical for me," a comment that implies that the information is still accessible, the replacement of "me" with "average user" suggests the opposite: that it's closed off, that the user bears no responsibility for it and thus may not be interested in learning it. It's a subtle difference, but I've seen it make or break dozens of support sessions.

Who Speaks for the "Average" User?

This is really the question at the root of where the "You're too techie for the average user" issue comes from. Fortunately, most people have a pretty good sense of what they don't know and can admit to the gaps in their knowledge, and as a result they're good at asking questions or at least pinpointing what they don't understand. I love working with people like that because it means the issue might turn out to be a little one that just needed a better explanation.

The problem comes in when a user and a support person's perceptions of "average" don't mesh. So let's talk a bit about where these separate perceptions come from.

Our (support's) perceptions come primarily from past experience helping people, with specific explanations tweaked according to other factors, like what kind of an understanding a user has exhibited earlier in the conversation and how long they've been in SL.

When it comes to how we explain stuff, we get opposing complaints from both sides, as the very first post in this series should illustrate. We're about equally likely to get "You're talking over my head" as we are to get "You're talking down to me," and sometimes -- more often than should be logical -- we get both from the same person, in the exact same conversation. Both of these reactions are different sides of the same coin. They're defense mechanisms, the first against feeling dumb and the second against feeling like your intelligence is being insulted.

As a result, the way we explain something will be a result of weeks, months, or years of experience, of talking to users and eventually figuring out what explanation works for the greatest number of people: detailed enough that most people will understand it, but not so detailed that most people would be offended, with the recognition that there are always a few people who will still need more explanation.

We'll adjust that as needed, too. I have some regulars to whom I immediately give detailed explanations because I know they need that and others who need exactly the opposite. If I'm talking to a newbie, my answers are going to start out more precise than if I'm talking to someone with a 2004 rez date.

It could turn out that the holder of the eight-year-old account might have taken seven years off and now needs a newbie-level explanation. The person on the new account might be an experienced user on an alt. In either case, I'll adjust. I'll feel my way as I go. But in all cases, I'll be starting at a flexible middle point that I came to not by basing the "average user" on myself but by honing what kinds of explanations seem to work best with the widest range of users.

Am I wrong sometimes? Of course. But the point is that if I speak over your head, it's not for lack of doing my best not to. It's not because my explanation is "meant for" someone who knows a lot. If I fail to explain something you need explained, more likely than not it's because the majority of people I've spoken to previously were ok with the explanation I gave.

Here's where it gets tricky because there's no easy way to sugar-coat it. You might notice this means I'm suggesting that if you don't get what we (or the wiki) are saying, your level of understanding might be below average. Well… sometimes, yeah. Sorry, but yeah: on that particular subject.

This shouldn't make anyone feel defensive, though. Knowledge (including viewer, computer, and SL knowledge) isn't a greater than/less than quantity. It's pretty normal to know plenty about one subject and very little about another, so we expect to be asked for clarification sometimes.

But what if you don't feel unknowledgeable? What if you see yourself on par with the average user? In most ways you probably are. Those who are aware of the gaps in their knowledge on a particular topic won't be embarrassed by having to ask for clarification; it's only when a user thinks they're about average, but our experience with a range of users tells us otherwise, that this uncomfortable situation comes up.

What is "Too Technical"?

Here are some examples of subjects that I have been told are "too technical." To be clear, these are not all topics that the "average user" necessarily knows; in fact, the number of times I've been asked for clarification on some of them has taught me to present them differently or have an explanation at the ready. Others I've only been told are "too technical" once.

  • The term "docking" (as in tabs docking into windows, or windows docking to other parts of the UI).
  • The abbreviation "UI" ("user interface") and its meaning (the buttons, windows, and other graphical parts of the viewer but not the world).
  • The abbreviation "OS" ("operating system"), as well as what it means (Windows, Mac, and Linux and their various flavors).
  • How to find a skin or shape in one's inventory.
  • Anything included in a wiki page.
  • How to follow a path in the First Menu -> Next Menu -> Setting or Preferences -> Tab -> Subtab -> Setting format to locate a setting.
  • A computer file path in the [USER NAME]/First Folder/Next Folder/Last Folder format.
  • The use of the word "path."
  • How to locate the number of items in one's inventory.

As I mentioned, the above list is not intended to imply that everything included is basic knowledge. Rather, the list is there to give a range of topics that do come up, some of which might make you say, "Yeah, that's kinda techie," and others of which probably make you go, "Seriously?" They're also not listed in any order of difficulty, and I won't be identifying which ones I'm asked for all the time and which ones I've only had to explain once to a non-newbie.

That variety is the point. You never quite know what people are going to think is "too technical," and if we err too far toward assuming people know nothing and need everything explained, then we risk irritating a lot more people than we're helping.

There are two sides to the solution, however. One half of it is for support and the other half is for users.

Our responsiblity is to keep mental note of what topics we're asked to explain over and over and over again and to adjust our approach to them if we have to. That process is continuous -- we've all been doing it since we joined the team, and we'll continue doing it while talking to you.

Users' responsibility is, if there's something you don't understand, all you have to do is ask. No attributions of techieheadness necessary. A simple "What does this mean?" will do.

The Wiki: Contestable Terrain

This applies to our wiki, too. Sometimes we'll direct a user in need to one of the wiki pages already set up for troubleshooting the particular problem they have, and they'll return after a few minutes to say, "I don't understand anything on that page; it's written for techies, not regular people." Well… the wiki doesn't have the easiest design to read when you're new to it, and sometimes it's frustrating to face a wall of text and not know where to begin (though the beginning is usually a good choice), but the instructions are meant to be straightforward.

Trouble is, although I can adjust my explanation for someone line-by-line in a real time conversation, the wiki is only changed if and when we know it needs to be.

This means that if it isn't as straightforward as we hope, then you can do us a load of good by telling us what should be straightforwardized better for you (and possibly for others). What this takes is specificity. "It's written for techies" isn't as helpful as, "When it says to go to a certain folder, I don't know what that string of words and slashes means." If you're unable to give us that specificity, then it probably won't get fixed.

In the end, let's make it about the information. About problems and solutions. If you don't understand a suggestion we make about a solution, let's focus on helping you to understand it. When there's a wrench in that system, we'll rely on you to help us just as much as we're helping you. Implications that we don't know how to speak on your level won't get us nearly as far as straightforward questions and pinpointing what you need explained.

Sunday, November 11, 2012

The Phantomless Menace: Using the Firestorm AO to Replicate Phantom Mode

Up until recently, a number of Third Party Viewers have had a popular feature known as "Phantom mode" that allows the user to make his or her avatar immobile. Phantom mode was excellent for preventing one's avatar from being pushed by griefers or aimless noobs.

Unfortunately, when Linden Lab introduced their Pathfinding feature, Phantom mode was broken as collateral damage. Yes, the setting still shows up in your menus if you're on an older viewer, and yes, you won't be able to walk if you turn it on. But your avatar will be pushable. That part is gone, probably for good. Consequently, if you've upgraded your viewer since Pathfinding came out, you're probably using one that does not have Phantom mode as an option. Doesn't work anyway, so why leave it in?

So what other options do you have now?
  • Option A: Just use a Force Ground Sit. In Firestorm, this is found in Avatar > Movement > Force Ground Sit, or Ctrl-Alt-S. As many of us learned as our first lesson in virtual self-protection, you can't be moved if you're sitting. And Force Ground Sit will sit you down anywhere at all, even hovering in the sky. 
  • Option B: There are HUDs you can purchase that include a "movelock" feature that works similarly. No, I can't name a single one. I'm not a HUD person. Search the Marketplace if you're interested.
The drawback of Option A is that you'll be sitting down. There may be times when you'd rather be more subtle about what you're doing, and you probably don't want to sit in the middle of a club where everyone is standing or dancing. The drawback of Option B is having to use a HUD when it's really not necessary. Some people don't give that any thought, but I like to keep my screen and my attachment points free and clear, and I prefer to minimize worn scripts to only those for which there is no alternative.

So here is a nifty alternative that works well on Firestorm and any other TPVs that have incorporated the Firestorm client-side AO. It involves using the internal animation overrider to put your avatar in a ground sit while it appears to be standing. After it's set up, it's close enough that we can call it Fake Phantom. If you've already been using the Firestorm AO, then this will be very straightforward and you can mostly skim. If you're new to using the Firestorm AO, then read carefully and go one step at a time.

Replicating Phantom Mode in a Post-Phantom SL

1) Make sure you have at least one stand animation in your Inventory. You can copy one or more out of your animation overrider HUD if you need to (and if they are copiable). See "Extracting Animations" below for more info.

2) Open the client-side AO window. On all skins except the Vintage skin, do this by clicking the button marked "AO." On Firestorm's Vintage skin, click the Up arrow alongside the part that says "AO."

3) If all you see in the AO window when you open it is a dropdown, a couple of arrows, and a "Sit" box, then it's in its collapsed state. Click the Wrench icon to open it to full size.

4) Click the "+" icon in the full-size AO window and name the set you're about to create. "Standing Ground Sit" would be a logical option.

5) About a third of the way down the window, find a dropdown that most likely shows "Standing." Change that to "Sitting on Ground."

6) Drag one or more stand animations from your Inventory onto the open AO window. It will say "Reloading Config / Please Wait" while it processes. When it's done, you should see the animation(s) listed in the window.

7) To turn your new Fake Phantom mode on:

  • Make sure it's selected in the upper dropdown in the AO window.
  • If you have other AO sets loaded in addition to this one, click the checkmark icon to the right of the name. This tells the AO which set to use.
  • Turn the AO on using the toolbar button. On all skins besides Vintage, click the box in the corner of the button so a checkmark appears in it. On Vintage skin, click the part that says "AO."
  • Force a ground sit by going to Avatar > Movement > Force Ground Sit, or hit Ctrl-Alt-S.

8) Find yourself standing unmoveably in one spot. Don't forget to hit Stand before you try to go anywhere.

Additional Bits 'n' Pieces

  • Extracting animations: Your AO HUD is just like a box. You can unpack the contents in the same way.
    • If the animations are copiable, then you can wear the HUD, right-click it on your screen, and put it in Edit mode. Flip to the Content tab, find the animations you want to use, and left-click drag them from your AO into your Inventory. It doesn't much matter where they are in your Inventory for this particular use of the AO, but it doesn't hurt to create a folder for them so you can keep track of them.
    • If they're not copiable, then you can't have them in more than one place at once. Either in the HUD or in your Inventory, but not both. You can, however, use the same animation in more than one set in the client-side AO. So instead of just unpacking the stands, you might as well unpack everything at once and create not just a faux-phantom set but a regular set as well. Take the HUD off if you're wearing it, rez it on the ground, right-click it, and choose "Open" and then "Copy to Inventory." Then go back to the above instructions to finish creating Fake Phantom.
  • After you've created your Fake Phantom mode, you will have actually followed the same instructions you'd use for creating a full internal AO set using the Manual Method. To create that, as well, hit up our wiki page. Most of it will sound and look very famliar now.
  • Instead of stands, you can use dances for entering Fake Phantom mode at a dance club. Just follow the above instructions, but instead of loading standing animations, load dance animations. They will allow you to appear to be dancing when you're technically ground sitting.
  • If you've loaded more than one stand (or dance) animation as ground sits, you'll probably want them to cycle. In the AO window, make sure you have the ground sit set selected at the top and "Sitting on Ground" selected in the lower of the two dropdowns. Check the box marked "Cycle" and put your preferred cycle time in the space provided.
  • You can always add or remove animations from this set. To add, simply drag the additional animations from your Inventory onto your AO window as you did when you first set it up. Just make sure you have both of the dropdowns in the window set properly. To remove animations, highlight them in the AO window and then click the lower of the two Trash icons.
  • It doesn't matter what store you bought the animations from. It doesn't matter if they're copy or no copy once they're in your Inventory. This process works the same way regardless of those factors.
And that should do it! With just a little bit of prep work, you can get back that phantom functionality you're used to!