Software Exorcism 314
Mark Burroughs writes "Leave it to a SubGenius preacher to take normally mundane subjects, like software maintenance, and expose the unholy conspiracy behind them. I think the following quote from the introduction sums up the tone of the book nicely: 'Rather than shield your eyes from the sordid realities of the software industry, I am going to dust off my old 8mm films and let you take a good look at the uncensored truth for yourself. You may want to keep a paper bag handy in case you get sick.'" You know you want to read on for the rest of Burrough's review.
Software Exorcism | |
author | Right Reverend Bill Blunden |
pages | 351 |
publisher | Apress |
rating | two thumbs up |
reviewer | Mark Burroughs |
ISBN | 1590592344 |
summary | Tactics for Maintaining Legacy Code |
Reverend Blunden's sermons focus on things that the college professors, in their tweedy jackets, will never talk about. As such, this book should be required reading by computer science majors, who often have a number of misconceptions concerning the industry that they are about to enter.
I doubt very highly that your instructors will tell you how to handle all the nasty little things that can occur when humans work in groups: backstabbing, stonewalling, sabotage, etc. The sad truth is that the people who do actually learn about these tactics (under the guise of "organizational behavior") are MBAs, the people who end up being managers. Folks, the deck has been stacked: The MBAs have been given whips, and the CS majors have all been given saddles. It's called animal husbandry; ... now go look up the word "cull."
Glancing at the back cover of the book, Reverend Blunden looks like the type of subversive individual that the ATF would like to have a chat with. As such, he is not one to let the reader leave without a few useful weapons (some of which may be questionable from a legal standpoint ... but hey, business is war). For example, the book tells you construct a paper trail so that even the shiftiest weasel cannot switch sides if it's suddenly convenient. Reverend Blunden even goes so far to refer the reader to a vault purveyor in New York so that evidence can be stored securely at home (hint: it's sure as hell not safe at the office). Don't kid yourself; a solid paper trail can save you during a witch-hunt.
The book also looks at how to deal with legacy code in situations where internal competition has encouraged people to hoard information, or to escape responsibility via promotion (i.e. VPs have been known to develop amnesia about the code they worked on). It explains the forces that cause these shenanigans to occur and then describes how to flush the guilty party out into the open, where their slimy tactics won't work. As before, generating a trail of evidence and possessing a degree of intellectual humility go a long way.
Then there is privacy, an issue that employers will definitely try to skirt. Management types tend to be keen on metrics to measure productivity. In addition, software engineers typically have access to code, or algorithms, that may be considered proprietary secrets. This has led many companies to monitor their engineers in some way or another (i.e. key loggers, remote desktops, sniffers, TEMPEST, etc.). Reverend Blunden provides a couple of easy, but extremely effective, counter tactics that the reader can use to foil this kind of Big Brother antics.
At the end of the day, Reverend Blunden tells it like it is. He hasn't been bought off and he doesn't have an agenda. His only goal is to warn new hires about the various landmines that exist, buried under the polite exterior of the corporate landscape. You may not like what he has to say, but no one ever said that software engineering was a pretty job. If they did, they were telling you a lie. Praise Bob.
You can purchase Software Exorcism from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
Do we need this? Preaching to the choir? (Score:3, Interesting)
Cmon, TEMPEST shielding is like putting up a grounded copper cage around my cube. I don't necessarily trust my management to make sound IS/IT decisions, but some common sense will go a long way in covering your ass. No, I'm not new here, but I must have missed the memo that said Tues/Thurs is Feed The Trolls day ( TIFTD ?)
-B
but, the "real" programmers" (Score:1, Interesting)
if you're working in a place that has others playing too many sophisticated political games, and the boss doesn't see the reality, then i say 'eff 'um and get the hell outta there (and back to some serious coding).
Maybe just lucky (Score:4, Interesting)
We produced meeting logs and design review documentation that was signed by the backstabbing PE, etc. It didn't help much, as the PE was the CEO's butt-boy.
Folks used to think we were overly paranoid because we made the managers physically sign all of our documentation. After "Black Thursday," folks had a different attitide.
I'm sure there are places to work where the office politics are pretty benign. Unfortunately, there are a lot of weasels out there, and they thrive on "improving" situations that already run well. Enjoy it while it lasts.
Entertaining... (Score:4, Interesting)
Re:Proper instructions (Score:3, Interesting)
Never stop learning, but start doing it outside the classroom as soon as possible. We have become a "course" oriented society, much to its detriment. School can only teach knowledge, not wisdom, and it isn't even very good at teaching knowledge. Get outside, find a mentor if you can and learn by experience and transmission, even if the process isn't always pleasant or financially rewarding in the long run.
Hey, even if you get screwed you're still getting payed for it, rather than paying. They just don't kiss you afterwards.
You might start by reading Stephen Leacock's (Professor of Economics at McGill University) "Too Much College."
It's out of print, but too new to be at Project Gutenberg, but you can probably find a copy for a few bucks at that little used bookstore with the cat who likes to sleep in the window.
Make friends with the cat. It's worth your while.
KFG
Re:Is this book really neccessary?? (Score:1, Interesting)
I finished a project succesfully, and the other employees had told me to not show them up by working too hard. I ignored them - big mistake, because they had "a word" with my Line Manager and the next day I was on probation for some made up reason and demoted to Data Entry. Some kids tried to steal my Line Manager's car from the parking lot 3 days ago. One day I walked in late because a hole opened up in my shoe in the rain which I showed to my Manager. I told him it hurt, but I still got a verbal warning. My company gets important defence contracts, and my project manager stole a classified military database on his USB Flash-RAM key. He talked crap and got out of trouble, I suppose that's something a hostile working environment teaches you. My friends have told me that there are some "IT sweatshop" jobs, but I didn't believe them until now. Also I can't leave the job, because I have to pay the company back for the training they've given me if I do (it's in the contract I had to sign). I've used up my welfare credit, I have no savings and therefore I am in a state of slavery, I can kill and nobody can blame me.
Bingo! (Score:3, Interesting)
I used to work for a place that had a very dysfunctional corporate environment. (Basically, their various locations around the country were structured in such a way where it promoted competition between them. This meant that if one plant figured out a more efficient and money-saving process - they'd keep it to themselves and actively try to prevent employees of other plants from figuring out how it worked. Nonetheless, maximizing their profit as a whole was what the company really needed - since they didn't exist as independent businesses.)
Management paid lip service to the idea that changes were needed, and spent considerable money on training materials and an in-house instructor to help improve things. Unfortunately, the policies put in place that caused these problems to begin with were never modified. (Managers were still paid bonuses based on their productivity relative to the other locations' productivity, for example. Documents that should have been openly accessible to all employees were locked down with security permissions based on a plant's physical location. The list goes on, but you get the idea.)
Ultimately, I came to realize that the owners of the business and upper-level managers they appointed really didn't want to change. Sure, they wanted to see improvement - but only within the existing structure, which was flawed.
Sweeping Generalization (Score:3, Interesting)
This is a little bit on the extremist side. I took a few org behavior classes on my way to dropping out of an MBA program. The classes I took were exactly 180 out from how the above characterizes them. As future company members (employees) we were encouraged to think about how to listen to your teammates, to think about how the heirarchical models of employee, manager, and worker were not optimal for good business, rather teams where job title have nothing to do with role could vastly improve the nature of the working environment and the bottom line. This is regarded as "hooey" by the status quo, but embraced by techies everywhere (sorry for the sweeping generalization of my own). I agree that the software industry needs to change, but B-Schools (at least some of them) also recognize this about many industries, and are actively teaching MBAs to be less egotistical and heirarchy minded, and better listeners and facilitators (which all of my good bosses were).
Techies need to be trained in this as well, so that everyone coming in to the working environment understands what collaboration and teamwork mean, and how to contribute effectively in that environment.
Please ignore any grammar and spelling errors, and let me know what you think.
Re:At the end of the day ... (Score:1, Interesting)
Often a computer programmer is in the position of spewing facts that crumble the bullshit some sheister is trying to whitewash everyone with to get what they want. Often this sheister is the programmers own boss. It's more fun when you get to do it to someone who isn't your boss though. Then you can artfully destroy them and show them for the bullshit artist they are, all by helpfully stating facts that undermine everything they say. The person is usually in a high position, a slimeball liar and often pushy and arrogant. It makes the sound of their sweat droplets hitting the floor all the more delicious.
One person above talked about letting their manager point them like a gun to spew facts at his rivals. There's no need to be such a tool. You have quite good shelter in the position of spewing helpful facts like bombs because the destruction you wreak on the plans of those around you is actually helpful to the company you work for. And everyone can see it. You are merely interjecting the truth, well explained and clear, so no blame will ever come to you. The weapons you use work only against liars, but everyone lies. No rhetoric is needed on your part, your words speak only of things that are concrete and beyond debate. You wreak carnage with your voice from an impregnable fortress of honesty. You are a light that burns out the rot of all lies equally so you are respected and feared by all.
Comment removed (Score:4, Interesting)
Disciplined Minds (Score:3, Interesting)
When I step back and think about it, I'm amazed that we put up with it. For example, annual appraisals are the norm. Some people will tell you that these are a necessary part of any modern business, and that they benefit the appraised as well as the company. Fine, but never forget who's in the driving seat and has all the power at these things. Who appraises who, and why should the world be like that? We should look at these power structures and challenge them for their legitimacy: what exactly is it that gives *your manager* - who is, after all, another flawed human being, not unlike yourself or anyone else you might meet - the right to actually pass judgement on you and give you a rating? Why do we as a society let this happen? It's not the way normal 'more voluntary', natural human relationships work.
What gives managers that power right now, is their ability to climb the greasy pole quicker than you. And it goes right up the chain, to the top few (in relative terms, absolutely minute) people at the very top of the chain - the people with all the wealth/capital (== power).
The nature of corporations as "systems" is to maximise profit, market share, and so on. That's what they do. If they don't, they cease to exist, because some other bigger corporations either wipes them out or gobbles them up. But this motivation to maximise profit in these huge, powerful corporations does not always, in fact many would argue, does not typically sit well with what we should do as a human society. So we eat up the planet's oil resources and worry about tomorrow tomorrow, we ignore global warming, and occasionally (as was recently shown), we go to war and kill people.
Corporations, the biggest of which are now larger than many countries, and which hold huge political sway in supposedly democratic countries, are 'tyrannical' in nature. Internally they are extremely hierarchichal, with the power flowing from the top downwards. We wax lyrical about how great democracy is and so on, but the vast majority of people spend a huge amount of their lives in a workplace with zero democracy (ever been asked to vote for your manager?). They're pretty much told what to do, and they do it to get on. Or they're weeded out.
Anyway, I've kind of strayed from my main point, which is that the modern world requires "professionals" to behave a certain way - in fact when people say 'be professional' they mean control your natural reactions and behave in a way that the surrounding entity dictates. Anyone who doesn't conform to this either (1) doesn't get on, or (2) is weeded out of the system.
Please excuse the excess verbiage.