I follow a simple rule of thumb - the more abstractions you introduce the more complex it gets to maintain
Life is easier if you can get away with lesser abstractions.
Reply on news.ycombinator.com