Tag Archives: design

It Feels Good to Know and Do Things

He-Man says I have the Power!

Every so often another article appears somewhere advocating creating prototypes by coding. There are many drawbacks in doing that, not the least of which is simply wasted time–time spent dorking around with code that would be better spent evaluating, iterating, and synthesizing design ideas. In response to one such article, I penned “Yes, Ditch Traditional Wireframes, But Not for Code” that goes over the various drawbacks.

Prototyping is Hard
I suspect part of the reason people want to jump into code is potentially a misunderstanding about what a prototype needs to be. Many people, when you say “prototype” think something like a near full-on app simulation, they worry about whether or not it is responsive, or at least, there is some latent idea that it is time consuming and involved. This does not have to be the case, and in fact, I would suggest that it is not good if that is the case, for the most common prototyping needs–the ones that enable you to explore interaction designs and find the best.

Prototyping Tools Are Hard
Another part of the problem, related to the weighty idea, is that most prototyping tools are themselves time consuming to learn and use, even if you don’t want to build a particularly deep, complex prototype. That is a core problem we have tried to address with Indigo Studio; we focused on the idea of sketching prototypes, that is, to make creating a prototype as easy and simple as sketching out ideas on paper/whiteboard (and even faster than that).

You’re Just Biased
Now, some have said, “Ambrose, you only advocate code-free prototyping because you have a vested interest in hawking Indigo Studio.” Well, leaving aside that this would be an ad hominem fallacy, I will first point out that Indigo Studio v1 is totally free of charge, and that you can keep it forever–you never have to upgrade. Everything I advocate for is essentially contained in the free version, so I have little to gain. I am also not saying Indigo Studio is your only code-free option; I just happen to think it is the best. ;)

Second, I invite anyone to spend the amount of time it takes to become effectively familiar with any code-based prototyping framework. Then spend the same amount of time familiarizing yourself with Indigo Studio. I kid! You need spend nowhere near that much time to become effective with Indigo!  

And once you are passingly capable with both tools, do a head-to-head challenge, starting from zero. I guarantee that in the time it takes you to just get a project environment set up with your favorite prototyping framework, you will already have created a working prototype in Indigo. It’s just that fast and easy.

Nope. It Really is More Efficient and Effective for Design Exploration
What I’m saying is that, essentially, by any objective measure, it will be faster to create prototypes that are good enough for evaluation in a tool like Indigo. Not only that, Indigo helps keep you from being unnecessarily distracted with unimportant details, while coding does the opposite. Indigo also helps you stay focused on users and their concerns, while coding does the opposite. 

Now granted, there are exceptional circumstances, but I’m talking about a general rule here. If nothing else, one doesn’t need to invest a lot to sketch prototypes with Indigo, so you don’t lose much if you find that for whatever reason, Indigo is not sufficing for your evaluation/design exploration. The inverse is absolutely not true with coding frameworks.

It Feels Good to Know and Do Things
Given all this, I have been thinking about why people would still cling to the idea that jumping right into a coded prototype is the best way to go, as a rule, for designing. I think at least part of it, if not a large part of it, has to do with simply feeling more knowledgeable and competent.

There is a certain satisfaction that comes with knowing arcane knowledge (like how to code)–one joins the ranks of the elite designers who can code. There is also a certain sense of accomplishment in using that knowledge, struggling with code, and coming out on top in the end (assuming you do come out on top and don’t walk away defeated). It’s like He-Man–by the power of code school, I have the powerrrr! 

As someone who first learned to code and worked for years as a professional developer, and then learned to design as a professional interaction designer, I can relate. (I can also, thereby, speak from experience and not ignorance that coding prototypes is as a rule a less effective starting point for design exploration.) The challenge for those who can code is to ensure that we are making choices for what is best for the design problem at hand, and not what is best to stimulate our own sense of empowerment and accomplishment.

It can be fun to code–especially when you are new to it. It’s similar to making cookies from scratch, the way grandmama use to make them, instead of just buying the pre-made dough you just break apart. That’s fine when it’s for our own entertainment and enrichment, but when we’re being paid as professionals to be as effective and efficient as possible to design the best thing we can, we probably should think twice about taking the slow prototyping approach because we enjoy it more.

There Is Satisfaction in a Job Well Done
And that’s not to say that there is no enjoyment in using code-free tools. It’s just a different kind of enjoyment and satisfaction, one that comes from feeling more efficient and effective in solving design problems rather than coding problems.

I am not saying definitively that one should never code a prototype–far from it. But in their enthusiasm for their skills, I am concerned about this trend in the software design community to advocate coding as somehow better, more superior, or more effective in doing design work. Most of the reasons given for doing so are missing the mark for design/human concerns, all the while ignoring the many hidden drawbacks.

The rule should be to avoid coding except when you are fairly sure it is the only or most effective way to prototype your design ideas.

 

Tagged , ,

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.

Tagged , ,

Flatland? No Thanks

“When you launch an app on your mobile device, the device essentially becomes that app.” via Max Rudberg – ✎ Flat UI is not the only way forward

This is a great, keen observation, and it correlates to why having clean, minimalist design makes a lot of sense for the hardware of mobile devices. These are windows onto many worlds. As such, for them to blend away into near invisibility is precisely what they should do–so that you can immerse yourself in any one of those worlds without distractions from the window itself. The more invisible the window, the better.

But for the world experienced through the window, it would be as if you were forced to live in Flatland, if you were limited to flat, minimalist design. Even though it is a deception, it is a beautiful deception for a piece of software to make you truly feel you are a part of the story it is telling, the story it is helping you to become a part of.

Tagged

Installing Nest in a 100-Year-Old House with Radiator Heating: A Guide/Review

Nest Learning Thermostat on Amazon.com
Just thought I’d share my experience with a great product–the Nest Learning Thermostat. Given that I own an over 100-year-old house with radiator heating (and no central air), I was dubious about this working for me. After doing a fair amount of research, it came down to this one or the ecobee. The ecobee (main model) was more expensive and, frankly, just doesn’t look as good. Let’s face it; the Nest has been designed, by real designers, and it is obvious. Other thermostats on the market are clunky gear head boxes.

I have noticed that things that appear to be well designed often are. Not only that, if people go through the trouble to do great industrial design, they usually at least try to do great software design, and maybe even full on service design, and in this, the Nest does not disappoint. Everything from learning about the Nest ahead of time on their Web site to the out-of-the-box experience to the install to the setup to the ongoing usage (with apps for devices and a matching Web control site) has been designed, and designed well (and kudos to Amazon for 1-Click Prime ordering and one-day delivery–a day ahead of time).This is just one of those products where they have really pulled it off. And who’d have thunk it–for something as “simple” as a thermostat.

I used their online compatibility checker to verify that it’d work with my system. I have one of those old-fashioned Honeywell round thermostats.

Honeywell CT87K Front

But it turned out that after popping off the front, it was a relatively new model, the Honeywell CT87K, made for heat only systems.

Honeywell CT87K Inside

See the old wires?? Wrapped in like cloth or something. I told you it was an old house. :)  Anyways, zooming in I was able to see the R and W letters by the wires, so I could plug that into the compatibility checker, and voila, they said it was good, and they even give you a wiring diagram up front to show how you’ll hook it up. Pretty snazzy!

I thought I’d give it a whirl, and so I clicked the little 1-Click button, and a day later (two days, ahead of time, thanks to Thanksgiving), it shows up. (Even the box is kinda cute.)

Nest Box

You take off the plastic wrap, slit the tape holding it shut, slide off the cover, and open up.

Nest Unboxing 1

Lift out the Nest (has a little plastic circle on it), lift off the first layer, you see the booklet, lift that out, and you have the next layer of goodies.

Nest Unboxing 2

You see their chubby little screwdriver, the Nest back, and two mounting screws.  Slide out the booklets; there are three.

Nest Unboxing 3

You have the install guide, the setup guide, and a “concierge” card (if you need to bail on a self install, a nice security blanket). What you see above is the first page, that tells you high level steps for uninstalling your old thermostat. What’s cool about it is the built-in stickers to label your current wires as you take them out. Given the variety of systems out there, and no standardization on colors, this is the only way to do it. So be careful! For me, of course, it was simple–two wires. But I labeled them anyway!

BEFORE MOVING ON, CUT THE POWER TO YOUR THERMOSTAT. For me, the thermostat wires come from the boiler, so the circuit to break was the boiler’s circuit. I verified this using my handy dandy Greenlee GT-16 Adjustable Non-Contact Voltage Detector, which I bought some time ago for other amateur electrician work on this old house. I can detect voltage in the air on the max sensitivity, so what I usually do is check it before trying to disconnect. Dial it back until it detects only when you’re near the hot wire. BTW, don’t take my word for it–I am not an electrician; YMMV.

Nest Install Voltage Detector

Now that you’ve cut power, you can label the wires safely.

Nest Install Label Wires

Even though the old plugs only say R and W, Rh and W1 were the only/closest option, and it matched the wiring diagram from the compat checker.

Now, niftily enough, the screwdriver they include has a small enough head on it to reach in those holes on the right and unscrew (loosen) the wire clamps. Simply pull them out at that point. I cheated and used my drill to quickly remove the two screws holding it onto the wall. I carefully pulled it off the wall at that point, to avoid ripping any extra paint off (the painters got mighty close to it). It revealed the green wall beneath the new cream paint. Here’s the whole old thermostat.

Nest Install Remove Old Thermostat

It probably took you more time to read this than it did to get the old one off.  Now for the install. I walked the Nest’s back over and looked at where it would install. The hole is in the center on the Nest; on the old one you can see it was to the left. Bottom line, this meant I couldn’t cover up the old green with just the nest, and since I didn’t have any putty or paint handy, it was back to the Nest box for the decorative backing plate. Lift up the last layer in the box to reveal the backing choices; they have an option to mount on electrical boxes as well. I just needed the pretty plate to cover the ugly wall stuff.

Nest Install Backing Plate

Again, I cheated with my cordless drill (Makita 18V Lithium Ion, BTW, if you need a recommendation).  Would be more annoying (not impossible) to use their included screwdriver.

Nest Install Back

Now, I used my old, somewhat crappy level to install this. It didn’t quite come out straight, as you can see.  Then I noticed the built-in level, and also, the screw holes have a little play, so I loosened the bottom one and realigned using their level. Hey, look, it also aligned with the nearby wall edge at that point, too!

Nest Install Back Leveled

Oh yeah, I plugged in the two wires into the matching slots. One of the cooler but maybe non-obvious features of Nest is that it runs fine on your 24VAC line. Many new/digital thermostats require a “common” lead that provides dedicated power. Not so with Nest–no extra wiring needed. Even my ancient two-wire system works fine with it!  Just use their compat checker to verify yours.

My wires are tough (they were made back when men were men, wires were wires, and little furry creatures from Alpha Centauri were little furry creatures from Alpha Centauri); they are not huge but not thin either, so I used needle nose pliers to straighten them. A more obsessive person may have grabbed some electrical tape to cover up more of the exposed wire. Me? I don’t sweat the small stuff. It will soon be covered up.  We’re almost there! Next step, grab the pretty Nest and plug it on.

Nest Install Done

NOW, you can go flip the switch back on. My breaker box is in the basement, but no worries, when I came back up, it was waiting for me.  Time to setup. You say “Hi” to it, and confirm your language, then on to the coolest part of the gadget–it is Wifi connected. Seems to have a decent antenna, too.

Nest Setup SSID

I also thought the interface for entering the password is cool. The Nest slides so smoothly. Feels solid, and dialing it to enter the password was strangely reminiscent of using a rotary phone. (Yes, I remember using them, although they were definitely on their way out by that time.) Hello, nostalgia. And it wasn’t that hard either. They seem to have put thought into how fast you turn, inertia, and that sort of thing. Nice.

Nest Setup Wifi Password

After a short connecting message, it confirms, we have lift off!

Nest Setup Wifi Connected

Just a few more steps.

Nest Setup Steps

BTW, I glanced through the setup manual. It is super thin and easy to follow. You don’t really need it though at this point–just follow the prompts. After confirming I only have heating installed, it just needs to ask a few questions about it.

Nest Setup Heating Source

(For the record, I have oil. sigh. Maybe someday it’ll be different.)

Nest Setup Heating Type

Radiators, yup. That’s us. I had NEVER seen them in person before I moved up here to NJ. But I like them a lot better than forced air, I have to say. I like the feeling of the warm, radiant heat. When you keep the house cool-ish like we do, forced air sometimes feels more like air conditioning than heating–blowing around 66 degree air. Radiators always feel warm, reminding one of a fire. (And I love fires!)

A few more questions–zip code and number of thermostats. Now I get to my favorite question. When was this house built?

Nest Setup House Age

What? No 1910s?  Come on!

Next up, naming this Nest; wish I could do a custom name, but they just have some preset to pick from. Ah well. Can’t have everything!

Last, it asks a couple simple questions about temps and lets you know it’ll try to learn/calibrate for some time.  And.. we’re done!

Nest Setup Done

As before, it likely took you longer to read my account than it will to set your Nest up in real time. In fact, I bet Nest is annoyed with me because this may make it seem more complicated than it is. :)  Really, we’re talking <30 min end to end, and it felt great and easy!

At this point, I was pretty pumped, because I wanted to go control it from my phone.  But first, to the Web site.  I quickly signed up, and it detected the nest on the network. Too cool!  I walked over to it again, and it said this.

Nest Setup Added Account

Too cool!  In no time, I was managing my thermostat remotely.  THE POWER!!!

And the app is nifty. It seems to gradually reveal complexity (another great UX principle). Just tonight I discovered some new things that weren’t there before. Still, it is quite simple and pleasing. I like how it incorporates local conditions in the background.  For instance, now it’s like so.

Nest Control Home

I won’t bore you (more) with all the settings and stuff. The interface is quite nice and, in my estimation, easy to learn and use. And hey! Will you look at that!? I guess you can have everything–it let me rename my thermostat here.

Nest Thermostat Control

Note that when you hover over it, you can simply click the up arrow or down arrow to increase/decrease your thermostat setting.  You get the same basic interface on the phone and tablet (I use iPhone and iPad, FTR). There of course they smartly don’t rely on hover to see the up/down arrows. ;)

I am a little obsessive. Sometimes. About some things. I try to fight it, but it gets me sometimes.  I quickly set up a schedule (even though it wants to learn it by you turning it up and down). I mean, I don’t want to run downstairs in the morning to turn the heat up–I want it done for me! This is a minor criticism, but I guess it works for “most” people who wouldn’t otherwise set up the schedule.

In the Web interface, this is easy enough. Add a setting, then copy and paste it to the other days. OMG. Like, I programmed the three thermostats at my last place, and what a friggin pain!  No wonder they say 90% of people don’t do it.  I dreaded changing the temps, too, cuz it meant clicking and switching through about 100 fiddly switches.  This took me 30 sec.  Wow.

Nest Schedule

And yesterday, I discovered my new favorite feature–the energy records. I can see my obsession will not soon end.

Nest Energy

You can selectively drill into daily details to see just when Nest was powering on that monster of a furnace against your schedule for the day.  I think I’m in geek-homeowner love!

Now, time will tell if this does help me save money. I can’t see how it won’t. I mean, last winter (our first in this old house), I just left it on a constant 66-7ish setting on the dial, more or less. If nothing else, being able to have it turn down during the evenings should save a good chunk of change.  And considering how much this old house costs me per month to heat, trust me, in like two months it will probably pay for itself.

So that brings us to the final consideration. Is the Nest worth $250? Well, from the research I did, learning thermostats can save 10-15% on average. You can do the math based on your usage. But that’s just part of the story. This is one grand toy, after all, no? :)  So a great toy that can save you money?  Is it worth it?  I think so.

If you’re on the fence, I strongly suggest going for it. It’s awesome. Go order the thing, yo! (Don’t forget to check your compatibility first.)

P.S. Nest didn’t pay me for this review. I’m just totally psyched about it. It took probably 6x the time to put together than installing it took. (Don’t worry–I was watching Burn Notice in the background with the wifey for most of it.) But if you use my links to buy, I might get some small Amazon affiliate commission.  So that’d be a nice thing if you found this helpful.

Tagged , ,

A UX Manifesto – Presented

This last Friday I had the honor of presenting the keynote for the Tulsa TechFest 2012.  Very well-organized event considering its size–good job to all the organizers and volunteers!

My talk was a talkified version of my recent “UX for Devs Manifesto” blog I wrote earlier this year. It was nice to get it out and share the ideas in person. It seemed to be well received.

Anyways, I said I’d post the slides and a few related resources, so here ya go.

[Original KeynotePPT | PDF ] <– These have notes

In my talk, I referenced a few resources:

Did I forget something?  Let me know!  Also, check out my UX Book List for some recommended books.

Tagged , , , ,

What is the Medium of Interaction Design?

Pinocchio MarionetteOver the years I’ve observed and participated in several discussions about what is the medium of interaction design. Full disclosure: I am not formally educated in Design–I’ve just learned from my own studies, interactions with educated designers, and working with and under designers, so take this for what it’s worth. ;)  But I think a person can reason about these things without necessarily having such a formal education.  See what you think.

The argument goes, as I’ve seen it, that as interaction designers, we are focused on understanding and designing for humans, and to some extent that design (no matter what it is) is rhetorical, in a very generic sense–it communicates something to a person and tries to convince her to do something, be that changing an opinion, acting in a social context in some way, or simply using the thing designed in a certain way (i.e., affordances). Further, the argument goes, interaction design can be applied to all sorts of materials, so we can’t say that one of them is our medium, as clay is the medium of potter or paint of a painter (and so on). The conclusion is, then, that what we design–what our medium is–is human behavior.

The fundamental problem with this is that it  posits the designer in the position of Fate, as if we have some superhuman power to conform other humans to our will, to shape their behavior according to our desires, making us more powerful even than many concepts of God. I suppose this could get heady and philosophical pretty quickly, depending on your view of human free will. But let’s just assume, for the sake of keeping the discussion manageable, that human beings do have free will–that they have the capacity to choose between options of their own free accord and, thus, shape their own behavior.

Yes, that behavior is influenced by all sorts of things. People are not disembodied, purely rational entities who make completely free, autonomous, uninfluenced decisions. We have plenty of psychology research to show this is true, and we have our own experience that we can reflect upon. Yet all of these do not destroy free will–the fact remains that we have the capacity to act contrary to the influences upon us. We can creatively choose paths that were not even presented to us.

Given this, it seems at least a little bit dishonest with ourselves to say that we design behavior.  Let me offer an example that might make us shy away from making this claim. Consider the recent events in Aurora. There is a direct, admitted connection between the offender’s behavior and the behavior presented in a designed medium (film). One might say that the Batman films, and those like it, are designed in such a way as to make acting the villain to be glorious and powerful.

Following the logic above, in reverse, one could then say that maybe the films were designed to influence people to act in that way, and further, that if behavior is the medium of design, that the offender’s behavior was designed by the filmmakers (ergo, it is the designers of the films, not the individuals acting, who are responsible for the tragedy). But I doubt many of us would admit this. We can argue that such films influence people to behave in certain ways (and that maybe they shouldn’t), but to say that they designed the behavior of the villain of Aurora is, surely, going too far.  Thus, we see that the claim that we designers design behavior is fundamentally flawed.  If people are not free to act of their own accord, they cannot be held responsible for their actions.

So, then, what is the medium of design and, specifically, interaction design–it is whatever materials that we do have control over, to shape according to our vision and will. For most interaction designers, this is software–the application behavior and the interfaces presented to people. Do we use these to influence behavior? Absolutely. When we design, we have certain human desires and behaviors in mind, and we either try to accomodate them or instruct them in order to effectively engage with the software. We could be a little more precise, even, and say it is only the artifacts that the designer herself creates (usually designers are not the ones actually developing the software itself).  In that sense, the media we design are varied, depending on the needs of the team, the app, and our own familiarity with the tools of interaction design. Concretely, the media are things like personas, storyboards, wireframes, interactive prototypes, and other artifacts used to discover and communicate the design of the software.

So let’s stop fooling ourselves into thinking that we are actually designing human behavior. It’s kind of arrogant and presumptuous to say so, when you really think about it. Let’s keep it real. Yes, we are on a mission to (hopefully) better humankind through what we design–the digital and analog worlds are increasingly merging. Yes, we want to influence behavior to greater or lesser degrees (depending on the context), but in the end, what we design is the interface and behavior of software (more generally, some digitally-integrated artifact).

Tagged , ,