Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Businesses Books Media It's funny.  Laugh. Programming Book Reviews IT Technology

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.

This discussion has been archived. No new comments can be posted.

Software Exorcism

Comments Filter:
  • $3.50 cheaper (Score:-1, Informative)

    by Anonymous Coward on Thursday October 23, 2003 @01:03PM (#7292069)
    Ref: Amazon has this book for $3.50 cheaper than bn [amazon.com]
    Spend 50 cents more to get free shipping.
  • I don't get it ... (Score:2, Informative)

    by obsidianpreacher ( 316585 ) on Thursday October 23, 2003 @01:05PM (#7292104)
    So ... the book deals with the "seedier" side of computer science (things like privacy ... gasp!), and is required reading for people entering the field ...

    Hell, just have them read /. !!! Same stuff, only it's free, has stories that are continuously duplic^H^H^H^H^H^Hupdated, and a lively and informative userbase ... why go for a book instead?
  • Go academic (Score:1, Informative)

    by Anonymous Coward on Thursday October 23, 2003 @01:15PM (#7292227)
    You don't have to. Go for a doctorate and a cushy government paid academic career. You don't have to really work for the rest of your life.
  • Book Prices (Score:4, Informative)

    by Anonymous Coward on Thursday October 23, 2003 @01:18PM (#7292286)
    Before the morons start quoting prices from B&N vs. Amazon, let's remember there are more than those two online. Try shopping at AddAll [addall.com]. It's a shopping bot for books. Prices: Overstock: $21.99, BooksAMillion: $27.44, Amazon: $27.93. Switching to BestBookBuys [bestbookbuys.com] we get BookPool at $22.50, along with (click for the results, see Amazon in 5th place!: results [bestwebbuys.com]. And finally, we go to BookPool with a price of $22.50. Now, can we quit using B&N and Amazon ONLY? Jeez. http://www.bestwebbuys.com/books/search?isrc=b-hom e-search&q=1590592344&t=ISBN&x=16&y=13
  • Agreed (Score:5, Informative)

    by nycsubway ( 79012 ) on Thursday October 23, 2003 @01:19PM (#7292300) Homepage
    If the subject of the book is similar to the review, then I agree completely with the author. Computer Science in the corporate world is nothing like it is in the academic world. Something that is accurate and efficient in college is often not something that is done in a company.

    The concept of politics is something that changes the meaning of the work you do at a company. In college, you are given an assignment to do. You do it, you are graded on it and you move on. At a company, you are asked what the customer wants in their software, and are not given specs. You are supposed to guess what they want. You are also never given a realistic timetable in which to do the project.

    Some of those hindrences to doing a project are caused by outside forces, but most are caused by inside forces. Someone is trying to impress someone else in the company by promising something before it can be done. Or they may have their team develop a project and then release it to upper management only to find its not wanted.

    Politics plays a huge role in what happens to the programmers at the bottom as well. Utimately everything that occurs to the programmer can be a result of politics. If someone cancels a project, it may be that they simply didn't like the person doing it.

    At my company, we are in limbo over whether we will continue to develop a program to do something that we currently license software to do. To replace the functionality of the software will take a couple months and is nothing more than a couple of webpages and a database. We pay $250,000/yr for the outside software and can save all of that by doing it in house. The reason we are having trouble is politics. Certain people dont want the software inhouse.

    Is it in the best interest of the company? No. But it's in the best interest of someone at the company. Thats a danger inside such large corporations, but it is how business gets done.
  • Re:The man (Score:5, Informative)

    by Alrocket ( 191107 ) on Thursday October 23, 2003 @01:33PM (#7292464) Homepage
    "The Pragmatic Programmer" [amazon.com] is a pretty good read for the technical side of things, and introduces good habits. I'd have a look at that if I were you.
  • Learn to NEGOTIATE! (Score:5, Informative)

    by Ridgelift ( 228977 ) on Thursday October 23, 2003 @02:20PM (#7293015)
    Having mentioned this many times and been modded down into the netherworld, I'll mention it again in hopes that someone will catch on.

    This book is all about one thing: negotiating. It's a skill that is seldom taught formally, and yet is used every day of your life. Even when you were a wee babe trying to figure out how to get a cookie from mommy, you were learning to negotiate.

    Unfortunately techs are usually poorly equipped to negotiate skillfully, a fact I learned personally when my scum-of-a-boss-who-I-thought-was-a-friend ripped me off for thousands because I didn't know how to negotiate properly. For years I was bitter, until I started checking out books and audio tapes on how to negotiate effectively. Bottom line: it was my fault I got ripped off.

    You've only got three resources: time, energy and money. When you work for an employer, it's a give and take of how much of those three resources you're willing to exchange. The best teacher of negotiating I've heard so far is a guy named Roger Dawson (I won't post the link, just Google his name or go to your local library).

    So now you MBA's out there who know what I'm talking about can mod me down now.
  • by Tangurena ( 576827 ) on Thursday October 23, 2003 @04:30PM (#7294627)
    I have had several different types of positions in the not too distant past. Some were as machiavellian as described in this book.

    Example 1: A bank. Phone conversations were recorded (but it was denied if you asked). Email and web access was monitored. If you were overheard talking about leaving your job, you were escorted to the door. If you browsed monster.com, you were escorted to the door. I was hired to make web pages with Visual Interdev, but that was not on the approved software list. So when it was time to renew my contract, I was dismissed because a software audit showed that I had unapproved software on my computer: Visual Studio.

    Example 2: A software development company in the health care industry. There was a rather complicated workflow process and one of the managers did not like doing one step because it was inconvenient. During a very nasty meeting (the sort you walk into knowing that someone is getting fired), I demonstrated on the blackboard how the data moved thru the system and where it stopped. I was able to show via the data and paper trails where the data went and who dropped the ball. Until that point, all the eyes were on me and my department was about to get tossed out the door. When I showed the part she dropped the ball on, and several other samples of the same failure, those eyes shifted to her. Because of her relationship with the CEO (not that kind you dirty pervert, they were long time close friends), she was unfireable. When the CEO was later booted by the board of directors, she was given 2 weeks pay instead of notice and walked out the door. Because of her (illegal) immigration status, anyone with an axe to grind could have called up INS and gotten her deported.

    Example 3: a small business. Because the person running the business was the vindictive sort (some ex-employees were seached by the police theft of property), as I started to look for alternate employment, I built up a "cya" file at home of things that would get the owner arrested for some serious federal time if they fell into the police's hands (they would only find it if they busted into my house, although a second copy of the file was kept in my parent's garage). I kept that file for about 2 years afterwards, then discarded it.

    Example 4: a large corporation. It was known that several hundred people were getting laid off towards the end of the year (about 10% reduction in staff). Some not-so-competant people who were afraid of losing their positions yielded to temptation to sabotage other's software. Your project is constantly buggy, late and over budget? Pack your things. When the sabotage was uncovered, they were laid off too, but the victims were not rehired.

    You see, part of the problem is that in the USA we are brought up to believe that we live in a meritocracy. That the better mouse trap will get the market share. That if that mousetrap fails to survive in the market, it was the fault of the makers, not the fault of the others' producers who buy off congress to make the better one illegal. That the better person will get the job. And when we don't get that job, and the person who did get it was not qualified, then we must have done something wrong. Not until we start realizing that the other person got the job because of reasons that had nothing to do with how smart or qualified or better looking or educated, that you will understand that the publically stated things are not the real things. What is said has very little to do with what is going on. Instead, it has become a place where luck is more important than skill, and watching your back and covering your butt is how you make your own luck. Blaming the victim is our national pasttime.

    Your naivite is a result of luck and innocence. There will come a day when you are burned badly, and if you are honest with yourself, will dig into and analyse the root causes of that incident. Honestly, I hope you can live your whole life in innocence. The job market is tight enought that people can get away with treating skilled, technical wor

  • by ScrewMaster ( 602015 ) on Thursday October 23, 2003 @11:21PM (#7297331)
    Well, I don't about you, Ridgelift, but when I was a wee babe I wasn't negotiating for Mommy's cookie.

    BUT ... you are absolutely correct. After having been an independent developer for a decade and a half (and having gotten screwed royally a couple of times) I have to agree with you. Anyone with mod points please beam this guy up from the nether regions.

    Negotiation is actually not the first step. Often it just takes having an awareness of the other guy's agenda to make all the difference. I mean, being able to see past the smiles and the backslaps^H^H^H^H^Hstabs is a skill that many have not acquired. The fact that your ex-scum-of-a-boss was able to successfully masquerade as a friend for long enough to stick it to you is a case in point. I once lost a thirty-thousand dollar development contract to a Canadian company because I believed that a sales engineer I had known for years was my friend. He saw a chance to make a little more commission and stuck the knife in and twisted it.

    These kinds of people are, to varying degrees, sociopaths. They have little feeling or empathy for others, and consequently have to simulate it. The simulation is rarely perfect, however, and once you learn you to pick up on the little clues they leave, it is much easier to defend against them.

If you want to put yourself on the map, publish your own map.

Working...