Many people receive mail at their front door that they do not want to receive. Commercial mail, mail from companies they may perhaps made enquiries with long ago, mail addressed to people who used to live at the address. Mail that should be blocked – like email ending up in a spam or junk folder. Except that in the case of paper based mail, we do not want to have that junk folder in our house, making it still our problem to dispose of.
In The Netherlands, a national organisation has been set up with which citizens can register to have a spam filter set up against regular mail, delivered by a postman or in this case – not to be delivered by the post man.
It is called Postfilter and hosts a website on which anyone can register their address and specify which types of mail they do not want to receive.
From an architect’s point of view, it is interesting to think about how this system could be organised. Would the postman be expected to check the Postfilter register just prior to putting the mail in the box (similar to a spam filter in email systems)?
Or would the postal service and package delivery companies be expected somewhere in their process to filter out any postal items in violation of the registered post-filters?
In line with the mantra “Dumb pipes and smart endpoints” we do not want to burden the man in the middle with applying complex logic. It would be very inefficient (obviously, if first the mail items are produced, handed over to the postal services company, perhaps transported even to distribution centers or even worse, transferred to the mail man for on site delivery. The smart endpoints in this case are the companies that want to sent the mail items to potential customers and other unsuspecting consumers. In The Netherlands, companies are obliged to interact with Postfilter.nl to regularly. As stated in the Code of Conduct:
which translates to: prior to sending mail to known or unknown customers any company or organisation is obliged to check the register of deceased persons and the register of Postfilter with people who have registered to not receive such mail. There are rules regarding misconduct, complaints and sanctions.
In a draft architecture diagram, this could be visualized as follows:
Clearly this is the superior solution – to everyone involved. Reducing time spent, raw materials wasted, weight transported (and CO2 produced). Martin Fowler is right, once again.
Website for the Dutch Post Filter – https://postfilter.nl/
Medium article by Nathan Peck: Microservice Principles: Smart Endpoints and Dumb Pipes – https://medium.com/@nathankpeck/microservice-principles-smart-endpoints-and-dumb-pipes-5691d410700f