We have been using ANT design for our enterprise SAAS application.
We have been quite happy with it until today when we discovered to our horrors that for some reason, developers of ANT thought it was wise enough to magically insert easter egg which triggers on Christmas day modifying all the button to have a tooltip showing a "Ho, Ho, Ho" message.
To all my fellow developers, easters eggs can be fun but please be judicious about where and how to add it.
i) If you are adding an easter egg, don't make it default behavior. Make it an opt-in.
ii) Document the behavior. Yes, I can see how surprise Easter eggs can be fun but fun shouldn't come at the cost of reliability and trust. I don't want the libraries I use to pull a surprise on me. Especially in a platform like node.js where I have to rely on so many dependencies.
iii) Our software is becoming more and more complex. With complexity comes bugs and security vulnerabilities. Is adding a piece of additional code which doesn't add any utility really a good decision in such a case?
In the end, please have some empathy for your users. Think through what can be the adverse effects of your changes.
We have been quite happy with it until today when we discovered to our horrors that for some reason, developers of ANT thought it was wise enough to magically insert easter egg which triggers on Christmas day modifying all the button to have a tooltip showing a "Ho, Ho, Ho" message.
To all my fellow developers, easters eggs can be fun but please be judicious about where and how to add it.
i) If you are adding an easter egg, don't make it default behavior. Make it an opt-in. ii) Document the behavior. Yes, I can see how surprise Easter eggs can be fun but fun shouldn't come at the cost of reliability and trust. I don't want the libraries I use to pull a surprise on me. Especially in a platform like node.js where I have to rely on so many dependencies. iii) Our software is becoming more and more complex. With complexity comes bugs and security vulnerabilities. Is adding a piece of additional code which doesn't add any utility really a good decision in such a case?
In the end, please have some empathy for your users. Think through what can be the adverse effects of your changes.