Remember Me
forgot your password?

Why Patterns Suck?

I was really surprised when I heared some people saying “Patterns suck”, I wanted to know why some people hate these precious guidelines who save us from reinventing the wheel and lets us use it.

 

Fortunately after just few days I had to work with some confident people, known to be pattern-lovers. Having a lot of technical knowledge, they remembered the names of patterns and writers on finger tips. People, you can speak technobabble with for not just hours but for days. In the first place I admired them and found myself among knowledgeable people.

 

Then I found something strange, besides all their knowledge they had very few success stories and their managememt was not satisfied with their problem solving skills.

 

I had started observing the causes of their failure. Mean while I had to design an architecture for a coming enterprise project. I started scaffolding by enhancing and optimizing my legacy libraries and framework with my team. I asked these people to review my approach to let my approach become foolproof.

 

Geeks love technicalities so I got a prompt response and they started highlighting the weaknesses, I was very glad as I got a chance to improve. But unexpectedly most of the issues identified are as follows:

 

Geeks: Aren’t you using NHibernate?

 

Me: Nope, I preferred these liberaries because these are recommended by technology vendor and I found them performent for this kind of data driven applications. Another reason is our management don't want to use NHibernate because we haven't developed enough experties to use it in an enterprise project that's why we had faces some serious issues in the last project using NHibernate.

 

Geek: What? Do you know where NHibernate came from, it's a port of Hibernate, being used in the most powerful language Java. It has nothing to compete with Microsoft.

 

Me: Yes, I agree that Jave and it's platforms are a lot more mature but every language or technology has some of its own specifications and advantages. Our framework and liberaries are optimized with the objects provided with .Net. Our wrapper classes exploiting some new features provide in the current version of .Net.

 

Don't use ADO objects

 

These objects are mess.

 

Me: Why?

 

Geeks: Because these are not open-sourced

 

Me: I admire the benefits of open source but these object are rich, free, built-in, tested and performing well in enterprise applications. I do not very often use them but I found them very useful in such kind of applications

 

Geeks: You incorrectly applied this pattern; let me show you the documentation.

 

Me: This pattern like other patterns have different applications, I am following this approach because it performs well in this scenario. This flexibility is also allowed by some experts.

 

Geek: No, patterns should be followed as is. They are not to be changed for performance or whatever. And remember enterprise applications, built on great technologies like EJB, looks graceful even if they are not enough performant.

 

Geek: Increase your number of layers like we have did in that application. You have not decoupled enough.

 

Me: Yes previously I do have the same number of layers but I found it as an overkill so I modified this framework for medium-sized performance-hungry applications.

 

Geek: And why did you coupled these two major tiers, this is an unacceptable violation of N-Tier Architecture

 

Me: No, these are still two different layers, but I am keeping them in a single project during development as most of the developers are working on both layers. They still can be deployed on different servers.

 

Geek: I’m still not satisfied, it is not recommended by our gurus and we follow them because we know they are the best.

 

Me: They might have recommended it for some different type of project and this approach may be suitable in that particular scenario.

 

Geek: We found their practices the best in all type and size of projects, whatever, it’s not that simple you think it is, you have to add a lot more.

… and finally I got the answer to my question “why people hate patterns?”

 

 

Ahmed Siddiqui

Seasoned Microsoft Certified Professional having more than six years of experience in analysis, design, and development of enterprise applications; utilizing true world class software development patterns & practices.

Rate this Article: 5 / 5 stars - 7 vote(s)
Print Email Re-Publish

Add new Comment



Captcha

  • Latest Programming Articles
  • More from Ahmed Siddiqui

B2C Web Portals

By: Digisha Modi | 08/01/2010
Business-to-consumer B2C portal Development is build to improve at present business process by adding automated processes between trading for e.g. Its improve the communication between vendor and final product manufacturer but at the same time it could serve a good tool between manufacturer and distributors it improve level of communication, real time reporting and at end improve supply chain. B2C Ecommerce Development India website development could become an edge between you and your competito

B2B Portal Development

By: Digisha Modi | 08/01/2010
A b2b portal or a business to business portal is a dedicated online place which provides a platform to the buyers and sellers to conduct business activities. It acts as a base for customers, suppliers, dealers and wholesalers to get business information and an avenue for online transactions. Such a portal is a new age marvel and an absolute necessity for any global business.

Ajax Development Service Offer More Resistance

By: Arun Kumar | 08/01/2010
The web development companies use various innovative technologies like AJAX development services (Asynchronous JavaScript and XML) and ASP.net which are the latest in the business to provide their customers with the best web designs.

Venkat Subramaniam Teaches How to Handle Pointy Haired Bosses and Be a Pragmatic Programmer

By: Shaguf Mohtisham | 08/01/2010
GIDS is the gold standard for India's software developer ecosystem for gaining exposure to and evaluating new projects, tools, services, platforms,languages, software and standards.

Three Ways to Reset SA Password!

By: y | 08/01/2010
Three Ways to Reset SA Password

iPhone Application : Revolutionizing the Market

By: webmaster | 07/01/2010
Apple iPhone is one of the latest technological device which has hit the market to meet the thirst of its customers for the latest gadgets. Its transformation into something that resembles a miniature, personal computer has given birth to a whole new side market. Its applications range from the helpful to entertainment.

iPhone outstrips Google's Android

By: webmaster | 07/01/2010
After a quick start, the Android-powered Google-phone has begun to fall behind the iPhone in a critical measure of smartphone success. After matching the iPhone nearly hit for hit in its first five months on the market, Google’s Android has fallen behind the pace set by Apple’s

Web Portal Development

By: Digisha Modi | 07/01/2010
Web portals and Content Management Systems help improve on customer satisfaction and customer loyalty. By providing valuable information and services to customers on line, there is a much greater potential for increased sales and growth. Of course it is critical to maintain other forms of customer service, but in today's technology environment, more people are going to the internet as their first point of contact with businesses of all sizes.

Why Patterns Suck?

By: Ahmed Siddiqui | 16/06/2008 | Programming
This article is about the extremism in implementing Software Design Patterns and the inability to distinguish Pattern and its application.

Submit Your Articles Free: Signup
Article Categories




Use of this web site constitutes acceptance of the Terms Of Use and Privacy Policy | User published content is licensed under a Creative Commons License.
Copyright © 2005-2008 Free Articles by ArticlesBase.com, All rights reserved. (0.13, 6, w3)