Programmer as tester, project manager and usability expert?

During the last couple of years programmers have been doing more and more testing thanks to the TDD-“paradigm”, and we have faced problems that testers have been facing for many years, e.g. “What are the boundary values?”, “Do I cover all special cases?” and so on. Programmers have become “30% testers”.

Agile and Scrum has also made programmers increasingly involved in the planning of projects, and this has increased their competence in handling project management task that was previously on the table of the project manager. Programmers have become “30% project managers”.

In this process, the competence of those programmers have increased and broadened, and this is something the industry has gained from as a whole.

In my mind, the next step is towards the users of the system. Programmers need to achieve core usability expertise in order to develop even better programs, make better initial guesses when needed, and to better understand the usability experts input to the process. Programmers need to become “30% usability experts”!

Ok, so 100+30+30+30=190%?

Yes, that is, at the very least, how much more such a programmer is worth compared to the old “fire and forget” programmers.

One way of starting to achieve that knowledge is to start applying something I call “user-guide-driven development” (UGDD), something which I will talk more about on this blog in some later posts.


2 Comments (+add yours?)

  1. uxarchitecture
    Aug 22, 2008 @ 22:40:06

    As with performance and accessibility, usability is so much easier to achieve by design than by testing. I enjoy working with software engineers who have that 30%; it enables us to devote our joint energies to achieving design excellence rather than debating its cost and value.

    How do you feel about the inverse argument that usability experts should be 30% programmers?


  2. danielbrolund
    Aug 22, 2008 @ 22:59:45

    I agree. My experience is that overlapping competence always make things run much more smoothly. I also think that this competence should be on the principles level rather than the practices level, e.g. PMs that know how to write an if-statement can make more damage than good, but when they understand the principles for making good code it is very valuable.

    In general, I would guess that you can achieve about 30% of any adjacent competence without breaking your back in the process.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: