Feb 12, 2007

A Division of Labor

Do you remember back in the good old days of computer processors? Back when something like "dual processors" was a rare and sacred phrase uttered only in the presence of a power-tie-wearing salesman from IBM. Back then, people "in the know" threw around the phrase "multi-tasking" a lot, not because their computers could actually do it, but because they thought it made them sound like they were "in the know". Back then, desktop processors couldn't multi-task. In reality, they were stuck with multi-tasking's snot-nosed little brother: multi-threading.

Yes, it is true. Typically one must don his or her pocket protector before they would know (or in fact care about) the difference between multi-tasking and multi-threading, but bare with me for a moment. Multi-tasking means exactly what you think it means: doing multiple things at the same time. Multi-threading, however, means doing one thing for a few clicks, then putting it down, picking up a second task, and working on it for a while. In multi-threading, you are not doing two things at the same time; instead you are switching between two tasks quickly enough that it gives the appearance of doing two things at the same time.

Did I lose you? Too bad; we're plowing forward.

Larger companies get all the breaks. They are the star performers who have enough resources at their fingertips to "multi-task" their goals. There is never a need to put development on hold so they can focus on sales. I've never heard of a Fortune 500 company placing marketing on the back burner so they can work on product research.

On the other hand, small companies are forever in the state of "multi-threading". They typically do not have enough man power to dedicate anyone to a single task. So the graphic designer is also responsible for marketing, your developers are running the research labs, and your accountant is filling in for sales.

Obviously not a good thing... right?

Wrong. Computer companies did not migrate the desktop to a multi-processor architecture until quite recently. Why? Because multi-tasking doesn't really speed things up. Any time you have true multi-tasking, you run into the dark side of CPU's known as "thrashing": spending more time managing the multiple tasks than the time you saved by doing two things at once. Larger companies have much the same problem. Think of all the layers of management necessary to keep big business afloat.

Wearing several hats not only eliminates red tape, but even more importantly, allows you... in fact requires you to prioritize more efficiently. When your development team is working with sales on a daily basis, it doesn't take long for their minds to open. They get instant feedback as to what is helping to close a sale, and what is not. Multi-threading requires each member to be conscience of the rest of the team, rendering your company much more nimble.

So don't be afraid to place a project on hold. Have no fear putting IT on the phones for a while. You might be surprised how much faster your company will run.

No comments: