{"id":798,"date":"2010-08-04T05:25:23","date_gmt":"2010-08-04T13:25:23","guid":{"rendered":"http:\/\/blog.rongeorge.com\/?p=798"},"modified":"2013-11-08T10:04:10","modified_gmt":"2013-11-08T15:04:10","slug":"why-do-you-hate-design-patterns-so-much","status":"publish","type":"post","link":"https:\/\/rongeorge.com\/blog\/why-do-you-hate-design-patterns-so-much\/","title":{"rendered":"(Reader question) Why do you dislike design patterns so much?"},"content":{"rendered":"<p>I&#8217;ve been so busy at Bloomberg I haven&#8217;t had the chance to write anything new, even though I have a few things cooking already. I got this email from a reader and asked her permission to post. Enjoy.<\/p>\n<div id=\"guest\">\n<div id=\"emailheader\">Jocelyn writes<\/div>\n<p>Hello,<br \/>\nI&#8217;ve been reading your articles about OCGM and found them quite\u00a0interesting, thanks for sharing your thoughts.\u00a0I was intrigued by your statement, saying that you were<\/p>\n<blockquote><p>&#8220;not a fan of\u00a0UI DESIGN\u00a0PATTERNS&#8221;.<\/p><\/blockquote>\n<p>&#8220;When designers could and should be thinking outside of the typical\u00a0experience, they rely on a \u201ccrutch\u201d called a UI pattern.&#8221;\u00a0Say you are to implement a login feature to your application\/site,\u00a0couldn&#8217;t you rely, at least partially, on what&#8217;s already been done ?\u00a0And so on for search, breadcrumbs etc.<\/p>\n<blockquote><p>&#8220;Those\u00a0patterns\u00a0were developed by City Engineers because there were\u00a0only so many different ways you can put 3 buildings on a city block.&#8221;<\/p><\/blockquote>\n<p>Are there many more possible solutions in HCI? Isn&#8217;t one of those\u00a0solutions better than the other (id &#8220;the pattern for this problem&#8221;) ?<\/p>\n<p>In my opinions design\u00a0patterns\u00a0are like having an HCI expert team at\u00a0your side (don&#8217;t remember where I read that). You are not compelled to\u00a0use them everytime, but it&#8217;s nice having them for some tasks.<\/p>\n<p>I&#8217;m genuinely interested in hearing your opinion on the matter. I hope\u00a0my bad English doesn&#8217;t sound angry, I assure you that&#8217;s not the\u00a0feeling.<\/p>\n<p>Regards,<\/p>\n<p>Jocelyn<\/p>\n<\/p>\n<div id=\"guest2\">\n<div id=\"emailheader\">Ron writes&#8230;<\/div>\n<p>The problem with\u00a0patterns\u00a0are they do not exercise the mind or further the experience. Having a book of\u00a0patterns\u00a0at your side is very unlike having an HCI Expert on your team, because those are just cookie cutter solutions. HCI is not math. There is not one simple solution to every problem. My main point is to reach further than what has been seen so far. Just because its the most popular, or most successful at the time, does not mean its correct.<\/p>\n<p>The primary difference between math and HCI is that HCI contains people, and people change in expectations, considerations, and needs, among other things.<\/p>\n<p>Design\u00a0patterns\u00a0will never substitute a person that has been trained in the field and is willing to challenge the norm to find something unique and innovative. Design\u00a0patterns\u00a0are the antithesis of innovation.<\/p>\n<p>If it&#8217;s ok with you, I would like to post this on my blog with my answer. Ive been meaning to write something new. \ud83d\ude42<\/p><\/div>\n<div id=\"emailheader\">Jocelyn writes&#8230;<\/div>\n<blockquote><p>&#8220;The problem with patterns are they do not exercise the mind or further the experience.&#8221;<\/p><\/blockquote>\n<p>This is a very valid concern.<\/p>\n<blockquote><p>&#8220;Just because its the most popular, or most successful at the time, does not mean its correct.&#8221;<\/p><\/blockquote>\n<p>So very true (isn&#8217;t it even called &#8220;the Smashing Magazine Effect&#8221;?).<\/p>\n<p>Yet I cannot help but notice that conventions people are used to, physiological stability of the user, recurrence of problems (again, a login form) make for a quite repeteable set of constraints, thus theremust be some repeatable solutions, be it patterns or another artifact.<\/p>\n<p>You say that patterns are numbing creativity. After reading your answer, I agree, but partially : pattern overuse (eg relying on others work to solve every problem) is nefarious. But it doesn&#8217;t mean you shouldn&#8217;t have a look at whats currently the best practice ; you cannot push the enveloppe on every component on a given project. Or maybe sometimes you just have to get it done for yesterday. Or you need an overview of available solutions before diving in. Or you need to share knowledge. In those case, patterns are well suited (imho).<\/p>\n<p>After a bit of pondering on your message, I&#8217;ll keep that: there&#8217;s a place and time to use patterns, it&#8217;s not a solution ex machina. But it doesn&#8217;t mean knowledge reuse is never appropriate. What&#8217;s your opinion? Is there any form of reuse that fits you better, or do you take them all for dumbing practices?<\/p>\n<p>In any case, thank you very much for taking the time to answer, it is much appreciated. It&#8217;s totally ok to post the whole thing as you wish. Last of all and on a totally unrelated matter : would you recommend any resource pertaining to touch\/multi-touch interfaces (I&#8217;m talking rugged tablet PC rather than iPad)? Thanks in advance!<\/p>\n<p>Regards,<br \/>\nJocelyn.<\/p><\/div>\n<p>Thanks so much for writing in Jocelyn!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been so busy at Bloomberg I haven&#8217;t had the chance to write anything new, even though I have a few things cooking already. I got this email from a reader and asked her permission to post. Enjoy. Jocelyn writes Hello, I&#8217;ve been reading your articles about OCGM and found them quite\u00a0interesting, thanks for sharing [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-798","post","type-post","status-publish","format-standard","hentry","category-design"],"_links":{"self":[{"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/posts\/798","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/comments?post=798"}],"version-history":[{"count":1,"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/posts\/798\/revisions"}],"predecessor-version":[{"id":850,"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/posts\/798\/revisions\/850"}],"wp:attachment":[{"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/media?parent=798"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/categories?post=798"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rongeorge.com\/blog\/wp-json\/wp\/v2\/tags?post=798"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}