Eric Raymond’s Rule of Extensibility advises us to “Design for the future, because it will be here sooner than you think.” And while he was referring to data formats, protocols, and software architecture, the rule applies just as well to the design of the user interface. The first version is only the first version. Future releases are going to sport additional features. Design your navigation so that you can add additional destinations. Lay out your bars and palettes such that you can add additional tools and settings. Design for growth, so your application doesn’t resemble a patchwork quilt a few versions down the road. When you have a well-designed UI, it is generally obvious where and how a new capability should be integrated. It will make sense, because the concept underlying the design makes sense. Document your design as a guide for those that may work on the product after you, as well as for your own reference.
This concludes my series based on Eric Raymond’s unix design rules. To see all posts in the series, visit DesignAday Unix Design Rules.