Monthly Archives: November 2013

What is a Good Test Case?

I am a strong believer in automated tests. They can take longer to build the first time, but you can run them over and over again with no manual effort after that. In this modern age I don’t think I need to make the case for the importance of tests. But what makes a test […]

Technologies for Nonprofits

I am going to write up a few posts on ways in which Magento (an open source web store written in PHP) can be used as a site to support a not-for-profit site – such as a school in a developing country. I will base these posts on the free Magento Community Edition. This series […]

10 Commandments of Egoless Programming

I was looking for a reference to egoless programming and found the “The Ten Commandments of Egoless Programming”. This comes from Jerry Weinberg’s book The Psychology of Computer Programming, written in 1971. Understand and accept that you will make mistakes. The point is to find them early, before they make it into production. Fortunately, except […]

Answer Questions versus Writing Manuals – Why not do both!

If someone asks you how a product you are developing works, should you answer? They could ask via email, Jira issue, or in person. Is it better to shun such people, write product documentation, and tell people to go Read The Full Manual (and stop bothering you!) My preference is a combination of both. I […]

Documentation Sets

My last technical documentation post on remembering the audience reminded me of the importance of designing the documentation set for the product you are working on. Knowing the audience is a critical part of writing a manual. I like the approach of having a short introduction section where all manuals follow the same structure. Standard […]

Support a Charity with your Magento Store

So you have a Magento web store that you use to sell goods, but you would like to also support a charity or other not-for-profit?  Why not allow you customers to donate to the cause from your web store? When selecting a cause or causes to support, think about whether the demographics for your store […]

Technical Documentation Writing

There are whole books written about technical documentation writing. Here are my key take aways. Make sure you know who the audience is before you write a single word. You are writing documentation for others, not yourself.  Put yourself in their shoes. Use terminology the reader will understand. Use short simple sentences. Long sentences get […]


I repeat myself a lot. I tend to say the same thing in multiple places. I even tend to say the same thing to the same people. But it’s usually because I really believe it. (Hopefully it is not a sign of short term memory loss!) Recently I have found myself repeating a phrase and […]

HTTP Request Processing in Magento

I was trying to understand how all the various Magento internal developer concepts fit together, from the perspective of responding to a HTTP request to the web server.  I wrote this up to make sure I understood the concepts. Let me know if I got anything wrong! I am sharing in case useful to anyone […]

The Layers of Magento Site Design

In my work before eBay, when we designed a public web site it was all about menu structures, navigation flows, moving on to wire frames, design look-and-feel, and in our case design the information model behind the site (as we built sites driven from our text database product). In reading up on Magento recently one […]