<?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>The Cranky Product Manager &#187; Development</title>
	<atom:link href="http://crankypm.com/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://crankypm.com</link>
	<description>Product management, product marketing, and the ugly side of software product development.</description>
	<lastBuildDate>Thu, 17 May 2012 19:51:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Guest Post from a CodeBoy: The Five Stages of Debugging</title>
		<link>http://crankypm.com/2011/03/guest-post-stages-debugging/</link>
		<comments>http://crankypm.com/2011/03/guest-post-stages-debugging/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 16:36:02 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[The PM Profession]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1943</guid>
		<description><![CDATA[&#160;In her previous post, the Cranky Product Manager unloaded on Code Boys &#38; Grils who don't fix their damn bugs. &#160;She dropped the eff bomb and everything. Indeed! This post is the flip side. The developer's point of view when faced with a nasty bug. &#160;And it's an extremely well-written piece by a Code Boy [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2011%252F03%252Fguest-post-stages-debugging%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Guest%20Post%20from%20a%20CodeBoy%3A%20The%20Five%20Stages%20of%20Debugging%20%23%23prodmgmt%22%20%7D);"></div>
<p>&#160;In her previous post, the Cranky Product Manager <em>unloaded </em>on <a href="http://crankypm.com/2011/03/irreproducible_bugs_product">Code Boys &amp; Grils who don't fix their damn bugs</a>. &#160;She dropped the eff bomb and everything. Indeed!</p>
<p>This post is the flip side. The developer's point of view when faced with a nasty bug. &#160;And it's an extremely well-written piece by a Code Boy who is &#160;a reader of this humble and cantakerous blog. &#160;</p>
<p>This post is required reading for product managers. And the Code Boys/Girls will probably like it too.</p>
<p><em>(Oh yeah, go visit Quantum Whisper. &#160;The Cranky Kid loves them so much s/he stopped mid-tantrum and calmly whispered, "Mother, I can't be expected to do </em><a href="http://quantumwhisper.com"><em>agile product management</em></a><em> without 1) candy, 2) my teddy bear, and 2) Quantum Whisper. I can't and I won't.")</em></p>
<p>-------------------</p>
<h1>The Five Stages of Debugging</h1>
<h4>by A. Working Coder</h4>
<p>Being confronted with a serious and difficult-to-diagnose bug can be one of the most traumatic and stressful experiences of a professional programmer's career. Those who have been through such an ordeal rate the stress as on a par with that accompanying serious injury, divorce, or the death of a family member.</p>
<p>Researchers who have studied the psychology of computer programming have lately constructed a framework to understand the stages through which the programmer's mind progresses as she/he works through the difficult process of resolving a bug. These stages are similar in concept to the well-known Kübler-Ross Stages of Grief, and for similar reasons. Like death and its attendant grief, fixing a bug is a process initiated by an event, at first unbelievable, which causes great anguish in the affected mind. However, this event must eventually be grappled with, endured, and brought to a satisfactory conclusion. Understanding the stages of bug fixing will make us better prepared to survive, persevere, and eventually bring closure ... to our bug queues.</p>
<h2>STAGE 1: RESISTANCE</h2>
<p><em>How you're feeling: Skeptical. Offended. Petulant.</em></p>
<p><strong>1. Ignore it.</strong></p>
<p>Maybe it'll go away.</p>
<p><strong>2. Mark it as "Works for Me".</strong></p>
<p>Maybe it was user error, or a local configuration problem. Yes, I'm sure that's what it was. It'll just go away.</p>
<p><strong>3. Call it a Glitch.</strong></p>
<p>I think it was just a weird one-off that nobody will ever see again. There's no point in figuring out what went wrong. The {database/network/browser/something} hiccuped and that's all this was. It won't come back, I'm sure.</p>
<p><strong>4. Hide.</strong></p>
<p>I'm taking a couple of days' sick leave. Maybe they'll assign the bug to somebody else.</p>
<p><strong>5. Mark it as "Working per Spec".</strong></p>
<p>Hey, look, I just implemented what was spec'd. If they want to change the behavior, UI will have to update the spec. Maybe they'll decide they can live with it as-is.</p>
<p><strong>6. Demand More Information.</strong></p>
<p>I can't do a thing with this bug until and unless I see the error logs for this particular exception scenario.</p>
<p><strong>7. Assign it to another team member.</strong></p>
<p>I was getting badly-formatted data from that other module, that's the problem. Give it to the guy who maintains that module. I could check for that one weird corner case in my module, but the proper fix is for that other guy to make his code correct. He's offshore anyway, so I'll never have to face him.</p>
<h2>STAGE 2: ACCEPTANCE</h2>
<p><em>How you're feeling: Resigned. Defeated. Annoyed.</em></p>
<p><strong>1. Accept it.</strong></p>
<p>All right, all right, all right! It's my bug. I'll fix it.</p>
<p><strong>2. Put it on the bottom of your queue.</strong></p>
<p>Maybe I can find another job before I'll have to fix this bug.</p>
<p><strong>3. Bargain with your manager.</strong></p>
<p>OK, look: I could fix it the right way, and that will take a month. On the other hand, I could apply a band-aid to the problem, which won't really solve it, but it'll make it go away as far as the end-user is concerned. And that will take a couple of days.</p>
<p><strong>4. Mark the bug with an outrageously padded estimate.</strong></p>
<p>God, I hope that's enough time.</p>
<h2>STAGE 3: ENGAGEMENT AND DEPRESSION</h2>
<p><em>How you're feeling: Giddy. Light-headed. Nauseous.</em></p>
<p><strong>1. Initial Research.</strong></p>
<p>I can do this. I can do this! All it takes is a little organization, a little focus, a lot of caffeine, and a little time. I can do this.</p>
<p><strong>2. Befuddlement.</strong></p>
<p>Shit. This is unbelievable. I can't make heads or tails of this code. It's a mess. It's a mystery to me how this code could even compile, let alone work. What chance do I have to figure out how it can fail?</p>
<p><strong>3. Hide Again.</strong></p>
<p>Look. I'm sorry. I had to have my appendix removed. Again. Yes, now that you mention it, I did used to have two. Now I don't have any. Happy now?</p>
<p><strong>4. Bitching.</strong></p>
<p>Well, what did they expect, anyway? Trying to do this without so much as a decent debugger. What am I, clairvoyant? I had better debugging tools on my Commodore 64!</p>
<p><strong>5. Spitballing.</strong></p>
<p>What if I try ... this? Nah, that doesn't work. How about ... that? Nope. How about ... that? Shit, that makes things worse.</p>
<p><strong>6. Despair.</strong></p>
<p>I'll never fix this bug. I'm a lousy coder. I'm stupid. What am I doing here, in a place full of smart people? Sooner or later they're gonna catch on, and then I am finished around here.</p>
<p><strong>7. Humiliation.</strong></p>
<p>My manager asked me why I've taken the better part of a month to fix a bug I'd spec'd out as taking a couple of days' worth of work. I don't know how to read the logs and I broke my own build scripts. Now I'm afraid to ask for help because it'll just make me look stupider than I already do.</p>
<p><strong>8. Panic!</strong></p>
<p>This thing is way more complicated than I thought it would be! The parts I thought would be really hard turned out to be really easy ... and the parts I thought would be easy turned out to be a complete rewrite of about a half a dozen classes. Why did I ever tell my manager I could do this?</p>
<p><strong>9. All-Nighter(s). Withdrawl from friends and family.</strong></p>
<p>(incoherent mumbling, punctuated by bursts of loud profanity.)</p>
<h2>STAGE 4. POSSIBLY FOOLISH EUPHORIA</h2>
<p><em>How You're Feeling: Grateful. Relieved. Awfully Impressed with Yourself.</em></p>
<p><strong>1. Revelation.</strong></p>
<p>Oh! Now I see how to do this...</p>
<p><strong>2. Write the correct code.</strong></p>
<p>I am so good. I am a coding machine!</p>
<p><strong>3. Test it.</strong></p>
<p>Yes! It passes that test. Yes! It passed that test. Boo! It fails that test. And I have no idea why...</p>
<p><strong>4. Hide the test failures.</strong></p>
<p>It's a totally unrealistic corner case anyway. Nobody will ever see that in the field. It was really a pointless test.</p>
<p><strong>5. Check it in.</strong></p>
<p>I'm awesome. Is there pie in the kitchen?</p>
<p><strong>6. Close the bug.</strong></p>
<p>I heard there was pie in the kitchen.</p>
<h2>STAGE 5. GRAPPLING WITH THE DEFINITION OF "DONE"</h2>
<p><em>How You're Feeling: Twitchy. Nervous. Superstitious.</em></p>
<p><strong>1. They've Reopened the bug.</strong></p>
<p>Really? They found another way to break it? Shit - it's that corner case I swore would never come up.</p>
<p><strong>2. Fix the fix.</strong></p>
<p>Yes, I'm even checking cases where the employee age is an imaginary number, just to be sure.</p>
<p><strong>3. Close the bug.</strong></p>
<p>Yeah, bitch. You're closed. Once and for all. Now stay dead!</p>
<p><strong>4. Vow to never take on such a task ever again.</strong></p>
<p><strong>5. Realization that you are now considered the expert on that module.</strong></p>
<p>Oh no! Now I've got three new bugs on that module.</p>
<p>At this point, you are expected to GOTO: Stage 1.</p>
<p>Furthermore, as a working coder, you will DO_UNTIL: Death, retirement, or promotion into management.</p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2011/03/guest-post-stages-debugging/feed/</wfw:commentRss>
		<slash:comments>171</slash:comments>
		</item>
		<item>
		<title>That Code Boy Hath No Shame</title>
		<link>http://crankypm.com/2011/03/irreproducible_bugs_product/</link>
		<comments>http://crankypm.com/2011/03/irreproducible_bugs_product/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 15:59:27 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[The PM Profession]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1937</guid>
		<description><![CDATA[The Cranky Product Manager has actually not been so cranky lately. &#160;She's started a job at a spankin' brand new startup and for the first time in her professional life is part of a team - that for the moment, anyway - seems free of major dysfunction! &#160;OMFG! &#160; She has a major crush on [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2011%252F03%252Firreproducible_bugs_product%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FfjB1mX%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22That%20Code%20Boy%20Hath%20No%20Shame%20%23%23prodmgmt%22%20%7D);"></div>
<p>The Cranky Product Manager has actually not been so cranky lately. &#160;She's started a job at a spankin' brand new startup and for the first time in her professional life is part of a team - that for the moment, anyway - seems free of major dysfunction! &#160;OMFG! &#160;</p>
<p>She has a major crush on this company and loves (LOVES) going to work in the morning.</p>
<p><em>(oops, need to insert an ad for Quantum Whisper here, cuz they buy me grande skim lattes each month. Quantum Whisper is </em><a href="http://www.urbandictionary.com/define.php?term=Wicked%20pissa"><em>wicked pissa</em></a><em>. They </em><a href="http://quantumwhisper.com"><em>link customer feedback to your agile backlog</em></a><em> and all that fun stuff. &#160;</em>OK, back to the post.<em>)</em></p>
<p>But being a born-New Englander -- a cynic through-and-through, to the core of her jaded, oft-broken heart -- the Cranky Product Manager knows better. &#160;She knows this is merely the honeymoon period. &#160;At some point, an idiot will be hired. At some point, a customer will demand something ludicrous and a SalesDroid will get simultaneously hysterical and rabid as a result, causing the Cranky Product Manager no end of aggravation. At some point, the PR agency will start arbitrarily tossing the buzz word<em> du jour</em> in every sentence of every press release, even if the results are nonsensical and utterly laughable.</p>
<p>But in the meantime, before the other shoe drops (where did that shoe dropping phrase get started anyway?), the Cranky Product Manager is trying to enjoy her enviable situation.&#160;</p>
<p>The only downside of all this has been that is has been hard to get the Crank up to write this blog. Thus the drought of blog content.</p>
<p>So, you should all thank SugarSync for irritating the Cranky Product Manager enough that she should post. &#160;</p>
<p>Some background...SugarSync is a cloud backup service that the Cranky PM pays for. She uses it at home to keep her 3 computers backed up and in sync. Cool in concept, but not so cool in reality. A few months after subscribing, instead of just backing up her files, SugarSync decided to duplicate over 10,000 files - eating up all her hard disks and cloud storage. The Cranky PM then spent lots of time using 3rd party tools to remove the duplicates. The end result was a lot of lost time and at least a few lost files. &#160;</p>
<p>Irritating, to be sure. But the Cranky Product Manager is nothing if not forgiving of buggy newish products. It's what SHE DOES, after all. &#160;So, reassured by the SugarSync Support that this was a one-off situation related to their latest upgrade, the Cranky Product Manager carried on and continued to use their service.</p>
<p>And then a month later it happened again. &#160;Argh! This time the Cranky Product Manager searched the SugarSync Forums for answers and found multiple threads related to this duplicate file issue. &#160;The most enlightening was this:&#160;<a href="http://sugarsync.hivelive.com/posts/c6fb6fb9db">http://sugarsync.hivelive.com/posts/c6fb6fb9db</a>&#160;</p>
<p>This thread reminds the Cranky Product Manager about <em>everything </em>that is frustrating about dealing with a certain type of Code Boy:</p>
<p>1. Despite overwhelming evidence in its own forums that MANY customers experience this mass-duplication of files, the SugarSync CodeBoy(s?) (username "admin") insists that this problem is a "corner case" and never really happens. &#160;</p>
<p>(We can tell that it is an actual code-slinging CodeBoy in the forum, because no self-respecting Customer Support Engineer would ever take this kind of attitude with a customer).</p>
<p>2. The SugarSync CodeBoy then pushes the burden of the bug onto the customer -- insisting that they open support tickets, collect and mail in logs, etc...&#160;</p>
<p>3. The customer doesn't send the logs in because:&#160;</p>
<p style="margin-left: 40px; ">(A) They are busy manually cleaning up the duplicate file mess and don't have time to also help debug SugarSync's software, and&#160;</p>
<p style="margin-left: 40px; ">(B) From the tone of the previous messages it is OBVIOUS to the customer that SugarSync does not recognize this as a genuine problem, and realizes it will be an uphill battle to convince SugarSync otherwise.</p>
<p>4. The SugarSync CodeBoy declares victory: &#160;"The customer won't cooperate with me in reproducing this bug! &#160;I can't do anything! &#160;So, this bug must not really exist! Plus, I AM RIGHT! HAH!"</p>
<p>........................</p>
<p>Excuse the Cranky Product Manager while she strangles a voodoo doll that she created of this CodeBoy....</p>
<p>...OK, feeling better now.</p>
<p>Gotta say, it's kinda rare to see this type of exchange played out in a public forum like this. Usually the Support people rightly prevent this type of unempathetic, obnoxious Code Boy from interacting with customers and others outside the company.</p>
<p>But within&#160;the company, who in Product Management has not encountered almost the <i>exact same </i>crap from a CodeBoy/Girl, at least once a release cycle? &#160;It is ABSOLUTELY MADDENING! &#160;&#160;</p>
<p>To have someone deny that a problem exists when MULTIPLE people have encountered it? &#160;To be told that the problem you are clearly experiencing &#160;is a "corner case" that doesn't ever really happen? &#160;To be told its somehow your fault - some kind of user error situation? &#160;To have the Code Boys &amp; Girls demand that YOU do THEIR effing jobs by spending ungodly amounts of time reproducing their damn bugs and verifying their alleged "fixes"?!? &#160;</p>
<p>AS IF product managers don't have ENOUGH to do near release-end (market launch, get pricing proposed and approved, write collateral, and sales training, not to mention being neck-deep in planning the next release....the list goes on and on.), but now they have to be QA engineers as well? &#160;</p>
<p>All because some frigtard CodeBoy/Girl has no effing pride in his/her work??!! &#160;How can s/he think it's okay to release what is <i>obviously</i>&#160;a steaming pile to customers?</p>
<p>WTF!!!!!!</p>
<p>---</p>
<p>BUT THEN, serendipitously, the Cranky Product Manager received a Truly Awesome article from a Code Boy who reads this blog. &#160;It's about the process an Engineer goes through when faced with a thorny bug. &#160;</p>
<p>And now the Cranky Product Manager understands just a little bit better. &#160;She still wants to keep her voodoo doll collection of CodeBoys close at hand, but at least she'll feel a bit more empathetic when sticking it with pins.</p>
<p>Read the <a href="http://crankypm.com/2011/03/guest-post-stages-debugging/">guest post from Code Boy Extraordinaire</a> in the next article (coming in a few minutes). It's required reading for any product manager who has ever had a bug s/he reported marked as "not reproducible."</p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2011/03/irreproducible_bugs_product/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>From the Archives: That &#8220;All the Responsibility, None of the Authority&#8221; Saying</title>
		<link>http://crankypm.com/2010/11/archives-responsibility-authority/</link>
		<comments>http://crankypm.com/2010/11/archives-responsibility-authority/#comments</comments>
		<pubDate>Fri, 05 Nov 2010 13:07:34 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[The PM Profession]]></category>
		<category><![CDATA[all+responsibility+no+authority]]></category>
		<category><![CDATA[engineers]]></category>
		<category><![CDATA[leadership]]></category>
		<category><![CDATA[product+management]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1831</guid>
		<description><![CDATA[One benefit from posting nearly 200 articles over the years is that&#160;republishing an old post gives the&#160;Cranky Product Manager the opportunity to laze about in her PJs and eat bon bons while watching the latest episode of Hoarders. &#160; Here's an oldie (but hopefully a goodie), from November 2006. &#160;(Interesting to see how the writing [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2010%252F11%252Farchives-responsibility-authority%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FaOEcbn%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22From%20the%20Archives%3A%20That%20%5C%22All%20the%20Responsibility%2C%20None%20of%20the%20Authority%5C%22%20Saying%20%23%23prodmgmt%22%20%7D);"></div>
<p><em>One benefit from posting nearly 200 articles over the years is that&#160;republishing an old post gives the&#160;Cranky Product Manager the opportunity to laze about in her PJs and eat bon bons while watching the latest episode of Hoarders. &#160;</em></p>
<p><em>Here's an oldie (but hopefully a goodie), from November 2006. &#160;(Interesting to see how the writing style has changed over time. &#160;The crankiness, however, has not changed one bit.)</em></p>
<p>---------------------</p>
<p><em>"The most challenging thing about product management is that you have all the responsibility but none of the authority,"</em> the job candidate said. Quite satisfied with his answer to the Cranky Product Manager's stock interview question, the candidate flashed her a knowing, gleaming white smile. That was the signal. The Cranky Product Manager was supposed to epileptically shake her head in agreement and, at last, <em>connect</em> with the candidate.</p>
<p>No such luck. Instead, she rolled her eyes... Not the best manners for an interviewer, but seeing as the Cranky Product Manager is not exactly a, well, <em>refined</em> individual, she had no control over her clichéd response to his clichéd answer. The Cranky Product Manager already heard two other candidates spin the same old tired yarn that morning. In fact, she read a version of that I'm-a-powerless-product-manager-woe-is-me tale on at least one&#160;other blog that week.</p>
<p>But worse than trite, overused and unoriginal, this sentiment -- universally shared by the world's lamest and whiniest product managers, and even by some of the good ones -- is way too self-congratulatory and is just plain wrong.</p>
<p>Yes, as a product manager, you are indeed <em>responsible</em>.&#160; Your job is to corral and coordinate the hoards of Code Boys/Grrls, QA Drones, Marketing "Geniuses", SalesDroids, Professional Services Slaves, support engineers, writers, finance weenies, and more -- the entire cast of characters needed to successfully bring kick-ass products to market.</p>
<p>And, yes, as a product manager, it is true that you rarely have <em>authority</em>. No one (except maybe a few junior product managers) reports to you. You can't fire people for not taking your orders.</p>
<p><img style="border: 0pt none; margin: 0px 5px 5px 0px; float: left;" title="Cartman has *All the Responsibility but None of the Authority*" border="0" alt="Cartman has *All the Responsibility but None of the Authority*" src="http://crankypm.com/crankypm/wp-content/images/stickerr.jpg" /> But here's the thing... SO WHAT!?&#160; So these people don't report to you. So they don't have to <a href="http://www.chunder.com/carrots/authority.wav">respect your au-thor-i-tah</a>.&#160; Big frakin' DEAL! If they DID report to you, do you honestly think your job would be any easier?&#160; Do you think they'd magically start listening to you and doing what you say?</p>
<p>Last time the Cranky Product Manager checked, high tech product folk, no matter what their job functions, were not minimum wage workers. As intellect workers, high tech-ians don't do anything&#160; <em>just because</em> their bosses command it.</p>
<p>Nope. Those damn independent thinkers need to be persuaded. They need to buy into the plan and <em>then</em> they act. Sure, sure, those folks might occasionally placate the powers-that-be by half-heartedly lying there, closing their eyes, and thinking of England. But that kind of soulless attempt to merely get the boss off, uh, your back... well, it's usually worse than no attempt at all.</p>
<p>So, in this respect, those other "real" managers -- and by "real" I mean managers who officially manage people -- have just as tough a job as product managers. Probably tougher. People managers must ALSO corral and coordinate their people, and get them to do things that they wouldn't normally consider if left to their own devices. Like product managers, they legitimately do so ONLY by persuading and inspiring. NOT by fear nor the unspoken threat of bad performance reviews or firings. NOT by flexing their so-called "authority."</p>
<p>In fact, as someone experienced in both people and product management, let the Cranky Product Manager assure you that the only effective difference between a manager with "authority" and a manager without is that with authority comes a lot of tedious crap: paperwork galore, performance reviews ad nauseam, mind-numbing sexual harassment seminars, and -- most dishearteningly -- the occasional hell of laying off a subordinate who does a great job .</p>
<p>So, whiney product managers of the world, STOP bitching about "all the responsibility with none of the authority" right now. Get out of your minimum-wage-oriented headset and recognize that official authority is irrelevant to anyone in high tech companies. Instead consider, even if briefly, that your difficulty in getting others to follow your lead might be because your arguments are not compelling.</p>
<p>Or maybe, just maybe, they don't listen because they know you think of them as minions who are motivated by fear.</p>
<p>In other words, maybe you're a jerk.</p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2010/11/archives-responsibility-authority/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
<enclosure url="http://www.chunder.com/carrots/authority.wav" length="40155" type="audio/wav" />
		</item>
		<item>
		<title>Why the USP for Every Technical Product Sounds the Same</title>
		<link>http://crankypm.com/2010/08/not-unique-unique-selling-proposition-software-products/</link>
		<comments>http://crankypm.com/2010/08/not-unique-unique-selling-proposition-software-products/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 06:17:52 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Analysts]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[The PM Profession]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1598</guid>
		<description><![CDATA[Every time the Cranky Product Manager reads about a new B2B startup or product, she gets a sense of déjà vu. Alas, it's not a glitch in the Matrix.&#160;It's because pretty much every single product pitch sounds exactly the same. &#160;Watered down, generic, and 100% free of taste.&#160; A grinder is at work at almost [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2010%252F08%252Fnot-unique-unique-selling-proposition-software-products%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FauIoDO%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Why%20the%20USP%20for%20Every%20Technical%20Product%20Sounds%20the%20Same%20%23%23prodmgmt%22%20%7D);"></div>
<h5><a title="250px Gruel" rel="lightbox[slideshow]" href="/images/2010/08/250px-Gruel.jpg"><img width="200" height="132" alt="Watch as your unique selling proposition is ground into gruel, indistinguishable from everyone else's gruel." align="left" src="/images/2010/08/200/250px-Gruel.jpg" /></a></h5>
<p>Every time the Cranky Product Manager reads about a new B2B startup or product, she gets a sense of <em>déjà vu</em>.</p>
<p>Alas, it's not a glitch in the Matrix.&#160;It's because <a href="http://crankypm.com/2009/06/if-a-pr-marcom-weenie-wrote-this-blog-2/">pretty much</a> <a href="http://crankypm.com/2010/02/call-nominations-worst-product-company-descriptions/">every single product pitch</a> <a href="http://crankypm.com/2010/02/prototype-worst-positioning-statement/">sounds exactly the same</a>. &#160;Watered down, generic, and 100% free of taste.&#160;</p>
<p>A grinder is at work at almost every B2B software company. &#160;A soul-crushing process that pulverizes the unique, complex, and interesting, into gruel-like messaging that the industry's lowest common denominator (and by LCD, the Cranky PM means the PR people) find acceptable and almost understandable. (see footnote 2)<i><br />
</i></p>
<h5><a title="telephone game girls" rel="lightbox[slideshow]" href="/images/2010/08/telephone-game-girls.jpg"><img width="425" height="277" alt="telephone game girls" align="baseline" src="/images/2010/08/400/telephone-game-girls.jpg" /></a></h5>
<p>Observe as the Unique Selling Proposition of DysfunctoCrank is ground into pasty mush. &#160;(Anyone remember that game "Telephone"???)</p>
<p><strong>What Development Says to Product Management:</strong>&#160;</p>
<p>DysfunctoCrank's architecture uses an MPP-architecture, patent-pending modified vulcan compression techniques, Eventual Iron(TM) technology, predictive klingon data cloning, &#160;dynamic resource kirk-ification, blah, blah, and blah. &#160;We tested DysfunctoCrank on clusters to 64 CPUs, and it did pretty well. &#160;We haven't tested on anything bigger. &#160;</p>
<p>Remember, DysfunctoCrank uses a proprietary clustering. We're going to have to rearchitect the entire thing from the ground up if you want to support cloud deployments, and that will take the entire Engineering team at least a year or two.</p>
<p><strong>What Product Management Says to Product Marketing - &#160;</strong>For 80% of the use cases, DysfunctoCrank is about 35% faster than anything else out there and can handle double the workload of anything else. &#160;It can scale out and scale up near-linearly, across any number of CPUs or machines, and has best-in-class features for high availability.</p>
<p>DysfunctoCrank can currently be deployed on-premise, but in our next release we are aiming for cloud deployments (although we still have significant technical challenges to overcome).</p>
<p><strong>What Product Marketing Says to Corporate Marketing - &#160;</strong>DysfunctoCrank delivers cloud-based reliability, performance, and scalability that no other Crank system today can match. It is the industry's most efficient, cost-effective way to achieve your business goals.</p>
<ul>
    <li>All the benefits of the Cloud:&#160;Pay only for what you need - start small, add cloud capacity only as needed.&#160;</li>
    <li>Infinite linearly scalable, supercharged predictable performance, and no wasted capacity</li>
    <li>Self-healing, managed reliability</li>
</ul>
<p><strong>What Corporate Marketing Says to the Press and to the Analysts - </strong>DysfunctoCloud is a cloud-based solution platform designed to increase your revenue, lower your TCO, and synergize with your efforts to engage users in a virtualized, Social Media Web 2.0, cloud-based world. &#160;Plus it's in the cloud. DysfunctoCloud is CLOUD-TASTIC!!!!</p>
<p><strong>What the Press Says to the World -</strong>&#160;DysfunctoCloud is just like the cloud-based offerings from vendor X, vendor Y, and vendor Z. &#160;</p>
<p><strong>What the Analysts&#160;Say to the World</strong>- In our TragicQuadrangle, we're moving DysfunctoCloud a smidge to the right on the "vision" axis, because their cloud stuff sounds kinda seksi. But we're moving them down on the "ability to execute" axis until they buy more of our consluting (see footnote 2) services.</p>
<p><u><em>Footnote 1</em></u><em>: &#160;Allow the Cranky Product Manager to <a href="http://crankypm.com/2010/08/education-business-engineering-product-managemen/">continue digging at MBA programs</a>: Business school is a similar grinder.  At top B-schools, the newest crop of MBA students arrive on campus as a highly diverse group, from all professions and walks of life. Then, just two years later, 80% of the students depart as one of only two varieties: banker or management consultant.&#160;<br />
</em></p>
<p><u><em>Footnote 2</em></u><em>: Not a typo.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2010/08/not-unique-unique-selling-proposition-software-products/feed/</wfw:commentRss>
		<slash:comments>66</slash:comments>
		</item>
		<item>
		<title>No Excuses Product Management (Part 1)</title>
		<link>http://crankypm.com/2010/05/no-excuses-product-management/</link>
		<comments>http://crankypm.com/2010/05/no-excuses-product-management/#comments</comments>
		<pubDate>Fri, 28 May 2010 14:35:37 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[The PM Profession]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[excuses]]></category>
		<category><![CDATA[product+management]]></category>
		<category><![CDATA[product+manager]]></category>
		<category><![CDATA[responsibility+no+authority]]></category>
		<category><![CDATA[software+development]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1600</guid>
		<description><![CDATA[As the Esteemed Crankerati already know, the Cranky Product Manager has been creeping around the software product management universe for quite some time.&#160; Long enough that perhaps she should replace her blog's masthead photo with a less youthful and more saggy derriere. In that extended time, the Cranky Product Manager has encountered LOTS of product [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2010%252F05%252Fno-excuses-product-management%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22No%20Excuses%20Product%20Management%20%28Part%201%29%20%23%23prodmgmt%22%20%7D);"></div>
<p><a href="http://www.cafepress.com/crankypm"> <img src="http://images8.cafepress.com/product/449674818v3_350x350_Front_Color-White.jpg" alt="" /></a></p>
<p>As the Esteemed Crankerati already know, the Cranky Product Manager has been creeping around the software product management universe for quite some time.&nbsp; Long enough that perhaps she should replace her blog's masthead photo with a less youthful and more saggy derriere.</p>
<p>In that extended time, the Cranky Product Manager has encountered LOTS of product managers.&nbsp; Hundreds. And thus she's heard about every lame product management excuse that ever existed.</p>
<p>So she's here to ask -- no, BEG -- PLEASE, STOP IT!&nbsp; Please stop making EXCUSES for not doing your freakin' job.</p>
<p>If you can't do the Product Management job, if you don't have what it takes, if you don't have the passion and the drive, if you don't have the scrappiness to figure out how to Get Shit Done (TM), well, PLEASE leave the profession. The Cranky Product Manager begs you.&nbsp;</p>
<p>In this economy, there are plenty of GOOD, resourceful, and influential product managers who will <em>gladly </em>step up and take your place. The world will be better for it.&nbsp; No doubt you will be happier too.</p>
<p>(Note that the Cranky Product Manager knows that <em><u>you</u></em>, as a wicked awesome and <em>elite</em> reader of this blog, would NEVER be so lame. But if you could please inform all the other PMs out there, she would be grateful).</p>
<p>So, let's list some of the most common Product Management Complaints, and the Cranky Product Manager will explain why each is a freakin' cop-out.&nbsp;</p>
<p>And SURE,some of these cop-outs have <em>some </em>validity. Some organizations are truly screwed up (trust the Cranky Product Manager, she KNOWS), and some people are real dysfunctionals.&nbsp; But just as you should NEVER call your former boss an idiot in a job interview because it makes YOU look bad -- not your former boss -- don't say these things either.&nbsp; Especially in the Cranky Product Manager's presence, and you never know, she might be your boss or your co-worker.&nbsp; So STFU.&nbsp; And Suck it Up, Buttercup.</p>
<p><strong>EXCUSE #1: &quot;The developers just do whatever they want because Product Management has no authority over Development.&quot; </strong></p>
<p>Barf. And So WHAT.&nbsp; Probably only 1% of product managers in the world have <em>ever </em>had official authority over Development.&nbsp; Yet, somehow, <em>every single day</em>, product managers the world over manage to convince developers to take their direction.&nbsp; It's called <em>leadership</em>. You do it by respecting people, gaining their respect back, and convincing them that your vision of the future is a compelling one.</p>
<p>And sorry to tell you, even if you had the power to fire every last developer tomorrow, well they <em>still </em>wouldn't do what you wanted unless they bought into your vision. People with brains are like that. (OK, to keep their jobs, maybe they'd do 10% of what you want.&nbsp; But that's it.&nbsp; They'd claim the rest was &quot;technically impossible.&quot;)</p>
<p>If you want to whine that &quot;all the responsibility and no authority&quot; blahblah yet AGAIN, instead why not put a neon sign above your head that proclaims &quot;I am a bottom 20% product manager, with no ability to lead or influence&quot; instead?&nbsp; It would be less annoying to the rest of us.</p>
<p>NO EXCUSES! </p>
<p><strong>SHAMELESS PLUG! </strong><a href="http://www.cafepress.com/crankypm"><strong>Buy a &quot;No Excuses Product Management&quot; mug or t-shirt!</strong></a></p>
<p><em>(This post is getting way too long, so it's been broken into 4 parts.&nbsp; Tune in NEXT WEEK for Lame Ass Excuses #2 (&quot;I didn't get training&quot;).&nbsp; Plus at least two more.</em></p>
 <div class='series_toc'><h4>Also in No Excuses Product Management</h4><ol><li>No Excuses Product Management (Part 1)</li><li><a href='http://crankypm.com/2010/06/excuses-product-management-training/' title='No Excuses Product Management (Part 2)- Stop Whining About Training'>No Excuses Product Management (Part 2)- Stop Whining About Training</a></li></ol></div> <div class='series_links'> <a href='http://crankypm.com/2010/06/excuses-product-management-training/' title='No Excuses Product Management (Part 2)- Stop Whining About Training'>|  Next in series &gt;&gt;</a></div>]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2010/05/no-excuses-product-management/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>The Cranky PM on &#8220;Been There, Done That&#8221;</title>
		<link>http://crankypm.com/2010/03/cranky-pm/</link>
		<comments>http://crankypm.com/2010/03/cranky-pm/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 20:30:53 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[engineering]]></category>
		<category><![CDATA[product+management]]></category>
		<category><![CDATA[product+manager]]></category>
		<category><![CDATA[shreyas+doshi]]></category>
		<category><![CDATA[svpma]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1475</guid>
		<description><![CDATA[The following cartoon has been shamelessly republished from Shreyas Doshi&#8217;s excellent &#8220;How to Get that Next PM Job&#8221; presentation to the Silicon Valley Product Management Association.  Many years ago, during her first month at DysfunctoSoft, the Cranky Product Manager had this EXACT argument with the Engineering Manager for DysfunctoCrank: It was years ago, but to [...]]]></description>
			<content:encoded><![CDATA[</p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2010%252F03%252Fcranky-pm%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22The%20Cranky%20PM%20on%20%5C%22Been%20There%2C%20Done%20That%5C%22%20%23%23prodmgmt%22%20%7D);"></div>
<p>The following cartoon has been shamelessly republished from <a href="http://slidesha.re/b1XdDe">Shreyas Doshi&#8217;s excellent &#8220;How to Get that Next PM Job</a>&#8221; presentation to the Silicon Valley Product Management Association.  Many years ago, during her first month at DysfunctoSoft, the Cranky Product Manager had this EXACT argument with the Engineering Manager for DysfunctoCrank:</p>
<p><div id="attachment_1476" class="wp-caption aligncenter" style="width: 300px">
	<a href="http://crankypm.com/crankypm/wp-content/images/shreyas-doshi-on-product-management.png"><img class="size-medium wp-image-1476" title="shreyas-doshi-on-product-management" src="http://crankypm.com/crankypm/wp-content/images/shreyas-doshi-on-product-management-300x228.png" alt="Shreyas Doshi on Product Management" width="300" height="228" /></a>
	<p class="wp-caption-text">by Shreyas Doshi</p>
</div></p>
<p>It was years ago, but to this day the Cranky PM does not understand how that a-hole could take so LITTLE PRIDE  in his work that he would insist on shipping a product with the name misspelled.</p>
<p>At the time, the Cranky PM was shocked.  But after years in the product management game, nothing surprises her anymore.</p>
<p>Rest assured, the Cranky PM won this battle.  The product was NOT renamed <strong>DysfucktoCrunk</strong>.</p>
<p>A little link love for Shreyas Doshi, for making the Cranky Product Manager chuckle just a little bit, through the tears of frustration:</p>
<ul>
<li>Shreyas Doshi on Twitter:  <a href="http://www.twitter.com/shreyas">http://www.twitter.com/shreyas</a></li>
<li>Shreyas Doshi&#8217;s Blog:  <a href="http://shreyasdoshi.typepad.com/">http://shreyasdoshi.typepad.com/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2010/03/cranky-pm/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Guest Post: The Cranky Engineer Responds to a PRD</title>
		<link>http://crankypm.com/2009/04/guest-post-cranky-engineer-responds-prd/</link>
		<comments>http://crankypm.com/2009/04/guest-post-cranky-engineer-responds-prd/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 14:56:28 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Guest Posts]]></category>
		<category><![CDATA[engineer]]></category>
		<category><![CDATA[engineering]]></category>
		<category><![CDATA[functional+spec]]></category>
		<category><![CDATA[funny]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[PRD]]></category>
		<category><![CDATA[product+management]]></category>
		<category><![CDATA[product+manager]]></category>
		<category><![CDATA[TCP/IP]]></category>
		<category><![CDATA[unreasonable+requirements]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1207</guid>
		<description><![CDATA[Today we have a super-duper-uber-fantastic guest post from the Cranky Engineer, aka DGentry of codingrelic.geekhold.com. Check out his blog.  It&#8217;s WICKED AWESOME. Also, you might recall that DGenery was the BIG WINNER of the Cranky Product Manager&#8217;s caption contest for the &#8220;7 Types of Engineers.&#8221; He won a fancy pants coffee mug.  AND HE LOVES [...]]]></description>
			<content:encoded><![CDATA[</p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2009%252F04%252Fguest-post-cranky-engineer-responds-prd%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Guest%20Post%3A%20The%20Cranky%20Engineer%20Responds%20to%20a%20PRD%20%23%23prodmgmt%22%20%7D);"></div>
<p><em>Today we have a super-duper-uber-fantastic guest post from the Cranky Engineer, aka DGentry of <a href="http://codingrelic.geekhold.com/">codingrelic.geekhold.com</a>. Check out his blog.  It&#8217;s WICKED AWESOME.<br />
</em></p>
<p><em>Also, you might recall that DGenery was the BIG WINNER of the Cranky Product Manager&#8217;s <a href="http://crankypm.com/2008/12/contest-winners-7-types-software-engineers/">caption contest for the &#8220;7 Types of Engineers.&#8221;</a> He won a fancy pants <a href="http://www.cafepress.com/crankypm.334381444">coffee mug</a>.  AND HE LOVES IT.  Maybe YOU should buy a <a href="http://www.cafepress.com/crankypm">coffee mug</a> too&#8230;.</em></p>
<p><em></em></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p><strong>From: </strong>Cranky Engineer #4<br />
<strong>To</strong>: Product Manager #4<br />
<strong>Date: </strong>Apr 1, 2009<br />
<strong>Subject:</strong> Twitter reliability enhancement functional spec</p>
<p>Got your PRD about the <a href="http://gawker.com/tech/next-big-thing/twitter-blows-up-at-sxsw-conference-243634.php">3G connectivity issues at the SXSW conference</a> and the resulting drop in twitter volume, thanks. We couldn&#8217;t help but notice the lack of any actual <em>requirements</em> in the requirements document, but the main point seemed to be to &#8220;make it mo&#8217; betta.&#8221; As mobile tower placement is subject to considerable regulation, we presume that the PRD is not calling for a build-out of a new national 3G network, but rather to eliminate dependencies on external factors beyond our control. Thus:</p>
<ul>
<li>No dependency on mobile network capacity</li>
<li>No impact from density of surrounding buildings or obstacles</li>
<li>No necessity for the presence or absence of electricity.</li>
<li>No requirement for the user to own or know how to operate a computer</li>
</ul>
<p>I think we&#8217;ve come up with a proposal which meets these requirements. The only remaining dependency is literacy. As we do not control the educational system in this country, this dependency may also need to be eliminated in a future version of this document.</p>
<p><strong>Abstract of Proposal</strong></p>
<p style="margin-left: 5em;">Twitter usage is growing robustly, but is hampered by insufficient network capacity at heavily attended tech events such as SXSW and anywhere Steve Jobs gets up on a stage. Tweet volume from such events is lower than would be expected due to the connectivity issues.</p>
<p style="margin-left: 5em;">It is proposed that designated drop zones be established at major tech events, where conference attendees can send and receive tweets. To avoid any dependency on telco infrastructure, tweets will be delivered to these TweetDrops by a robust and innovative mechanism.</p>
<p><strong>1.  Encoding</strong></p>
<p style="margin-left: 5em;">Each 140 character tweet is printed on a 5 mm wide paper strip, which is laminated and wrapped about the leg of a single carrier pigeon. The tweet is printed using a standard UPC barcode for ease of decoding at the remote end. The lamination is not necessary in theory, but in practice the messages often need to be wiped clean before processing (these are pigeons, after all).</p>
<p><strong>2.  Ordered Delivery</strong></p>
<p style="margin-left: 5em;">Conversations become difficult to follow if tweets are delivered out of order, but ordering is not guaranteed by the underlying network topology in this case. Therefore an 8 bit sequence number will be prepended to the barcode, which will be used to re-order pigeons arriving at the destination.</p>
<p style="margin-left: 5em;">With 8 bits for sequencing information, only 256 pigeons can be launched at a time. The next wave of pigeons cannot be launched until it is certain that all members of the previous wave have left the system. To achieve acceptable throughput the natural lifespan of the pigeons cannot be used for this purpose.<br />
Therefore, a small explosive device is fitted before launch to place a strong upper bound on the Time To Live (TTL) for that tweet. The next wave of tweets can be launched when the TTL for the previous wave has expired.</p>
<p><strong>3.  Loss detection</strong></p>
<p style="margin-left: 5em;">Due to the TTL mechanism employed for robust ordering it is possible that tweets will be dropped (or, more properly, exploded) in transit. To allow for retransmission an additional 8 bit acknowledgment field will be prepended to the barcode, and used to implement a sliding window protocol. <em>(XXX Hang on, are we reinventing TCP here? Let&#8217;s have a sit-down about this before you forward it to PM, or we&#8217;ll end up rat-holing on this topic.)</em></p>
<p style="margin-left: 5em;">Though lost tweets are expected to be a serious burden during initial deployment of this technology, it is believed that natural selection will result in a more reliable infrastructure as the less dependable population of pigeons is removed from the breeding stock by the TTL mechanism.</p>
<p><strong>4.  Operational Issues</strong></p>
<p style="margin-left: 5em;">The operations cost of this infrastructure is expected to be high, due to the need for replacement of pigeons whose TTL expired in transit. It is proposed that a breeding program be established in order to replenish capacity at minimal cost. This also nicely solves the problem of providing something for the pigeons to do between major tech events.</p>
<p><strong>5.  Direction of Future Work</strong></p>
<p style="margin-left: 5em;">The necessity of printing each tweet on a strip of paper and scanning the paper at the destination is a serious bottleneck in the communications path. A more efficient mechanism would be to download the tweets directly into the carrier pigeon via an existing Twitter API. Unfortunately the pigeons have strongly resisted attempts to implement any such mechanism.</p>
<p style="margin-left: 5em;">The TTL mechanism can reasonably be expected to elicit a negative response from both animal rights activists and civil defense authorities, and should be considered only a temporary measure to reduce the time to market. A subsequent update to the infrastructure should investigate use of electromagnets to confuse the carrier&#8217;s natural homing instinct and send them somewhere where the tweet payload they carry will be harmless.</p>
<p><strong>6.  Security Considerations</strong></p>
<p style="margin-left: 5em;">No thorough analysis of the security of the carrier pigeon transport has been conducted. Because each pigeon will follow a different route to the destination owing to differences in wind currents, temperature gradients, and mood, it is unlikely that an attacker would be able to capture an entire conversation.<br />
Additionally the TTL mechanism discourages interception of the pigeons in flight.</p>
<p style="margin-left: 5em;">Encryption of the tweet payload is acceptable only if the pigeons can be guaranteed not to cross from within the United States to another sovereign nation, as such would violate US export and munitions laws.</p>
<p><strong>7.  References</strong></p>
<p style="margin-left: 5em;">[1]  D. Waitzman, &#8220;A Standard for the Transmission of IP Datagrams on Avian Carriers,&#8221; RFC 1149, 1 April 1990.</p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2009/04/guest-post-cranky-engineer-responds-prd/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>New Cranky Mug Design</title>
		<link>http://crankypm.com/2009/02/cranky-mug-design/</link>
		<comments>http://crankypm.com/2009/02/cranky-mug-design/#comments</comments>
		<pubDate>Mon, 16 Feb 2009 23:26:39 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Blog Business]]></category>
		<category><![CDATA[The 7 Types of Engineers]]></category>
		<category><![CDATA[coffe+tumbler]]></category>
		<category><![CDATA[cranky+product+manager]]></category>
		<category><![CDATA[merchandise]]></category>
		<category><![CDATA[mug]]></category>
		<category><![CDATA[mugs]]></category>
		<category><![CDATA[tumbler]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1142</guid>
		<description><![CDATA[Hey!  Look!  It&#8217;s a new Cranky Product Manager mug! It declares to the world &#8220;I AM A CRANKY PRODUCT MANAGER.&#8220; You should get yourself one.  It&#8217;s WICKED AWESOME. PM leaders, just think of it. Finally, the perfect present for your team of put-upon product managers&#8211;those hard-working, in-the-trenches professionals that get no love, no appreciation, no [...]]]></description>
			<content:encoded><![CDATA[</p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2009%252F02%252Fcranky-mug-design%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22New%20Cranky%20Mug%20Design%20%23%23prodmgmt%22%20%7D);"></div>
<p>Hey!  Look!  It&#8217;s a new <a href="http://www.cafepress.com/crankypm">Cranky Product Manager mug</a>!</p>
<p>It declares to the world &#8220;<strong><a href="http://www.cafepress.com/crankypm">I AM A CRANKY PRODUCT MANAGER</a>.</strong>&#8220;</p>
<p><a href="http://www.cafepress.com/crankypm"><img style="float:left;" src="http://crankypm.com/crankypm/wp-content/images/crankymug.png" alt="Cranky Product Manager coffee tumbler from CafePress" /></a>You should get yourself one.  It&#8217;s WICKED AWESOME.</p>
<p>PM leaders, just think of it. Finally, the perfect present for your team of put-upon product managers&#8211;those hard-working, in-the-trenches professionals that get no love, no appreciation, no free trips to the Bahamas, and no credit.  And, given this economy, they probably get no bonuses or no pay raises this year either.</p>
<p>You gotta do something for them, right? Something to stave off  their burnout for at least another year&#8230;</p>
<p>Here&#8217;s an Elegant Solution(TM):  GIVE THEM <a href="http://www.cafepress.com/crankypm">MUGS!</a></p>
<p>Just imagine how spiffy you will all look at team meetings, each clutching your very own <a href="http://cafepress.com/crankypm">cranky mug</a>.</p>
<p>The first 50 mugs sold get special pricing of <a href="http://www.cafepress.com/crankypm.358814915">$12.99 for the small</a>, and <a href="http://www.cafepress.com/crankypm.358814914">$14.99 for the large</a>.  After that, the prices will go up by $1.50 each.</p>
<p>You can also get a <a href="http://www.cafepress.com/crankypm.358814912">WICKED AWESOME travel mug</a> too.  That&#8217;s what the real-life CPM is getting.</p>
<p>So BUY NOW.  Who says you can&#8217;t buy for next Christmas now?</p>
<p>Oh, and if you also want to buy some <a href="http://www.cafepress.com/crankypm/6224502">7 Types of Engineer mugs</a>, you&#8217;ll find them <a href="http://www.cafepress.com/crankypm/6224502">here</a>.</p>
<p>Thanks, and ENJOY.</p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2009/02/cranky-mug-design/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>The Veteran Software Engineer: Hard Proof At Last</title>
		<link>http://crankypm.com/2009/02/veteran-software-engineer-proof/</link>
		<comments>http://crankypm.com/2009/02/veteran-software-engineer-proof/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 21:49:39 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[The 7 Types of Engineers]]></category>
		<category><![CDATA[software+engineer]]></category>
		<category><![CDATA[software+engineers]]></category>
		<category><![CDATA[types+of+software+engineers]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=1100</guid>
		<description><![CDATA[7:00 am. The Cranky Product Manager awakes.  Grabs the Blackberry Curve off the bedside table. Starts deleting spam. Opens the following email from a reader and starts laughing hysterically. Darling Husband is startled awake and is like &#8220;what the???&#8221; Dear Cranky Product Manager, I have attached a picture of the real Veteran Engineer that works [...]]]></description>
			<content:encoded><![CDATA[</p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2009%252F02%252Fveteran-software-engineer-proof%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22The%20Veteran%20Software%20Engineer%3A%20Hard%20Proof%20At%20Last%20%23%23prodmgmt%22%20%7D);"></div>
<p>7:00 am. The Cranky Product Manager awakes.  Grabs the Blackberry Curve off the bedside table. Starts deleting spam. Opens the following email from a reader and starts laughing hysterically.</p>
<p>Darling Husband is startled awake and is like &#8220;what the???&#8221;</p>
<blockquote><p>Dear Cranky Product Manager,</p>
<p>I have attached a picture of the real <a href="http://crankypm.com/2008/10/caption-contest-the-veteran-the-seven-types-of-software-engineers/">Veteran Engineer</a> that works with me.  I saw your post, the description of Mike, and <a href="http://www.cafepress.com/crankypm.343103107">bought the mug</a> for him.  He, in turn, sent me the proof that corroborates what you have posted beyond the shadow of a doubt.</p>
<p>Please feel free to post on the site.</p>
<p>All the best,<br />
Maggie<br />
Sr. Product Manager</p></blockquote>
<p>And here the photo, along with Mike&#8217;s disclaimers:</p>
<blockquote>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoNormal">No      (party) animals were endangered during the filming of this picture.</li>
<li class="MsoNormal">No      additional clothing was needed to be purchased by the photo subject in order to      take this picture.</li>
</ul>
</blockquote>
<p><img style="float: none;" src="http://crankypm.com/crankypm/wp-content/images/realveteransidebyside.png" alt="" /></p>
<p>You will notice that Mike The Veteran Software Engineer is holding a <a href="http://www.cafepress.com/crankypm.343103107">Veteran Software Engineer mug</a>.  The Cranky Product Manager is always a sucker for a good recursion gag.  It reminds her of her lamda calculus-filled  freshman year at a random institute of technology.</p>
<p>Note that you readers should all take this as a hint to <a href="http://cafepress.com/crankypm">BUY MUGS</a> and give them to engineers.</p>
<p>Thanks Mike and Maggie, for giving the Cranky Product Manager a good chuckle!</p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2009/02/veteran-software-engineer-proof/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>On Engineering Meetings (redux)</title>
		<link>http://crankypm.com/2009/01/product-management-engineering-meetings/</link>
		<comments>http://crankypm.com/2009/01/product-management-engineering-meetings/#comments</comments>
		<pubDate>Thu, 15 Jan 2009 14:39:49 +0000</pubDate>
		<dc:creator>The Cranky Product Manager</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[engineers]]></category>
		<category><![CDATA[meetings]]></category>
		<category><![CDATA[product+management]]></category>
		<category><![CDATA[responsibility+no+authority]]></category>

		<guid isPermaLink="false">http://crankypm.com/?p=981</guid>
		<description><![CDATA[The Cranky PM is finally getting up the energy to respond to comments on her older blog posts.  In particular, those from a certain reader who keeps inflicting violent disagreement on her. What THE???  Who does he think he IS?  How DARE HE disagree with the Cranky Product Manager?  When is he (along with the [...]]]></description>
			<content:encoded><![CDATA[</p>
<div class="topsy_widget_data topsy_theme_brick-red" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcrankypm.com%252F2009%252F01%252Fproduct-management-engineering-meetings%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22On%20Engineering%20Meetings%20%28redux%29%20%23%23prodmgmt%22%20%7D);"></div>
<p>The Cranky PM is finally getting up the energy to respond to comments on her older blog posts.  In particular, those from a <a href="http://www.onproductmanagement.net/">certain reader</a> who keeps inflicting <a href="http://crankypm.com/2008/12/where-product-manager-resides-organization/#comment-1551">violent</a> <a href="http://crankypm.com/2008/12/product-managers-engineering-meetings/#comment-2047">disagreement</a> on her.</p>
<p>What THE???  Who does he think he IS?  How DARE HE disagree with the Cranky Product Manager?  When is he (along with the Cranky Product Manager&#8217;s husband) going to at LAST learn that <strong>THE CRANKY PRODUCT MANAGER IS ALWAYS RIGHT.</strong> This is a fundamental LAW of the universe.  Truly.</p>
<p>Anyway, <a href="http://crankypm.com/2008/12/product-managers-engineering-meetings/#comment-2047">here is one of the violent comments</a> that has the Cranky Product Manager&#8217;s knickers in a twist.  It is on the <a href="http://crankypm.com/2008/12/product-managers-engineering-meetings/">Divine Rules of Product Management #1: Prepping for Engineering Meetings</a> post.</p>
<p><a href='http://crankypm.com/crankypm/wp-content/images/sushidudexsmall.jpg' title='Bribing Software Developers with Sushi'><img src="http://crankypm.com/crankypm/wp-content/images/sushidudexsmall-300x198.jpg" width="300" height="198" class="attachment-medium" alt="sushidudexsmall-300x198 Bribing Software Developers with Sushi"  title="Bribing Software Developers with Sushi" /></a>You know, the post where the Cranky Product Manager said (in a much more long-winded fashion), &#8220;If you&#8217;re going to meet with the Engineering Team and you suspect the meeting is going to be contentious because some/all will be surprised or disagree with your recommendations, then make your case with each team member individually ahead of time so that the meeting goes smoothly.&#8221;</p>
<p>To be perfectly clear, the Cranky Product Manager was NOT suggesting the following:</p>
<ul>
<li>That you BRIBE engineers using free food. Her point was that you discuss the issues with individual engineers in an INFORMAL setting. If you can do this by playing some (free) Nintendo Wii with them, then fine, do that.  <em>(Note that the Cranky PM usually does not pay when she lunches with engineers; everyone pays for him/herself.  Of course, this only works if you mostly ask developers to agenda-free lunches. Otherwise they&#8217;ll be suspicious every time you ask them to lunch.)</em></li>
<li>That you meet with individual engineers prior to EVERY meeting with Engineering.  It&#8217;s only mandatory before the meetings you expect will be contentious.  <em>(Note, though, that if you frequently meet and socialize with individual developers, you can expect less and less contentious meetings over time.)</em></li>
</ul>
<p>Anyway, who could have guessed anyone would disagree with the idea of meeting with engineers individually before contentious meetings?  Not the Cranky Product Manager.</p>
<p>During the Cranky Product Manager&#8217;s days as a hoity-toity management consultant in the McBainCG Group, this practice was called &#8220;the meetings before the meeting&#8221; and was regarded as fundamental.  The goal of Big Meetings was to get the client team officially on-board and start them moving forward with the McBainCG Group&#8217;s recommendations.  Without the &#8220;meetings before the meeting,&#8221; getting this &#8220;Let&#8217;s Go&#8221; decision was very unlikely.</p>
<p>Why not?</p>
<p>Well, first, many people &#8212; especially engineers &#8212; pride themselves on being these paragons of rational thinking (this is called self-delusion). These folks CANNOT say &#8220;let&#8217;s do it&#8221; without trying to poke holes in your arguments for a while &#8212; sometimes a LONG while, as in hours.</p>
<p>Second, without &#8220;meetings before the meetings,&#8221; you are leaving an awful lot &#8212; too much &#8212; to chance.  The meeting and your entire project could go to hell because someone has an objection you hadn&#8217;t anticipated and you say something stupid.  Or this common situation: an engineer is surprised by your findings and has a visceral emotional reaction against the &#8220;surprise&#8221; aspect, but instead of complaining about the surprise, s/he shoots down your findings, in public. Then, the meeting ends before you can make a proper rebuttal.  Great. Now you&#8217;ll have to work five times as hard to convert this person to your course of action.  And if this person is respected or influential, well you gotta work on other people too.</p>
<p>Now, as far as Saeed&#8217;s assertion that in a &#8220;rational&#8221; engineering organization, the developers will fall in line and do what PM recommends, the Cranky Product Manager says:</p>
<ol>
<li>The &#8220;rational&#8221; engineering organization does not exist because it is made of people, and people are inherently irrational.</li>
<li>The so-called rational Development Team might do what you recommend even if they disagree with you. But if you want them to do a GOOD or possibly even GREAT job, if you want to keep them motivated, and if you want FUTURE projects with them to go well, then you will spend the time to convince them your recommendations are the right ones.</li>
<li>It&#8217;s much easier to be a PM if you have the loyalty and respect of the Development Team. You get that respect by giving it &#8211; by listening to others&#8217; opinions and learning about them as people.   And don&#8217;t only talk to your developers when you want something from them.  Seriously, that makes you a user and abuser.</li>
<li>If you know the Development Team is going to fall in line with your recommendations because they are &#8220;rational&#8221; or will buy into your recommendations, the meeting won&#8217;t be contentious will it?  So, maybe this Divine Rule doesn&#8217;t apply.</li>
</ol>
<p><a href="http://productbeautiful.com/">Paul Young</a> commented that these &#8220;meetings before the meetings&#8221; take a lot of time and are really only worthwhile with the lead developer/architect (not the junior developers).  Well, again, the Cranky Product Manager respectfully disagrees.  In her experience, junior developers that are not &#8220;sold&#8221; on the PM&#8217;s recommendations are often very disruptive to the actual project (even if they are quiet in the meeting) and spread all kinds of negativity.  This varies of course, but many young developers (especially those hailing from elite &#8220;Institutes of Technology&#8221;) are <a href="http://crankypm.com/2008/10/caption-contest-the-hotshot-the-seven-types-of-software-engineers/">Hotshot</a> types who think they are smarter than everyone else &#8212; ESPECIALLY product managers.</p>
<p><a href="http://crankypm.com/2008/12/product-managers-engineering-meetings/#comment-2076">Solomon</a> commented &#8220;I bet Cranky Product Manager is Asian.&#8221;  Well, maybe, but maybe not. Is this comment because the CPM&#8217;s tactics provide ways for engineers and product managers alike to avoid losing face in a public forum?  Or is it because she clearly likes sushi?  Explain?</p>
<p>Paco commented that the &#8220;meetings before the meetings&#8221; were important for engineers, but maybe not for other types of business professionals.  Well, the Cranky Product Manager only partially agrees.  Engineers are special because they like to think they are super-rational and analytical and love poking holes in arguments, and thus need to be given plenty of time to do this.  Further, their unique role makes it easier for them to obfuscate what they are really doing.</p>
<p>However, &#8220;meetings before the meetings&#8221; and getting buy-in are important for ANY meeting you think will be contentious.  NEVER surprise ANYONE &#8211; - no matter their role &#8211; at a Big Meeting where you&#8217;re seeking &#8220;Let&#8217;s Do It&#8221; approval.  Yes, this means the CEO. Find a way to give him/her a preview of what you&#8217;ll say ahead of time.</p>
<p>Anyway, this whole thing reminds the Cranky Product Manager of a post she wrote two years ago entitled <a href="http://crankypm.com/2006/11/that-all-the-responsibility-and-no-authority-saying/">&#8220;That All the Responsibility But No Authority&#8221; Saying</a>.  Check it out.</p>
]]></content:encoded>
			<wfw:commentRss>http://crankypm.com/2009/01/product-management-engineering-meetings/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>

