'. '


From APIDesign

Jump to: navigation, search

For a while I have been thinking about various types of design. Do they have anything in common or are they really different? Certain adventures I have been through indicate that there is just one MetaDesign which is then applied to different target audiences, different technologies, etc. Other events I've been to assure me that there are hard to overcome differences. I want this page to hold thoughts that will reveal the truth: Is there MetaDesign or not?

For the API architects out there I recommend http://architypes.net/ it is really entertaining read. Not always mappable to our field, but interesting. Antonio also pointed out that Gang of Four book is heavily inspired by work of Christopher Alexander.

For those who doubt there can be any kind of MetaDesign at all I'd like to share following experience. Once I saw a slide with guidelines of good UI design written by our HIE lead. I have stolen them and since then I am using them to describe rules of good API design. The match is perfect. So yes, user interface and API design has to have something in common.

Blame the Architect!

One common problem shared among various types of architects is the legalized irresponsibility for the result. A few times I have dealt with architects who design something and when that something is passed to production, they don't feel responsible for physical issues. If the design looks nice on paper, who cares whether it can also be realized!?

The problem is that all users of design usually care more about the reality than the original plans. It is my belief (also expressed many times in TheAPIBook) that architects' work should be evaluated a few years after their proposal has started to be used. The goal of almost any project is to solve real-world issues, so an architect's work should only be considered complete when the issues are actually solved. Solved not only for the opening day, but forever (or at least a few years later).


The above picture illustrates an example of a failed design. I've been at the planning meeting for the redesign of this square and saw its architect and the plans. Everything looked so nice on paper! But the reality is not that perfect. The amount of garbage around the containers makes the whole area look really bad.

One may blame the people putting the garbage there (and sure they deserve to be blamed), however this is still the fault of the architect. It is his responsibility for placing a garbage container in the middle of such nice square! Either he should not have put it there at all, or he should have organized courses to teach people how to properly use his own creation. None of that happened. I am sure the architect thought his work finished at the opening ceremony. Shame on him!

This is so similar to API design! Many people I've met care about the design only until the opening ceremony. Whether it is ready for evolution, whether it is used properly by its clueless users does not interest them. That is bad, architects are responsible for the long term use of their designs. Architects are also supposed to be conservative and expect their designs will be used with complete cluelessness without learning much about the proper use.

Dear architects, don't put trashcans in middle of your parks!

To Be Continued

I've been visiting an architect who I asked to design furniture for my house, so stay tuned! I will have fresh observations to share soon...


If you have any comments on this topic, don't be afraid to share them.


Personal tools