Common-sense rules-of-the-thumb for designing software that makes sense

Excerpts from a JIRA article I wrote at work.

Make system status and feedback clear and visible
Use status mechanisms to keep users aware and informed via appropriate feedback, and within a reasonable timeframe. Status information should be up-to-date and easy to spot.

Present information with meaningful aids to interpretation
Use words, phrases and concepts familiar to users - don't use 'programmer speak'. Use everyday terms, or familiar frameworks.    

Help users recognise, diagnose and recover from or resolve errors
Give users a "way out" when they make mistakes (e.g. cancel). Where Undo/Redo is not possible or viable, present users with solutions.
E.g. The supplier record could not be deleted because transactions have been made against it. <Deactivate Supplier Record> <Cancel>

Use clear, consistent language, and names/labels that are conceptually related to their functions
Standardise language across your platform. If 'Cancel' means 'Exit without implementing any changes' in one context, it should mean that in all contexts. Whenever possible, button labels should be specific, rather than generic. (e.g. 'Save & Exit' vs 'Okay').   

Help users not to make mistakes
Present users with a confirmation before they commit to an action with serious and/or irrevocable consequences. In such cases, it's a good idea to place the Commit and Cancel buttons far apart to prevent users clicking the wrong buttons by mistake. If keyboard controls are in play, require the users to either click the (far apart) buttons, or to commit by pressing a specific key or key combination, rather than tab-Entering.

Display only the information a user needs to complete a discrete task at a given time
Don't make users remember information from one part of the dialogue to another, and don't pepper them with information irrelevant to the task at hand.

Make the right things invisible
Automate and/or hide tasks/functions users have no control over, but that the platform requires to work.  

Group information consistently and meaningfully
Don't make users search and mix-n-match information from all over your page if what they're looking for falls into an identifiable group. (E.g. Address, Mobile, Fax..)   

Reduce user workload & set meaningful defaults
Pre-populate standard fields whenever possible and/or helpful. Base defaults on choices that the majority of users would make. Default settings should make things easier on the standard user, not harder.

Notes:
This list was based on Jakob Nielsen's heuristics as published in Usability Engineering, Jill Gerhardt-Powals' work in Human Computer Interaction (paid link), and Bruce Tognazzini's First Principles of Interaction Design.

Poor Glitch. :( 9th December 2012, R.I.P.

Sad Glitch Girl

A Sad Announcement from Tiny Speck

This is a horrible day. This is a horrible thing to have to say: Glitch is closing. The live game/world will be closed on December 9th at 8pm Pacific time (see when this is in your time zone). The website and forums will remain available until the end of the year, so players can still communicate and find each other. Glitch HQ, the Glitch API and third party applications which rely on the Glitch API will become unavailable at the same time as the website closure.

Automatic refunds for recent purchases will begin immediately. Refunds for older transactions will need to be done manually and will be processed as quickly as possible, from most recent to oldest. For details on your payments, to request a refund, or to see the status of your refund, please visit the refund information page.

Unfortunately, Glitch has not attracted an audience large enough to sustain itself and based on a long period of experimentation and our best estimates, it seems unlikely that it ever would. And, given the prevailing technological trends — the movement towards mobile and especially the continued decline of the Flash platform on which Glitch was built — it was unlikely to do so before its time was up. Glitch was very ambitious and pushed the limits of what could be done in a browser-based game ... and then those limits pushed back.

For many of us at Tiny Speck, the creation of something like Glitch was a long-held dream. There's no better word than "heartbreaking" to describe what it feels like to have to do this. And we know that for many of you who poured your creativity, energy and imagination into Glitch and the community, it will be heartbreaking as well. We are sorry to have let you down.

We are grateful to have had the opportunity to play with you. The game was absolutely preposterous. And yet, we kind of liked it.

I had an amazing amount of fun in Glitch - far, far more than I thought I could have in an MMO without killing.

Everything about Glitch was charming, and almost all of it went beyond charming to brilliant. The only problem is, I couldn't understand how the Glitch model could make them money, and apparently, it couldn't.

I was one of the initial subscribers, and when the game launched, TinySpeck did the amazing thing of allowing initial subscribers to cancel and be refunded - because, they said, they had the money they needed to launch. I was amazed by the generosity they showed there, and even more impressed by how they're handling the refunds now.

Glitch was a brilliant, crazy, beautiful, polished but unsustainable experiment, and the world will be the poorer for its loss. :(

"I savor my chocolate with the zeal of a lion taking down a zebra."

You know those Dove Chocolate commercials? The ones in which the girl takes a bite so small it probably requires her six bites total to eat one tiny square?  She always eats in slow motion.  What are the people in the chocolate business trying to tell us?  Eating in slow-mo somehow means you’re savoring this cocoa luxury more than you would if you ate it in real time?  Um, I disagree.  I savor my chocolate with the zeal of a lion taking down a zebra.  I think that means my love is true love.  It also means I could never be in a chocolate commercial.

XD I'm pretty neutral about chocolate (which is a bit odd considering all the chocolate things I've made / am making / am planning to make), but that description is just wonderfully hilarious.

Garam Masala Dark Chocolate Truffles

Soo... after last week's Nutella Balls of DOOM which were too Nutella-ey for the household of Nugget, Bart and Jenna, I vowed to make dark chocolate balls according to *my* idea of what the ratios should be, and not be swayed by the Internets.

...and so here we have...

SPICY DARK CHOCOLATE BALLS OF COCOA-DUSTED DOOM
4 parts sweetened condensed milk (I used one full 400ml tin)
3 parts dark chocolate (75% cocoa)
Lemon juice (probably 2 tbsp)
Dollop of honey (probably 1 tbsp)
Dollop of butter (again probably 1 tbsp, salted or unsalted doesn't matter)
Garam masala spices, ground (to taste)
Cocoa to roll dem balls in

Again, Rice Cooker Disciples, dump chocolate, butter and honey into a bowl, dump the bowl into the rice cooker, and set it on cook until it pops up (which it will when everything is melted enough). If not, go do your water bath thing. *shudder*

After it's all melted together nicely, whisk a bit until you've slain any remaining lumps of chocolate.

Glop in all the condensed milk and lemon juice, whisk it all together.

By now, it should have a very dough-like consistency. If you don't like the idea of spices in chocolate, or you don't like garam masala spices, or you just want dark chocolate truffles, this is when you can dump the mixture in the fridge and ignore it for about 30 minutes. Or at least, that's how long I ignored it for when I went off to kill things.

If you do like the idea of adding ground spices, whisk them in now. Start with small amounts and taste the mixture. Stop adding / whisking in spices when the spice taste is subtle, but not strong. Don't make it strong, because once the truffleys set and the chocolate makes sweet cocoa-love to the spices and it all sets in one gooey mess... er what? Right. Once the chocolate sets and combines with the spices, the taste of the spices roughly doubles in strength. So, in order to get Spicy DARK chocolate truffles, you need to stop when the taste of the spices is subtle. If you don't stop, you'll end up with SPICY dark chocolate truffles (which I did, because I did not, until this experiment, know about the intricacies of choco-spice seks).

Dump the mixture in the fridge to cool for 1-4 hours (depends on how madly cold your fridge is).

Take the mixture out of the fridge. The texture you're looking for is similar to edible chocolate Plasticine. It should be pliable and cookie-dough-like, but still easy to work with.

Dust your hands with cocoa, and make a little ball of dark and spicy chocolate happiness. Roll the little ball of dark and spicy chocolate happiness in the cocoa.

Put all your little balls of spicy dark chocolate happiness rolled in cocoa in the fridge and leave them for 12-36 hours or so.

Then...

...

...

NOOOOOOOOOOOOOOOOOOOOM!

***

I really really love the texture of the truffles this time round. It's pretty much the perfect texture after it sets, and it's also really easy to work with. Pliable but not melty or messy.

Next week I shall try version 2.0: Less garam masala, with a roasted coffee bean in the centre.

Browse vs. Search: Which Deserves to Go?

While every engineer may find Search easy and efficient, that is not the experience of most people under many conditions, including those encountered by the users of the systems Craig has referenced—Contacts, iOS, and Lion. Learning to type into a box is easy. Memorizing the names of perhaps several hundred apps so you know what to type into the box, not so easy. Unless you are an engineer.
 Graphic designers, left unchecked and unschooled, are likely to aim for maximum visual simplicity at the expense of both learnability and usability. Such interfaces require users to discover new capabilities by clicking around and seeing what happens. Users don't do that. 

So much good stuff in here! The second quote about graphic designers, in particular, sounds like what I spent the first 3+ years when I started working in the digital space arguing against, usually on the losing side.

Nutella & dark chocolate balls of DOOM! Err... Truffles... I mean truffles.

My silly and ridiculously easy chocolate pie and variants made me wonder why I couldn't make things that could pass for truffles. After all, the pie filling prior to my folding in the whipped cream was an awfully rich, dark, ganache like thing, so I thought to myself, 'Why, nugget, can you not thicken that up a bit, roll it in balls, then roll the balls in cocoa, and call them truffles?'

>.> And then, as nuggets are wont to be, I got sidetracked.

'What, my nugget, if you were to use Nutella instead of condensed milk with lemon juice? Would that not turn them into dark hazelnut truffles? OoOoo! A ratio of 2 parts Nutella gooey to 3 parts dark choccy could result in a very truffle-y thing!'

But then, of course, I had to check the Interwebs to see if anyone had the same idea. And behold, they did! Except that their ratios were vastly different from mine.

The little crushed walnut coated balls of Nutella DOOM shown here are a result of that recipe I looked up.

I'll regurgitate the recipe here, for the peeps who can't be bothered to click the link:
400g Nutella
100g Dark Chocolate (75%+ cocoa)
1 tbsp Honey
1 tbsp Ghee (I used butter)

I didn't measure the honey or butter either, just eyeballed as usual. The chocolate was easy, all I had to do was snap the bar in half, and the Nutella came in 400g bottles. XD

If you're a Rice Cooker Disciple, just dump all the above ingredients into a bowl, dump the bowl into the rice cooker, and set it on cook until it pops up (which it will when everything is melted enough).

If not, you'll have to do arcane water bath things that I don't wanna know about. XD

Mix all the melted stuff together, dump in fridge to cool. My truffle mixture took 2-3 hours before it was workable, and most definitely did not become 'doughlike', nor did it 'pull away from the sides easily'.

After making a chocolatey-muddy mess of my palms balling up the first 4, I realised that if I ran my hands under the cold water tap every 2-3 balls, they would be much easier to handle. Yay for temperate countries! I think back home in equatorial climate, I'd have to grope ice cubes instead.

Unfortunately, all three of us find these poor nutty balls too sweet and too Nutella-ey. It's not that they aren't good, it's more that they aren't to our tastes. If you're the type who wishes you could just eat balls of Nutella, dispensing entirely with the middleman of knife, spoon, or some kind of spreadable surface, these are perfect for you.

These shall be going to work with me, where, with their aid, I shall determine which of my colleagues like their Nutella straight. >.>

And next weekend, I'll make them with the ratio *I* like. =P

Forsaken World: Mastery & Resistance

Shankette on Storm server kindly provided me with this info. :) I doubt I'll ever even get to L50 mastery, but I still like to know stuff! Plus now I can stop feeling confused when people wave their L80 mastery around in World Chat.

Mastery levels 1-20, 4 points gained per level, 80 total
Mastery levels 21-40, 6 points gained per level, 114 total
Mastery levels 41-80, 8 points gained per level, 312 total 
Mastery levels 81-100, 10 points gained per level, 190 total

Things to note

  • Points = The point you see on your character sheet.
  • 1 point = 0.1% more outgoing damage from that element / 0.1% less damage taken from mastery from that element.   
  • Maxxing a mastery costs 532D 30g.
  • Maxxing a resistance costs 319D and some g.
  • If we take 1g = US$0.10, then a mastery costs roughly US$5323.00, and a resistance US$3190++.
  • There's some uncertainty as to whether it flips over at 1-19, 20-39, or as I've shown above.
  • For the above calculation, the max points from just mastery training are 696. If we flip over to 1-19 instead, it becomes 702. The actual max from mastery training is reputed to be 700.
  • Please don't kill me if you spend the money needed and what's here isn't quite 100% accurate. O.O
  • Charsheet mastery points can exceed 1000 (e.g. if you have high mastery, add your offhand, your pet, other people's buffs, your soul power... on and on), the actual cap is currently unknown

How I became authentically digital, or: what you need to know about the “Metro” design language « UX Australia 2012

Great talk on Microsoft's 'Metro' styling (though they aren't allowed to call it that anymore).

Particularly interesting is the part about how 'digital natives' - folks who've grown up with the Internet and digital being everywhere don't need skeumorphs. E.g. a 10 year old *now* doesn't need or even understand a phone app with an oldschool 'dial' for numbers. If you give it to a great-granny though, it suddenly works.

What We've Learned About Responsive Design - Newfangled

Responsive design is more work. And more expensive. Maybe you don't need it as much as you think you do.

I've run into the idea that since responsive design is a more efficient mobile solution than creating unique mobile sites or alternate page templates, it is therefore going to be cheaper and simpler than what everyone is expecting. Not true. The fact of the matter is that doing responsive design requires work that just wouldn't be done at all if mobile wasn't a consideration. Now, I'm not advocating that we ignore mobile. But in some cases, I'd argue that mobile is probably higher on the priority list than a serious cost/benefit analysis would merit.

Our audience is primarily comprised of people working in the advertising, marketing and design industry. They're people who influence or make decisions about design and development projects. With our audience in mind, if you were to ask me if mobile should be a higher priority I'd say absolutely. I'd think of all of our hip and stylish visitors and how many of them probably already have an iPhone 5. But you know what? In the last month, just under 10% of our website's visitors accessed it with a mobile device. That includes phones and tablets. If I extend my look to the last six months, the mobile population is exactly the same. The last year? It drops to 8%. So, mobile traffic is growing, but not as rapidly as I would have assumed based upon what I think I know about our audience. With those numbers, should mobile be prioritized as much as it has been (we're about to launch a site redesign that makes heavy use of responsive design techniques — more on that later)? With over 90% of our visitors still coming in through a "desktop" computer? Probably not. But for us, there's an additional consideration of needing to demonstrate our capabilities in this area, which pushes the benefits over the cost. For many other businesses, though, that additional benefit doesn't exist.

Very few of our clients have a "money is no object" attitude when it comes to budgeting for a web project. In fact, for many of them, our costs are a bit of a stretch. But they believe in the value of what we offer and trust us to lead them to the best outcomes. It would be wrong for me to push responsive design on all of them, indiscriminate of what they know about their audience, their actual visitor data, and their actual budget. If their money could be better spent in some other way, then it should be.

Superbly practical and down-to-earth article about responsive design.

Too many creative leads (and writers) jump onto the idea of responsive design like it's the next wonderfully shiny new toy that will display their leetness, without regard for whether or not it's actually suited to what they're producing. It's refreshing to see something so logical and well-thought out about the subject.