The Necessity of Interesting Problems

January 22, 2010

In this, my first post, I’d like to talk about what drives me as a developer. Risking hubris, I can say I’ve seen and solved most HTML and CSS issues. Though there are always surprises, most of the problems I run into within those domains are familiar.

Because of this, working in Javascript is where I find the most satisfaction. It still holds hidden treasures in the form of interesting problems to solve. I love being able to write code that does something I’ve never seen before. Creating a tangible piece of interactivity where only an idea previously existed.

Creating an effective and pleasant experience for site visitors is a critical and noble part of what I do, and something that I always keep in mind. But it’s the thrill of the chase that grabs me. Picking apart a problem, breaking it down to its smallest pieces, and building the solution with methodical precision—that’s what does it for me. I forget time, hunger, even sleep when I’ve got a puzzle to solve in code.

Usability, accessibility, valid code and best practices are core parts of what we do. But they don’t have to be one’s raison d’être.

As for me, I am working toward a time when I can spend most of each day thinking about and solving interesting problems. And for this to be more than just an exercise in self-satisfaction, I focus those efforts toward making the jobs of my colleagues easier.

What part of your profession does it for you?

Posted by Warren Parsons on 01/22 at 04:19 PM

1 CommentsPermalink

Your Client Is Wrong.

January 21, 2010

Your client is horribly, hurtfully, terribly, catastrophically wrong.

Allow me to tell you a story, a parable of sorts:

There I was in a meeting, minding my own business. What I mean is, I was attempting to do business with my client, who happened to be sitting across the table from me. I was also perhaps on my own, as my attempts to convey my advice on a given design aspect were obviously falling on deaf ears. Here again, my dear client* was saying something.

“Make it look like this,” he said, thrusting a brochure in my hands. My heart sank as I beheld this printed blasphemy. At least two dozen grammar and spelling atrocities stared out at me from the pages. The color scheme in no way matched the look of his logo, which itself was a graphic whose legal origin was certainly spurious.

Oh, and there was Comic Sans. Lots of it. That and Times New Roman. In short, this thing was as desirable as a wet, diseased, incontinent muskrat.

Of course, he wanted me to build a webpage from it.

Now, I know we’ve all been there. Any one of us could relay a similar story filled with grimaces and tears, about how horribly awful clients are when they try to ‘help’ us do (or worse, dictate how they want us to do) our job. However, here’s the harsh truth: when clients are like this, it’s probably our fault.

...I’ll say that again: when clients are making unreasonable demands that completely ignore our experience and expertise, it’s probably our fault.

Before you get even slightly indignant, let’s examine the type of person our typical client is. Most clients you encounter are entrepreneurs and businesspeople. With only rare exceptions, these people all share similar traits: they are energetic, excitable, single-minded, arrogant, pushy, and passionate. Overall, these are the hallmarks of the people who make business their profession. An interesting thought: virtually none of this wonderful modern life we enjoy would exist without them.

Perhaps the single most frustrating thing about designing or developing for businesspeople is that their typical character and attitude, being essential for doing their jobs, are what also often make our own jobs a nightmare.

I hold some sympathy for them: in order to survive in the marketplace, our clients have to know exactly what they’re talking about, or at least pretend that they do. They have to be completely focused on their goals to succeed, and anything standing in their way needs to be dealt with in order to continue to succeed.

The struggle we face is the same as it’s been for thousands of years: that of performance vs. preference.

Designers and developers have their own methods for achieving success. We optimize, streamline, apply guidelines and rules of thumb, we consume, digest, innovate, and execute on our designs in the most efficient way possible.

Unfortunately, most clients have neither the time nor inclination to understand how we do what we do. They just want their next piece of business-enhancing material up and available as quickly as possible. In such circumstances, they will often rely on their own inexperienced and ill-informed aesthetic sense to determine whether our work passes muster.

In short, they will often think that they are right when they say “Here’s my brochure, just do it like this.” But they aren’t. They are horribly, horribly wrong.

But it doesn’t have to be this way.

We as designers and developers have two choices when dealing with such difficult clients: educate them, or cut them loose.

Educating a client can be a difficult and painful task. Often you will have to repeat yourself ad nauseum, reminding your client what they agreed to do, and the reasons for doing it. This is, however, the most rewarding thing you can do in the long run. Eventually, if you work hard at it, your client will realize the value of your expert opinion.

It’s up to you to communicate in terms that will make your client stop and pay attention. It’s a very delicate task, telling the person paying you that they don’t know what they’re talking about. You won’t always get it right, but if you’re persistent and consistent in your communication, eventually your client will treat you with the proper regard.

Of course, there are some clients who simply will not listen. For them, it might be that they feel (wrongly) their input is invalidated unless they can dictate every part of the process. For such clients, there’s nothing to do except tactfully fire them. Explain your position, thank them for their patronage, and send them on their way.

More grief can be spared from your career by simply knowing when to cut losses than nearly anything else.

The most important point of all this interaction comes when you go to sit down for that uncomfortable meeting. The fact is, your client’s success depends on you being able to do your job to your best ability. Your work has to be a mutually respectful collaboration between those who know the business goals and those who know how to translate goals into expertly crafted paper and pixels. Anything less will ruin them, and you.

So remember: when your clients are horribly wrong, it’s up to you to make sure that in the end, they get it perfectly right.

*Events have been altered to protect the sensitive.

Posted by Joshua Kulpa on 01/21 at 03:16 AM

0 CommentsPermalink

On Your Creative Soul…

January 13, 2010

In college, I was presented with a novel (and excellent) method of teaching design as a career.

The first lesson came when we were subjected to the harsh truths of designing for agencies. “Nobody at an agency cares what your personal aesthetic is, how long you spent researching it, or what famous artists you’re emulating,” one instructor warned us. “They just want to know whether the client’s brochure is going to be done right, and done on time.” I had to accept that it was of primary importance that I delivered a technically perfect product on deadline, and leave true creativity for when there was time.

Though this was our instruction, we were not let off the hook creatively. We had pointed directions on what to do once we left school: go to the museums, buy books on design and read them multiple times. Take notes. Read blogs. Emulate the artists you respect. Never, ever, ever stop learning.

The second lesson came out of the first: my style, my personal aesthetic, my creative soul, is my responsibility to nurture and grow.

It is a mistake I’ve seen too many times: designers expecting their primary work to completely fulfill their creative needs. It is in this fallacy that many designers lose hope, lose interest, and find other work. What a sad state of affairs!

I encourage you as my instructors encouraged me: take care of your creative soul. Take whatever interests you creatively, and make the time to expose yourself to it. Do side projects. Do go to art galleries. Buy a sketchbook. Use your sketchbook. Take more classes. Read more. Fill yourself up with creativity so that, when the opportunity arises within your work, you can take full advantage of it.

Posted by Joshua Kulpa on 01/13 at 07:16 PM

4 CommentsPermalink

The Lost Finder - Part 1

November 05, 2009

Apple is known for building feature-rich applications and devices. And while they may not always be the most user friendly (or the leanest), they tend to set the standard for thoughtful and innovative device and user experience design.

This being the case, why then is Finder so lacking in features? There it sits forgotten in the corner, like a 3rd-grader’s unfinished science fair project. In this series of articles we’ll take a look at some of the features that should be there but aren’t, and try to understand why these features don’t exist within this most centrally important application of OS X.

A File by Any Other Name

Start doing any sort of serious work with your Mac, and you’ll soon find yourself with a dilemma of organization. Multiple files scattered throughout sundry folders – a cluttered mess. Apple wants you to use Spotlight and Smart Folders to locate files that could be who-knows-where. But with any large number of files stored on your drive, Spotlight begins to run painfully slow. Smart Folders are no better, being little more than shortcuts for a given Spotlight search.

It’s likely then that you will begin to organize things better for yourself. Typically, clicking through only a couple folders or shortcuts will be quicker than doing a search. So you take it upon yourself to improve organization – folders with sensible names partition off your different types of content. Images set off with the images, documents with other like documents, every file in its place.

Accidents Happen

For all your good efforts, there are times when things just get lost. A mistaken action, a click-drag to the wrong place, and the files you had so carefully organized are nowhere to be found. This can be especially true for files relating to old projects.

Figure 1.1: If PHP files and text files are not the same thing, why are they grouped together?

If you are unfortunate enough to need to sort files by Kind in order to sift through your search results, you are in for a nasty surprise. Finder applies arbitrary and confusing names to file types, sometimes even grouping files with different extensions together (Figure 1.1). Did you head to the bottom of the list to look through the files with the XML extension? Too bad, you should have stopped at “E”, for “eXtensible Markup Language” is the name of the Kind Apple assigns to that extension. What about locating PHP Hypertext Preprocessor files (.php)? For that, you have to look for files with labeled “Plain Text” in the Kind column (that label, incidentally, is applied to all other text files with the ‘.txt’ extension). Does Apple simply not know what a .php file is?

You Call It What??

The implementation of the Sort by Kind feature seems to neglect the basic tenet of any experience design: user intent. When searching for a type of file in alphabetical order, are you more likely to think of some esoteric name like “eXtensible Markup Language,” or something more straightforward like “XML File”? The feature seems to assume that no user has ever even heard of the most basic file naming convention: the extension.

Yet extensions are the daily experience of literally hundreds of millions of users globally, and to ignore this prior knowledge is bad design.

Lay Your Prejudices Down

There are two things that contribute to poor design decisions like these. While they may seem simple and well-defined when set against the harsh light of a narrow test case, it is all too easy for designers and developers to succumb to these problems.

The first problem is designer condescension. Too often, designers will tend to look at the end user as being stupid, and incapable of learning. Thus we see file name descriptions that assume you’ve never heard of a file before, let alone that there can be hundreds of different types of files.

The second problem is with allowing design preference to trump functional considerations. The end goal of any file browsing tool is to get you to your needed assets as quickly as possible. And while a designer should strive to make the user’s learning curve as easy as possible, the final design shouldn’t present stumbling blocks for more advanced users.

Conclusion: Everyone Needs Efficiency

Assume that your users are knowledgeable and intelligent – even if they’re not when they begin, that they can be. Make your designs with a built-in learning curve that keeps your users’ end goals primary. Begin with these ends in mind, and you are building for success.

Posted by Joshua Kulpa on 11/05 at 02:34 AM

Blog Post Article 0 CommentsPermalink