Monday, May 19, 2014

Anti-pattern for January - Shiny Toy

The anti-pattern for January is Shiny Toy. http://deviq.com/shiny-toy
 
 
The elaboration for the anti-pattern is: Much better than last weeks’ model, So what if it doesn’t work with anything else?
 
The description for the anti-pattern is: The latest, coolest or technology available. With its boundless potential, time is taken to apply the technology, but none is taken to ensure it is tested and proven to be reliable and compatible.
 
The further elaboration from the web site is read as the following:
 
The Shiny Toy anti-pattern refers to the practice of always thinking today's problems can all be solved by the latest bleeding-edge tool, technique, or library. While it's true, the software industry is constantly trying to improve and evolve, new approaches almost always bring new headaches along with any advances they make in functionality or productivity. Depending on your application and organization's tolerance for risk, it may make sense to wait to integrate new libraries into your application until they've been proven in production.
 
The quote on the calendar is:
 
The future is already here, it’s just not evenly distributed
 
 --WILLIAM GIBSON
 
 
In my decades of writing software, I have been bitten many times by this kind of “Shiny toy”. From far, they look so attempting. But when you are in it, you could find you are in the situation you do not want to be. This kind of mistake is especially easy to be made in the Goggle search time as we are now.  About a month ago, when I was writing my windows store app, I need a way to default the enter key to a click of a button. This is not provided by XAML without doing event handling. In the process of doing that, I found a class on the web. I was so excited and without spending much time I put the class into my project. Guess what it works in most of case, but when the button is disabled, the logic still invoke the logic behind the button when I push the enter key. Fortunately, I did not publish the code to the store yet. To fix that problem it took me a week or so…
From the time to time, when I took the code form Microsoft SDK samples, and put them in my project, to my surprise, there are bugs in the code… these bugs delayed the publishing on my app for a month or so…
 
Lesson learned here is: verify, verify and verify, when you found something making excited.

No comments:

Post a Comment