I told a few people about JIRA Client and got a nearly universal response. They were confused as to what I was talking about. The confusion, I believe stems from the name of the product. JIRA has a web interface out of the box. Some people call the browser in a web application the “client”. Saying JIRA Client made everyone think I meant the UI of JIRA. Forget that GreenHopper is another UI on top of JIRA in a browser; that just makes it even more confusing.
One answer for ALM Works (owner of JIRA Client) would be to rename their product to something more memorable and differentiated. Here are some suggestions:
The last two sorta came out of left-field. Anyway, the point is that you need to pick a name that is memorable and differentiated. Don’t pick a name that is bound to confuse almost everyone. Does your product have a terrible name? Is it too late to change it? (Hint: It’s never too late)
Recently, we moved from one project/bug system to JIRA with GreenHopper. The system is highly programmable with lots of plugins and so far, we have made good strides forward. It’s not perfect by any means, but so far, so good.
One area I have not been thrilled is the GreenHopper interface. Some people here love it, but I was having a harder time. There was something about the interface that I just didn’t like. Specifically, I think it was the way the menus and navigation worked. It looks like this:
All of those arrows drop down a menu and you can combine them to navigate to whatever view you want. I found this UI endlessly confusing. One of the engineers here loves it, but I think it might be geared towards that engineering type of mind. (Read: The Inmates are Running the Asylum by Alan Cooper). I found myself not using the UI because of this problem.
This was a 100 times more effective for me to find what I am looking for. I can nest the filters and create my own structure. The UI seems quite polished. Although it certainly doesn’t do everything, it seems well worth the $100 to navigate the JIRA issues. The only mistake they made was not using the tree as pure navigation. They combine the tree with a tab system.
The big problem with this is that I now have 40 tabs open without realizing it. There seems to be no benefit to having the tab open. It just creates clutter. I am using the tree for navigation, but because of the tab system, the tree nodes do not become LIT. This is when a node is highlighted in some way to indicate that you are navigated currently to that item. This faux pas doesn’t hinder my usage of the tree, so I just have to close 40 tabs every once in a while.
Another benefit is that the system is synchronized, so I don’t need to make a server call for each request. It caches the results locally and syncs every couple of minutes. This makes the system MUCH faster than using the browser UI. Speed is truly the most important feature of any system.
On the downside, I find some things that could be improved. One is the way it renders fonts. There is no way to increase the font size. Right now, the font is pretty small, so I have a hard time reading the details. Secondly, the preview pane is only available on the bottom. Based on my screen resolution (1920×1080), I would be much better off if the preview pane was on the right. I’d be able to read much more without scrolling.
I just tried to login to their forums to post that as an idea, but unfortunately, the system says they are not allowing any new people on the forum. (Not sure what that is about)
Jira Client is the kind of model that I think is pretty valuable. There is a cloud service like GMail, Jira, DropBox, Google Docs, etc and there is a thick client on the desktop to edit the file. I think Microsoft is trying to do this with SkyDrive and MS Office, but they have a long way to go. For now, I am impressed with this one example.
I absolutely loved this article by Paul Graham called Makers Schedule, Managers Schedule. It basically describes the cadence difference between people who are in meetings most of the day and people who have deliverables like designers or programmers. I drew charts to illustrate:
Notice that the manager has meetings all day in one-hour chunks. For them, the key is to find an open hour to meet with people. However, the maker really needs larger chunks of time to get things done. You need 3+ hours to really make progress. Let’s look at the actual schedule:
Notice that the meeting at 3:00 basically split the afternoon into two smaller pieces. Now the maker doesn’t have the uninterrupted time they need to get things done. There is a serious price to pay for context switching when you are making stuff that requires concentration. Speaking for myself, when this happens, I get alot less accomplished in the afternoon than the 1 hour meeting would assume.
This was a brilliant concept that I wish I could take credit for. In my office, I try to shield the junior designers from being in too many meetings. I go to the meetings for them so they don’t have to. That way, they can maximize the amount of work they do. I’d love to have fewer meetings, but this seems to be a harder problem.
What cadence do you prefer? Is it the same as the people you invite?
Imagine giving a person a copy of Intuit QuickBooks. The person has no accounting knowledge and no experience with this software or competing software. In other words, this is a layman. Imagine that their job was to get QuickBooks up and running for a small business with 30 people and 5 million in revenue.
Result: They would likely fail.
They would probably blame the software as not being easy to use. They would have a mental model of what they needed to do and it wouldn’t be the same mental model as QuickBooks. The problem, however, isn’t the software. The problem is that the person has no knowledge of accounting or bookkeeping.
If you were to give the person “consulting”, it would be a waste to show them where the buttons were in the software and how to print reports. Much more importantly, they would need lessons on basic bookkeeping. Having the right mental models will make the software seem easier.
This same fact goes towards most complex software. I didn’t understand Windows Server, Active Directory and Exchange until I understood the basics of DNS, Routers and the Internet Protocol (IPv4). Human Resources software is more than the buttons, you need to understand people, incentives and motivations. Marketing software is more than “drag/drop workflow”, you need to learn about marketing, offers and content creation. Every complex software suffers from this basic problem. Photoshop is an ineffective tool unless you understand the basics of composition, color theory, balance, typography and general art.
So why is it that most software consulting focuses on how to use the tool, rather than the basics of the craft the tool is meant to help with. We often think of software users as intermediates or experts; people who know the craft and just need software to help them. I think the reverse is true. People buy software because they see that experts use it and they hope they can learn the craft through using the tool. As if buying expensive saws and toolboxes will make me a carpenter.
There is certainly a place for schools in this education, but very often, I find that people enter a craft well after school ends. They dive in without any help. It’s up to the software vendors to help continue the education in our chosen crafts to make people more successful. Make the software easier just misses the point. We need to make the people better practitioners.
Note: This is not an excuse to accept difficult software. This is pointing out that there is more involved than learning the software.
Recently, I interviewed a person for a user interface engineering position. I made the analogy that the resume was like a user interface and that the candidate was the application. As a user, I wanted to accomplish my goal: to learn about the candidate.
My user experience started the minute I picked up the resume, before I even met the candidate. It was 7 pages long. This is way too much for a resume. I couldn’t get the history quickly, I had to follow a long trail of text. This wasn’t a resume, it was a book. I noticed a problem right away…there was no footer including the “page x of y” information. I dropped the resume on the floor and picked it back up. It was out of order now and nearly impossible to piece back together without looking at the original PDF.
Once, I started reading the text, I realized another major problem. There were descriptions of what the company did, not what the candidate did. Normally, if I wanted to know what the company did, I would Google them and go to their website. This text represented 20% of the total lines of text in the resume.
I pointed all of this out to the candidate when he arrived. I asked, “How did you write this resume? All at once? or over time?” The answer was that the resume was written over time and had accrued more and more lines over the years.
The Analogy Part
Isn’t that like a user interface? You build something and keep adding features and one day you realize your code is too bloated and long? When do you say, “I have got to clean this thing up!” and refactor the code. I have seen many engineers build up a gordian knot over time. Wouldn’t it be better to keep trimming during the year rather than wait for a massive spring cleaning?
Codebases grow; they don’t shrink. Yet, everyone agrees that the bigger the codebase gets, the more unmanageable it gets. Resumes are the same way. 7 pages is way too much for me to read. Look at your application (or resume) and see how much cruft it has accrued over the years. Maybe it’s time for a spring cleaning.
Last part of the analogy: Does your resume look the same as everyone else’s? Do you use Arial or Times New Roman? Why would you want your resume to look the same. It can’t stand out that way. Why not make it look a little different and help the user remember you? Look at your resume, it probably needs help.
As one becomes an expert in any hobby or craft, one learns about the best equipment that is possible to buy. The dynamics of the cost-value curve are as follows:
In the beginning, you can spend the least amount possible. This is what many amateurs do. The quality is pretty low. By spending a little bit more, you can increase the quality substantially. There is a sweet spot there, where most equipment gets pretty good without breaking the bank. Then, the curve flattens out. More money increases quality, but only by a little bit. The additional quality comes slowly but the cost goes up and up and up at exponential rates. Finally, the cost becomes astronomical when a famous person signs the equipment or it is vintage and a collectors item. At that point, it is more akin to artwork than usable equipment.
Yesterday, I bought a guitar for my son from Guitar Center. We got the Sterling Silo 30.
The low end of a guitar is the Squier Bullet, which can be purchased new for $100. The quality is fine and honestly it looks nearly identical to the amateur eye. Even the sound and feel is nearly identical to a beginner. As the beginner turns into an intermediate, the quality of the guitar will present itself more clearly. The Silo 30 was $250.
At GuitarCenter, there were hundreds of guitars. $250 was near the bottom of the barrel. Most guitars ranged from $400-$1000. Some went significantly higher to many thousands of dollars. To me, they all looked and sounded the same. To an accomplished guitarist, they understood the value of the higher end guitars.
Then, there was the glass cabinets where they kept the truly expensive pieces. At the top end was a Fender Stratocaster from 1956. It was beat up pretty good and probably sounded horrible. Cost: $55,000. Basically, it was artwork at that point, not an instrument.
Every craft has this dynamic. I try hard to hit the sweet spot, where I get higher quality before the price becomes crazy. Some examples:
In college, I used a Huebler pool cue. Cheap cues can be under $100, but at $200, this cue was wonderful to hold and use. More expensive cues ranged from $300-$3,000, and I could absolutely feel the difference, but it wasn’t so much better to be worth the exponential cost.
Everyone is familiar with this effect in a car. A cheap car is $10k. Cars range up up to hundreds of thousands and even millions of dollars. How much better is a $250,000 car versus a $100,000 car? Not that much. But a $25,000 car is alot better than a $10,000 one.
A top end bicycle costs as much as a car. Yet, a $500 bicycle is going to be pretty good by any standard. Each $1000 added decreases the weight or adds features by a tiny margin.
One could spend $500 on a PC or $5,000. The equipment gets better and better, but not by the amount paid. Buy a 30 year old computer and it’s a collectors item with an hefty price tag
Just ask my mother-in-law. She will pontificate about the virtues of the computer controlled mega loom that has shuttles and other weaving thingers…if only she had the money.
A $5,000 suit doesn’t look twice as good as a $2,500 suit. And truthfully, you look fine in a $500 suit. However, a fashion connoisseur, the extra cost makes all the difference. And buy a dress worn by a woman in a movie and the cost goes up through the ceiling.
I could go on forever. Pick your hobby or craft and the curve is the same. Its fun to think about which ones you know the most about. I learned something about guitars yesterday, but clearly, I have a long way to go.