The thing [our clients] bring to the table is this extensive knowledge of their domain. The thing that we [software designers] bring to the table is the clarity that we think with. I don’t think our primary thing we bring to the table is our technical competence, although we need that. We need to be good enough to know how to do the implementation. But the thing that we bring that’s really critical to the process is we think sharply. We are able to abstract and we are able to define things crisply.
—
Another one from Eric Evans, but good stuff is good stuff. This time from Putting the model to work.
Another one from Eric Evans, but good stuff is good stuff. This time from Putting the model to work.
Matt
on 19 Feb 10Not sure about this quote.
I’ve been a consultant/web/software designer for nearly 10 years, and during that time, I’ve had great clients and awful clients, and everything in between.
I’m constantly thinking about how to improve the client/designer relationship, but I don’t think this quote helps since, if you ask me, it’s totally patronizing.
Why don’t clients have clarity of thought? Why don’t clients think sharply?
Good clients have sharp clear thoughts about their domain/industry. Hopefully, I have sharp clear thoughts about web/software design and development.
I think that starting with the assumption that we consultants/designers have clearer, sharper thoughts than our clients is a recipe for a bad relationship.
Adam Miller
on 19 Feb 10Matt,
I don’t think that Eric is suggesting that our clients don’t have the “clarity of thought” that we do. I do think that programmers by our very nature have developed the ability to see problems in different ways than most.
I think that often times we come to a new domain with little knowledge or pre-conceived notions on how things work and that empty slate combined with our technical expertise allows us to bring new and potentially better solutions to old problems.
Sometimes you are too close to a problem to see the solution. In that light I don’t think that we are any different than another individual outside of that domain, but paired with our expertise to build solutions is what makes us valuable.
RS
on 19 Feb 10It’s not meant as an insult to clients at all. The quote starts by suggesting that clients are experts in their domain.
But think about this. If the client already knew how to represent their business in terms of clearly separated concepts, rules, relationships and logic, then they wouldn’t need a software designer. They could just dictate the design to an implementor and there wouldn’t be any need for modeling. In the quote, Evans is referring to the kind of precise and rigorous thinking that can abstract a tangle of expert knowledge into a set of unambiguous words, functions and relationships.
Marko
on 20 Feb 10I think the skill software designers should bring to the table is the ability for listening, understanding and learning – on steroids.
We have to grasp the client domain well enough in only a few months time when we run the project, to be able to analyze it and implement a solution that works. A domain the client has spend a lifetime learning, fine-tuning and perfecting.
It’s the ultimate empathy, we need to get what it would be like to be you.
That is why practices like “Eat you own dog-food” or the 37signals practice to “write software for ourselves” work so well.
It also illustrates the paradox in software development and design; Why is it rare to find empathy in a analytical person?
This discussion is closed.