You may or may not be aware of this, but when we are interacting with an application, we are entering a biosphere. People always talk about suites of applications as being an ecosystem, but even within the constraints of single app, we are still interacting with a smaller, but equally important, ecosystem.
About three years ago, I wrote a blog about page-behavior taxonomy or, as I generally refer to it now, behavior taxonomy. This taxonomy is really a mental model the user creates based on previous interactions they have had within your page, site or application. It’s really crucial to understand that as you present links, behaviors and interactions, you are training your user. When you break that interaction model, you are breaking rules the user expecting you to follow.
Consider the biosphere projects scientists construct for the purpose of experimentation. Everything in that tiny ecosystem must work together properly. If an element is introduced which changes the ecosystem, it could cause a breakdown of the entire experiment. These small changes are what happens when the biological equivalent of microinteractions are not considered.
The key to considering these mental models is to look at the application as a whole and start developing an expectation of what the user will experience throughout their time in your app or site. If you look at the app as a whole early on, then it becomes clear what each interaction should bring. Think about how people are going to move about. What kinds of input are they going to give. Why are they doing it and how would they expect it to work?
Of course you should expect change, but the if the initial behavior taxonomy is sound, new additions will only serve to enhance the experience. If, on the other hand, care is not taken to develop the rules to which your app should adhere, you will paint yourself into a corner. You will make decisions early on which will force your hand later on. If you choose to break from the model, you will also break your users trust If your app is something that is going to be foisted upon users, they will learn to deal with it and resent you. If your app is something users interact with by choice, they will leave.
In the end, we are all in this little biosphere together. Let’s live in peace and harmony. Consider the environment and care for it. Your users will thank you for it. Consider your app’s behavior taxonomy and make the web a better place.
Today I read an article about Irish newspapers plotting to charge for linking to their content. We’ve all heard about this before and people seem to get up in arms about it every single time it is mentioned. I think this frustration and disgust are misplaced.
See, here’s the deal: if you want to make money from people using your site, you have to get them there.
Ultimately, there is a paradigm shift that happened with the web which traditional media is having a hard time wrapping their brains around – links are gold. They are the currency of the web and the word of mouth in the electronic universe.
At one time, it made sense for media outlets to limit the distribution of their content through other media channels. It hurt sales and trimmed valuable advertising money from their pockets. They never said “don’t mention our article to people or we’ll charge you.” That’s foolishness. Big media wanted, and still wants, people to know they got the scoop before anyone else. It keeps them in business.
So why limit linking? It limits the number of page views and, subsequently, the amount of advertiser money that comes in.
I get it. They want you to click around the site looking for that one piece of content you heard about. The problem? News sites pretty much universally stink with regard to user experience and findability. If it isn’t on the front page it may as well have never happened. This is the heart of their problem, really. They are spending so much time trying to milk every penny out of someone’s pocket they can’t see they need some real help.
My message you to, media outlets: Fix your sites. Make them easier to use. Put your reader first instead of your pocketbook. The advertising money will come. If you want to erect paywalls, fine, but don’t kill the one thing which might save you. Protect your links. Treat them like someone handed you free money. Encourage people to share. If you don’t, I won’t be angry, I’ll just never know you existed. Do us all a favor and make the web a better place.
Yeah, I said it. Knock it off. Stop worrying about how many people are following you on Twitter. Forget about how many friends you have on Facebook. Quit fussing over whether someone stopped following you or decided they didn’t want to be your “friend.” They don’t know you any more than you know them. It’s nothing personal, they just stopped.
Social strategists say that every follower counts. Each person who is on that magical list is a potential lead waiting to be tapped. Honestly, that’s likely untrue. Of all the people who have friended, followed, liked, thumbs-upped, uprated, upvoted, kudos-gave or otherwise gave you two seconds of their attention, there is only a small percent which are actually in the market to buy something.
Some of the people liked that little one-liner you rattled off one day when you were feeling smug. That guy over there thought your opinion matched his own. Those three women who started following you are actually men and they are just goofing off.
In the end, follower or friend counts are much like the stock market. If you watch them daily to see whether you’re trending up or down, it will make you neurotic. Trust me, I know a thing or two about being neurotic. If you really need to keep an eye on things, do a weekly report. Look at last week’s numbers and compare them to the numbers you gathered today. Was there growth? Was there attrition? How bad was the attrition? How good was the growth?
In the end, people are slaves to their whim. What might engage them today could drive them off tomorrow. If you are seeing small wiggles in your count, consider it normal human behavior. If you see large, sweeping sinusoidal trends, maybe there’s something to gain from the behavior.
In the end, the follower or friend count is a small part of a much bigger story. When you start assembling your data, keep that in mind and don’t use that single statistic to drive your online behavior. If you can just do that, you’ll help alleviate your own stress and make the web a better place.
As mobile gains ever more ground and mobile first continues to be knocked around as the design strategy for the web, I encourage people to look at their use statistics. Although mobile first is a great strategy if you don’t have statistics to draw upon for your site, or your reorganization needs a mobile injection, nothing will serve you better than the statistics regarding what your user does on your site.
Instead of simply adopting an oversimplified “mobile first” strategy, I decided it would be best to figure out what the user is doing in each mobile context. For the simple sake of reason, I generally say we have three platforms and four positions to deal with. Either your user is on a small-profile device like a phone or palm-top computing device, they are on a tablet, or they are on a standard computing device.
This gives us something really easy to work with. There are three devices, two of which have two orientations. It might seem like this translates to 5 total designs to commit to. Fortunately, the phone in landscape is just about the same width as the tablet in portrait. We are left with four design contexts to worry about. Realistically, though, we can start with just three pieces of the puzzle and extrapolate the intermediate fourth.
My latest project, for which I am leading a team, needs two key items to make sense of the high-priority items on the site: device used and pages accessed. After a bit of careful fiddling, I uncovered the following chart:
[caption id=”” align=”aligncenter” width=”400”] Device to Traffic Chart[/caption]
This chart helped me to figure out what our device strategy would be. Clearly our visitors from mobile devices have much more limited interests than those visiting from a standard computer interface. Mobile first means we should guess at what should go on a site and what the user will want to do on a smaller device. By analyzing the data, we can clearly define interactions on mobile devices which may, actually, not be important to highlight on the desktop.
Instead of working with mobile as a pared down version of a complete site, we should aim to understand what a user wants to accomplish in a different context. This is not a cut and dried rule of thumb but something we can produce through a little bit of careful reflection on what users are doing right now.
For your next project, instead of taking a mobile-first design stance, review your user data and serve users in each platform according to their needs. Provide clear signposts for your users. Develop a device strategy and make the web a better place.
You know what makes Google awesome? Their search algorithm is pretty darn smart. You know what makes DOMZ awesome? Every stinking link on there has been verified by a real, honest-to-goodness human being. You know what sucks about site search on most websites, even when they’re running a Google custom search? The only time a human ever looks at the search is when they are actually using it to find something.
This is where a curated site search comes in.
When I say curated, I mean it in much the same way a museum curator takes care of the displays, carefully selecting the pieces to display and updating things as new events and collections are integrated or moved out of public display. Think about it, if you went to a site looking for glasses for your cat and did a search saying “Siamese cat glasses,” wouldn’t it be awesome if, right above all the standard mediocre search results, you got a little bit of content saying “we’ve got glasses that will look great on your Siamese cat?”
Of course it would.
The benefit of this is that you have a better understanding of what a person is looking for than a computer ever will. Why? Two reasons, really. First is because you are a person and, I suspect, you have done searches for things before. Second, no matter how good the crawler is that indexes your site, you have access to your analytics, which means you know what people are searching for. (You’re running analytics, right?)
An example of how this works can be found on the HP site. Below is a screencap of what their search looks like if you search for TouchSmart. (I picked that term because it is their current ad and I knew I would get something good. Color me sneaky.) You’ll note they have a list of search results on the screen, but the very first thing to come up is a link straight to the TouchSmart product information.
Pretty sweet, right?
Okay, maybe looking at a computer search page doesn’t get you all revved up and ready for action, but imagine if that image were your Siamese cat in need of glasses. Now we’re talking turkey, right?
This doesn’t do anyone any good if it doesn’t do anyone any good, right?
The long and short of it all is, by curating content for commonly searched items on your site, you make the information/product/widget/catglasses more findable. This means you are more likely to have conversions from site visitor to customer. Benefit to your customer: ease of use. Benefit to you: more business. Stick that in your ROI pipe and smoke it, Mr. Executive.
In the end, everyone wins when things are easier to find. Since so many users are search-centric, you can serve them well by anticipating the searches they are going to perform and give them the info you know they want up front. This front-loading of work helps to provide a clear signpost for users to do what they were at your site to do: make with the business with you. In short, if you are running a site search for your users you should consider curated content to provide for common searches and make the web a better place.
I’m taking a brief detour and talking about something other than user tolerance and action on your site. I read a couple of articles, which you’ve probably seen yourself, and felt a deep need to say something. Smashing Magazine published Does The Future Of The Internet Have Room For Web Designers? and the rebuttal, I Want To Be A Web Designer When I Grow Up, but something was missing.
Congrats, you’ve made it to the third part of my math-type exploration of anticipated user behavior on the web. Just a refresher, the last couple of posts were about user tolerance and anticipating falloff/satisficing These posts may have been a little dense and really math-heavy, but it’s been worth it, right?
As we discussed last week, users have a predictable tolerance for wait times through waiting for page loading and information seeking behaviors. The value you get when you calculate expected user tolerance can be useful by itself, but it would be better if you could actually predict the rough numbers of users who will fall off early and late in the wait/seek process.
I have been working for quite a while to devise a method for assessing web sites and the ability to provide two things. First, I want to assess the ability for a user to perform an action they want to perform. Second I want to assess the ability for the user to complete a business goal while completing their own goals.
Google has some pretty neat toys for developers and CakePHP is a pretty friendly framework to quickly build applications on which is well supported. That said, when I went looking for a Google geocoding component, I was a little surprised to discover that nobody had created one to do the hand-shakey business between a CakePHP application and Google.
Last night I was working on integrating oAuth consumers into Noisophile. This is the first time I had done something like this so I was reading all of the material I could to get the best idea for what I was about to do. I came across a blog post about oAuth and one particular way of managing the information passed back from Twitter and the like.
I’ve been tasked with an interesting problem: encourage the Creative department to migrate away from their current project tracking tool and into Jira. For those of you unfamiliar with Jira, it is a bug tracking tool with a bunch of toys and goodies built in to help keep track of everything from hours to subversion check-in number. From a developer’s point of view, there are more neat things than you could shake a stick at. From an outsider’s perspective, it is a big, complicated and confusing system with more secrets and challenges than one could ever imagine.
My last post was about finding a healthy balance between client- and server-side technology. My friend sent me a link to an article about SEO and Google’s “reasonable surfer” patent. Though the information regarding Google’s methods for identifying and appropriately assessing useful links on a site was interesting, I am quite concerned about what the SEO crowd was encouraging because of this new revelation.
Earlier this year I discussed progressive enhancement, and proposed that a web site should perform the core functions without any frills. Last night I had a discussion with a friend, regarding this very same topic. It came to light that it wasn’t clear where the boundaries should be drawn. Interaction needs to be a blend of server- and client-side technologies.
Since I am an engineer first and a designer second in my job, more often than not the designs you see came from someone else’s comp. Being that I am a designer second, it means that I know just enough about design to be dangerous but not enough to be really effective over the long run.
It’s always great when you have the opportunity to built a site from the ground up. You have opportunities to design things right the first time, and set standards in place for future users, designers and developers alike. These are the good times.
I am big on modularity. There are lots of problems on the web to fix and modularity applies to many of them. A couple of posts ago I talked about content and that it is all built on or made of objects. The benefits from working with objectified content is the ease of updating and the breadth and depth of content that can be added to the site.
Through all of the usability, navigation, design, various user-related laws and a healthy handful of information and hierarchical tricks and skills, something that continues to elude designers and developers is pretty URLs. Mind you, SEO experts would balk at the idea that companies don’t think about using pretty URLs in order to drive search engine placement. There is something else to consider in the meanwhile:
When I wrote my first post about object-oriented content, I was thinking in a rather small scope. I said to myself, “I need content I can place where I need it, but I can edit once and update everything at the same time.” The answer seemed painfully clear: I need objects.
This morning I read a post about wireframes and when they are appropriate. Though I agree, audience is important, it is equally important to hand the correct items to the audience at the right times. This doesn’t mean you shouldn’t create wireframes.
With the advent of Ruby on Rails (RoR or Rails) as well as many of the PHP frameworks available, MVC has become a regular buzzword. Everyone claims they work in an MVC fashion though, much like Agile development, it comes in various flavors and strengths.
How many times have you been on a website and said those very words? You click on a menu item, expecting to have content appear in much the same way everything else did. Then, BANG you get fifteen new browser windows and a host of chirping, talking and other disastrous actions.
There has been a lot of talk about graceful degradation. In the end it can become a lot of lip service. Often people talk a good talk, but when the site hits the web, let’s just say it isn’t too pretty.
Suppose you’ve been tasked with overhauling your company website. This has been the source of dread and panic for creative and engineering teams the world over.
Working closely with the Creative team, as I do, I have the unique opportunity to consider user experience through the life of the project. More than many engineers, I work directly with the user. Developing wireframes, considering information architecture and user experience development all fall within my purview.
I’ve been working on a project for an internal client, which includes linking out to various medical search utilities. One of the sites we are using as a search provider offers pharmacy searches. The site was built on ASP.Net technology, or so I would assume as all the file extensions are ‘aspx.’ I bring this provider up because I was shocked and appalled by their disregard for the users that would be searching.
Some sites, like this one, have a reasonably focused audience. It can become problematic, however, for corporate sites to sort out their users, and lead them to the path of enlightenment. In the worst situations, it may be a little like throwing stones into the dark, hoping to hit a matchstick. In the best, users will wander in and tell you precisely who they are.
I just read a short, relatively old blog post by David Naylor regarding why he believes XML sitemaps are bad. People involved with SEO probably know and recognize the name. I know I did. I have to disagree with his premise, but agree with his argument.
Today, at the time of this writing, Google posted a blog stating they were dropping support for old browsers. They stated:
People are creative. It’s a fact of the state of humanity. People want to make things. It’s built into the human condition. But there is a difference between haphazard creation and focused, goal-oriented development.
When given a task of making search terms and frequetly visited pages more accessible to users, the uninitiated fire and fall back. They leave in their wake, broad, shallow sites with menus and navigtion which look more like weeds than an organized system. Ultimately , these navigation schemes fail to do the one thing they were intended for, enhance findability.
Most content on the web is managed at the page level. Though I cannot say that all systems behave in one specific way, I do know that each system I’ve used behaves precisely like this. Content management systems assume that every new piece of content which is created is going to, ultimately, have a page that is dedicated to that piece of content. Ultimately all content is going to live autonomously on a page. Content, much like web pages, is not an island.
Nothing like a nod to the reverse mullet to start a post out right. As I started making notes on a post about findability, something occurred to me. Though it should seem obvious, truly separating presentation from business logic is key in ensuring usability and ease of maintenance. Several benefits can be gained with the separation of business and presentation logic including wiring for a strong site architecture, solid, clear HTML with minimal outside code interfering and the ability to integrate a smart, smooth user experience without concern of breaking the business logic that drives it.
User self selection is a mess. Let’s get that out in the open first and foremost. As soon as you ask the user questions about themselves directly, your plan has failed. User self selection, at best, is a mess of splash pages and strange buttons. The web has become a smarter place where designers and developers should be able to glean the information they need about the user without asking the user directly.
Every time I wander the web I seem to find it more complicated than the last time I left it. Considering this happens on a daily basis, the complexity appears to be growing monotonically. It has been shown again and again that the attention span of people on the web is extremely short. A good example of this is a post on Reputation Defender about the click-through rate on their search results.
It’s been a while since I last posted, but this bears note. Search engine optimization, commonly called SEO, is all about getting search engines to notice you and people to come to your site. The important thing about good SEO is that it will do more than simply get eyes on your site, but it will get the RIGHT eyes on your site. People typically misunderstand the value of optimizing their site or they think that it will radically alter the layout, message or other core elements they hold dear.
I only post here occasionally and it has crossed my mind that I might almost be wise to just create a separate blog on my web server. I have these thoughts and then I realize that I don’t have time to muck with that when I have good blog content to post, or perhaps it is simply laziness. Either way, I only post when something strikes me.
It’s been a while since I have posted. I know. For those of you that are checking out this blog for the first time, welcome. For those of you who have read my posts before, welcome back. We’re not here to talk about the regularity (or lack thereof) that I post with. What we are here to talk about is supporting or not supporting browsers. So first, what inspired me to write this? Well… this:
If there is one thing that I feel can be best learned from programming for the internet it’s modularity. Programmers preach modularity through encapsulation and design models but ultimately sometimes it’s really easy to just throw in a hacky fix and be done with the whole mess. Welcome to the “I need this fix last week” school of code updating. Honestly, that kind of thing happens to the best of us.
I have a particular project that I work on every so often. It’s actually kind of a meta-project as I have to maintain a web-based project queue and management system, so it is a project for the sake of projects. Spiffy eh? Anyway, I haven’t had this thing break in a while which either means that I did such a nice, robust job of coding the darn thing that it is unbreakable (sure it is) or more likely, nobody has pushed this thing to the breaking point. Given enough time and enough monkeys. All of that aside, every so often, my boss comes up with new things that she would like the system to do, and I have to build them in. Fortunately, I built it in such a way that most everything just kind of “plugs in” not so much that I have an API and whatnot, but rather, I can simply build out a module and then just run an include and use it. Neat, isn’t it?
Happy new year! Going into the start of the new year, I have a project that has carried over from the moment I started my current job. I am working on the information architecture and interaction design of a web-based insurance tool. Something that I have run into recently is a document structure that was developed using XML containers. This, in and of itself, is not an issue. XML is a wonderful tool for dividing information up in a useful way. The problem lies in how the system is implemented. This, my friends, is where I ran into trouble with a particular detail in this project. Call it the proverbial bump in the road.
Something that I have learnt over time is how to make your site accessible for people that don’t have your perfect 20/20 vision, are working from a limited environment or just generally have old browsing capabilities. Believe it or not, people that visit my web sites still use old computers with old copies of Windows. Personally, I have made the Linux switch everywhere I can. That being said, I spend a certain amount of time surfing the web using Lynx. This is not due to the fact that I don’t have a GUI in Linux. I do. And I use firefox for my usual needs, but Lynx has a certain special place in my heart. It is in a class of browser that sees the web in much the same way that a screen reader does. For example, all of those really neat iframes that you use for dynamic content? Yeah, those come up as “iframe.” Totally unreadable. Totally unreachable. Iframe is an example of web technology that is web-inaccessible. Translate this as bad news.
By this I don’t mean that you should fill every pixel on the screen with text, information and blinking, distracting graphics. What I really mean is that you should give yourself more time to accomplish what you are looking to do on the web. Sure, your reaction to this is going to be “duh, of course you should spend time thinking about what you are going to do online. All good jobs take time.” I say, oh young one, are you actually spending time where it needs to be spent? I suspect you aren’t.