Arei is currently searching for a good beer to drink...
arei.net
Quick Answers to a Hard UI Question

The Question

A friend of mine recently asked the Twitterverse the following question: “Can anyone recommend a good book on designing a good software UI? What works, what doesn’t, and in which situations.”

The Simple (but ultimately unhelpful) Answer

Keep reading for the real answer.

The Difficult Answer

I love it when people ask me this question, because it means that they are actively thinking about the Interface and they want to improve. I applaud their willingness to change. Unfortunately, wanting to change and reading a book (or two) will not get them the results they desire.

User Interface Design is a huge field of study, a speciality of decades (even centuries if you talk about Information Design) of research and learning.  There are undergraduate and graduate programs around the world that teach only this subject.  Succeeding in one of these programs is only the beginning.  Experience is what really counts in this field. A person, my friend or any person, is not going to learn this subject by reading one book.

It’s akin to me going to the bookstore and buying “The Complete Idiot’s Guide to Starting Your Own Business”.  Sure, this book will tell you the basics and give you some insights, but it’s only the tip of the iceberg.  Starting and running a business is an extremely complicated process and to think one book is going to get you there is woefully short sighted.

My problem with the original question is that it is naive.   It is naive to think that simply having the rules will allow you to effectively apply those rules.  It is naive to under-value practical experience in this field.  It is naive to treat an entire field of study as an after-thought.

The Real Question

The real question being asked is “Are there a couple of things that I can do to make my interfaces better?”

The answer to that is No … and Yes.

No, because as I’ve just said, there is no way to summarize quickly an entire field of study or years of experience.  Do not under-estimate just how valuable these things are to someone practicing in the field.

Yes, because I believe there are a number of tips that everyone can use to make their interfaces better from day one.  I’ll go into these really briefly, but I want to be very clear there’s a whole lot more to it, a whole lifetime of learning if you are willing to do it.  It’s an amazing, wonderful field and I thoroughly encourage everyone to study it.  Just be warned that it’s big, complex, and sometimes very unrewarding.

Remember: Interfaces are Everywhere

Anything people interact with is an interface: A Dictionary (the physical book kind) is an interface, a web site is an interface, a form you fill out for your employer is an interface, and a software API is an interface.  Each interface needs to be designed for the user.  So the next time you design something that someone else is going to use, or even for your own use, consider: how the interface works, how easy it is to use, and whether or not it meets your needs.

The Real Answer

While I encourage you to go and read the above books, if you do nothing else, keep the following rules in mind when you are designing any sort of user interface.

Consistency

The number one thing any software engineer can do to make interfaces better is to make things consistent.  I cannot begin to tell you how many interfaces I see that are inconsistent. (I’ve even made this mistake myself a number of times.)  If you do something one way in one part of your interface, always do it that way throughout the entire interface.  For example, if the Okay button is on the left and the Cancel button is on the right, do not change the order of these things somewhere else in your interface.

This also means adhering to the consistency norms defined by your Operating System or Operating Environment (a Web Browser is an Operating Environment).  Yes, you might not like it and you might think you can do it better, but the interface is NEVER (underlined and bolded) about you.  NEVER.

Details, Details, Details!

Anyone who does Interface Design should be horribly detailed oriented, almost compulsively so. Every aspect of your interface needs to be examined to ensure that the details are, going back to my previous point, consistent.  Form fields should be the same size, buttons the same size, everything aligned correctly, everything positioned perfectly, etc.  The details of the User Interface are the critical difference between good work and sloppy work.  And sloppy interfaces are bad interfaces.

Nothing annoys me more than going to another company and filling out their poorly designed forms.  (My current company is especially bad at this.)  These, as I mentioned before, are interfaces and spending a little time to make them more clean and more clear is worth its weight in gold.  I have, in the past, walked out of companies that were interviewing me merely because their HR forms sucked.

Know your Users

When beginning your design the first thing you should be asking yourself is what do you know about your users.  Shniederman and Cooper (the books above) can tell you a lot more about Actors and User Stories and all that, but it really just comes down to understanding how your users like to work, and how your interface is going to make some aspect of that easier.  So, get to know your users.  Are your users computer illiterate? If so, it’s not likely that they will understand something like Drag and Drop right away. Once you understand your users motivations and needs, then you can begin to design a system that best reflects them.

This is often very tricky because none of us have millions of dollars to do user studies, and shadowing, and user testing.  A lot of times our customers are abstract visions of customers.  That’s okay.  Just take some time to try and imagine (acting or role-playing training can be really helpful here) what those customers motivations and needs would be.  It’s not perfect, but it will do in a pinch.

Ease of Use

So it goes without saying that the easier to use an interface is, the more people will like it.  Of course, this must be tempered against the motivation and goals of the actual users.  So the real goal is that it must be easier for the users to do what their motivation and needs require.  I once read that Ease of Use can be defined as the number of mouse click or keyboard interactions required to perform some task.  It’s not a perfect measurement but keep it solidly in mind when designing.  And this segues into my next point…

People are Lazy

Assume that people are lazy and you will never be disappointed.  They want to do the least amount of effort for the greatest amount of payoff.    I call this the commitment factor: how much of my effort do I have to commit to receive the greatest payoff.  This is why the Lottery is so effective.  It does not seem to matter that statistics are stacked against the players, they still play because it’s easy to play and the potential reward is huge.

In interface design this is equally true.  The users will like any interface that makes things the easiest.  The converse of this, however, plays a valuable role as well… the users will like any interface that makes things easier, so long as they can control the results.  This means that lottery users like playing the lottery, so long as they can pick the numbers.  The more complicated the system to automatically pick the numbers, the less the users will like the results.

Ideally, the best systems are predictive systems that let the users control just the right amount of variables.  What is the right amount, well, that where iteration comes into play.  Try a low amount, try a high amount, calculate the best amount, and then keep refining.

Understand Flow

Cooper defines Flow as “When people are able to concentrate wholeheartedly on an activity, they lose awareness of peripheral problems and distractions.” (Cooper, 4th Edition, p119). We’ve all had these Flow moments: where what we are doing is so focused, so in-depth that we don’t notice external things such as what time it is, coworkers leaving for the day, or even phone calls from our significant others wondering why we are not home yet.  This is Flow, and it’s a very, very good thing.  Flow allows users to work on their specific need at an optimum level.  It is the goal of every good interface.

Poor interfaces interrupt flow with things like unnecessary dialogs, errors, hard to use process, etc.  The interface that interrupts less and is easier to use helps to encourage Flow.

As part of Flow I generally include visual flow in the discussion.  Visual flow is the ability of the human eye to find what it needs.  To this end, interfaces that focus or showcase what is most important to the user are better.  In the western world we read top to bottom, left to right, so items on the top left receive more attention than what is in the bottom right.  Keep this in mind as you build your interface.

Also, be aware that animated things attempting to engage or grab the users focus on your interface ALWAYS disrupt flow.  Use animation to enhance, never to engage.  Assume users have become oblivious to animated, blinking things and largely screen them out these days.

Design for Accessibility

One of the big failings of modern day design is that they fail to account for differences in human beings.  Some human beings cannot see, some cannot manipulate a mouse, some cannot determine the difference between red and blue.  Build for accessibility.  Be aware that some people view your site in really low resolution and that some view it in really high resolution.  Account for the differences in your fundamental design and from the beginning.  Going back and having to engineer your sight to meet section 508 standards can be extremely painful.  Do it right from the start.

One of the big things here is when sites use color to indicate differences.  Estimates seem to place color blindness in the US as 10 to 20% of the population.  Therefore using a color to indicate that some change has happened is not an acceptable solution.  When in doubt use a color change AND some other indicator (selection count, underlining, etc) to indicate response.

Feedback

Feedback is the process of responding to user behavior.  The more feedback, the more the user knows that they are doing things.  A common flaw is to do something without providing feedback to the user that something is occurring.  We see this in lots of User Interfaces because almost all User Interfaces rely on a single thread model wherein the interface rendering and response happen on the same thread as most processing.  The developer who pushes processing off into other threads (or into WebWorkers in the Web space) can respond with appropriate feedback to the user without waiting for the process to resolve.

Feedback is a key factor in responsiveness of a site and responsiveness is a key factor in a sites usability.  The more response a site appear, the more users feel like they are in control of how the system is behaving.

You Cannot Please Anyone

Just assume that no matter how great your user interface, not everyone is going to like it.  Instead, your goal should be to hit the 80% of user whom will like it.  There will always be edge users whom have different motivations and needs.  So upfront, identify all the users and determine what the 80% is that you can achieve.

Sure, it is possible to build an interface that scales to every type of user.  However, you will spend a disproportionate amount of time on the last 20% than on the middle 80%.  Think of a bell curve,and try to get the middle of that curve.

I know two sections back I just said to design for differences, but there is a separation between accessibility difference and designing for the edge users.

Learn from your Mistakes

Finally, learn from your mistakes.  I always believe that next version of your interface will be superior to the previous version, largely because you learn from the problems your users had with the current one and build a tighter interface for the next one.

As a co-worker of mine often says: It’s an Iterative Process.

Conclusion

So that’s what I have for you.  My long answer to a friends very simple question.  I hope I did not insult my friend, but the reality is that things are much more complicated than his initial question assumes.  That said, maybe my last section really answers the question he wanted answered.  Remember, User Interface Design is extraordinarily complicated.

A Final Note:  This topic does not take into account the whole Graphic Design aspect of UI design.  For that is an entirely differently field of study.

How to Captain

So I’ve been doing the captaining thing for Ultimate Frisbee for a long time.  Generally speaking, I have great teams.  We don’t always win a lot, but we have a lot of fun in the process and I think just about everyone comes away having learned something and with renewed spirit in Ultimate. I always assumed that player’s on other teams where having just as great a time.

This summer I had to take a season off from captaining (too much on my plate already), but I would never give up playing, so I signed up as just a player.  I won’t bore you with the details, just a paraphrase of a Simspon’s character… Worst. Captain. Ever.  (And no I’m not talking about Janeway. Nerd Humor, sorry.)  Now, normally I’d just step in and take over, but like I said, too much on my plate already… and eventually someone did take over which helped to make the tourney very enjoyable.

Yet, this got me to thinking about what it meant to be a captain, what kind of person it takes, what it required, and what one got out of it. I kicked around a lot of notions, but eventually it occurred to me that anyone could be a decent captain if someone would just tell them how.  And then I started writing.

So here, at last, is my article detailing that How To Captain.

Go forth, read, and then sign up to captain.

 

Tweet and Like

Today I removed comments from the site. I replaced them with tweet and like (facebook) buttons. Although I still maintain my stance that Facebook is dumb. Twitter on the otherhand, is the awesome.

So, if you see something you like here, tweet about it. Or Like it if you swing that way.

Breweries to Watch

It’s been a long time since I posted, so here’s quickie to get me off and rolling again…

TOP FIVE BREWERIES I’M WATCHING LATELY…

Longtrail – Based out of middle Vermont where I spent most of my childhood Skiing.  They’ve put together some really great brews recently.  I’m especially big on their porter.

Clipper City/Heavy Seas – This one is local for me which I normally would discount, but they continue to please me with their beers.  Favs include the Siren Noire and the fact that they are going to have beers at Camden Yards and I can stop drinking the swill there.  Also, if you get a chance to do the brewery tour, the staff is made up of the friendliest people on earth.

Boulder – I’ve had tons of their beers on tap and in bottles and the Obovoid Oatmeal Stout in a bottle is hands down my favorite.  I go out of my way for this brew and regularly stock it at home.  Although I do have to say that a Flash Website sucks.

Breckenridge – So when I was actually in Breckenridge like 5 years ago for a friend’s wedding, we went here and I was unimpressed.  Lately though, these have started popping up all over the mid-atlantic and I’ve given them another chance to my pleasent surprise.  I suggested you do likewise.

Oliver’s – I’m not crazy about Oliver’s beers when I get them in bottles or at bars EXCEPT for at Pratt Street Alehouse.  Oliver’s when it’s hand pumped, is one of my favorite things on earth.  Nothing is better than Real Ale, and Oliver’s Best Bitter is one of my favorites.  Look for me there prior to just about any Red Sox vs Orioles game.

The Great Migration

I recently moved arei.net to a new hosting solution.  a Little more monthly cost for a whole lot more stability and experience.  So far I am pleased and the migration could not have been easier.  Plus, the new hosting company lets me do other domains without blinking.  So all of the other domains I own (arei.me, sosay.us, and more) are now hosted with their own pages. (mind you arei.me is a mirror of arei.net and sosay.us is merely parked, but the point is that I could use them if I wanted to use them.)

Anyway, hope you like the new host and notice the performance upgrades.

Thirty Years of Magic

I recently celebrated a birthday and the other day it dawned upon me that I’ll be approaching a milestone in my life at my next birthday. No, I won’t be 50 or some other birthday milestone. Instead, it occurred to me that with next year’s birthday *I’ll have reached 30 years of experience programming computers*. I’ll let that sink in with some of the kids out there.

It all began one fateful day in the 7th grade. I was twelve years old and not a whole heck of a lot was going on in my life. I spent most of my free time either reading books (I had just graduated into the adult section of our town library), drawing maps and plotting dungeons for my grand D&D adventures or just tilting at lawn furniture. I was a kid with an over active imagination and I gave it its free reign.

Being an avid reader I had befriended my junior high school librarian pretty quickly and was working my through the stacks there. Well, in my school’s library there were also five Commodore Pet 4000 seriescomputers. In order to use one of these you had to sign up in advance. Well, I decided to give it a whirl, and signed up for the following Wednesday, a week away. During the seven days that followed I never once gave it a moments thought as to using the computer or what to do, I just signed up and went on reading, drawing maps, and having sword fights with trees.

The day arrive of my computer usage and I showed up at the library. I was signed up for terminal 2 and I set down at it and turned it on. A few minutes later I was staring at the word “READY” and underneath it a glowing green block. I tried to type a few words and got back some sort of error, undoubtably the famous “Syntax Error” we all known and love from our BASIC days. But that was the limit of what I could do. I knew no BASIC, I knew no Commands, I had no idea what-so-ever about what to next.

Now, ever the bashful kid, I didn’t want to look stupid in front of the other kids on the 4 other computers whom were typing away furiously. So I played it cool. I typed away furiously. Syntax Error. Syntax Error. Syntax Error. I did this for about 10 minutes. I nervously glanced around to see if anyone was watching me. I furiously generated a few more Syntax Errors. I knew there was more to these computers, but I had no idea how to do anything.

I was just on the verge of giving up entirely, when the kid next to me took pity. His name was Thom and he clearly had been watching my failures out of the corner of his idea. I’d say he was probably laughing cruelly at me under his breath, but Thom just wasn’t that type of kid. After watching my struggles, he leaned over and said, “Would you like some help?”

“Sure,” I answered.

“Type in POKE 52768,32″ he told me. (Actually, I remember the 52768 number hands down, but the 32, the value being assigned to 52768 may or may not be correct.)

Instantly all the text on the screen switched from pure upper case characters to all lower case characters. It was pure magic, so much so that I still remember that memory location (52768) three decades later.

“Type in 10 PRINT “Hello” followed by a return, then 20 GOTO 10 followed by a return. Now type run.”

I did this as he was telling me, and when I typed RUN and press return, my screen lit up with an endless stream of HELLOs. It was cool.

“My name is Thom,” he said and he stuck out his hand.

“I’m Glen. What else can I do?”

And that was it. That was the magic moment.

That night I went home and drew a keyboard on the back of a piece of cardboard so I could play that I was a computer whiz like Thom. The next day I signed up to use the computer every day after school for the next week. (Sign-ups only went a week out, so I would end up having to sign-up every week for the next week for the next 18 months until I graduated to the High School.)

And Thom was my willing guide through it all. He taught me about line numbers and GOTOs and FOR loops and DATA and READ statements. He taught me how to POKE any character onto the screen at any time (POKE 32768,42 put at asterisk in the upper left hand corner of the screen.) Within a week I was formulating my own very small programs, and within a month I was doing much larger ones. I was checking out books on how to write Commodore BASIC and scouring the libraries for everything I could find. I pestered my parents for a computer on a daily basis but they never gave in. (We didn’t end up getting a computer until I was 15, when I finally went out and bought my own Timex Sinclair TS1000 http://en.wikipedia.org/wiki/Timex_Sinclair_1000 for $30 at the neighborhood CVS.)

Two months later saw the advent of my first game for the Science Fair to test hand eye coordination but really it was just me showing off that I could write a computer program. I remember that the program was about 45 lines long, a lot of input from Thom was in it, and it colossally sucked. I can still almost remember the program structure and even see it in my head. A lot of the little command details slip my mind though.

Pretty much every day since that one day almost thirty years ago I have spent programming a computer. (There was a break for about 4 years in there where I was going to school for English Literature, but even then I still spent a fair amount of time programming for an English Literature student.)

In those thirty years I’ve written so many programs I couldn’t even begin to count them. I’ve written just about every type of program you could imagine from Games to Web Browsers, in all kinds of languages like BASIC, PASCAL, Assembly, Java, Fortran, COBOL, C, Lisp, etc etc etc etc.

But in the end it all came down to that one day, thirty years ago, and that one moment where I changed all the characters on my screen from upper case to lower case. I basically performed magic for the first time using a computer, and I was hooked instantly.

Why is Outlook Web Access 7 years old?

Why are we still using Outlook Web Access, an internet email client that is seven years old and terrible design even for seven years ago. It pains me that my office uses a program that was bad even by the standards of 2003 when it came out. But the real question here is… why the hell hasn’t microsoft updated this piece of crap at all? Seriously? The company has billions of dollars, couldn’t they spare a quick million to rewrite the damn thing? Hell, for a mere $2 million, right now, I’ll quit my job and go write it for them. It should take about eight weeks to produce something better. Eight weeks… tops. And i’ll even write it to support IE.

Developer Drift

Lately I’ve been the subject of what I call developer drift.

Developer Drift is the process by which an unchallenged developer slowly moves from one project to the next. The project may be in house or external or something completely fabricated by the developer’s mind, but it basically means a developer is less interested in the current project than the project over the horizon. It’s the “Grass is always greener” truism made concrete in software engineering.

For me, this has taken the form of the fact that our customer wants really boring user interfaces which I can crank out like they are nothing. Problem is, I almost never crank them out, because they are meaningless and I never feel challenged/creative by them. (For me challenged=creative.) So I take forever to implement them and tend to make a lot of excuses on why this is taking so long. I feel justified in why it takes so long in the fact that when I am challenged, I really do crank out the code at an extraordinary rate which borders on the obscene when compared to average developers. I’m very prolific when I want to be.

The same thing was true when I was back in college studying English Literature. I could crank out a paper that I found interesting in no time flat, but assign me something that was pedantic and I’d sooner rip my own teeth out with a spoon (“because it will hurt more”).

So the real question I’m trying to find an answer to is “How do you deal with developer drift?” How do you stop people from losing interest when they are bored because the project has become boring? A project I used to work on is suffering from this very problem… they want to keep the team together, but the more boring stuff they do, the less likely they are to be able to keep the team together? Is there a way for this project to challenge it’s developers at the same time as doing boring things? Would contests or “feats of skill” help keep things from getting stale? Or should they just accept this as the life cycle of the developer, assume that people are going to drift away, and prepare for the next generation?

You tell me… how does your project deal with developer drift?

Holy Crap, We Built a Camel!

I love the sentiment of this opening paragraph, regardless of the rest of the article…

‘There’s a saying I love: “a camel is a horse designed by committee.” A variation is “a volvo is a porsche designed by committee.” Some of the best product advice I’ve ever heard goes something like “damn what the users want, charge towards your dream.” All of these statements are, of course, saying the same thing. When there are too many cooks in the kitchen all you get is a mess. And when too many people have product input, you’ve got lots of features but no soul.’

(Cut from http://techcrunch.com/2010/05/12/diggs-biggest-problem-are-its-users-and-their-constant-opinions-on-things/ )

What’s the Information, Kenneth?

“The simpler an interface looks, the faster it will seem,” – Mike Beltzner (Mozilla)

The purpose of a User Interface is information. Whether it be delivery of that information, manipulation of that information, or discovery of that information is secondary to the information itself. It’s that simple and as soon as your recognize that you can begin to build compelling experiences with the least amount of crap.

Yet time and again people whom build UI’s are forced by people whom do not build UI’s to add more. They want more widgets or charts or colors or fonts, more stuff on their site. And the more stuff you put on their site, the harder it becomes for the user to see the information they are seeking. The harder it becomes to see the forest through the trees as the saying goes.

Every time I build a UI for someone I ask them one simple question: What’s the most important thing you need to convey? Whatever that is, that piece should be 75% of the interface. I would say that in the twenty or so interfaces, only one project has ever answered that succinctly. Usually you get this long diatribe about how you should put X here and Y here and the menu needs to go here in 24 point comic sans ms. It’s usually at that point I wish I could just walk away from the project… and live on a beach in Guam. But I love my internet access too much to give it up for the beach lifestyle. Maybe in another year or two.

So the point is, that the people in charge of projects are under some sort of assumption that more is better. If you ever are in doubt of this, go look at Amazon’s front page. Too much crap to wade through just to get to a search box or your wish list or whatever. But the reality is less is better. Less is more usable. Less is faster.

So my question to you is, how do you take a customer that wants to add more trees and show them the forest?

Back Baby!

I’m back baby! After several months of not posting, I’ve finally managed to get thing setup so I can post from work. Good news for all you out there whom have missed my diatribes on the world in which I live. You know who you are, my adoring fans, the unwashed legions of nerddom. Rejoice, for I have returned.

Annual Snow Rant

It’s time once again for my annual snow rant in which I tell you how irresponsible you are being by not cleaning the snow off your car. So here goes.

It is your responsibility to clean the snow off your car in its entirety, including the roof. If you cannot accept this responsibility, you should not be allowed to drive. It’s that simple.

Not cleaning the snow off you car causes others driving around you to have limited visibility and can even lead to complete loss of sight while driving if a large chunk blows off your car. This leads to panic, accidents and even fatalities. By not cleaning your car completely of snow you are actively participating in trying to hurt other people.

Now, I know we live in a world where people think everything outside of their car doesn’t exist. It as if inside of the car is a completely seperate world from outside of it. But the reality is that you share this world and the road with other people and you have a moral responsibility to help them be safe.

So there it is. Clean the snow off your car, including the roof. If you are too lazy, then please just stay home. Your job, shopping, or social activity just isn’t that important and the world will keep on turning without you.

Maven Vitriol

I’m an ANT guy. I’ve been using ANT since 1999. It’s amazingly powerful, amazingly useful and very flexible… and I’ve never once written my own ANT task. Just using the ANT tasks available or out there in the community I have been able to build hundreds of software projects.

Now, of course, everyone says, “Go Maven”. So I went Maven… and it sucked.

See, I have very strong feelings about Frameworks. (Not to confuse you here, but Maven, like ANT, is a Build Framework.) The problem with 99% of all Frameworks out there is that they force you into a specific way of doing something. “But that’s the whole point,” you scream at me. And I agree, that’s the point… until the moment you need to do something else.

Now, I use frameworks all the time in my software development, we all do. There’s one listed over on the right side in my links section that I actually endorse. So am I not hypocritical for deriding frameworks in one breathe while using them in another? Of course I am, but here’s where i’ll caveat it… I use frameworks that provide the least limitation on me doing new things. Maven, as an example is a rigid framework. Doing something new with it is difficult challenge. ANT on the other hand, while limiting, isn’t nearly as limited.

So here’s AREI’s Framework Measurement Testing System. First, evaluate a framework for the project you are working one, say building a Java Swing application. Next, evaluate the framework for another, completely different project you might work on in the future, say building a Website. How does the framework stack up for both things? Finally, consider what’s going to happen when you need to take the framework beyond it’s scope into new places. How accepting of that path is it?

Here’s some examples:

I had an ANT script that would append together a bunch of .JS files and then minify the entire set. Worked like a champ. The project I was on decided let’s give Maven a try instead of ANT. So I had to come up with a way to do the same thing in Maven. Two weeks of work later I ended up just calling ANT from inside of Maven.

Anyway, this post was really meant as just a simple link to an awesome blog posting that unleashes some much needed fury on Maven. But I got a little carried away in the intro.

So in summation, Maven sucks. Pick a framework that you can change. Damn the man! Save Empire!

The 2.8% Raise

So, I’m due to have yet another annual review this week. If you read my earlier post “Deciphering What your Annual Review Means” you might recall I’m not really that excited by annual reviews or their results.

But, in preparation today I went out and did a little math. According to the Consumer Price Index (CPI-U) which measures how much things costs for the average person, the costs of things has increased an average 2.8% every year for the last 10 years. That means, any merit increase I see that is less than 2.8% means I’m losing money. And a raise of 3% means I’ll see .2% more money a paycheck! Hold me back I’m going on a spending spree. (That was sarcasm in case you missed it.)

Honestly, I expect 4% though and I’ll have to start lining up some interviews after the holidays.

Funky Techno Groove Beat

I laid down some funky techno grooves. Check it: http://inudge.net/inudge#/ft8r

Installed Windows 7 and I Just Gotta Say…

So I installed Windows 7 at home this past weekend. I had done the Beta version in some virtual machines at work and was impressed enough that when it came out I thought I’d give it a go at home. The big change for me was in pushing my OS up to x64 so I could get more out of my memory.

Overall the install took about 6 hours: that includes downloading 64 bit drivers ahead of time, backing up all my stuff from the old version, reformatting my boot drive, installing Win 7, and reinstalling all my needed software. So, at 6 hours, I gotta say, that’s pretty quick. Additionally, the install went flawlessly. There was a hiccup with needing a raid driver early on, but it was before reformatting, so I just booted the old os and got the driver and put it on a thumb.

Now that I’m up and running, and have been so for a few days, I gotta say I’m impressed. Performance is solid, boot time is faster, things run better… all in all a big success for me. I especially see performance gains in games and swapping to desktop. Very nice.

Stripes 2

I had a dream last night that I was writing the script for the sequel to the movie stripes. When I woke up this morning from the dream I spent all morning thinking about doing just that. I finally stopped thinking about when I realized that I don’t think Bill Murray is probably too old to pull off an impression of Dean Martin joining the army.

Deciphering What You Annual Review Raise Means

Recently my boss came to me and told me that my annual review was coming due.  I’m not sure if he was telling me this to warn me to get off my ass and be productive, or if he was giving me a heads up that I might want to start looking for a new job. The fact that his message was unclear got me thinking though; what exactly do I expect from an annual review?

From an employee prospective the annual review is about one thing: big fat raise. Employers can push their “growth plans” and “360 reviews” all they want, but for the actual employee it simply comes down to how much more money they are going to see in their paycheck.  Honestly, every time you have ever been given a raise, what’s the first thing you do? You check out how much more per paycheck that means to you.

But getting past the 37$ more a week thing, what does the percentage raise your boss just told you really mean to you?  And what does it mean in perspective of your bigger picture?  Is it a worthwhile number? Does it merit staying with the company another year?  Or is it more profitable to your bottom line to go elsewhere?

These are the questions your employer really does not want you thinking about.  Yet, employers run their companies as a business.  They are in it to make money.  So they should not be surprised when an employee runs their own life in the same way.  You are in it for the money and it is money that talks.

So, in light of my own upcoming performance review, I decided to write down a scale of exactly what my feelings should be toward my company depending upon the percentage my boss tells me at the end of my performance review.  The idea being, that I don’t have to rush back to my desk and figure out how much more per paycheck I’m going to get.  Instead, I want to hear a number and instantly know if I’m being insulted or congratulated.

Now, before you go read the charts I want to tell you to please remember to take this with a grain of salt.  Employee/Employer relationships are complex things, and you should be mindful of that.  You also need to be mindful of your own situation, the availability of jobs in your industry, how valuable you are in the work place, blah blah blah.  All I’m saying is to think before you leap.

Also, this is just about an increase to your salary here.  Things like bonuses and stock options do not count because they are a one-time payout.  If you boss gives you those, that is a nice thing to do and all, but a merit increase is about sustained growth not a one time bump.  If your boss does this kind of tactic, just ignore the bump factor and focus on the growth factor.  The bump is a nice way to say thanks, but it’s the raise that counts.


0% This company is actually the worse off because you are an employee here.  Get the hell out.
Getting 0% as your annual review is basically tantamount to being fired, regardless of the reason.  A company will tell you “we had a poor first quarter this year and that hurt everyone’s raises.”  But what you really should be hearing is “Get the hell out.”  The company is basically telling you that regardless of your performance they do not want you to stick around.  If they cannot even muster a token increase, the company is doomed to failure.


1% We basically gave you a raise because we have to but nobody here likes you or wants you to stay.
The 1% raise is the token insult raise; a little something because they must, but honestly they’d just rather give you nothing. If you were a minimum wage worker your company basically just told you that they think you’re worth only 6 more cents an hour. If you made the median household income in the United States as of 2005, this would roughly translate to $8.91 more a week. I recommend you spend that money on resume paper and go find a new job.


2% We’d really prefer it if you just saved us all a lot of trouble and stayed at home sitting on your sofa.
This raise translates to $17.81 more a pay check. Unfortunately that won’t even cover the cost of the gasoline you use to get to work every week. A company might give you this in hopes of motivating you to “excel” or “exceed”. I recommend that you take the hint and “Exit.” In fact, if your manager/boss person tells you that 2% is your raise this year, there’s no reason for you to stay another minute. You can probably make more money selling magazines out of a van.


3% We have decided to shower you with our greatness and you should be thankful for it!
Alright, this is the defacto raise that companies usually use for a base. Someone once told them that that was the “annual cost of living” increase. I’m sorry to tell them this, but last year the cost of a loaf of bread climbed 8%. That means it’s roughly 8% more expensive to eat this year than it was last year. Worse yet, companies make this seem like they’re doing you a wonderful favor. A favor would be if you could afford to eat more than a damn loaf of bread.


4% You don’t deserve a brand new Porsche, but the people who own your sorry ass do.
Since 3% is the defacto raise, 4% is usually reserved for the companies that want to give out 3% but they know you did a kick ass job. In a company of 100 employees that made $1,000,000 in profit last year, a 4% raise for everyone in the company means that the company spent 18% of it’s $1,000,000 in profit on raises (assuming everyone makes the national median wage). To us, this doesn’t exactly say “Keep up the good work.” Instead it says, “Keep up the good work, you’re making us rich and we don’t like to share!”


5% We respect and value your lazy ass, but if you try harder we’d reward you better.
This is what I would call the bare minimum of fair raises. This says, you’re doing an adequate job and we see potential for improvement. Keep striving to be a better employee and next year there could be a more than 5%. This is usually the lowest raise at which I wouldn’t suggest looking for a new job right away. But I’d temper that by telling you that you could probably get more money by changing jobs.


6% You’re doing a decent job but we’re a little too cheap to really show you we appreciate you.
A company that shells out 6% is one that actually values you as an employee. They know you’re doing a good job and they want to keep you around. Unfortunately, someone in the management chain is cheap so the 6% raise is usually reserved for the one “rockstar” employee. I would argue that 6% is a token show better than 5% which every employee ought to have gotten, so it’s really not “rockstar” ready. You might want to take a look around the company and see how many 6% raises they gave out. If you’re it, than the company might just be a little too cheap for your dream of buying beach front property in Jamacia.


7% Way to go! Keep up the good work and someday we’ll promote you into management.
Finally we’re getting into the category of raises that say the right thing. These raises tell an employee that they did a good job and by golly you want them to stick around. Unfortunately, for companies these days most employees can get 10% just by changing jobs. If you got one of these raises, it’s time to weigh that extra 3% you could get from changing jobs against your apathy of looking for a new job. If the job conditions are good, a 3% jump and the risk of changing jobs might not be worth it.


8% We think you’re the best thing since sliced bread and we’re willing to do what it takes to keep you.
Remember back in the 3% raise we talked about sliced bread? Up 8% from last year? Well, with an 8% raise you are keeping abreast of being able to feed your family of four and your dog and a picket fence. The good news is that your employer really values you. The bad news is if you are only breaking even on feeding your family, you’re lifestyle is pretty much stuck in a rut. Keep your eyes open for golden opportunities, but you really have it pretty good.


9% You’re doing an excellent job and are exactly the type of person we want to keep working here.
Obviously someone at you company thinks your hot stuff and went the extra mile for you. It’s probably your boss and we assume if you got this raise you have an awesome boss. Awesome bosses are extraordinarily hard to find, so before you even think of jumping ship, take stock of what you have. It’s probably a pretty good thing.


10%
and up
You rule! We love you! Please, please, please do us the honor of working for us another year.
Honestly, if you get 10% or more, then your company absolutely rocks and you shouldn’t even consider thinking about changing jobs. 10% means the company recognizes your contributions, it believes in you as a long term employee, and it is willing to do what it takes to make sure you stay on board. And even more importantly, the company wants to reward your contributions to its success by helping you to your own successes. You simply cannot beat that.


So there you have it.  My quick and dirty field guide for determining if you are being insulted or rewarded.  It is my hope that you will take this out into the world, share it with your friends and co-workers, give it to your boss and her boss, and use it as a reference guide during your annual review.  You should even use it as a reference point when it comes time to fight for a better merit increase.

My advice to you is, hope for 10%, but be ready for 3%.  And then, be prepared to do what you must to better YOUR situation.

“Deciphering What Your Annual Review Raise Means” is released under the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License which you can learn about at http://creativecommons.org/licenses/by-nc-nd/3.0/ and you can read at http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode. The original author is Glen R. Goodwin and can be found at http://www.arei.net.  You can find additional copies of this document at http://www.arei.net/stuff/AnnualReview.doc.

Workplace Comfort Level Score (WCLS)

This week I’m changing work locations. As part of this I was comparing the space I work in to the new space and trying to quantify which is better.  I remember that a while back I posted about Environmental Factors in helping to create the best possible work experience.  And then I was thinking about how to rate each space.  My idea was to come up with some nice scale, but it’s pretty obvious that each of these things is subjective and a single scale doesn’t work.  So here’s my idea instead:

1). ORDER THE LIST: Rate the following twenty items in order of importance to you.  Use a 1 for Least Important and a 20 for Most Important.  No Item can have the same number.  Now, here’s the important bit: If you don’t agree with the list, or something on the list isn’t a factor, replace it with something else.  It doesn’t matter what the items in the list are, so much as that there are 20 of them.

  • Privacy
  • Seclusion from Other People
  • Inclusion with Other People
  • Ability to Listen to Music Openly
  • Ability to Listen to Music on Headphones
  • Ability to Modify Environment Lighting
  • Cleanliness in Work Environment
  • Ability to See Outside
  • Ability to Hang Posters or Artwork
  • Lots of Wall Space
  • Lots of Desk Space
  • Lots of Floor Space
  • File Cabinet Storage Space
  • Nice Furniture
  • Comfortable Chair
  • Bookshelves
  • Ability to Wear Jeans and Flipflops
  • Access to the Internet
  • High Quality Computing Hardware
  • High Quality Computing Software

2). RATE EACH ITEM: Now go through and rate your workplace/workspace on each of the items from 1 to 5 where 1 means NO or LEAST and 5 means YES or MOST.

3). FACTOR EACH LINE: Multiple the rating from Step1 by the Rating from Step2 for each line.

4). TOTAL IT UP: Add all the numbers from Step 3.

5). DERIVE THE SCORE: Divide the result from Step 4 by 105 and round down.  This is your WCLRS score.  Use the following reference to help you determine how good your score is:

2 = PRISON = You work basically in a prison cell without the perk of the inmate on inmate love.  Get a new job.

3 = ABYSMAL = Things are pretty piss poor in your workplace if you are seeing a score like this.  Get a new job.

4 = BAD = Your workplace comfort is really pretty bad and that is keeping you from working at the top of your game.  You could try sprucing things up a bit with fake plants and the like, but without a concerted effort by management to create a better workplace, you’re pretty much screwed. Get a new job.

5 = NOT GOOD = It’s getting better, but really it’s not very good at all.  You could try working with your company to fix things, but I doubt you’ll be able to effect change.  Pity though.  You might consider getting a new job.

6 = ADEQUATE = Okay, your workplace is adequate.  It’s not great but it also beat working in prison.  Plus, clearly your company knows some of these factors are important and they might be willing to work on the other things. You might also consider getting a new job.

7 = PRETTY GOOD = This is down right pretty good.  Your working in a fairly comfortable place and clearly your employer values creating a decent place for its employees.  This, by the way, is the minimum rating for someone who works at home.  If you work at home and get below a 7, just chuck it all and go live on a beach in Guam.

8 = DAMN GOOD = You’re doing damn good.  It’s a nice work space, very comfortable, very enjoyable.  So long as the work doesn’t suck and the people you work with are not complete wankers, this is an excellent job.

9 = AWESOME = Damn near perfect.  You should keep this job even if you don’t like the people you work with.

10 = PERFECT = The gold star standard of workplace comfort.  If you work here, please email me at |a r e i .at. a r e i .dot. n e t| and let me know if you are hiring.

Here’s how I rated my current workplace, and how I rate the workplace I am moving to:

STEP 1 ORDER THE LIST:  For me the list is ordered like this…

01 = Ability to See Outside
02 = Ability to Listen to Music Openly
03 = Lots of Wall Space
04 = Lots of Floor Space
05 = Inclusion with Other People
06 = Carpeting
07 = File Cabinet Storage Space
08 = Nice Furniture
09 = Ability to Hang Posters or Artwork
10 = Bookshelves
11 = Lots of Desk Space
12 = Comfortable Chair
13 = Cleanliness in Work Environment
14 = High Quality Computing Hardware
15 = High Quality Computing Software
16 = Ability to Modify Environment Lighting
17 = Ability to Listen to Music on Headphones
18 = Access to the Internet
19 = Privacy
20 = Seclusion from Other People

STEP 2 RATE EACH ITEM: Here’s my CURRENT and my NEW workplace ratings.  The first number is the current, the second number is the new as shown here: current/new

4/2 = Ability to See Outside
1/2 = Ability to Listen to Music Openly
1/2 = Lots of Wall Space
1/1 = Lots of Floor Space
1/4 = Inclusion with Other People
3/2 = Carpeting
2/2 = File Cabinet Storage Space
2/1 = Nice Furniture
1/2 = Ability to Hang Posters or Artwork
1/1 = Bookshelves
1/2 = Lots of Desk Space
2/1 = Comfortable Chair
5/1 = Cleanliness in Work Environment
5/2 = High Quality Computing Hardware
5/2 = High Quality Computing Software
3/1 = Ability to Modify Environment Lighting
5/2 = Ability to Listen to Music on Headphones
4/2 = Access to the Internet
2/3 = Privacy
1/2 = Seclusion from Other People

STEP 3 FACTOR EACH LINE: Just multiple each lines rating by the order position, gives me the numbers below again in current/new format.

04/02 = Ability to See Outside
02/04 = Ability to Listen to Music Openly
03/06 = Lots of Wall Space
04/04 = Lots of Floor Space
05/20 = Inclusion with Other People
18/12 = Carpeting
14/14 = File Cabinet Storage Space
16/08 = Nice Furniture
09/18 = Ability to Hang Posters or Artwork
10/10 = Bookshelves
11/22 = Lots of Desk Space
24/12 = Comfortable Chair
65/13 = Cleanliness in Work Environment
70/28 = High Quality Computing Hardware
75/30 = High Quality Computing Software
48/16 = Ability to Modify Environment Lighting
85/34 = Ability to Listen to Music on Headphones
72/36 = Access to the Internet
38/57 = Privacy
20/40 = Seclusion from Other People

STEP 4 TOTAL IT UP: Add up each number for current and each for new to get the totals:

Current: 594

New:386

STEP 5 DERIVE THE SCORE: So here I take the totals and divide by 105 for my score:

Current: 594/105 = 6 = ADEQUATE

New: 386/105 = 4 = BAD

So, now that I have it all figured out, I am basically going from ADEQUATE to BAD.  That doesn’t sound like an upgrade to me at all.

Time to get a new job.

Resume Updated

My Resume was updated as part of my bi-annual housekeeping.