1 .. _managementstyle: 2 3 Linux kernel management style 4 ============================= 5 6 This is a short document describing the prefer 7 on who you ask) management style for the linux 8 mirror the :ref:`process/coding-style.rst <cod 9 degree, and mainly written to avoid answering 10 questions over and over again. 11 12 Management style is very personal and much har 13 simple coding style rules, so this document ma 14 to do with reality. It started as a lark, but 15 might not actually be true. You'll have to dec 16 17 Btw, when talking about "kernel manager", it's 18 lead persons, not the people who do traditiona 19 companies. If you sign purchase orders or you 20 budget of your group, you're almost certainly 21 These suggestions may or may not apply to you. 22 23 First off, I'd suggest buying "Seven Habits of 24 People", and NOT read it. Burn it, it's a gre 25 26 .. [#f1] This document does so not so much by 27 making it painfully obvious to the questione 28 to what the answer is. 29 30 Anyway, here goes: 31 32 .. _decisions: 33 34 1) Decisions 35 ------------ 36 37 Everybody thinks managers make decisions, and 38 important. The bigger and more painful the de 39 manager must be to make it. That's very deep 40 actually true. 41 42 The name of the game is to **avoid** having to 43 particular, if somebody tells you "choose (a) 44 to decide on this", you're in trouble as a man 45 manage had better know the details better than 46 you for a technical decision, you're screwed. 47 competent to make that decision for them. 48 49 (Corollary:if the people you manage don't know 50 you, you're also screwed, although for a total 51 Namely that you are in the wrong job, and that 52 your brilliance instead). 53 54 So the name of the game is to **avoid** decisi 55 painful ones. Making small and non-consequent 56 makes you look like you know what you're doing 57 needs to do is to turn the big and painful one 58 nobody really cares. 59 60 It helps to realize that the key difference be 61 small one is whether you can fix your decision 62 can be made small by just always making sure t 63 you **will** be wrong), you can always undo th 64 backtracking. Suddenly, you get to be doubly 65 **two** inconsequential decisions - the wrong 66 67 And people will even see that as true leadersh 68 *cough*). 69 70 Thus the key to avoiding big decisions becomes 71 things that can't be undone. Don't get ushere 72 you cannot escape. A cornered rat may be dang 73 is just pitiful. 74 75 It turns out that since nobody would be stupid 76 a kernel manager have huge fiscal responsibili 77 fairly easy to backtrack. Since you're not go 78 huge amounts of money that you might not be ab 79 thing you can backtrack on is a technical deci 80 back-tracking is very easy: just tell everybod 81 incompetent nincompoop, say you're sorry, and 82 work you had people work on for the last year. 83 you made a year ago wasn't a big decision afte 84 easily undone. 85 86 It turns out that some people have trouble wit 87 reasons: 88 89 - admitting you were an idiot is harder than 90 maintain appearances, and coming out in pub 91 wrong is sometimes very hard indeed. 92 - having somebody tell you that what you work 93 wasn't worthwhile after all can be hard on 94 too, and while the actual **work** was easy 95 deleting it, you may have irrevocably lost 96 engineer. And remember: "irrevocable" was 97 the first place, and your decision ended up 98 all. 99 100 Happily, both of these reasons can be mitigate 101 admitting up-front that you don't have a frigg 102 people ahead of the fact that your decision is 103 might be the wrong thing. You should always r 104 your mind, and make people very **aware** of t 105 to admit that you are stupid when you haven't 106 stupid thing. 107 108 Then, when it really does turn out to be stupi 109 eyes and say "Oops, not again". 110 111 This preemptive admission of incompetence migh 112 actually do the work also think twice about wh 113 not. After all, if **they** aren't certain wh 114 sure as hell shouldn't encourage them by promi 115 work on will be included. Make them at least 116 embark on a big endeavor. 117 118 Remember: they'd better know more about the de 119 they usually already think they have the answe 120 thing you can do as a manager is not to instil 121 healthy dose of critical thinking on what they 122 123 Btw, another way to avoid a decision is to pla 124 we just do both?" and look pitiful. Trust me, 125 clear which approach is better, they'll eventu 126 answer may end up being that both teams get so 127 situation that they just give up. 128 129 That may sound like a failure, but it's usuall 130 something wrong with both projects, and the re 131 couldn't decide was that they were both wrong. 132 smelling like roses, and you avoided yet anoth 133 have screwed up on. 134 135 136 2) People 137 --------- 138 139 Most people are idiots, and being a manager me 140 with it, and perhaps more importantly, that ** 141 **you**. 142 143 It turns out that while it's easy to undo tech 144 as easy to undo personality disorders. You ju 145 theirs - and yours. 146 147 However, in order to prepare yourself as a ker 148 remember not to burn any bridges, bomb any inn 149 alienate too many kernel developers. It turns 150 is fairly easy, and un-alienating them is hard 151 immediately falls under the heading of "not re 152 no-no according to :ref:`decisions`. 153 154 There's just a few simple rules here: 155 156 (1) don't call people d*ckheads (at least not 157 (2) learn how to apologize when you forgot ru 158 159 The problem with #1 is that it's very easy to 160 "you're a d*ckhead" in millions of different w 161 even realizing it, and almost always with a wh 162 you are right. 163 164 And the more convinced you are that you are ri 165 you can call just about **anybody** a d*ckhead 166 right), the harder it ends up being to apologi 167 168 To solve this problem, you really only have tw 169 170 - get really good at apologies 171 - spread the "love" out so evenly that nobody 172 like they get unfairly targeted. Make it i 173 might even be amused. 174 175 The option of being unfailingly polite really 176 trust somebody who is so clearly hiding their 177 178 .. [#f2] Paul Simon sang "Fifty Ways to Leave 179 frankly, "A Million Ways to Tell a Developer 180 scan nearly as well. But I'm sure he though 181 182 183 3) People II - the Good Kind 184 ---------------------------- 185 186 While it turns out that most people are idiots 187 sadly that you are one too, and that while we 188 knowledge that we're better than the average p 189 nobody ever believes that they're average or b 190 also admit that we're not the sharpest knife a 191 other people that are less of an idiot than yo 192 193 Some people react badly to smart people. Othe 194 195 Make sure that you, as a kernel maintainer, ar 196 Suck up to them, because they are the people w 197 easier. In particular, they'll be able to make 198 which is what the game is all about. 199 200 So when you find somebody smarter than you are 201 management responsibilities largely become one 202 good idea - go wild", or "That sounds good, bu 203 second version in particular is a great way to 204 new about "xxx" or seem **extra** managerial b 205 smarter person hadn't thought about. In eithe 206 207 One thing to look out for is to realize that g 208 not necessarily translate to other areas. So 209 specific directions, but let's face it, they m 210 do, and suck at everything else. The good new 211 naturally gravitate back to what they are good 212 are doing something irreversible when you **do 213 direction, just don't push too hard. 214 215 216 4) Placing blame 217 ---------------- 218 219 Things will go wrong, and people want somebody 220 221 It's not actually that hard to accept the blam 222 kind of realize that it wasn't **all** your fa 223 best way of taking the blame: do it for someon 224 for taking the fall, they'll feel good about n 225 person who lost their whole 36GB porn-collecti 226 incompetence will grudgingly admit that you at 227 out of it. 228 229 Then make the developer who really screwed up 230 **in private** that they screwed up. Not just 231 future, but so that they know they owe you one 232 importantly, they're also likely the person wh 233 face it, it sure ain't you. 234 235 Taking the blame is also why you get to be man 236 It's part of what makes people trust you, and 237 glory, because you're the one who gets to say 238 you've followed the previous rules, you'll be 239 by now. 240 241 242 5) Things to avoid 243 ------------------ 244 245 There's one thing people hate even more than b 246 and that is being called a "d*ckhead" in a san 247 first you can apologize for, the second one yo 248 chance. They likely will no longer be listeni 249 do a good job. 250 251 We all think we're better than anybody else, w 252 somebody else puts on airs, it **really** rubs 253 be morally and intellectually superior to ever 254 don't try to make it too obvious unless you re 255 somebody [#f3]_. 256 257 Similarly, don't be too polite or subtle about 258 ends up going overboard and hiding the problem 259 internet, nobody can hear you being subtle". U 260 hammer the point in, because you can't really 261 your point otherwise. 262 263 Some humor can help pad both the bluntness and 264 overboard to the point of being ridiculous can 265 without making it painful to the recipient, wh 266 silly. It can thus help get through the perso 267 have about criticism. 268 269 .. [#f3] Hint: internet newsgroups that are no 270 are great ways to take out your frustrations 271 insulting posts with a sneer just to get int 272 a while, and you'll feel cleansed. Just don' 273 274 275 6) Why me? 276 ---------- 277 278 Since your main responsibility seems to be to 279 peoples mistakes, and make it painfully obviou 280 you're incompetent, the obvious question becom 281 first place? 282 283 First off, while you may or may not get scream 284 boys, let's not be judgmental or sexist here) 285 room door, you **will** get an immense feeling 286 for being "in charge". Never mind the fact th 287 by trying to keep up with everybody else and r 288 as you can. Everybody will still think you're 289 290 It's a great job if you can hack it.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.