Keep Hammering that Responsive Web Design Square Peg into the Round Good Design Hole

Seems like every day I see a new article talking about the challenges of Responsive Web Design. And tellingly, the discussion of the challenges appears to be more in the context of just basic Web sites, that is, more information oriented sites with relatively straightforward page-to-page navigation interactions. From an interaction design perspective, such solutions are comparatively simple, contrasted against your average application, which typically involves significantly more challenging interaction design problems–just for one device class.

I have speculated before that Responsive Web Design is a lie. While that is a bit of hyperbole, the reality is that the fundamental idea behind the RWD technique is flawed from a Design perspective. It is purely a pragmatic concession, and as you can see by the many pragmatic challenges to even rather basic solutions (information Web sites), not to mention the typical huge bloat it causes, one just has to wonder how long the industry will keep trying to pound that square peg into that round hole.

We can make ourselves bigger, stronger hammers. We can use bores to make the “hole” bigger, but at the end of the day, it’s just a flawed technique. You can’t get to a great experience with a one-size-fits all solution, and you can’t reasonably manage many customized experiences with a single code base. Oh, and that’s on top of the Web platform, a platform that is, at its best, still immature from an application platform perspective.

Call me a party pooper, but that’s the reality we are saddled with. I think we’d be better off focusing our energies on just making it easier to design and build awesome solutions for individual device classes at a time, and looking at more manageable ways to share sharable assets between device class solutions. There are tools today that help, but we are far from an ideal solution.  But at least that approach isn’t fundamentally flawed, i.e., it is possible we will get to a good solution. Not so with RWD.

Nativist Nonsense and Idiotic Idealism

Hard to see when blinded by ideology

I very much appreciate, understand, and value design aesthetics and well built technology. I’m also an amateur philosopher in my free time, so I can appreciate ideas, ideals, and ideologies in themselves. All of this is all well and good, but what I don’t get is people who get so wrapped up in some design or technological ideology that they blind themselves to what is good apart from that. Let me give you some examples that I have heard and seen many times in my career in one flavor or another:

  • Blindly preferring some piece of software or technology purely on the basis that it is “open” or even “standards based.”
  • Blindly preferring some piece of software or technology purely on the basis that it is made by your pet favorite company.
  • Refusing to install or use some piece of software or technology on the basis that it is made by some company you don’t like.
  • Refusing to install or use some piece of software or technology on the basis that it is “open” or “free.”
  • Irrationally assuming that because some company had a challenge with a bug, virus, security, privacy, free-ness, openness, whatever, then everything that company does thereafter is tainted and to be avoided.
  • Irrationally assuming that because something is “native” that it must be better than a non-native alternative.
  • Refusing to code in some language on the basis that you don’t like it/it’s not your preferred one.
  • Prejudging a piece of software because it is built on <insert name of technology stack you don’t like>.

And there are a host of other, even less defensible positions that otherwise quite intelligent people take in relation to design and technology. Especially for people who are supposed to be professionals in technology and/or design, this sort of blind prejudice and ideology-based thinking is inanity; it is out of place, unbecoming, and simply unacceptable.

Most of us in design and technology are not paid to promote ideologies; we are paid to produce things. At the end of the day, the things that make us more productive and solve each particular problem best are the things we should be using. There are good ideas everywhere, and if we blind ourselves to them, we are injuring our careers and doing an injustice to those who pay us with the understanding that we will make the best thing for them in the most productive way possible.

Sure, you can have your preferences. Sure, you can espouse best practices and design philosophies that make sense to you. Heck, you can even advocate for them. But just don’t let those loom so large in your mind’s eye that you cannot see the good in things that don’t align with them. Don’t get so stuck on a technology or a framework or a practice or a pattern or a principle that you choose it when there are better options available for the problem at hand. Everything is not a nail, no matter how superior you think your hammer is. Don’t let your ideals become prejudices that instead of fostering awesomeness rather become a roadblock for you and those you work with and for.

And this extends, importantly, to people as well. Don’t treat those who don’t share your ideals with disdain. Don’t imagine for a second that because you adhere to some ideology (“craftsmanship” or “big ‘D’ Design” or whatever) this makes you more professional or better than they are. I’ve even heard people judge other professionals by when they purportedly clock in and out, as if having a healthy work-life balance somehow makes you less professional or capable!

In our line of work, it is the output, the products of our efforts, that matter most, not how we get there, and there are most definitely many paths to good outcomes. The judges of these outcomes are our clients, our customers, our markets, our users–not us. And the primary criterion in judging a good outcome is most certainly not how well our work aligned with any given ideology, however well-intentioned it may be.

Confidence Builders?

I just read Phil Haack’s Test Better post, and I liked the dicing of terminology around testing/QA. It occurred to me that if the goal is more to build/generate confidence (and it is), then maybe the better job title would just be Confidence Builder. What do you think?

P.S. I totally agree that automated testing isn’t enough. I also agree that you don’t have to have others do the testing for ya. But there is validity in the concern about bias. To test well is a discipline, even an art, but as with many things in software, if you don’t have specific professionals doing it, you can try to do some cover–you can make it suck less.

Like good Design, testing takes an empathy with users. So testers (confidence builders?) can leverage practices from Design disciplines to build that empathy. Doing at least some lightweight user research, spending time as much as possible with users, those can help.

Testing also takes imagination; it takes a certain amount of compartmentalization–to try to set aside what you know of the software design and approach it with fresh eyes. Imagine that all you know about the software is what you see in front of you. Imagine that you have some goal/desire for why you’re looking at it (this is where the user research can help again). Now let yourself go.

Still, you will get better results having people who actually are not so biased doing the testing. You’ll get the best results (and most confidence) testing with and observing users. So even if you don’t have dedicated confidence builders, you’ll be better off doing that.

This isn’t to say you shouldn’t test your own stuff–you absolutely should, especially if you don’t have folks dedicated to it, but if you’re going for confidence, nothing beats both testing with users and testing with professional confidence builders.

Verizon Support & Sales – A Mixed Bag

I don’t seem to have good luck with Verizon’s self-service.  Back in April this year, I started getting notified that my contract (for Fios) was expiring, inviting me to come online and look at options.  I followed this, and here’s what I saw.

First, I see this waiting message:

Verizon Loading Message

And after a second or two, I get redirected to this:

Verizon Error Message

The URL in the browser is https://www22.verizon.com/FORYOURHOME/GOFLOW/Common/LocalBusinessOfficeSR.aspx?Message=BTNNQ-CSR.

Now, having been a Web developer for some years, I tried all the normal stuff that I could do on the client–different browsers, clearing cookies, restarting–all to no avail. It is pretty clearly a server-side error.

So I finally caved and reached out to Verizon support (email). Their initial response was basically “why don’t you call in?”  Well, because I like to see the options in black and white in front of me.  And ironically, when I later was talking to a rep, she suggested that I don’t have to make up my mind now–I could go online and see the same options. 🙂

After this, I reached out to the (apparently) only capable folks on frontline Verizon Support, @VerizonSupport. They’ve gotten me out of jams a couple times, when dealing with the regular support folks doesn’t help. And they effectively did help, even if it took a few days.  They got the case to the dev team quickly, and it was resolved in a reasonable amount of time. Great!

Problem solved!?  Well, temporarily, it seems. The other day I saw the ad for “Quantum,” which is the new insanely speedtacular options for Fios.  So I thought I’ll go check those out, and I had deja vu–the same process, same error above.

I reached out to @VerizonSupport (via DM–we’re old pals now), and they’re looking into it.  Will update this post with the result of that (actually I’m posting in part to help them–so they can see the error exactly and pass it on)..

Resolved! 14 Aug 2012: Yesterday I could successfully log in and look at my options.  That did not, in my case, solve it for me, as the online tool wouldn’t let me switch to a no-TV option, but hey, the bug was fixed in short order!

Diversion – Interesting Sales Antics Vol. 1

So I was a little impatient to learn about my high speed options. I’ve also more or less decided (with wifey’s support) to ditch “cable” TV and just go straight internets. This happily coincided with the new speed offerings, so I called into 1-800-VERIZON to ask what my options are. The helpful rep gave me some prices and bundling options–of course, it seems like a better deal to keep Fios TV.  For just $N more, you get a BAGILLION HD channels.  Yeah, well, the thing is, I just don’t use all those BAGILLION channels, and I won’t.  And it’s just more stuff…

Anyhow, I said thanks and that I’d think about the options.  I called back later (this was Saturday), and I talked to a nice fella who was eager to help me change from a TV+Internet bundle to a, get this, more expensive internet only bundle. Can you guess what he said to me?

“I see that you signed up not long ago for a 2-year contract for the TV+Internet bundle. Unfortunately, when I try to remove the TV, it tells me an early termination fee will be incurred ($200+). I can’t seem to get an override…”

What? You mean to tell me that I’m offering to extend my 2-year contract to a more expensive internet only option, and you want to charge me an “early termination” fee?

I don’t blame the rep; it is, of course, “the system’s” fault. But how bass ackwards is that?  I’m currently awaiting his supervisor to get back to me as to whether or not they can override the fee.  Of course, I can keep my TV and upgrade the internet part (which is half the speed and $10 more) no problem.  *sigh*

Resolved! 14 Aug 2012: The supervisor who supposedly was going to call me back didn’t, so I called in again yesterday. The rep I spoke to there had me straightened out in less than 10 minutes. No early termination fee; the plan I asked for. Easy as pie.

The Moral

This isn’t a complete rant. I’ve been a customer on and off with Verizon for at least nine years. In fact, I worked as a consultant for them in Tampa back in 2003 (about the same time I first signed up with them 😉 ). It’s a huge company, with millions of customers, tons of legacy technology. I worked on middle tier services to get the front to talk to the back in a more friendly way.  I’m not going to pretend getting a pondering beast like that to get all the bits and pieces working together in lock step is easy.  So I am somewhat sympathetic.  That said…

I will say that as a software UX and dev professional, this experience leaves a lot wanting. I understand getting unexpected errors, but they really should have a big “get help with this” button on the page, that will start an online support case for me, sending them all the contextual error info they need to resolve it. I mean, I’m online. You have online support. Ne’er the twain shall meet?  You tell me to call?  Really?!?  (What is the “Local Business Office” anyways? You gave me a generic 800 number to call, not the local office.)  And the fact that it was supposedly fixed and showed up again with the same subpar experience…

When people get errors is the time when they’re most frustrated, and so you want to handle that very carefully and smoothly–make getting a resolution as fluid and easy as possible.  Don’t just punt and say “call us!”  Especially for folks who are already online–the context is there, just connect the dots for them.  This could have been an opportunity for Verizon to wow me (and others who are undoubtedly running into it) with how smoothly they deal with failure.  Instead, I get passed around, asking me to do extra work and effort to resolve it. Not good.

And the fact that I get significantly different levels of quality of service from their email support to their Twitter support can’t be good. Twitter is not great for resolving issues–limiting to 140 chars is just not ideal. I can only imagine it’s not ideal for their CS systems to track, either. But if we customers are taught we get better service that way, well, guess who we’ll go to when I need help?

As for the sales thing, I expect them to skip the fee; it’s just a tad wonky that it came up in the first place. I’m sure there’s a perfectly good “reason” why “the system” is acting the way it is. But the bottom line is that it’s broken. It’s not as if I’m asking to leave Verizon for another dealer. I just want to change the shape of the bits that are flowing in and out of my house.

Overall, I’d have to give a C in my quality of experience. The Twitter support is a redeeming factor–that team gets an A, especially given how they work around Twitter’s inherent limitations.

Keep working on it, Verizon.

Interaction Design Is Creative and Synthetic

The UX Honeycomb

A while back, I was reading this post over at Optimal Usability about the gaps between interaction designers (IxDs) and visual designers (VDs). I am director of Design at Infragistics, which in practice means that both visual design and interaction design report to me (along with something we call “developer interaction design”).  Our core business for about 20 some odd years has been making reusable UI components and tools for developers. A few years ago, we started to diversify with designer tools, such as Quince and Quince Pro, and we are working on some other nifty stuff focused on helping designers, so we tend to think about them a lot, in addition to our own practice internally.

A lot of what Adeline says rings true for me as well–there is definitely a distinction in perspective and modes of thinking between IxDs and VDs. And in terms of not totally compartmentalizing design disciplines, of course, that makes sense.  Cooper advocated something similar back in 2008 and has been on the road with that “unified design” concept for some time.

But I have noticed what seems to me to be something of an unfortunate trend, and that is the tendency to characterize interaction design as an analytical and systematic discipline focused solely on optimizing for the user (basic usability and task completion concerns) while tossing, it seems, all aesthetic, business, and other considerations into the domain of other folks. The solution advocated, then, becomes something to the tune of “let’s involve everybody throughout the design process to ensure all of these concerns are represented.”

Involve Everybody!
In the article on Cooper referenced above, the proposition for this is in part based on a concern about apparent power struggles over the design itself.  Exemplifying a possible dispute about information density in which the IxD cites research, they say, “If the visual designer has no direct experience with that research, where does the conversation go from here?”

Again, the proposed solution is that all of the design disciplines should be involved in research so they all, in theory, can use “research” to beat each other over the head with when disagreements arise.  One key problem with this, though, is that more often than not, you’re dealing with interpretations of research.  So even if both parties are involved, they will still argue based on their interpretations and prejudices (in the absence of ever elusive definitive data to resolve things).

At Infragistics, we hear the same concerns, coming not just from visual designers but also from developers/engineers. The problem I see is that research, in these discussions, tends to be seen more as a tool to used in disagreements over designs to support “my” opinion on the right design direction. People at this point tend to look at it through the eye of proving their point rather than considering it all holistically as input. Exploratory research, on its own, can rarely be used to support this or that particular design choice, so it’s usually an exercise in futility anyways. If you want that sort of information, you typically need to do focused A/B testing, and be very careful about how you frame the tests.

More to the point, interaction designers are trained and practiced in looking at research holistically, and letting the data speak for itself. It takes practice to separate yourself and your opinions from the data, and often those not practiced in this are only too quick to latch onto the data that seems to support their preconceived notions and to minimize or ignore what doesn’t. I’m not saying IxDs are never biased, but the point is that this is part of the IxD discipline, and it takes practice and conscious effort–things that other disciplines either aren’t interested in investing in or can’t due to other demands on their time.

And that brings me to the broader concern about involving everybody in research–except on small, startup-sized teams, it seems to me to be impractical and, in the business owner’s eyes, expensive. Especially so if your teams are geographically distributed. Not only that, as your teams grow, involving them all can seriously intimidate the research subjects, which screws up the data.

One suggestion to deal with this is to have the other team members only go to this or that research session. But that seems potentially worse because those team members will come away with skewed ideas, basing their notions on isolated bits of the research instead of the research holistically. And if they’re not trained and practiced in research (as most other team members are not), it’s all too easy for them to build up such skewed notions, and later to use them as weapons in design discussions–they know enough to be dangerous but not enough to be effective in terms of informing design directions.

On the other hand, I heartily agree that interaction designers should be involved in research as much as possible; ideally I’d even say they are the primary participant, with the design researchers (if such a specialty exists for a team) facilitating and executing research sessions and compiling the research for later reference. The IxD, in orgs without dedicated research teams, should be the folks who take over the researcher’s tasks. Of course, they won’t be able to do it as thoroughly as dedicated researchers, but they are the natural fit due to training and what is required of them to fill that gap as best they can.

It is the IxD’s job to take this research, to understand it, and most importantly to synthesize it into a holistic, coherent interaction design. That, I repeat, is the primary activity for IxD, and as such, the designs they produce should normally sufficiently embody and reflect the research so that it is not necessary for everyone to be involved in the research. The interaction design itself should speak for the research.

The other product disciplines need to trust that the IxD is doing her job. That doesn’t by any stretch mean that designs should never be questioned–quite the contrary, the more a design is put under fire, the stronger it should become. But if the IxD listens to the concerns and suggestions, can explain the rationale, and ultimately says, citing research if applicable, that this is the right design direction, then that decision should be respected as part and parcel of the IxD’s role and responsibility on the product team. It’s quite possible they could change the design in response to their peers’ criticism–I hope they would if the suggestion makes the design better. But this idea of getting everyone involved in the research so that everyone can leverage their interpretations of it to push the design in the direction they prefer is just unhealthy and can quite simply stall out forward momentum on the product. Design by committee is a sure recipe for disaster.

We’re Both Designers
The article on Optimal seems to imply that in order to get “lateral thinking” and thinking outside the box (“challenging conventions”), you really need to engage the VD. They also identify that the VD “has absolutely no input or access to the project until the wireframes are handed over” as a problem.  They say that IxDs are “great at models that work well for users” and testing them.  In the end, they, too, advocate plugging in folks throughout the process.

Now, first let me say that I 100% agree that collaboration and good communication between the various product disciplines is essential to great products. It seems almost axiomatic. And I might even be inclined to agree that good VDs tend to be more aesthetically oriented and good IxDs tend to be more analytically capable. I’d go further in agreeing that simply handing off annotated wireframes to a VD and washing your hands of it is a Bad Idea. But I don’t agree that the reason to involve VDs in the IxD process is that they are more creative/lateral thinkers.

While it may be true that the focus of interaction design is optimizing designs for human interaction and that visual design is focused on, particularly, visual aesthetics and the related communication (and even rhetoric), the people serving in either of these capacities are still (normally) designers. That is, they share a common way of thinking about problems–from the human perspective–and they both need to be thinking creatively about the design.

It is possible to dissect and consider the human perspective as its elements, but as we all know, people experience them together.  (And that is largely the reason these design disciplines have to coordinate.)  And while it is possible to dissect experience for the purpose of reasoning about it and engaging specialized skills and talents, that doesn’t mean that people who focus on this or that element are incapable of considering the other elements.  Nor does it mean they are incapable of considering other non-human-focused constraints.

If that were true, why would we specialize?  We do so because there are special skills and effort that go along with the various discipilnes.  Many people buy into the “T-shaped” skill set idea as valuable, in fact. Be competent across a variety of skills but really good/deep in one.

[rant]I am going on this point because it is tiresome to hear the phrase “creatives” and have it apply to one particular specialty, as if the other disciplines are not creative. Having been a software developer, I can tell you there is a lot of creativity in that discipline as well. So implying that only some (e.g., visual) designers are the “creative” ones, the ones who can think “laterally” and “challenge conventions” and so on is just hogwash. I would even go as far as to say they are not (as a group) any better or worse at this.  I’ve reviewed many a portfolio and worked with many VDs, and they can follow the crowd just as well as the next guy.  (In fact, that’s what being “fashionable” is all about.)[/rant]

Just so, interaction designers are creative. To do good interaction design, they must think creatively, laterally, and yes, challenge conventional notions. This is especially true when “redesigning” an existing solution or when considering a design in light of existing competition.  They must consider aesthetic elements, including especially that of the aesthetics of interaction.  They must account for brand identity, the “personality” of the app, the content, and the business constraints in their design. It’s my opinion that they should be the role that owns unifying all of these elements, even if they do not personally execute on all of them.  To pretend that brand can be addressed through visual design alone is anything but unified design.

And while interaction design necessarily involves more analytical capability, the best interaction designers also have a talent for aesthetics and, most importantly, synthesis.  Interaction design is not the sum of its methodologies; you can give the same design challenge and tool set to two different IxDs, and they will produce distinctly different designs.  There is, what I like to call, a “Design spark” that you can see (and as a hiring manager, need to look for). IxDs need to be able to analyze and reason through all the various inputs into the design process (business/stakeholder considerations, user considerations, and medium/technology constraints and capabilities) and then synthesize those into design solutions.

And yet it remains that there is a distinct talent in visual design that is not necessary for good interaction design. Unlike some of my contemporaries, I do not denigrate this talent by implying that it’s “just styling” or “lipstick” or “dressing it up.”  In addition to simply being able to effectively manipulate visual design tools (which take time to become skillful with), there is a particular talent when paired with the craft’s skill that makes or breaks good visual design. It is not creativity. It is a sense of balance, harmony, appropriateness, and beauty, and being able to express and enhance this through visual artifacts. Some visual designers can also extend this sense–this talent–into other media and other elements of experience as well (such as motion design, which is integral with visual design).

Visual design is both highly skilled and talent driven, and high quality visual design can make a huge difference in any given unified design.  But even so, a visual design necessarily accounts for only part of the human experience.  And that is OK. It has sufficient value and requires sufficient skill and talent to stand on its own–everybody doesn’t need to be concerned with everything.

I am saying all this to shore up that visual design does indeed stand alone as a distinct and valuable competency–without having to dilute it and stretch it into other areas of specialization or having to carve out their specialty as being “creative.” Both IxD and VD are design disciplines. At their best, both require lateral thinking and challenging conventions. That’s not the essential difference between them nor their distinctive values that they bring to a product.

Yes, they do absolutely need to integrate and communicate, and by and large, I agree with what the Optimal article proposes. When possible, looping in VDs during IxD conceptualization and later even during critique can help, and vice-versa–IxDs can and should participate in the VDs conceptualization and iteration. But this is because they are both designers, and having more trained and talented design brains contributing during ideation and critique tends to result in more alternative exploration and more critical input into the synthesis process. That can only be a good thing.