I'm Don Murray, and this is my personal website. I'm a software engineer in Calgary, AB and have been registered as a professional engineer with APEGGA since 1997. My background has primarily involved server-side applications in Oil & Gas, pipeline SCADA, and equity trading. I currently work at Shaw Communications in Video Systems Engineering.
This site is self-hosted in our basement, because every good home needs a basement DMZ.
In May 2010 I took a three day Certified Scrum Master course led by Chet Hendrickson and Ron Jeffries. I highly recommend them for agile training. Having completed the course, I'm now a CSM.
I re-certified for my
Red Hat Certified Engineer (RHCE)
on August 31, 2007. My certificate number is
805007524928180.
You may view my RHCE certificate here.
My previous
RHCE certificate was obtained in October 2004, and it is visible here.
I've been doing software for a half century and Agile for fifteen years. Think of this as a message from your future. Scrum is not what you think it is. It is likely not even what I think it is. It is endlessly complex and endlessly simple. The closer you get to getting it, the more you know and the less you know.
Scrum Development list, 2011-May-18
Replacing an on-site customer with some use cases is about as effective as replacing a hug from your Mom with a friendly note.
XP list, 2003-Aug-19
But you don't become great by trying to be great. You become great by wanting to do something, and then doing it so hard that you become great in the process.
To accept our own fallibility is to embrace ‘the permanent possibility of someone having a better idea.’
I promise not to exclude from consideration any idea based on its source, but to consider ideas across schools and heritages in order to find the ones that best suit the current situation.
When you're doing it well it feels a little plodding, you're not racing ahead like you might do on your own. But what happens is that it never slows down.
Agile Methods interview, Sept 26, 2009
Scrum is a wrapper, a ritual if you will, for planning, doing, and improving. That's all it sets out to be. What you plan, do, and improve is not Scrum's concern.
Scrum Development list, Mar 21, 2010
Any program feature without an automated test simply doesn't exist.... Customers write functional tests so that their confidence in the operation of the program can become part of the program, too.
Extreme Programming Explained, p57
Write what the Product Owner wants, what the developers need, and nothing else.
Scrum Development list, Jan 26, 2010
There are only two hard things in Computer Science: cache invalidation and naming things.
The greatest challenge to any thinker is stating the problem in a way that will allow a solution.
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
There are two ways of constructing a software design. One is to make it so simple that there are obviously no deficiencies; the other is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.
The Emperor's Old Clothes
CACM February 1981
Analysis and design have been summarized in the phrase do the right thing (analysis), and do the thing right (design).
Applying UML and Patterns
Programming is a Dark Art, and it will always be. The programmer is fighting against the two most destructive forces in the universe: entropy and human stupidity. They're not things you can always overcome with a "methodology" or on a schedule.
Anyone who cannot cope with mathematics is not fully human. At best he is a tolerable subhuman who has learned to wear shoes, bathe, and not make messes in the house.
Time Enough for Love