Monday, September 8, 2008

IT Consultants, Pro Bono?

I found another interesting question on the internet today, "Isn't it about time that IT consultants start doing pro bono work along the lines of lawyers?" I am inferring from the question that the asker doesn't believe that IT professionals perform that much pro bono work which I think is a big misconception that should be fixed. But there are reasons why that misconception exists and I figure I'll take a stab at explaining that is as well.

The definition I found for pro bono is this:
done or donated without charge
By that definition I know of several ways in which many developers contribute work pro bono. Open source is a great example. All types of software from operating systems, to office productivity to educational games as well as countless other types and many versions of each have been created by the software writing public with no expectation of payment. Another excellent example is after school programs where professionals donate their time to educate children in the use of computers and the basics of programming. I myself spend time watching various forums for people that need help and answer questions when I can. Yes, that's where I find these questions. And let's not forget about the friends and family program that every IT professional I know donates a hefty amount of time to every year cleaning viruses and setting up printers and software. Yes, it is a huge misconception to say that IT professionals don't do pro bono work.

Besides, not everyone feels the need to give back to others in the same way. The best software developers I know are intelligent people with diverse interests. The ones that I would accept work free of charge from simply don't want to spend their entire lives, day-in day-out coding. The best developers I know are musicians, writers and athletes in their spare time. They give back to the community in song, fund raising races, informational blogs, writing stories and sometimes just helping out at the local shelter. They may not be contributing by working in their daily trade, but I would never dare say that they lack the drive to help others.
But this misconception must be coming from somewhere. I see this question in various guises from time to time and I think I know what part of the problem is. When I run across this sentiment it is usually coming from the vicinity of an individual that cannot find an IT professional to set up an office network or write a web site or other application for free even if it would be contributing to a worthy cause. The simple reason for this is lack of time. You may be able to find a lawyer to give legal advice and even argue a case or two pro bono. But in general, I know of no profession where a worker can dedicate themselves without pay to a single project, case or individual for the amount of continuous time usually required by such large IT tasks.

Let's take a look at some guidelines. The Washington State Bar Association recommends that lawyers spend 30 hours per year doing pro bono work. Let's just call that a week. There is no software of significant use that can be written in one man week. Software projects and IT tasks of any consequence just take longer to accomplish. Even a simple website takes more time if you want it to be effective. I have seen small, five-page, web sites created in one week and the results are always less than spectacular. Most results are less than mildly pleasing for that matter. In order to build a web site: the message has to created and different ways of breaking down and conveying that message have to be decided on, a user experience that facilitates the message must be generated, colors need to be chosen, images created, content must be written, domain names registered and hosting environments found or built and set up just to name some of the tasks. If this type of job is done in a single week at best you have a web presence. What you never get is an attractive and effective web site.

Even if you can find an individual that wants to spend 160 hours to write your custom web site or rewire your office network, they probably can not take that time off from their day jobs and dedicate themselves to that project. If your company or organization can afford to be without their web site for six months or their office network for one month while an IT professional does the job in their spare time, you might be able to find someone. But most organizations I know would lose more money without those resources in place than the cost of paying someone to get the job done. One of the reasons why large projects can work as open source is that there are very few if any time constraints.

While the length of a significant IT project is fairly large, IT professionals tend to have less time to work on charitable causes because they usually make less money than lawyers. According to some very rough numbers, attorneys make in the range of %30-%50 more than a programmer. The difference can be even bigger in the real world and it probably isn't any less. A simple fact is that people that make more money can afford to spend more time pursuing interests other than making money. Whether or not they do is a question for someone else to answer on some other day.

All of these factors line up in such a way as to create very few possibilities for a real world IT professional to spend time on large projects free of charge. I would hazard a guess that organizations and web sites geared towards matching available professionals with projects in need of free services don't exist because the match success rate would not be that high. And that just makes it even harder to get people and projects together. By contrast, it is much easier for lawyers to find opportunities to do pro bono work as the framework is in place. At the least, most state bar associations have a group or committee to help with just that task.

There are probably many more facets to the issue that I am missing, but the short of it is that IT professionals do give back. Most just can't do it in large enough lump sums to accomplish the same tasks they generally get paid for. Time constraints, money constraints, life and sanity just prevent IT workers from being able to give large projects away for free on someone else's schedule.