This Week in d3: 2
I missed a week… but last week, Brian wrote about one of the Principles of d3: simplicty.
“As a principle of d3, we want our client interaction to be simpler. So we want to talk about problems with our clients. We want these to be the concrete, explicit elements we dialogue about.” (read more)
Today, I asked on the Dialogue-Driven Development mailing list, “What are some elements in group interaction (clients, colleagues, users) that prevent healthy Dialogue from taking place?”
“The biggest element that I’ve seen that harms dialogue is an emotionalattachment to some idea or decision… ...When people are emotionally attached to one particular point of view, they have a difficult time making objective, rational decisions.”—David Goodlad
“The biggest problem that we have is semi-literate users thinking too soon about implementation details about the solution, rather than considering the true nature of the problem instead.”—James Adam
This resulted in me thinking up a new term for this horrible infection… implementitus.
“One of the biggest problems I’m continuously having to overcome is physical proximity. I’m a firm believer in kicking off a project with a face-to-face meeting, but when working remotely, and not having an on-site customer to easily communicate with your skills has a communicator must be greatly increased.”—Josh Knowles
“Fortune-telling the user’s reaction.
“The user wouldn’t like this.”
“This user wants this button there.”
“That would confuse the user.”
Of course, user opinion should be critically important, but in my experience it’s often used as a veto that doesn’t have to be explained just because someone doesn’t like an idea. I’ve done this, myself.”
—Brasten Sager
I’m really excited to get the interact with other people who are facing the same types of obstacles that we are. Being a successful developer requires a lot of discipline and it’s our goal to enhance our communication skills… so that we can reach shared meaning with our colleagues, clients, and users.
If developer to client, developer to developer, or developer to user interaction is important to you… come talk with us in the Dialogue-Driven Development project.
Teams Need Healthy Collaboration
A few weeks ago, I was explaining some of the concepts behind Dialogue-Driven Development to Michael Buffington and when I said that we were working to create patterns of Dialogue... his immediate thoughts were on code. I don’t remember the exactly how he worded it.. but he basically thought we were working on a parsing tool for grabbing requirements out of emails, messages, etc. I quickly explained that d3 had nothing to do with actual code and was merely a practice that we as developers and consultants are using to think about our interaction with clients, users, and amongst ourselves.
Just last night, I was chatting with a friend of mine about d3… (names changed to protect the guilty)
context: Harry works in a development team1 of about ten people and Paul is one of his “team”mates.
Harry: i guess it prevents discussion domination
me: yeah, that happens as it is sometimes
Harry: and ensures equal contribution
Harry: paul does that
and he's not very polite about it either
and will often raise his voice and speak over you
which is crazy
kindergarten stuff
me: hah
Harry: need a talking stick!
This happens all too often amongst ourselves. While we’re striving to improve our client interaction… we often overlook our own internal struggles to achieve healthy collaboration. It takes discipline by every individual in a collaborative environment to really think together.
So, how does d3 address this? Well, it’s our goal that through mindful dialogue, we can cultivate healthier collaboration in all of our professional (and personal) relationships.
I would also like to point out a few common misconceptions about d3.
- d3 is not a methodology… nor a replacement for Scrum or XP. d3 is a thoughtful practice that focuses on the collaboration between a group of individuals, whether they be clients, developers, managers, or users.
- d3 is not a Silver Bullet, but it can be used as effective ammunition.
- d3 is not something you learn in a weekend, but you might be able to find a good book on Dialogue and have a new perspective on how you communicate with others.
Dialogue-Driven Development is about being in the conversation as it is happening… and really listening.
The next time that you’re getting ready to interact with your teammates, ask yourself:
- Am I contributing something meaningful?
- Am I listening to others well?
- Is everybody contributing an equal share of information?
If you’re quiet, try to speak up more. If you talk too much, be mindful of how much you may dominate a conversation. If you’re not participating at all.. why are you there?
1 You’ll be happy to know that Harry also gave his two-weeks notice yesterday.
RubyURL hits 10k
Just happened to notice that RubyURL passed the 10k mark recnetly. :-)
“10044 happy rubyurls to date”
I think it’s time for a rewrite and an API. :-)
Rails applciation caching with memcache
Courtenay has posted a step by step tutorial on using memcache within your Rails application. He not only discusses caching… but also how to “precache the data so that each page load is blazing fast without sacrificing user experience.“
Read more about it on the caboo.se blog.
< court3nay> robbyonrails: hey, i wrote that line just for you
< court3nay> robbyonrails: the one you quoted. i was actually thinking, "hmm, i bet robby will like this quote"
I’m touched… and it’s great to hear that people are thinking more about these problems. :-)
The Circular Perspective of BDD
A few weeks ago, Brian Ford was in my office and we were discussing BDD and how we can make this process even easier for our clients to understand… much less our own internal staff. With all concepts, each person has their own idea about what it is, why it is important, regardless of whether or not it’s accurate. This can cause some people to not find a good need for some practices.
During our discussion, Brian grabbed one of my whiteboard markers and drew diagrams to explain how he saw BDD vary from TDD. He has since posted an article on his blog titled, what’s it worth to me, and discusses his circular view of Behavior-Driven Developent and the importance of using Dialogue to evolve shared meaning.
Portland Public Transporation and the Zen of Office Management
One of the coolest parts about my job (aside working with cool people everyday)... is getting a say in where we spend some of our money as a company. One of the things that Allison and I decided that we really wanted to do as a company was encourage sustainable business and growth in our local community. Everyone here loves Portland, Oregon.
This screenshot was taken after we took headshots for our transportation passes.
Our awesome Office Manager, Nicole Fritz has started a blog, which she plans to, ”...not only to let people know what goes on behind the scenes at PA, but to give other startups hints and tips about cool admin things that I have learned along the way (from taxes to how to get the right people “on the bus”).”
Nicole has posted an article, which introduces people to some of the great tax credits that small businesses like PLANET ARGON can take advantage of… in particular how we are now taking advantage of a tax credit for public transportation, bike storage, carpool programs, and more.
If you’re a customer of ours or are running a small business… you might consider subscribing to her feed.