Copy&Paste factory pattern
Posted on May 24, 2008 - Filed Under RubyOnRails
When You take project over, after it being very long time in development, You can find very funny code snippets. Then You understand why project was soooo long in development. It is related rather with developer’s (not so)high skills ;)
One example (and there is more pieces, even better qualified as entry for The Daily WTF). It seems that is perfect example of design pattern known as Copy&Paste factory:
<a href="#">
<% if session[:lang] && session[:lang] == "fr" %><img src="/images/LanguageToolFlags/flag-fr.gif" alt="fr_flag"/><% end -%>
<% if session[:lang] && session[:lang] == "en" %><img src="/images/LanguageToolFlags/flag-gb.gif" alt="gb_flag"/><% end -%>
<% if session[:lang] && session[:lang] == "es" %><img src="/images/LanguageToolFlags/flag-es.gif" alt="es_flag" /><% end -%>
<% if session[:lang] && session[:lang] == "nl" %><img src="/images/LanguageToolFlags/flag-nl.gif" alt="nl_flag" /><% end -%>
<% if session[:lang] && session[:lang] == "it" %><img src="/images/LanguageToolFlags/flag-it.gif" alt="it_flag" /><% end -%>
<% if session[:lang] && session[:lang] == "ru" %><img src="/images/LanguageToolFlags/flag-ru.gif" alt="ru_flag" /><% end -%>
<% if session[:lang] && session[:lang] == "de" %><img src="/images/LanguageToolFlags/flag-de.gif" alt="de_flag" /><% end -%>
<%=_("Languages") %></a>
Do I have to say, that it was written as a single line :) ?
Now You know why customer had to find someone to finish application (read – rewrite)…
Popularity: 5% [?]
Hits for this post: 2926
Similar Posts
- $DEBUG variable in Ruby
- Programming languages or holy war
- Maintenance pains
- Interacting with Facebook without user
- Understanding what characters are escaped by AR
Comments
5 Responses to “Copy&Paste factory pattern”
Leave a Reply



Good qualified workaholic can kill project in one morning ;) Or produce many WTF per hour.
What is answer? own helper?
@Sebastian
I would start with something like:
<% if session[:lang] -%> <img src="/images/LanguageToolFlags/flag-<%= session[:lang]%>.gif" alt="<%= session[:lang]%>_flag"/> <% else -%> <%= _("Language") %> <% end -%>[...] wklej” w projektach. Abyście nie czuli się samotni polecam lekturę wpisu “Copy & Paste factory pattern” z blogu [...]
[...] Copy&Paste factory pattern [...]