Troubleshooters.Com Presents

Troubleshooting Professional Magazine

Volume 5 Issue 2, February 2001
Simplify Everything
Copyright (C) 2001 by Steve Litt. All rights reserved. Materials from guest authors copyrighted by them and licensed for perpetual use to Troubleshooting Professional Magazine. All rights reserved to the copyright holder, except for items specifically marked otherwise (certain free software source code, GNU/GPL, etc.). All material herein provided "As-Is". User assumes all risk and responsibility for any outcome.

[ Troubleshooters.Com | Back Issues ]


Everything should be made as simple as possible, but not simpler.  - Albert Einstein

CONTENTS

Editors Desk

By Steve Litt
Subway was king of franchises. In the late 80's my accounting teacher mentioned they were the fastest growing franchise in America. I wondered what their secret was. How did they uniformly replicate their success in store after store across the country?

Using a bathroom in a Northern California Subway, I noticed a hand lettered cardboard sign in the kitchen. A simple sign. But profound. The sign read:

Simplify Everything

I have no idea if this advice came from corporate, or whether this philosophy was responsible for Subway's success. But it sure made an impression on me. As I ate my sandwich, I thought about Subway's seemingly complex list of possible ingredients, meats and breads. About the hundreds of custom sandwiches served each day, and the flawless way those sandwiches were served. About how the ingredients were all right in front of the sandwich maker, and the bread was always in the oven, and how everything got done the same way every time, and how this company could teach America's supposedly "lazy and incompetent" minimum wage workers how to achieve this without a manager on the premises.

Simplify everything. An idea both simple and profound. And surprisingly difficult to achieve.

So kick back and relax. Enjoy and think. This is your magazine.

Steve Litt is the documentor of the Universal Troubleshooting Process.  He can be reached at Steve Litt's email address.

What is Simplicity?

By Steve Litt
Everyone knows what simplicity is. It's not rocket science. Simplicity is the ability to drive a car and not need to precisely apply the brakes to prevent a skid. Simplicity is the ability to repair a car without needing to worry about extraneous variables like antilock brakes. Wait a minute. Did I skip a step here?

Simplicity seems so absolute and common sense. But to a great degree simplicity is in the eye of the beholder. That "plug and play" Windows 98 system that seemed so incredibly simple when you used it to write notes to people can seem like a jungle of complexity when you need to place an ODBC compliant user interface program on it. The car that does everything for you costs double the repair labor charge. Extreme simplicity can be achieved at a local level if one is willing to pay with horrid complexity overall. Simplification is always a tradeoff.

I define simplicity as the lack of complexity. Fewer components. Fewer moving parts. A shorter instruction list. Less phone calls, emails and memos. Less inventory. Less manufacturing steps. Less employees. Less bosses. Less machines.

Sometimes simplifying the customer activities by making the product or service more complex is an acceptable tradeoff. In such cases the product or service will be highly rated by the customer. So when is it not OK to add complexity to a part of the system?

One sure tipoff is when your product or service starts resembling a Keystone Kops film. The customer calls and gets put in phonemail purgatory. He finally reaches a human who can't help him, but transfers him, but disconnects. Finally he reaches an "agent", who needs to know the customer's "customer number" because his database won't look it up by name. The agent finally tells the customer that although this was a clerical error, it will take two weeks and five signatures to fix. When the customer calls back six weeks later to report the problem still not fixed everyone's running every which way pointing fingers at everyone else. It's funny at the movies, but it costs billions in our economy.

If your organization regularly experiences episodes as described in the preceding paragraph, you're a victim of complexity. Fix it, or get out.

What is simplicity? It's the absence of complexity or reduction of complexity. What is complexity? It's a large number of components and interactions. When such complexity results in a daily operation more appropriate in slapstick comedy than in a business, it's time to simplify.

Steve Litt is the author of  Troubleshooting Techniques of the Successful Technologist".  He can be reached at Steve Litt's email address.

How Complexity Happens

By Steve Litt
Seems like there's excess complexity everywhere you go these days. Is that because every human is an idiot? Look at your own life. Is your paperwork in order? If so, how many cubic feet of your precious living quarters have you devoted to paperwork storage? Is your two car garage neat and clean, and ready to house two cars? Why not? Can you immediately find needed tools and supplies, or does it require a multi-hour search? Or purchasing duplicates?

We can't all be idiots, so how does complexity creep into our lives?

It does just that, it creeps. A little at a time. Each little piece seems justified, but over time the sum of those little justifiable pieces can overwhelm us. This article explains a few of the modes by which complexity can creep into organizations, and into our lives.

Sales and Marketing

A huge source of unnecessary complexity comes from the action of salesmen and marketing departments. As a preliminary example, take book clubs. "After your preliminary purchase of 8 books for $8.00, we'll send you two books per month for your review. If you don't like any book, simply send it back within 5 days for a full credit. If, at any time after the first four months, you no longer want to participate, write us to that effect and we will stop sending the books. You have nothing to lose."

Actually, you have everything to lose. You must now look at every book within 5 days and make your decision. If the agreement is you pay back shipping, you lose that money. Either way, you lose the 5 or 10 minutes it takes to pack up the book and send it back. If the book's more than a pound, postal security rules demand you present the package in person. When it comes time to quit the club, will you know exactly who to send the quit letter to? If not, how many phone calls will be required to find that information, and how much time will you spend on hold and waiting for callbacks? And of course, what is the effect of cramming your living quarters with tens or hundreds of books you would not have chosen yourself?

The minute you sign up with that book of the month club, you've sacrificed huge costs in the time to evaluate books and to resign from the club. The vehicle for those costs -- complexity. Book clubs know this. It's often cheaper to continue paying the monthly charge than to undergo the complexity to fix it.

A close relative of the book club is the mail in rebate. I once bought a name brand hard drive that included a rebate. I don't remember all the details, but I believe it was $30.00 if you mailed in part of the box, the original receipt, and the rebate coupon from the store. It probably took me an hour to accomplish all that. Weeks later I got a postcard from the hard drive manufacturer that my rebate couldn't be honored because I hadn't sent in all the requirements. Which requirements? They didn't say. Nor did they mail me back my original paperwork. Not wanting to spend hours looking back through my (complex) set of paperwork, I let it slide. And interestingly enough, even though I had had superior experiences with this manufacturers hard drives until that point, I never again bought anything from them. I'm an IBM Deskstar man now. Oh, and I never again considered rebates in the price of anything. And I seldom even bother to mail them in. It's too complex.

Then there's the "if you order now, you'll also receive a free gift of". You might even think that free gift is something you might be able to use in the future. But unless you have a small family living in a 6000 square foot home, you should not use your house as a warehouse for things you might need later. Calculate the cost of your free gift based on the monthly mortgage or rent divided by your house's square footage, or if your house is paid off, by the average cost per square foot in your neighborhood. The days of cheap real estate are gone.

But wait, there's more. Besides the obvious cost in rent, there's the cost of complexity. The more "things" you have, the harder it is to find the specific "thing" you need. How much are you paid per hour? How long did it take you to return to the mental state you were in before you searched? It might be argued that your personal time is not valued the same as your work time. But I know of very few people who think they have enough personal time. Indeed, they "buy" personal time with fast food, nannies, and even shopping services.

That brings us to the "giant economy size". Warehouse space is expensive, but it's nothing compared to the cost of warehousing in an office or home. If it isn't gone in a couple months, it shouldn't be there at all.

I made this mistake the day before Governor Wilson's 1 cent sales tax increase went into effect. I bought 100, countem 100 reams of laser paper before the tax increase. Unfortunately, back in those days I didn't sell nearly as many books as I do today. In fact, 1/3 that supply was still with me 8 years later, when a cross country move forced me to give away the remainder to charity. It was cheaper than paying the movers to move it. Worse yet, for 8 years I was forced to rummage around that paper, in a small office, to find things I used every day.

The preceding examples were put forward as personal, but they could have just as easily been in a business setting.

A more subtle trick is the "return on investment" trick. "Buy my super duper whipper snipper gizmo, and at your present rate of business it will have paid for itself in 2 years and keep paying for itself forever after". That's a powerful argument with a subtle flaw. Your payment will not just be the money for the super duper whipper snipper gizmo. Add to that the space taken by the gizmo, the additional vendors of supplies and service for the gizmo, the training of your people for that gizmo, and worst, the fact that you've just added another component to your system. If you look at your business and wonder how it could have gotten so many forms, paperwork, machines and the like -- consider that each of those pieces could have saved more than their purchase price. But combined, the complexity they represent can bring your business to its knees.

Sometimes "pays for itself in 2 years" is legitimate. I believe that it's legitimate in the case of my Troubleshooting courses, which are taught by your own training personnel and add little complexity. Likewise, I believe my Rapid Learning book pays for itself in a day to a month, adding only the complexity of storing a single book. But if an excellent ROI addition looks like it will add another step to a process, or another station to a paper flow, watch out.

The Government

Big business continually rails against government regulation. I don't believe it for a minute. Regulation may make it harder for big business, but it absolutely kills smaller business, thereby eliminating big business's toughest competition. But I digress.

Government regulation conveys immense complexity on all business and personal affairs. I really believe it's an attempt to provide fairness, equity, and a safety net. But somewhere in our pursuit of these lofty goals, we ended up with complexity beyond our ability to cope.

The US Tax Code

The most obvious example of government complexity gone amuck is the U.S. tax code. With its exceptions to exceptions to exceptions, anyone with his own business or anyone north of the middle of the middle class must either spend a week doing his taxes, or pay someone $500.00 to do them.

One solution bandied about is the so called "flat tax". Trouble is, having everyone paying 17% of their income really isn't fair, because a single wage earner heading a family of four with salary of $20,000 can ill afford to pay $3400 to the government. I think most of us feel that money destined to pay food, clothing, shelter and health care should be taxed differently than money destined to pay for SUV's and swimming pools.

I've also heard that the "flat tax" will not tax interest and dividends. Now isn't that a hoot! Pay people to be unproductive. Another problem with the flat tax occurs when you add in the social security tax (close cousin of the self-employment tax), the most regressive tax ever devised. Self employment tax payments drop from a marginal 15.3% for those making under $76,200, to 2.9% for those earning more than that amount. So a guy working hard to pull down $40,000 pays 15.3% of his total self employment income to social security, while the guy whose business pulls in $400,000 pays just 5.26% of his self employment income to social security. If you're an employee, the percentages are cut in half, but the same regressive structure applies. Keep in mind that funds in social security have regularly been mingled with the general fund -- it's not like you're putting your money in a safe deposit box for your personal use.

Should one's mortgage interest be deductible? If we stopped that deduction there would probably be a revolution. And yet, why should homeowners pay less tax than their poorer cousins who need to make payments on cars they drive to work?

To sum up taxes, they're way too complex. They've gotten that way by the repeated adding of exceptions, instead of creating a simple yet fair system.

The U.S. Health Care System

The United States health care system is the laughing stock of the world. Medicare, HIPPA, COBRA, ERISA, Knox-Keene -- law after law to patch a pathetically dysfunctional system. In the April 1997 Troubleshooting Professional Magazine article entitled "The Hair Care Crisis", I detail a series of blunders that would create a barber shortage leading to a mess like our health care.

It's written tongue in cheek, but it's quite accurate. The government starts with licensing and immigration laws that create a doctor shortage (how many unemployed doctors do you know), and patent laws creating monopolies for all but the oldest, most used up drugs.

The government complicity in manufactured shortages of doctors, drugs and hospital beds leads to disease and death. Patching our health care industries with laws to cover moving workers, those over 65, and children just bandage the problem.

As in all Troubleshooting, patching the symptom produces side effect problems. Reading a single day's newspaper makes the health care side effects abundantly clear.

So I say to George W. Bush:

** Florida State University is building the first new medical school in 20 years, as we speak. But with the aging of the population, we need many, many more.

Other Governmental Law

I know few people who wish to exclude a blind person from a singing job or a crippled person from a writing job. That's why the ADA (Americans with Disabilities Act) was created. Most people believe that age, gender and race discrimination are bad in the workplace, so the various antidiscrimination laws were created. I once worked in a factory where most over 35 were missing fingers. I think we're all glad OSHA protects workers from profit motivated callous disregard for worker safety. Most of us are happy to breath reasonably clean air and drink reasonably clean water.

But somewhere along the line, every business picked up an army of lawyers, personnel specialists to guide through the antidiscrimination minefields, as well as safety specialists and environmental engineers to comply with other laws. It's become hugely complex just to do business.

Now before you conclude I'm a Reagan style big business guy, I'm not saying these laws shouldn't exist. They're sorely needed.

I'm just saying there are often excesses. The wheelchair bound exotic dancer who sued a strip joint for not hiring her as a stripper. The housing development stopped because an endangered rat is found in the area. The practice of giving certain races additional points on employment tests in the name of "affirmative action".

We need to protect our environment and our people, including those who would otherwise be needlessly disenfranchised. But we should do so intelligently, unless we want the complex mass of law to strangle us.

The Coathanger Solution

Coathangering a symptom instead of fixing the root cause always increases complexity. This is proverbial in software, where programmers often add parallel variables do the same thing but need coordination. Subroutines are added to implement exceptions to other subroutines. Although few of us can see Windows source code, I'd imagine we'd all surmise that it's a hodgepodge bunch of features glommed together.

Before we blame Microsoft for all the ills of the world, consider the coathanger solutions in the average corporation. Fill out the request form in triplicate, send one copy to your manager, one copy to purchasing, and keep your copy, which you fax to headquarters. Purchasing contacts your manager to approve the purchase, who then needs to request a budget statement from headquarters. He signs the request, attaches the budget statement, and sends it to purchasing and headquarters. Purchasing then puts the request in a queue to be submitted to the vendor on a weekly basis. Yes, this is an exaggeration, but I think we've all seen this type of excessive complexity. Probably each and every step originally solved a specific problem, but when taken as a whole they're ludicrous.

When confronted with a problem, an opportunity, or a need for change, any solution must take into account the entire system, and must address the root cause. Otherwise, complexity multiplies.

It's Nobody's Fault -- It's Everybody's Fault

We all need to guard against complexity. It creeps into our lives, disguised as a good idea to save time or money, or solve a pressing problem. But as time goes on and more such good ideas are piled on top of one another, the complexity stifles productivity. When evaluating a sales pitch, look not only at the price you pay for the product or service, but also the overhead of space, steps, paperwork and delays it creates. When you vote, and when you write your elected officials, weigh the protection of people and environment against complexity, and try to find a middle ground. In your business or personal life, strive for every solution to fix the root cause of the problem, rather than tacking on yet another symptom strongarm.
Steve Litt is the main author of Samba Unleashed.  He can be reached at Steve Litt's email address.

The Cost of Complexity

By Steve Litt
Complexity costs money. It might be inobvious where the money's going, but complexity always costs money. As an example, take government sponsored gambling.

Doesn't it seem like every state "helps our schools" with a state lottery? What a great idea. Nobody's taxes go up, and the schools get a lot of money. True, the money they get is nowhere near the amount spent on lottery tickets, but what the heck, it's the gamblers choice.

Think about that logic the next time you're rushing to work and you need to buy gasoline. Seems like you wait behind ten people trying to decide what kind of lottery tickets to buy, scratching them, and then buying more with the winnings. If you're paid $24.00/hr and this wait makes you 10 minutes late, you just lost $4.00. Of course, if it gets you in trouble and jeopardizes your job, that number goes way up. If you're late to a vital client presentation and the client walks out because you're late, it could mean millions. Multiply yourself by millions of others trying to buy gasoline, and you can begin to see the true cost of that lottery. And not a cent of those hidden costs go to the schools.

This article discusses the cost of complexity as it relates to human organizations, single worker projects, mechanisms and Troubleshooting.

Human Organizations

How many sizable organizations do you know that work efficiently? Processes that started out lean and mean accumulate tasks, personnel and procedures that bring them to a standstill. Employees are hired to deal with maintaining the mess. Customers are frustrated. Costs escalate and revenues decline.

I once tried unsuccessfully for over a year to get a small error corrected in one of my bank accounts. The branch pointed a finger at corporate, corporate pointed at data processing, data processing couldn't move without the OK from the branch and corporate. I withdrew a substantial amount of money from the bank. That's the cost of complexity.

A restaurant near my house, part of a well known fast food chain, has scads of people behind the counter. But they take about 2 minutes per customer. So customers wait in line for 15 minutes just to place their order, then wait another 10 minutes for the food to be prepared. Frustratingly, most of the staff  stands around looking at video screens. Amazingly, I was told that their computerized system can hold only four pending orders, so once it is full the staff must stop taking orders until some of the orders are cleared. The line grows long. What Einstein specified that system? Customer complaints regularly escalate into shouting matches, and customers routinely leave before being waited on (and obviously before paying). This is the cost of complexity.

One Person Jobs

Even a one person job needs simplicity. I think the example of proper tool and ingredient layout in the Subway example from the Editors Desk article is a good example. An excellent place to start is paperwork.

Paperwork

If you're anything like me, incoming paper is the greatest challenge to organization. Mailboxes full, every day. What to keep, what to throw out. From my perspective, every piece of paper I receive costs me somewhere between a nickel and a quarter. I need to look at it, decide whether to keep it, and if I'm keeping it, where do I put it. For this reason, when your local store asks you for your mailing address during a purchase, you might want to tell them it's none of their business. Because if you give it to them, you can be sure their "special partners" will fill your mailbox to overflow.

"Free" magazine subscriptions are another time waster. They hang around forever waiting to be read. And if you actually find an article worth keeping, where are you going to put it. Better go to the online edition of the magazine.

A mailbox full of paper invites mistakes. A vital document can become entangled with a throwaway magazine and be discarded. The postman will obviously have a harder time being accurate delivering to a box overflowing with ads, circulars and magazines. Be very selective with whom you give your address.

Immediately throw away junk mail. Once you're sure it's an unsolicited advertisement, dump it. Sure, you might throw away that one add that actually could have helped you, but perusing every ad to find that one costs many hours. Remember that if paperwork contains your personal information, you need to shred it.

Paperwork that can't be stopped at the source and can't be discarded needs to be saved efficiently. A four drawer file cabinet loaded with plenty of folders does the trick. It may cost you between one and two hundred dollars, but keeping the clutter off your desk and out of your life can save you thousands.

Naturally, don't generate paper with your printer. Your printer should be used only to print rough drafts for later editing. Once the marked up paper is used to update the computer copy, throw away the paper. You may also need to print copies of paper for other people, but do so only if they indicate they need it. There's nothing worse than giving a person proprietary paperwork requiring their time to shred.

All but the most personal, or the most heavy duty business (like contracts with signatures) should be done in email -- not snailmail nor fax. Email's fast, it's ubiquitous, it doesn't consume a phone line, and it doesn't clutter. Remember, a hard disk is the world's most efficient filing cabinet.

So when it comes to paperwork: Don't encourage it, don't generate it, discard it when you can, file it when you must.

A Place for Everything, and Everything In its Place

Last month I discussed The Artist -- a street artist who used tools and riffs to create four $20 paintings per hour. He ALWAYS knew where his tools were. He had a place for each tool, and he kept each tool in its assigned place. The result was incredible productivity.

It's amazing how many one minute jobs must wait for five minute tool or resource searches. I always had that problem when I fixed stereo equipment. I was very fast, but I would have been even faster if I didn't have to stop and search for a certain screwdriver once an hour.

It's incredible how quickly things degenerate when there's a mess. Searching can take up 50% of the time. And of course, during a search one loses his train of thought and must take additional time to regain his mental state.

To have a simple and neat environment, there must be a place for everything and everything in its place. A "neat" person who clears his desk by putting the things "wherever" is just fooling himself. An organizational freak with labels on every shelf and boxes for everything who lets things accumulate on his desk or on the floor is likewise fooling himself. Only the combination of the two produces simplicity.

Mechanisms

Windows. Hourly reboots, lost data, lost trains of thought. This is the cost of complexity.

Most current software suffers from needless complexity in the name of "features". All too many features are glued on at the last minute instead of being designed in from the beginning. Software component counts rise dramatically, leaving the programmer to manage their interactions. With complexity rising proportionally with the interactions between components, it's no wonder that so much current software is buggy. In fact, customers routinely accept brand new software with problems. Imagine buying a car from a dealer who says "this car will run most of the time". Speaking of cars...

Modern cars are cool. Cruise control, antilock braking, airbags, even radios that play louder at high speeds to compensate for increased road noise. Driving becomes so simple it's almost passive. But when something breaks, there's trouble. Those cute transverse mounted engines mean you need to remove the tranny to do major engine work. Gone are the days when braking problems are simple. Now there's the whole antilock system to consider. Remember the good old days when if your car's heater stopped working you could isolate the problem quickly? Try that on these nifty new computerized "climate control" centers. On my 67 Dodge Coronet you adjusted the seat position by shoving the seat forward or back after unlatching a spring loaded latch. If it jammed it was probably something caught under the seat. If a modern one jams, somebody needs to replace the seat motor. Convenience is wonderful, but I predict 2001 cars will be in the junkyard in 2011 -- they'll be too costly to fix. It's possible that new car buyers will accept an irreparable car if it drives OK for 10 years. If it really drives OK for 10 years. Heaven help the person who needs a repair at year 3.

Complexity and Troubleshooting

You've used the Universal Troubleshooting Process, so you know that you devise tests to split the possible root cause domain at component interaction borders. With a simple, well designed mechanism, such a test is quick and conclusive. With a complex mechanism containing many "sneak paths", such tests are not conclusive, and various component interaction lines must often be cut or strongarmed to reach a confident conclusion.

The fact is, complexity hugely increases time to solution, and hugely increases the chance of an incorrect fix. And if an overly complex system gets an intermittent, often as not it's lived with as a chronic condition, because nobody can fix it.

Conclusion

Complexity is very costly, in any system. It contributes to inadequate repairs, design and usability, as well as boosting repair expense. Any desire to add complexity to a system must be weighed very carefully.
Steve Litt is the developer of The Universal Troubleshooting Process troubleshooting courseware. He can be reached at Steve Litt's email address.

How to Simplify Everything

By Steve Litt
Simplification has two components: Remedial simplification and ongoing simplification. Both are vital. In an ideal world the ongoing component would do its job and you'd never need to go remedial. But as has been discussed throughout this TPM issue, legitimate problem fixes and opportunity exploitations can sooner or later result in an overly complex system. It happens to everyone. The trick is to recognize it, solve it, and get on with it.

Ongoing Simplification

Have you subscribed to "free" magazines? These days I pretty much limit myself to Infoworld. All the rest would just clutter my office. No Wall Street Journal or local newspaper subscription for me either. Those things have a way of piling up and hiding the things I really need to find.

How about these credit card companies repeatedly sending you checks to use for cash advances? There's where you need a shredder. As you're disposing of paper, anything remotely personal should go through the shredder.  Ideally, use a cross-cut shredder that makes little rectangles instead of long strips. The little rectangles are harder to tape back together. Try never to overload your shredder with anything more than its capacity (usually 5 sheets). In fact, it's better to use even fewer because occasionally the paper will fold over, making it twice as thick. I've broken 3 shredders in about 5 years -- every time by overloading the shredder.

If you pay for your groceries with a credit card, be sure to shred the receipt (once you've verified that you've gotten what you paid for). Receipts for goods bought with credit cards have your credit card number, so always dispose of them with your shredder. Anything with a signature should be shredded.

Get a good 4 drawer file cabinet to keep paperwork you can't throw out. You can buy the file cabinet and a couple hundred folders for less than $200 (sometimes much less), and it should last you for a long time. Be sure you have a stapler immediately available to staple multi-page documents before filing. If you need to keypunch some data from the document (into Quicken, for instance), punch the data and then immediately file the paper.

You might want to scan some of the incoming paper. This allows it to be backed up (and even backed up offsite). But it also exposes that paper to the eyes of anyone accessing your computer, or anyone who comes across one of your backups. Certain documents are appropriate for scanning.

Be ruthless in throwing away paper. If the paper conveys an offer that sounds like it might be nice in the future, I'd advise to get rid of it. That offer will come again. You don't need such offers creating a mess in your environment.

As time goes on you can throw away some of your own paperwork. Ask your accountant his opinion, but at some point in time ancient tax documents and ancient bank statements shouldn't be kept. Of course, due to the nature of capital gains tax, always keep purchase receipts for stock, your house, and other large investments.

I'm a very messy person. I have paper all over the place. But at least I throw away most of the incoming paper soon after it arrives. If I didn't, the place would be a fire hazard.

Obviously, frequently used resources should be effortless to grab. Rarely used resources can be tucked away or even "buried" under other things, as long as you know where to find them. Resources between frequent and rare can go in accessible places that aren't necessarily quick.

You can never have enough shelves. Lack of shelf space is the number one cause of a cluttered desk.

In a business setting, one component of ongoing simplification is careful evaluation of new processes, centers, employees, or tasks.

The bean counters say a new auditing department will pay for itself in a year. But how have they calculated the cost. Have they simply computed employee wages and benefits, cost of office furniture, and cost of the space consumed? Those could be just the tip of the iceberg.

How about the cost of delays incurred while documents flow into and out of the new department? What is the cost of customers who get fed up with the delays and move their business elsewhere? What's the training cost of new employees, not just in the new department but in other departments, whose lives get so frustrating they find other jobs?

Murphy's Law says things always go wrong. What is the cost of having one more department, and its interfaces to other departments, to consider when diagnosing the cause of a screwup, and deciding how to fix it? Yep, when it comes to adding complexity to a business, when in doubt, screen it out.

But ongoing simplification extends beyond screening new complexity. Old complexity must regularly be evaluated and, if no longer useful, gotten rid of. How much complexity is left over from those pre-email days when you really needed 7 levels of management to get the word out to the rank and file? If your business stops using proprietary software and starts using Open Source, did you remember to reassign the people in the License Compliance department, or are those people still sitting there generating paperwork?

Every year you do spring cleaning in your home, and throw out the stuff you no longer need. Maybe that's a good idea in your business, too.

Remedial Simplification

To a certain extent, ongoing simplification can be remedial. But some organizations and systems are already so complex as to be rendered dysfunctional. If your organization starts to resemble a Keystone Kops film as described in the What is Simplicity? article, drastic action is required.

If a system is nothing but patches, workarounds and temporary fixes, then sharpshooting individual components won't work. Such a system has no underlying design, so how can one simplify in a productive manner.

So now I must eat some crow. If you remember, in the December 2000 issue of Troubleshooting Professional Magazine, I made the following statement: "My impression upon a casual reading of reading "Reengineering the Corporation : A Manifesto for Business Revolution", by Michael Hammer, James Champy, is that it throws the baby out with the bathwater.". The article went on to speak unkindly of reengineering. I was wrong. Forgive me. I didn't understand. I was so much younger then.

Fact is, when an organization is so stuffed with workarounds as to render the original design unfathomable, redesign is the only intelligent choice. Throw out "the way we've always done it" thinking. Start with the organization's goal, presumably to make money, as well as its assets (employee base, access to a certain loyal clientele, trademarks, "good will" and the like), and the clientele's likes, dislikes and needs, perceived or otherwise. Design a system to super-serve the clients' needs, within the framework of the company's assets, employees, trademarks and good will. From what I remember of the Hammer-Champy book, that process is called reengineering. Now I understand.

Steve Litt is the author of Troubleshooting: Tools, Tips and Techniques. He can be reached at Steve Litt's email address.

Linux Log: The KISS Principle

Linux Log is a regular column in Troubleshooting Professional Magazine, authored by Steve Litt. Each month we'll explore a facet of Linux as it relates to that month's theme.
Linux continues taking business from all of Microsoft territories. It's most obvious on the server, with Apache, Samba and PostgreSQL or MySQL displacing, respectively, IIS, Windows File Server, and MS SQL Server. Some of the biggest websites use farms of Linux or BSD servers. Any new server business Microsoft gets comes from Novell or some of the less healthy UNIXes, and that can't long continue.

Neither Microsoft nor Linux does well in the superserver arena, where performance and throughput are king. Given its rapid evolution, I'd imagine Linux will reach that market before Microsoft.

Linux is also making inroads on the desktop. In a November 2000 with Troubleshooting Professional, Linux International Executive Director Jon "maddog" Hall mentioned that IDC has said Linux surpassed Apple on the Desktop, and if you believe that Macintosh is viable on the desktop, then logic says that Linux is more viable on the desktop.

Apple has received some sort of investment from Microsoft, so market share taken from either Windows or Macintosh is taken from Microsoft. Basically, there are two major desktop systems: Microsoft and Linux. Linux is the one whose market share is increasing.

But at what cost?

We Linux folks have made some compromises in "selling" Linux to the unsophisticated desktop user. Most of those compromises fall under the "complexity" heading, and they have a cost. Numerous services are left active by popular distros make it easier for newbies, but those active services wreck havoc with security. Many Linux apps are so feature laden as to approach the bloat of Microsoft software. Now of course, even with these issues, Linux is still more secure and more robust than the offering from Redmond. But it's not all it could be.

Linux distributions are starting to recognize this fact. My Mandrake 7.2 gives me install choices of Desktop, Server, or Development box. Within those choices, it gives me three degrees of security. A user who's read the Mandrake installation documentation and knows something about Linux and computers can, to a great degree, use these choices to install what he needs, and leave out the rest. This is a Good Thing(tm).

But we must continue to be vigilant, lest we repeat the mistakes of our predecessors.

The KISS principle has been articulated for decades. It stands for Keep It Simple and Small. Some folks say it stands for Keep It Simple, Stupid, but that's too negative for me.

When writing software or configuring a box, carefully weigh every feature before inclusion. All too often, that collection of "would be nice" features end up gumming up the works.

When installing from a distro, pick the "type of installation" carefully. If it's a desktop system, there's little reason for a web server. If you want to shell in from another box, consider using ssh instead of telnet. An FTP server is usually a necessary evil for file copies, but if you already have a Samba server on the box, you can use Samba instead of FTP. Speaking of Samba, be careful. Due to the root preexec= and root postexec= parameters, anyone gaining momentary access to your smb.conf file can take over your system. And then use it as a base to attack other systems on the network. Don't use SWAT to configure smb.conf -- your favorite text editor plus the smb.conf man pages does the job and much less of a security risk.

After installation, simplify the system. Go into /etc/services and comment out services you won't be needing. Comment them out of /etc/inetd.conf as well. Also, if you're using xinetd, disable them in /etc/xinetd.conf and the configuration files under /etc/xinetd.d. Run the Linux Control Panel and disable unnecessary daemons.

Use /etc/hosts.allow, /etc/hosts.deny, and inetd.conf or xinetd.conf and its subfiles to restrict access to the subnet, or even to the local host as necessary. Speaking about inetd.conf and xinetd.conf, make sure they're configured to run each service as a non-root user, unless root is absolutely necessary. Users nobody and daemon are excellent choices, or possibly a user created specifically for the service in question. But try your best not to have services and daemons run as root.

One great simplification is to eliminate PPP from the box. For the price of an ancient 32 meg box, you can create a dedicated firewall appliance, after which no computers on the subnet will need dial up access. PPP is complex and quirky -- have a dedicated non-gui firewall box do the PPP. If you're using dialup (as opposed to isdn, dsl or cable), you can download the Smoothwall distribution. It's a ready made firewall appliance. And I've just heard that by this spring Smoothwall will have dial on demand, and will also work with cable.

Having a firewall doesn't relieve you from the responsibility of adequate security on each box, but having a good firewall often lessens the probability of a script kiddie exploiting a service you forgot to turn off. Firewalls help. And for users without security sophistication, using a firewall box as a gateway to the 'net is absolutely essential. Once again, for simplicity's sake, I recommend isolating all firewall functionality in a separate box.

Don't install games unless they're absolutely necessary. Screen savers are useless opportunities to hang or segfault -- don't use them.

Linux is sprouting quite a few "configuration utilities". There's Linuxconf, Control Panel, diskdrake, drakconf, userconf, netconf, and many, many more. These are like antilock brakes -- they help an unsophisticated user, but under the hood they add complexity. When you change a configuration parameter from inside these utilities, you have no idea what files are being modified. Therefore you don't know what side effects you're creating. When possible, use the text editor of your choice (I like VI) to edit configuration files, and then manually restart the associated daemon with the /etc/rc.d/init.d/daemonname restart command (newer Linux distros can also use the service daemonname restart syntax).

Knowing which files to edit isn't a trivial task. Man pages help. So do emails to your LUG. Word searches also help. For instance, if you want to renumber your box and don't know all the files to edit, you could do something like this, assuming a subnet of 192.168.100:

find /etc -type f | grep 192.168.100
Once you know all the files containing the network number, you can edit each to change it. If you're changing the netmask, you need to search for 255.255 or /24 or whatever. Note that if you want to change a Linux box to a DHCP client, all that's needed is to edit /etc/sysconfig/network-scripts/ifcfg-eth0. Comment out any existing BOOTPROTO line, and then add the following line:
BOOTPROTO=dhcp
Then restart the network like this:
/etc/rc.d/init.d/network restart
Basically, if all your configuration occurs without the aid of GUI or Curses, you're probably doing pretty well.

Under the Hood vs. In the Passenger Compartment

It could be argued that Windows is simpler. After all, this article discusses the desirability of mastering a text editor, learning many configuration files and their syntax, and using several seemingly arbitrary Linux commands. Could it be that the ultimate simplification would be to use Windows instead of Linux? Let's explore that.

The easiest counterargument to those who make the point that Windows is simpler from the user perspective is to compare apples with apples. This article extols the virtues of manual editing of configuration files to produce a more reliable operating system. But you can simply install a default Linux distribution, make a few config changes with Linuxconf, and be done with it. Every bit as user-simple as Windows, but more reliable and secure. Beyond that, a very compelling argument can be made that even a hand-configured Linux installation is simpler for the user. Read on...

Earlier in this issue, you've seen references to the shifting of complexity from the passenger compartment to the engine compartment. Antilock brakes are an excellent example. Often this shifting is a good thing.

Indeed, Windows appears simpler in the passenger compartment, in exchange for its unfathomable complexity under the hood. A casual look through the registry using regedit, experience with problems caused by duelling .dll's, and Windows propensity to crash provide ample evidence of its under the hood complexity. So Linux is more complex in the passenger compartment, while Windows is more complex under the hood.

When is it OK to shift complexity from the passenger compartment to the engine compartment? The short answer is that the shift is desirable if it doesn't result in drivability problems, or hugely increased service costs. The even shorter answer is that the shift is desirable when it doesn't adversely affect the driver. If the antilock brakes were to randomly lock up, they would obviously not simplify the driver's life.

Windows power users constantly work around intermittent glitches, hangs, and the Blue Screen of Death. These are user-felt effects from the complexity under the hood. So although the simple Windows command set would theoretically make Windows simpler in the passenger compartment, by the time you factor in the reboots and the various rain dances used to avoid problematic states, Windows is actually more complex from the perspective of all but the most undemanding users.

Due to its reliability, Linux is simpler even in the passenger compartment.

Summary

To capture desktop market share from Microsoft, Linux distributions have made their default Linux installs very Windows like. That's OK because a default Linux install is still better than a genuine Windows box. But if you truly want to escape Windows-like hassles, jettison Windows-like complexity.

Keep it simple and small.

Steve Litt is a member of Linux Enthusiasts and Professionals of Central Florida (LEAP-CF). He can be reached at Steve Litt's email address.

Letters to the Editor

All letters become the property of the publisher (Steve Litt), and may be edited for clarity or brevity. We especially welcome additions, clarifications, corrections or flames from vendors whose products have been reviewed in this magazine. We reserve the right to not publish letters we deem in bad taste (bad language, obscenity, hate, lewd, violence, etc.).
Submit letters to the editor to Steve Litt's email address, and be sure the subject reads "Letter to the Editor". We regret that we cannot return your letter, so please make a copy of it for future reference.

How to Submit an Article

We anticipate two to five articles per issue, with issues coming out monthly. We look for articles that pertain to the Troubleshooting Process, or articles on tools, equipment or systems with a Troubleshooting slant. This can be done as an essay, with humor, with a case study, or some other literary device. A Troubleshooting poem would be nice. Submissions may mention a specific product, but must be useful without the purchase of that product. Content must greatly overpower advertising. Submissions should be between 250 and 2000 words long.

By submitting content, you give Troubleshooters.Com the non-exclusive, perpetual right to publish it on Troubleshooters.Com or any A3B3 website. Other than that, you retain the copyright and sole right to sell or give it away elsewhere. Troubleshooters.Com will acknowledge you as the author and, if you request, will display your copyright notice and/or a "reprinted by permission of author" notice. Obviously, you must be the copyright holder and must be legally able to grant us this perpetual right. We do not currently pay for articles.

Troubleshooters.Com reserves the right to edit any submission for clarity or brevity. Any published article will include a two sentence description of the author, a hypertext link to his or her email, and a phone number if desired. Upon request, we will include a hypertext link, at the end of the magazine issue, to the author's website, providing that website meets the Troubleshooters.Com criteria for links and that the author's website first links to Troubleshooters.Com. Authors: please understand we can't place hyperlinks inside articles. If we did, only the first article would be read, and we can't place every article first.

Submissions should be emailed to Steve Litt's email address, with subject line Article Submission. The first paragraph of your message should read as follows (unless other arrangements are previously made in writing):

I (your name), am submitting this article for possible publication in Troubleshooters.Com. I understand that by submitting this article I am giving the publisher, Steve Litt, perpetual license to publish this article on Troubleshooters.Com or any other A3B3 website. Other than the preceding sentence, I understand that I retain the copyright and full, complete and exclusive right to sell or give away this article. I acknowledge that Steve Litt reserves the right to edit my submission for clarity or brevity. I certify that I wrote this submission and no part of it is owned by, written by or copyrighted by others.
After that paragraph, write the title, text of the article, and a two sentence description of the author.
 

URLs Mentioned in this Issue