<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MacWhiz Blog &#187; Technology Horror Stories</title>
	<atom:link href="http://macwhiz.com/blog/category/technology-horror-stories/feed/" rel="self" type="application/rss+xml" />
	<link>http://macwhiz.com/blog</link>
	<description>Macs, customer service, and other musings</description>
	<lastBuildDate>Thu, 12 Aug 2010 01:24:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>No, really, JIRA pisses me off.</title>
		<link>http://macwhiz.com/blog/2010/04/18/no-really-jira-pisses-me-off/</link>
		<comments>http://macwhiz.com/blog/2010/04/18/no-really-jira-pisses-me-off/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 17:56:08 +0000</pubDate>
		<dc:creator>Rob Levandowski</dc:creator>
				<category><![CDATA[Doing It Wrong]]></category>
		<category><![CDATA[Technology Horror Stories]]></category>
		<category><![CDATA[atlassian]]></category>
		<category><![CDATA[jira]]></category>

		<guid isPermaLink="false">http://macwhiz.com/blog/?p=68</guid>
		<description><![CDATA[I love JIRA, I really do, so long as I never have to do any administration to it. I&#8217;ve got a JIRA instance set up as a household to-do system.  Today, I tried installing JIRA 4.1 as a test instance, upgrading from version 4.0.  It turns out I won&#8217;t be making that upgrade for real [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fmacwhiz.com%2Fblog%2F2010%2F04%2F18%2Fno-really-jira-pisses-me-off%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fmacwhiz.com%2Fblog%2F2010%2F04%2F18%2Fno-really-jira-pisses-me-off%2F&amp;source=macwhiz&amp;style=normal&amp;service=ow.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>I love <a href="http://www.atlassian.com/software/jira/">JIRA</a>, I really do, so long as I never have to do any administration to it.</p>
<p>I&#8217;ve got a JIRA instance set up as a household to-do system.  Today, I tried installing JIRA 4.1 as a test instance, upgrading from version 4.0.  It turns out I won&#8217;t be making that upgrade for real any time soon, as 4.1 breaks many of the plugins I need for my JIRA workflow.  If I upgraded, I&#8217;d cripple my setup beyond usability.</p>
<p>Unfortunately, Atlassian has chosen to leave many obvious and necessary workflow actions out of JIRA, instead relying upon third-party plugins to provide them.  This wouldn&#8217;t be a problem if Atlassian didn&#8217;t change their plugin API more often than Tiger Woods picks up new sexual partners.</p>
<p><span id="more-68"></span>Okay, so I figured I&#8217;d at least upgrade to version 4.0.2; I&#8217;ve been putting that off for too long.  It&#8217;s anything but an easy process, especially when you&#8217;re running the EAR/WAR version instead of their &#8220;standalone&#8221; that comes with its own Tomcat instance.  They don&#8217;t have a standalone build for FreeBSD, so I don&#8217;t really have a choice.</p>
<p>Although the process is really convoluted and something only a Java wonk could love, it wouldn&#8217;t be so bad except that JIRA&#8217;s plugin system is so horrible.  JIRA plugins are generally Java .jar files.  There are two kinds of JIRA plugin now, Version 1 and Version 2.  It&#8217;s not obvious from looking at a plugin what kind it is.  You have to either go to Atlassian&#8217;s plugin repository and find it there, and the page will tell you what version the plugin is&#8230; or you have to extract the plugin and go digging in XML files trying to find a setting that will exist only if it&#8217;s version 2.</p>
<p>Depending on whether it&#8217;s version 1 or version 2, the plugin has to go in one of two widely different directories.  If it&#8217;s version 1, it goes in a directory that will need to be wiped out when you upgrade JIRA.</p>
<p>What&#8217;s so bad about that?  It&#8217;s also the directory that houses dozens of JIRA&#8217;s own .jar files, and there&#8217;s no way to tell which ones are part of JIRA and which ones are plugins.  In fact, there&#8217;s no way to tell what plugins you&#8217;ve installed short of doing a file-by-file comparison with a clean JIRA installation of the same version.</p>
<p>Better document that JIRA installation <em>really well</em> as you do it&#8230;!</p>
<p>It gets better! Some Version 2 plugins won&#8217;t work from their new, plugins-only directory anyway! You won&#8217;t find this out until they fail to work, and then you dig through the log file—which Atlassian so thoughtfully creates <em>in whatever working directory you happened to be when you started Tomcat</em>—and see a message that you have to copy the file to the old directory!</p>
<p>Of course, if you merely <em>copy</em> the file, as directed by the error message, you&#8217;ll get another warning that there are two copies installed so you can&#8217;t use either&#8230;</p>
<p>Did I mention that every time you add or remove a plugin, you have to restart Tomcat?  If you don&#8217;t have some really rockin&#8217; hardware running your JIRA instance, that&#8217;ll bring you a minute or two of downtime.  It&#8217;s annoying with three users in one household; it&#8217;d be a bloody outrage if I were supporting a large company with this.</p>
<p>What&#8217;s particularly galling is that Atlassian&#8217;s other major product, <a href="http://www.atlassian.com/software/confluence/">Confluence</a>, does plugins so well.  You can search the Confluence plugin repository from within your Confluence instance&#8217;s administration screens.  You can see which plugins you&#8217;ve installed, and if they&#8217;re out of date Confluence will tell you so and offer you a link to download and install the latest version.  There&#8217;s even a web-upload link to install .jar files from outside of the Atlassian repository.  Atlassian <em>knows</em> how to do this right.  They just haven&#8217;t bothered with JIRA.</p>
<p>So, I do my upgrade.  This entails backing up the current JIRA instance to XML, creating a new database for the new JIRA, installing the new JIRA instance, copying over a number of settings files, tweaking my Tomcat settings, copying over plugins I&#8217;d backed up previously, restarting a few times to get the database loaded and the plugins in place, etc. etc. &#8230;</p>
<p>&#8230;and then the bloody thing doesn&#8217;t show any of my workflow actions, because I&#8217;m one plugin short.  It doesn&#8217;t even clearly tell me &#8220;hey, you have workflow actions that don&#8217;t seem to be defined&#8221; anyplace useful.  It just doesn&#8217;t show me any workflow actions. When I go into my workflow editor, the only clue is that some workflow actions look like</p>
<blockquote>
<pre><strong>Type</strong>: class
<strong>Class</strong>: com.googlecode.jsu.workflow.function.UpdateIssueCustomFieldPostFunction
<strong>Arguments</strong>:
field.value = Yes
field.name = customfield_10040</pre>
</blockquote>
<p>instead of</p>
<blockquote>
<pre>The <strong>Needs Parts</strong> of the issue will be set to <strong>Yes</strong>.</pre>
</blockquote>
<p>Notice how there&#8217;s also no hint whatsoever as to <em>which</em> plugin you previously had that&#8217;s now AWOL; you&#8217;re left to figure that out on your own.</p>
<p>After finally figuring out which plugin was missing—the one that implements the ability to change the value of a field other than the default ones provided with a generic JIRA install—installing it, starting, finding no improvement, finding the log error saying it&#8217;s in the wrong place, moving it, restarting&#8230; I finally have my workflow actions back, and I&#8217;m an hour behind on my other tasks for the day.</p>
<p>Then there&#8217;s the security patch. The boys at Atlassian had a <a href="http://blogs.atlassian.com/news/2010/04/oh_man_what_a_day_an_update_on_our_security_breach.html">rather embarrassing security breach</a> recently. It highlighted a number of XSS attacks against JIRA.  None of the code currently available for download includes the fixes, so you have to apply the patch.  For EAR/WAR installs like mine, this involves:</p>
<ol>
<li>
<ol>
<li>Extracting the patch files on top of the source for JIRA</li>
<li>Rebuilding the WAR file</li>
<li>Stopping Tomcat</li>
<li>Copying the WAR file into place</li>
<li>Backing up your existing Version 1 plugins, which Atlassian doesn&#8217;t bother to mention in the instructions, so hopefully you understand this consequence of what they <em>do</em> tell you</li>
<li>Deleting the Tomcat work directory, because otherwise Tomcat may cache the old .jar files</li>
<li>Creating a new Tomcat work directory by hand, which Atlassian doesn&#8217;t mention; if you don&#8217;t, Tomcat will appear to start but won&#8217;t actually run anything&#8230;</li>
<li>Deleting the old jira directory, because otherwise Tomcat may not unpack the new .jar files, which isn&#8217;t mentioned in the patch directions but <em>is</em> mentioned in a troubleshooting section under new installs for when you upgrade and find upon restart that you haven&#8217;t, in fact, successfully upgraded</li>
<li>Starting Tomcat</li>
<li>Waiting for Tomcat to start JIRA</li>
<li>Stopping Tomcat</li>
<li>Reinstalling the Version 1 plugins</li>
<li>Starting Tomcat</li>
</ol>
</li>
</ol>
<p>That&#8217;s one of the more convoluted &#8220;security patch&#8221; procedures I&#8217;ve ever had to deal with in over 15 years as a professional UNIX systems administrator.</p>
<p>If you&#8217;re thinking of buying JIRA for your business: If you can&#8217;t afford to hire a Java guru to be your full-time JIRA guy, don&#8217;t bother.  You will need someone who understands Java and databases and Apache Tomcat and your choice of operating system, and they&#8217;ll have their hands full.</p>
]]></content:encoded>
			<wfw:commentRss>http://macwhiz.com/blog/2010/04/18/no-really-jira-pisses-me-off/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Shiny Object Development Syndrome</title>
		<link>http://macwhiz.com/blog/2010/04/12/shiny-object-development-syndrome/</link>
		<comments>http://macwhiz.com/blog/2010/04/12/shiny-object-development-syndrome/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 19:45:03 +0000</pubDate>
		<dc:creator>Rob Levandowski</dc:creator>
				<category><![CDATA[Doing It Wrong]]></category>
		<category><![CDATA[Technology Horror Stories]]></category>
		<category><![CDATA[atlassian]]></category>
		<category><![CDATA[confluence]]></category>
		<category><![CDATA[jira]]></category>

		<guid isPermaLink="false">http://macwhiz.com/blog/?p=61</guid>
		<description><![CDATA[SODS is characterized by a tendency to concentrate on developing new features that are pleasing and attractive to the developer, with a complete disregard to the usefulness, usability, or basic function of the product itself. A good example of a company full of SODS is Atlassian.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fmacwhiz.com%2Fblog%2F2010%2F04%2F12%2Fshiny-object-development-syndrome%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fmacwhiz.com%2Fblog%2F2010%2F04%2F12%2Fshiny-object-development-syndrome%2F&amp;source=macwhiz&amp;style=normal&amp;service=ow.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>[Edit: added one of the biggest examples i forgot while drafting this: the JIRA dashboard.]</p>
<p>I&#8217;m not particularly fond of Linux. I&#8217;ve used it, and it&#8217;s good for many things, but as a professional system administrator I prefer Solaris, or FreeBSD, or even Mac OS X (as a UNIX).  Why?  A great many of the Linux enthusiasts I&#8217;ve had to deal with have suffered from what I call Shiny Object Development Syndrome (SODS).</p>
<p>SODS is characterized by a tendency to concentrate on developing new features that are pleasing and attractive to the developer, with a complete disregard to the usefulness, usability, or basic function of the product itself. It is particularly prevalent amongst open-source developers, particularly those who work on obscure Linux distributions.</p>
<p>Developers who suffer from SODS are often heard replying to legitimate user complaints with some variation on &#8220;you can fix it yourself if it&#8217;s important to you, the source code is available.&#8221;</p>
<p>Sometimes SODS infects an entire organization.  When this happens to a company with paying clients, symptoms include: refusal to fix longstanding bugs; failure to supply updates to widely-deployed, stable versions when longstanding bugs are finally addressed; issuing updates that break existing functionality such as extensions, plug-ins, or settings.</p>
<p>Terminal company-wide SODS often reveals itself as intractable bugs pile up because the new shiny features beloved of the developers and the marketing department depend upon so much spaghetti code that it becomes impossible to fix all the problems without starting over from scratch.  By this stage, the company usually begins to hemorrhage users as the cost of migrating to another platform becomes cheaper than dealing with the SODS-ridden status quo.</p>
<p>A good example of a company full of SODS is <a href="http://www.atlassian.com">Atlassian</a>.</p>
<p><span id="more-61"></span>They make a number of interesting utilities, such as the Confluence wiki and the JIRA issue-tracking system.  These programs have a lot of neat features.  Because they are commercial programs, big companies feel comfortable buying them—they&#8217;re not some faceless open source developer.  While Atlassian does offer some nice &#8220;starter licenses&#8221; at $10 for 10 users, a corporate-sized deployment involves a substantial chunk of money, especially for a small business.</p>
<p>Unfortunately, that doesn&#8217;t mean that you get better support than you would for an open-source product. In fact, your support experience will be full of SODS.</p>
<p>Confluence has been around a while. It&#8217;s a great place to put all your team&#8217;s technical documentation. But now comes the latest version of the software, and Atlassian has stopped supporting two of the most widely used &#8220;themes&#8221; for Confluence.  (Themes are web-page layouts.)  If you upgrade, your existing themes may become unusable.  The replacement themes aren&#8217;t a drop-in replacement, so you&#8217;ll need to re-engineer your documents to get back to where you were.  Apparently the old code was unsupportable.</p>
<p>That isn&#8217;t exactly customer focused.</p>
<p>At least Confluence is reasonably easy to upgrade. Shut down the existing instance, install the new one, alter one or two settings files to change where stuff is pointed, and you&#8217;re up and running.  JIRA, on the other hand&#8230;</p>
<p>Upgrading JIRA is a system-administrator job preservation program. Even a minor upgrade involves dumping the entire JIRA database to an XML file, finding someplace to save it, and reinstalling JIRA from scratch.  Atlassian recommends you attach it to a new database instance, while you&#8217;re at it.  Once you reconfigure everything, from scratch, you can then reload all your data from XML.  Obviously, this isn&#8217;t a quick process.</p>
<p>Hopefully, you don&#8217;t have a very large database of issues in JIRA.  Otherwise, you&#8217;re going to have a very large XML file that will take a very long time to process, if your system doesn&#8217;t choke on it outright.</p>
<p>Don&#8217;t forget that you&#8217;ll need enough disk space for <em>three</em> copies of your data: two database instances, plus the XML.  And that&#8217;s presuming you don&#8217;t want to back up your data regularly—to XML.</p>
<p>Did I mention that both programs are written in Java?  Hopefully, your platform has a fast and stable Java Virtual Machine.  (In my experience, such a thing doesn&#8217;t truly exist.)</p>
<p>Now that you&#8217;ve upgraded JIRA, you get to find out which of your vital JIRA plugins are broken. You see, JIRA doesn&#8217;t implement a lot of obvious and useful features. It leaves them for third-party developers to implement via plug-in Java code. Unfortunately, Atlassian hasn&#8217;t quite figured out what the plug-in API should  look like, as of version 4.1 of JIRA, so there&#8217;s a good chance that any given JIRA upgrade will change the API and break your plugins.  Broken plugins means broken workflow, which means JIRA is broken until you can find a fix.</p>
<p>Don&#8217;t contact Atlassian for that fix, though; they don&#8217;t support any plugin they didn&#8217;t write, and they don&#8217;t even support all of the ones they <em>did</em> write.</p>
<p>But what if you do find a legitimate bug in JIRA?  Something that affects a lot of users, is highly visible, is an obvious bug in the program, and is clearly something that your expensive annual support contract should cover?  For instance: in JIRA 4.0, if you use Mozilla Firefox, your JIRA Dashboard will fail after an hour of inactivity due to malformed security tokens. You&#8217;ll have to manually reload the Dashboard in your browser to continue.</p>
<p>Well, even with hundreds of users, many from Fortune 500 companies, clamoring for a fix on Atlassian&#8217;s forums, it took months for a fix to be identified.  When it was, the fix was part of JIRA 4.1&#8230; which also includes sweeping changes to the user interface and, of course, API changes that break plug-ins.  So, upgrading to JIRA 4.1 to get the Firefox fix is a non-starter for a lot of customers.</p>
<p>Atlassian released notes on how to patch JIRA 4.0&#8230; which involved downloading Java code and splicing it into the product.  If you got adventurous and tried this, you wound up with a fully malfunctioning Dashboard.  Atlassian&#8217;s response to date has been, to paraphrase, &#8220;Oops, our bad. Upgrade.&#8221;</p>
<p>Tone-deaf doesn&#8217;t begin to describe it.</p>
<p>A more classic example of SODS: JIRA 4.0 introduced an OpenSocial-based &#8220;dashboard&#8221; that uses JavaScript &#8220;gadgets&#8221; to display the user&#8217;s main interface with the software. Previous versions rendered the Dashboard in HTML created on the server, and it was reasonably speedy.  Now, the OpenSocial dashboard <em>looks</em> pretty. It offers nerdnip like the ability to use widgets published by Google.</p>
<p>However, each gadget on your dashboard is a separate JavaScript that gets rendered by the client. The more gadgets on your dashboard, the slower it gets. If your browser has a poor JavaScript implementation (I&#8217;m looking at you, Internet Explorer), your dashboard will be dog-slow.  And you&#8217;re really in trouble if you are on a slow computer, like a PowerPC G4, or an Atom-based netbook, or an iPad, or&#8230;  Talk about a twofer; you get all the limitations of a web app together with all the slowness of your thin client.  To Atlassian, it&#8217;s apparently reasonable to require a 3GHz dual Core2 processor to get reasonable performance out of a web-based issue tracker client.</p>
<p>It&#8217;s not just JIRA, though. Atlassian&#8217;s online documentation is stored in a Confluence wiki instance. I tried reading the JIRA upgrade notes on my iPad. I couldn&#8217;t get past the first page, because Confluence refused to let me scroll.  It seems that the new themes in Confluence 3.2 don&#8217;t play nice with Mobile Safari.  Having a paid support contract, I contacted Atlassian customer service.  The response?  Here&#8217;s a list of supported platforms, if the iPad gets popular we might consider adding it.</p>
<p>Well, Safari is listed as a supported browser. I&#8217;m using Safari, albeit the mobile version.  And is there really any doubt that the iPhone OS is a popular operating system at this point?  Is it really unlikely that iPad users might want to use it to read their internal documentation?</p>
<p>It seems to me that, if you&#8217;re going to write a Web-based application like a wiki, the very first thing you should do is make sure you&#8217;re following the HTML standards to a T.  Safari is perhaps the most standards-compliant browser on the planet right now. If your application generates pages that Safari can&#8217;t render, you&#8217;re very likely doing something wrong.</p>
<p>Atlassian&#8217;s technical-support JIRA instance is full of enraged customers. Colleagues of mine that depend on Atlassian software are regretting their decision after seeing what Atlassian&#8217;s support is like.</p>
<p>In the meantime, Atlassian rolls out release after release with shiny new features, some of which seem to have little use other than to look cool.  This is Shiny Object Development Syndrome, the Internet equivalent of fiddling while Rome burns.</p>
<p>I think Atlassian should call a moratorium on the shiny-object features, and spend a few development cycles working their way through the existing defect list.  Start listening to customers and addressing their needs, even if they aren&#8217;t sexy&#8230; and even if they don&#8217;t line up with Atlassian&#8217;s vision of where the product is heading.  Spend a few releases fixing things so that the APIs don&#8217;t have to change with every minor version.  Identify the top 10 most popular plug-ins and make them unnecessary: integrate the functionality, buying out the plug-in developer if you have to.</p>
<p>(For programs like Confluence and JIRA, the plug-in libraries are almost like defect catalogues: Here is a list of all the things your customers find lacking in your software, to the extent that many of them have written their own code to overcome the problem.  Why not see this for what it is and let it inform development, instead of apparently ignoring plug-ins and breaking them without remorse?)</p>
<p>I would love to be able to recommend Confluence and JIRA.  At work and at home, they&#8217;ve generally made my life easier.</p>
<p>But then it&#8217;s time to upgrade, or something breaks, and I remember that Atlassian has an advanced case of SODS.</p>
<p>I hope that they get some help before it turns terminal.</p>
<p>For now, I&#8217;d have to recommend that readers consider alternatives to Atlassian products. The total cost of ownership is too dear.</p>
]]></content:encoded>
			<wfw:commentRss>http://macwhiz.com/blog/2010/04/12/shiny-object-development-syndrome/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>11/09/2002 Archived Entry: &#8220;You can turbo compliments, too.&#8221;</title>
		<link>http://macwhiz.com/blog/2009/01/11/11092002-archived-entry-you-can-turbo-compliments-too/</link>
		<comments>http://macwhiz.com/blog/2009/01/11/11092002-archived-entry-you-can-turbo-compliments-too/#comments</comments>
		<pubDate>Sun, 11 Jan 2009 21:47:31 +0000</pubDate>
		<dc:creator>Rob Levandowski</dc:creator>
				<category><![CDATA[Consumer Advocacy]]></category>
		<category><![CDATA[From The Archives]]></category>
		<category><![CDATA[Technology Horror Stories]]></category>

		<guid isPermaLink="false">http://macwhiz.com/blog/?p=8</guid>
		<description><![CDATA[From November 9, 2002: Sending a compliment to a CEO results in kind words—and a pleasant, tangible expression of thanks.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fmacwhiz.com%2Fblog%2F2009%2F01%2F11%2F11092002-archived-entry-you-can-turbo-compliments-too%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fmacwhiz.com%2Fblog%2F2009%2F01%2F11%2F11092002-archived-entry-you-can-turbo-compliments-too%2F&amp;source=macwhiz&amp;style=normal&amp;service=ow.ly" height="61" width="50" /><br />
			</a>
		</div>
<p style="background-color:#FCF6CF">This blog entry was originally published on November 9, 2002.</p>
<p align="JUSTIFY">While <a href="http://www.macwhiz.com/articles/art-of-turboing.html">The Art of Turboing</a> is all about how to complain with extreme prejudice, sometimes the same technique is useful when you have compliments or constructive criticism. Sometimes, it&#8217;s even profitable.</p>
<p align="JUSTIFY">Read on to find out what happened when I shared some thoughts with the CEO of <a href="http://www.bjswholesale.com/">BJ&#8217;s Wholesale Club</a>.<span id="more-8"></span></p>
<p align="JUSTIFY">The background: I shop at BJ&#8217;s Wholesale a lot. They&#8217;re nearby, and their prices are quite good. Recently they installed self-checkout machines. After using them, I decided to share some feedback with BJ&#8217;s, not as a complaint <em>per se</em>, but as constructive criticism. I want them to succeed. Otherwise, I won&#8217;t be able to get so many cheap DVDs!</p>
<p align="JUSTIFY">Here&#8217;s the letter I sent to Michael Wedge, the President and CEO of BJ&#8217;s:</p>
<p align="JUSTIFY"> </p>
<blockquote><p>Dear Mr. Wedge,</p>
<p align="JUSTIFY">My family has had a charter membership to BJ&#8217;s Wholesale Club since it first came to Connecticut. As a long-time enthusiastic customer, I wanted to give you some feedback about the club. I&#8217;m writing directly to you because your web site doesn&#8217;t seem to have any way for customers to send feedback to your company.</p>
<p align="JUSTIFY">Overall, I enjoy BJ&#8217;s and I think it&#8217;s a good value for the money.  As with any warehouse club, the shopper needs to be aware of market prices and accept a relatively limited selection. That&#8217;s expected, and BJ&#8217;s meets or exceeds my expectations there.</p>
<p align="JUSTIFY">The main reason I&#8217;m writing is to tell you about my recent experience with your new self-checkout system.</p>
<p align="JUSTIFY">I&#8217;ve recently decided to stop shopping at KMart altogether, in large part due to their increasing reliance on self-checkout. While I like the concept of self-checkout, KMart&#8217;s implementation seems designed to enrage the customer. Not only have I never completed a &#8220;smooth&#8221; transaction at KMart&#8217;s self-checkout, but KMart seems to have cut back on its human checkout staff. This means that I either have to accept their poor self-checkout, or wait in very long lines for the few remaining cashiers.</p>
<p align="JUSTIFY">On my trip to BJs today, I saw your self-checkout was now in operation. I was glad to see that you still had a reasonable number of human cashiers.  There are definitely times that I would want to use a human cashier, even though I&#8217;m a technophile.</p>
<p align="JUSTIFY">The user interface is a bit confusing. I noticed that there are large signs next to each self checkout to direct the customer. I majored in cognitive psychology in college, with a concentration on human-computer interaction. One of the design dictums I remember clearly is that systems which need extra instruction manuals are not well designed. The need for a sign shows that the system isn&#8217;t obvious to use.</p>
<p align="JUSTIFY">In general, the checkout process went smoothly. You&#8217;ve mostly overcome one of the fatal flaws in the KMart design, which is the weight-check system. At KMart, if you fail to put each item into a bag, the system locks up until you can hunt down a human to help you. This makes purchasing large items very difficult. Your system seems to have a better design in this regard&#8230; except that it apparently cannot deal with whole chickens. The system refused to accept a two-pack of whole chickens as a valid purchase.</p>
<p align="JUSTIFY">The process for accepting coupons is much better than KMart&#8217;s system. Your system had no difficulty accepting my coupons. KMart&#8217;s system used a coupon scanner similar to a dollar-bill acceptor, which had great difficulty accepting coupons.  However, the receipt printout for the coupons is a bit confusing.</p>
<p align="JUSTIFY">The credit-card acceptance procedure needs some work. There is a period of time where the credit-card swipe terminal appears to have been reset to the &#8220;swipe your card&#8221; state without any change on the main display. This is confusing, and made me wonder if the credit card transaction had timed out. The display implied that I might need to swipe my card again. I did not, because I know that other similar systems can do a double-debit of an account in such situations. A few seconds later, the system confirmed the credit card transaction.</p>
<p align="JUSTIFY">The final flaw in the system is that the signature pad is awkwardly placed, very small, and the signature pen is attached with an absurdly short cord.  This makes the signature procedure something of a hassle.</p>
<p align="JUSTIFY">I also noticed a much longer than usual wait to leave the store, as the door checker was being far more thorough than usual.  I hope that wait won&#8217;t be a new trend.</p>
<p align="JUSTIFY">My experience with self-checkout systems in general has been that companies make them too paranoid to function effectively.  As a result, they wind up angering customers because they make the checkout process longer and more difficult than it has to be.  I hope that BJs will refine its self-checkout systems to prevent this syndrome.  I also hope that the self-checkouts will be used to supplement human checkers rather than to replace them.</p>
<p align="JUSTIFY">Thanks for your attention.</p>
</blockquote>
<p align="JUSTIFY">I sent this off with no expectations other than the hope that it would prove useful to the company&#8230; and that they might take some of my suggestions to heart.</p>
<p align="JUSTIFY">I was very pleasantly surprised when I received the following letter today, a few short days after I sent my letter:</p>
<p align="JUSTIFY"> </p>
<blockquote><p>Dear Mr. Levandowski,</p>
<p align="JUSTIFY">Thank you for taking the time to give excellent feedback on self-checkout. Your comments have been passed on to the appropriate Operations and Information Systems folks.</p>
<p align="JUSTIFY">Enclosed please find a $50 BJ&#8217;s Gift Card for your time.</p>
<p align="JUSTIFY">Sincerely,<br />
/s/<br />
Mike Wedge<br />
President and CEO</p></blockquote>
<p align="JUSTIFY">This shows that Mr. Wedge &#8220;gets it,&#8221; as compared to the many ways that <a href="http://www.macwhiz.com/articles/compusa.html">CompUSA did not</a>. The response exceeded my expectations in many ways:</p>
<ul>
<li>The letter was personal, on Mr. Wedge&#8217;s stationary, and hand-signed by Mr. Wedge, indicating that he personally took the time to review the letter and draft a response.</li>
<li>The gift card showed that not only was the feedback appreciated, but that it had a tangible value to the company.</li>
<li>The quick response shows that letters from customers get prompt attention, and prompt replies. That&#8217;s a basic part of &#8220;customer focused&#8221; that most companies fail to understand.</li>
</ul>
<p> </p>
<p align="JUSTIFY">I was already a happy customer of BJ&#8217;s Wholesale Club. Mr. Wedge&#8217;s excellent response to my letter made me a willing evangelist for the company. An exercise for any corporate bean-counters reading this: Will BJ&#8217;s Wholesale Club get $50 worth of word-of-mouth advertising out of this?</p>
<p align="JUSTIFY">Let me be clear: I&#8217;m not advocating that everyone go out and start writing letters to companies in hopes of getting gifts. You shouldn&#8217;t expect this sort of thing to happen. It&#8217;s a wonderful surprise when it does, and I think companies would be well-served in adopting this strategy.</p>
<p align="JUSTIFY">When should you write a letter like this? When you have something constructive to say. You should have a strong opinion that you can express clearly in a brief letter. It should be something that the company ought to be concerned about, but which may not be evident to their focus groups and polling and spot-checks. (If you <em>are</em> fishing for a reward, you&#8217;re more likely to get one if the letter is actually useful.)</p>
<p align="JUSTIFY">Something to keep in mind: When a company rolls out a new initiative (like installing self-checkouts), the executives making the decisions may not have all the facts about how consumers like it. It&#8217;s the nature of any organization: as comments go from consumers to staff to managers to directors to vice-presidents and so on, they get summarized and prioritized. You may see some little problem that annoys you&#8230; and it may be something that would annoy the CEO, too, if it happened to him. If it&#8217;s a little problem, though, it might not be in the summaries he gets from management meetings.</p>
<p align="JUSTIFY">Most of all, you should send a helpful letter when you&#8217;ve had service that&#8217;s just slightly off, and you care about the company. If you&#8217;d rather see them fix a glitch than just go elsewhere, it&#8217;s worth your time to write a letter. Even if you don&#8217;t get a gift out of it, you may still help the company discover the glitch and fix it before it becomes a problem that you, the consumer, won&#8217;t live with.</p>
<p align="JUSTIFY">Where to send it? Well, as I stated, I went direct to the CEO because BJ&#8217;s didn&#8217;t have a customer feedback address. Just as you would escalate with a complaint, escalate constructive criticism: if the company has a feedback address, send it there. If nothing happens&#8230; it can&#8217;t hurt to send a letter to the CEO. Sometimes you can make a difference for just the cost of a first-class stamp.</p>
<p> </p>
<p> </p>
<hr /><a name="comments"></a></p>
<p> </p>
<p> </p>
<p> </p>
<p align="CENTER"> </p>
<p align="JUSTIFY">The Self-Check Out machines do accept the Gift Cards now. The reason they did not accept them at first was the fact that BJ&#8217;s had just introduced the new plastic gift cards (as opposed to old-stlye paper gift cards) a couple months before the Self-Checkouts were put in stores. So the Tech people (where ever they may be) just need a little time to combine the two together.<br />
Now if only they&#8217;d get the gift cards to work at the gas pumps. (They are working on this too supposedly) <img src='http://macwhiz.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p align="JUSTIFY">-A BJ&#8217;s employee (who hates dumb customers, but likes the guy who wrote that letter to Mike Wedge)</p>
<p align="JUSTIFY">Oh ya, btw, it doesn&#8217;t suprise me he sent you that Gift Card (although 50 is a suprising amount) the company has been trying to promote them like crazy! They even waived the non-member surcharge for non-members who used a gift card up until the end of Jan &#8217;03</p>
<p align="RIGHT">Posted by Rob @ 11/10/2002 12:32 PM ET</p>
<p align="JUSTIFY">A followup:</p>
<p align="JUSTIFY">I went to use the gift card today to buy groceries. (When you&#8217;re unemployed, $50 can buy a lot of meat for dinners!)</p>
<p align="JUSTIFY">The self-checkouts cannot accept the gift cards directly. How ironic! There&#8217;s a small sticker on the credit-card swipe terminal indicating that, in order to pay by gift card, one must hit the button to get an attendant.</p>
<p align="JUSTIFY">The attendant was on the ball, and quickly came to my aid. (She also saw a problem that the system was having when a plastic bag got stuck in the rollers, confusing the equipment, and came over to override it before I asked for her&#8230; very proactive!) I had to hit a button to pay at her central terminal, where she called up the order and processed the gift card.</p>
<p align="JUSTIFY">Overall, it was a good experience&#8230; but somehow, I don&#8217;t think that Mr. Wedge intended his &#8220;thank you&#8221; gift to expose a new shortcoming in the self-checkout! <img src='http://macwhiz.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div style="background-color:#FCF6CF">
<p><strong>January 2009 Update:</strong></p>
<p>Since this article was written, BJ&#8217;s has made several improvements to their self-checkout systems.  The credit-card acceptance system has been revamped; upgraded systems have a card-swipe terminal with an integrated touchscreen/signature capture display, eliminating the awkward signature capture of the original design.  </p>
<p>The user interface of the entire system has improved with time, as well.</p>
<p>Sadly, other retailers are still repeating mistakes with self-checkout systems.  </p>
<p>Stop &amp; Shop uses a nearly identical self-checkout system.  For years after introduction, the Stop &amp; Shop system would practically lock up for several seconds after you scanned a bottle of soda while it intoned &#8220;Sierra Mist 2 Liter, one thirty-nine; deposit, five cents!&#8221; in a measured voice. The speech output was synchronous; the system couldn&#8217;t process more scans while it was speaking.  You can now scan bottles as quickly as you want, and the speech is interrupted and replaced with the new item&#8217;s information.  Also, Stop &amp; Shop installed a much shorter &#8220;bagging area&#8221; conveyer belt than BJ&#8217;s.  It&#8217;s very easy to fill this area with scanned merchandise, at which point the system will reject and void out the last item you scanned before telling you that you need to clear the bagging area.  If you&#8217;re alone, this slows down checkout as you scan some items, then bag some items, then scan more items&#8230;</p>
<p>Home Depot has invested heavily in self-checkout, using machines similar to those at K-Mart. Like K-Mart, they use weight sensors, and they also make many weighing mistakes.  The system frequently fails to recognize lightweight items (like halogen light bulbs, or small hardware items, or a surprisingly vast number of other items sold at Home Depot), requiring operator intervention.  You can&#8217;t move anything from the bagging area to your cart without it admonishing you to put it back&#8230; unless an operator intervenes.  There&#8217;s one operator for 4 checkout machines, and that operator is usually kept hopping!  Worse, most Home Depots with this system have cut back on human staffing of the checkouts, so there&#8217;s rarely more than one old-fashioned checkout available. At my local Home Depot, there&#8217;s frequently <em>no</em> human checkouts—you <em>have</em> to use the self-checkout. </p>
<p>At Stop &amp; Shop, my girlfriend and I are usually shopping together, so we use the self-check because it&#8217;s usually faster—and we don&#8217;t wind up with boneheaded bagging decisions made by the undertrained checkout staff.</p>
<p>As for Home Depot&#8230; well, I avoid shopping there now, largely because checkout is such a hassle.  In my opinion, Home Depot&#8217;s self-checkout initiative was the best thing that ever happened&#8230; for Lowe&#8217;s.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://macwhiz.com/blog/2009/01/11/11092002-archived-entry-you-can-turbo-compliments-too/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
