June 29, 2004

Agile Mindset

Agile is a software development movement that aims to cut fat from the industry's trademark bulky timescales and bloated specifications. Its been devised by 'developers' or 'programmers' and as such has so far been pretty thin on procedural detail for the user experience designers. In fact, some of the specific methodologies within the Agile family make absolutely no mention of 'experience design' at all. Most advocate lines of code being written from the very beginning of a project. Almost all state that you work through a list of requirements until you have the minimum amount of functionality to release a product. However, few go into any detail about how you get to the point of having requirements in the first place.

So, this is where a project team used to working from the very start of a project (determining what it is that needs building) can go wrong. Trying to lay lines of code before you have some idea about why or for what purpose is like taking a journey to a foreign city you've never been to before, without looking at a map first. You may hit the right continent if you have some vague sense of direction, however, all roads do not lead to Rome.

But there's more to Agile than laying lines of code as soon as possible. Its a mindset which can rid the shackles of rigid 'design first' processes that pride themselves on quality but have done more than their fair share of creating the software industry's bad reputation by delivering late or not to specification or not within budget (or a combination of any and all of these). The Agile Manifesto is a set of fundamental tenets to remind Aglie practitioners to "Get On With It". And really, thats what it boils down to, regardless of which role you fulfill in the team.

In my recent experience of working on a project that was very much at 'seed' stage when we began trying to work out which of the many manifestations it could take on, I found that an Agile mindset was an effective mechanism for ensuring that rediculously tight deadlines would be met. Being Agile means that the perfectionist that lays within most experience designers has to be persuaded that it's OK to get it right the second or even third time. Taking a 'sketch approach' to design where the first versions are a best guess based on the knowledge available at that time, abates deliberation for fear of getting it wrong. Watefall processes are frought with fear of the bad specification. Once coded, a design is set in stone, not for revision. Technical folk usually get very cranky when you sheepishly sidle up to them with "You know that section here... the one that took you weeks to code, tweak and get just right... well... um... we er, need to um, change it... y'know, just a little bit..." [ducks for cover]. However, when the project team all agree up front that everything is subject to change, it loosens up that feeling of foreboding which has a side-effect of making people check thrice before committing to a specification. Naturally, changing things takes time, but when things take less time to design in the first place, you have more time to iterate until it is right.

A coding practice known as Refactoring can liberate us all from what Alan Cooper refers to as scar tissue, a phenomenon where code that has to be changed leaves a 'scar' that makes the foundations of the program unsound. It can be argued that working in an object oriented fashion should enable components of a system to be rebuilt with no impact on the remaining body of code, therefore should be the method of choice when following an Agile development process.

The Agile shift in thinking about experience design is not just about being iterative. Its fundamentally about designing in an object-oriented fashion too. Components need to be designed individually in order that they can be built individually in a staggered project timeline. Some components will be a few degrees more defined than others at any one time and this is hard to reconcile at first. Its uncomfortable thinking that you have to design a mid section before a start section etc. Some might say you can't possibly do it and expect to get it right. And there's the crux of the mindset right there. You don't expect to get it right the first time. You expect to get it right the second or third time around, when you have had time to design the start section.

Agile works, but the idea of laying lines of code from the outset of a project, does not seem like a great idea to me, for reasons stated earlier. I think this is where a production process can learn from User Centred Design's 'understand' or 'discovery' phase to flesh out business requirements, user requirements and the competitive marketplace. I would still advocate that the body of work that is done in this period, is managed using an Agile methodology like SCRUM though, as it still works to 'gee the team along' even when they're not laying lines of code. The rhythm set by being iterative, combined with an disparaging attitude to excessive documentation and ecouraging face to face dialogue, is a very effective framework to ensure maximum efficiency within the team.

It does take a significant 'opening of the mind' to allow ourselves to really work in this way, when everything we've known to date says we're going to get burned if we do. But it's inevitable that you get burned the first time you try new things. We must persevere, because unless the software and web industry embraces a total shift toward delivering on time, to spec and on budget, clients will continue to lose faith in its ability to get itself together. This will affect its monetary value in very real terms. If the tech sector's stock price collapses, as the survivors the dotcom crash know only too well, it will really, really hurt.

Posted by Ant at 10:58 PM | Comments (0) | TrackBack

June 16, 2004

'Executive' User Centred Design resource

This UCD Executive Primer is a high level overview of some fundamental User Centred Design principles. It gives varying levels of detail on each (very) high level area of the approach and features articles on useful things like return on investment.

Seems like an ideal site for arming the user experience designer for selling this approach to tight-fisted and sceptical sponsors. It also just appears to outline answers to most of the arguments I've had over the past three years or so working within a large company.

If you can't get your point accross, point your boss to this!

Posted by Ant at 01:22 PM | Comments (2) | TrackBack

June 15, 2004

Solving Creative Block

Great, practical article at UIWEB on getting around creative block.

Burnout means you've pushed your creative energy beyond the point of recovery. Like a well of water, creative energy replenishes itself slowly over time. A person who has pushed their creative well too hard for too long will, like it's watery counterpart, one day find it empty.

Posted by Ant at 11:04 PM | Comments (0) | TrackBack

June 05, 2004

Gett'n Zen

Why is it that someone special can inspire you to reach for your full potential as a human, rather than just as a worker-bee when alone? I met someone whos done little but rock my world for the last five months and the stability, or perhaps safety, that was comforting prior to our meeting, is on its head.

In as many months as years in the UK, I've decided to uproot myself from an established life here; all the very dear friends; the great job and future in it; the family; the cheap spacious flat near a park; the vibrant city that has treated me so well... Why? Why leap into the virtually unknown - to the USA, knowing there may not be many others to identify with? And all to be with someone known to me for less than five months?

We went to our fourth philosophy class Wednesday, and on Tuesday I started a course of yoga. Never done yoga, or philosophy before, but have been philosophical and tried to live a 'balanced' life albeit unmotivated to expand those tendencies in any academic sense. We do a lot of breathing in yoga and plenty of being still in philosophy. Both are supposed to bring you back to the essential elements of being. "We are given all we need in this life when we're born" so, as long as breathing's going on I won't need all my friends, steady job, house etc right?

I've done all this before, so it's really not as daunting as It could be. The difference is that this time the reason for moving countries is about chasing something, rather than running from it. That feels a lot more empowering. Seattle's an interesting city, with mountains and ocean nearby. There's loads of my kind of work with interesting companies. Change is good. Growth is better.

Growing is strange because it seems to come in spurts. I think if you graphed it, it would look something like this.
Graphing Growth
Inspiration seems to come in many forms. Sometimes its an experience, something you see, or sometimes its a person. The result of inspiration feels like an increase in knowledge that is disproportionate to the amount of experience normally required to accrue it.

My inspiration for moving is the same as that for taking up philosophy and yoga classes. I reckon that's worth following if not attempting to keep a hold of.

Posted by Ant at 01:58 PM | Comments (4) | TrackBack

June 04, 2004

Site Mapping Tool

This looks useful...

Posted by Ant at 09:17 AM | Comments (0) | TrackBack

June 01, 2004

What's in a blog?

I've had blog paralysis lately, not feeling like I know what to write about. Nothing very interesting happening professionally, or at least nothing I can write about... just yet. Besides which, the beginning 'understanding' phases of a project are high on making plans and asking questions. Not a great deal of interesting insight to write about.

Anyway, it got me thinking about what this blog is for anyway... So, I had a look around at blogs and you've got all manner of them out there. Work only blogs, personal only blogs, blogs that are just links, blogs that are just photos, blogs that are diaries, blogs that are written to four times a day, blogs that are written to less than four times a year. So what's this blog supposed to be about? I'm asking myself. What's missing from my blog experience that has me constipated? Why don't I feel like writing?

So far I've focussed my blogging on work stuff, feeling like if this thing ever gets an audience, I don't think they'd be interested in my little old life. I also have a problem with writing about myself in a self-congratulatory, or what I feel like is an egotistical way. Rarely do my entries contain my interpretations of events, but more factual stuff, links and references that I'd find interesting to look back on. So what's the ultimate goal? Why did I start blogging? Was it to try and assert some kind of territory in the 'blogsphere'? Am I a slave to a trend? Was I trying to open a channel with the new-media boffin in me? Was this designed to try and promote myself as a user experience designer? What? This conflict is has been present from the start of this blog's life and is evident in the title.

On a fundamental level the question really is: Am I writing for me or others?

The very fact that a weblog is all connected to other people and publicly accessible makes it hard explain away as an entirely private endeavour. But it is for personal use. As such it is a list of bookmarks that I can use to support my appalling memory. But its also for public use, or should I say publicity. The work insights I try to put in The Vanity Experiment are supposed to prove that I'm thinking, pushing myself to learn new things. Expressing the things I learn is a way to capture this process, but also to illustrate that I know them. Should a potential employer look on this space, maybe they'll look more favourably on me for having some idea about me or at least what I profess to know.

So there's little of me in this space. Perhaps that's what's missing from the experience? Life isn't all about work, and my life's been too full of other good things recently to have time to write about my profession. So, starting with this entry, The Vanity Experiment is going to have a little more of me in it because life's too short to be so damn professional.

Hello world!

Posted by Ant at 09:52 PM | Comments (3) | TrackBack