I've been reading Xenophon's collected works on Socrates lately. In numerous places he makes a point of telling us that Socrates never accepted any payment for his services, so that he could remain free to do what he wanted rather than being a slave to his clients. For example, in Memoirs of Socrates I.6, he has Socrates state:
... those who accept payment are bound to do the work for which they've been paid, whereas I, since I don't accept it, am not compelled to converse with a person if I don't want to
Later in the same chapter Socrates uses an even stronger image:
A man who sells his favours for a price to anyone who wants them is called a catamite; but if anyone forms a love-attachment with someone whom he knows to be truly good, we regard him as perfectly respectable. In just the same way, those who sell wisdom at a price are called sophists; but if anyone, by imparting any edifying knowledge that he possesses, makes a friend of one whom he knows to be naturally gifted, we consider that he is behaving as a truly good citizen should behave.
Imagine the furrows in my brow as I attempted to apply this analogy to the occupation of consulting. I think of myself as being one of the more independent people I know, yet here Socrates tells me that because I charge a fee and am beholden to the whims of my clients, I'm no more in charge of myself than is a prostitute! The accusation has some teeth, because early in my career I even said as much to myself: whatever the client wants, no matter how strange, I the software prostitute will deliver.
In recent years I have been providing more free advice and software to the community of developers. I've become involved in the Copyfree Initiative, which seeks to benefit all developers by freely sharing our respective insights and discoveries. That seems in line with Socrates' description of the behavior of a good citizen above. He's also right about being free to choose one's projects. When I work on Copyfree software, I find each project intensely interesting, because if it wasn't I wouldn't choose to work on it. In an ideal world, I'd work on only such exciting projects.
But everyone has to eat and pay the bills, and I'm not ready to adopt a life of poverty (as Socrates did) merely for the sake of the independence it supposedly provides. Besides, even work on free software requires a certain amount of money for hardware, internet connection, and other expenses. In the business of software development, someone has to fund your activities. The question then becomes: what arrangement for patronage provides you the income you need while preserving the greatest independence?
At first glance, the answer seems obvious: running your own business must provide greater independence, because you can determine your own hours and decide what work you will accept or reject. In practice, however, it might not turn out to be so clear-cut.
First of all, some employers these days (perhaps following Google's lead) provide more latitude to their employees about what projects they'll work on. Employee status also comes with paid vacations, and personal and sick leave. Some even get paid sabbaticals.
Consultants, rather than being their own boss, can suddenly find themselves having the same number of bosses as they have clients, each with potentially conflicting schedules. They may also have to defer a vacation until they can afford to go without revenue. An extended leave of absence could result in a loss of most of their clientele. Consultants must also spend time looking for new business.
In either case, though, the degree of true independence comes down to how much of your work is doing what you want to do versus doing what you're told to do. This depends more on the relationship you have with your clients (or employer) than it does on how you're compensated. If you're a creative person, you should look first for work that allows you to exercise that creativity, then build the contractual relationship around that understanding.
I've been fortunate to acquire and maintain clients who have allowed me to work on interesting projects, often just as fascinating as the free software projects I work on in my spare time. But I've earned part of my good fortune by learning the hard way that some clients just are not worth the trouble. If you allow yourself to get sucked into a slave-like relationship with a client for whatever reason -- you think you need the money, you don't think you'll find other work, you just can't say no -- then you become like the sophists Socrates described. It takes a good deal of work to maintain a relationship in which you can retain your independent decision-making even when you're paid for your work. You have to convince your client that this is in their best interests, too. After all, even Socrates accepted invitations to dinner.
The quotations from Xenophon are from Robin Waterfield's translation in Xenophon, Conversations of Socrates, Penguin Classics, 1990.
Chip Camden has been programming since 1978, and he's still not done. An independent consultant since 1991, Chip specializes in software development tools, languages, and migration to new technology. Besides writing for TechRepublic's IT Consultant blog, he also contributes to [Geeks Are Sexy] Technology News and his two personal blogs, Chip's Quips and Chip's Tips for Developers.