75

What is the name of the pattern in which individual contributors (programmers/designers) developed an artifact for the sole purpose is to serve as a diversion so that management can remove that feature in the final product?

This is a folklore I heard from an ex-colleague who used to work at a large game development company. At that company, it is well known that middle management is pressurized to "give inputs" and "make changes" to the product otherwise they risk being seen as not contributing to the project. This situation have delayed many projects because of these superfluous "management inputs".

In one project at the above company, the artists and developers created a supernumerary animated character that appears in every cutscene and sticks out like a sore thumb. They designed it in such a way that it can be easily removed before the game is shipped (this was when games were still sold in physical media and not a downloadable product). Obviously the management then voted to remove the animation. On the positive side, management didn't introduced any unnecessary changes that would have delayed the project because they have shown that they provided constructive inputs to the product.

This process pattern has a name among game programmers that work in corporates, but I forgot what was the actual name. I believe it's duck-something. Anybody can help pointing out the name and perhaps some rather credible reference to how the pattern develops?.

gnat
  • 21,442
  • 29
  • 112
  • 288
adib
  • 925
  • 1
  • 7
  • 9
  • 35
    It is the "time-to-change-the-job-when-working-for-such-a-company" pattern. – Doc Brown Nov 28 '11 at 06:42
  • 9
    It's called a "duck feature." http://stackoverflow.com/a/2444361/102937. Actually, the formal name for it is a *"Red Herring."* – Robert Harvey Nov 28 '11 at 07:14
  • 12
    It's called **unprofessionalism** –  Nov 28 '11 at 07:26
  • 1
    in long living software, expect most anything you create to be rewritten or removed/replaced at some point. Nothing lasts forever. – jwenting Nov 28 '11 at 07:32
  • 16
    @Pierre303 : I'd call it dealing with management reality. If anything, it is uber-professionalisim. – Wyatt Barnett Nov 28 '11 at 15:44
  • @Pierre303, you're more of the management type, aren't you? – riwalk Nov 29 '11 at 00:12
  • @Stargazer712: Yes, but I have been a standard developer for more than 15 years and I never met such management. I always followed Doc Brown advice. –  Nov 29 '11 at 07:24
  • 1
    @Pierre303, so professionalism is, in your mind, to avoid confronting challenging situations (as implied by Doc Brown's advice)? To each their own... – riwalk Nov 29 '11 at 08:42
  • 3
    @Stargazer712: No. Unprofessionalism is using *tricks* to manipulate people. A great developer will try to enable honest communication channels first; If there is no way to make it work, he will follow Doc Brown. –  Nov 29 '11 at 10:14
  • 3
    @Pierre303, my last comment (before these comments get removed): Professional people get things done. With a clear mind, they chose a goal and work towards it. There are people in life whose #1 goal is to stop you from achieving your goals. You can either use people like this as an excuse to quit (as you have suggested), or you can use whatever means necessary to achieve the goal you set out to achieve. Life your life how you want to live it--but don't ever go to a job interview with that attitude. – riwalk Nov 29 '11 at 15:41
  • @Stargazer712: I didn't suggest that. –  Nov 29 '11 at 15:56
  • "Sacrificial lamb" .....! – MikeW May 08 '18 at 13:44

4 Answers4

99

It’s called a duck, from a legend that allegedly comes from Interplay’s Battle Chess:

This started as a piece of Interplay corporate lore. It was well known that producers (a game industry position, roughly equivalent to PMs) had to make a change to everything that was done. The assumption was that subconsciously they felt that if they didn’t, they weren’t adding value.

The artist working on the queen animations for Battle Chess was aware of this tendency, and came up with an innovative solution. He did the animations for the queen the way that he felt would be best, with one addition: he gave the queen a pet duck. He animated this duck through all of the queen’s animations, had it flapping around the corners. He also took great care to make sure that it never overlapped the “actual” animation.

Eventually, it came time for the producer to review the animation set for the queen. The producer sat down and watched all of the animations. When they were done, he turned to the artist and said, “That looks great. Just one thing—get rid of the duck.”

Jon Purdy
  • 20,437
  • 7
  • 63
  • 95
  • 30
    I had a professor tell a story about a professor writing a paper with his graduate assistant, and submitting the paper with an obvious error in one of the formulas. The student asked why the error. The professor replied, "that's for the referee." – Aaron Hall Mar 26 '14 at 04:17
  • 6
    I've given a technical presentation where I glossed over a few areas that we did some real innovative work in since the presentation was 5 min with a 10 minute question period! I made slides to answer all the details on our real work so when they asked about it we were ready. We got to talk about real work the whole question period instead of the usual trivial questions. – Phil Aug 13 '14 at 17:57
  • 9
    I think it's worth to link to the source of your citation... Maybe http://blog.codinghorror.com/new-programming-jargon/? – Antonio Aug 20 '15 at 12:23
  • 1
    @antonio http://www.stackprinter.com/questions/new-programming-jargon-you-coined.html – adib Apr 15 '16 at 15:14
  • 4
    See also Dilbert: http://dilbert.com/strip/2007-02-02 – adib Apr 15 '16 at 15:19
  • 1
    it is *not* called a "duck", that term means too many other things in other contexts. I swear online circa 2015 I could find a name for this law beyond just "animator and duck story", but it wasn't Parkinson's Law, it was some other Law. – Alexander Mills Dec 22 '21 at 02:08
12

I simply see it as management validating their own purpose on a project by extending out scheduled work as long as possible or creating meaningless busy work to keep people busy or working.

I have seen this personally in five different types:

  • Government projects - Many times if a manager's project runs underbudget or time, then it will work out bad for him/her in the future. They may get praise for good work, but run the risk in the future that their budget will be reduced next year if they can't justify it. Because of how budgeting works in government, this is why government projects aim to utilize as much of their assigned budget as possible.

  • A possibly obsolete manager who has a large team and responsibility for software that is relatively easy to maintain or write. The danger is real in the corporate world that when they try to shed dead weight they will look for the middle managers with the least real responsibility and move from there. They feel that by overestimating and creating unnecessary scope that they protect their positions.

  • Some software companies are basically Good Ol' Boy clubs where they have simple or legacy software that corners a lucrative yet niche market. Typically the money is relatively easy, ambitions relatively low, and all of the managers are best friends who try to validate each others purpose while taking home big paychecks. Room for advancement is impossible in such companies unless you are connected. They will often try to validate their own importance by creating meaningless busy work into an already well solved problem.

  • Some contract language requires regular releases and continuous improvement in the software. For a well solved problem, finding unique and new features may be difficult or impossible. Often busy work will be assigned, perhaps maybe to add something then mostly remove it in the next release.

  • The manager is legitimately concerned with keeping the team together, either out of guilt or just trying to be nice. He will try to validate the purpose of his own team to keep them employed under him.

maple_shaft
  • 26,401
  • 11
  • 57
  • 131
8

My boss called it the "fountain strategy". He designed a new computer wing for a University with a massive fountain out the front. The wing was approved but without the fountain, exactly as planned.

That was 50 years ago, so this is nothing new.

david.pfx
  • 8,105
  • 2
  • 21
  • 44
7

In some projects I've worked on, we've called them "bike sheds" as a nod to the term bike shed problem. This term came from a passage the book Parkinson's Law, describing nuclear power plants as being so complicated that mismanagers would be afraid to touch anything, but a bike shed is so simple that everyone has to dither and fiddle with it to give the appearance of "managing" things.

Tangurena
  • 13,294
  • 4
  • 37
  • 65