The Free and Open Productivity Suite
Apache OpenOffice 4.1.5 released

Community Articles: Opinions, Interviews, Analyses

-Louis Suárez-Potts

19 May 2001

Interview: Kevin Hendricks

As many in the community know, Kevin Hendricks is one of the staunchest supporters of and one of the most prolific contributors to He can be "found" most often in the porting list. Last week, I initiated an email interview with him, on Open Source, the Mac OS X port of software, and the process of contributing work in

I'd like to begin with a short background question. Something along the lines of, "Tell us something about yourself." When answering this question, feel free to include anything that you think might be encouraging or interesting to other community members.

In my real life, I am an Associate Professor of Operations and Information Technology at the Richard Ivey School of Business, University of Western Ontario in London, Ontario Canada. I have degrees in Electrical Engineering (BS.EE, MEng EE) and in Operations and Information Technology (MBA, MS, and PhD degrees) all from Cornell University.

I started out life in the EE labs at Cornell playing with PDP 11s and fast Fourier transforms in 1979. Much of my time was spent loading paper tapes, playing "Adventure", "Wumpus", and "Trek" on early boxes.

I have been using Unix for my research since then. I prefer Macs and got involved with MkLinux and Linux on the PowerPC [the Macintosh CPU--ed.] when they appeared.

My first adventure in volunteering came when I joined Blackdown (Sun's JDK Linux porting effort), to bring my rusting programming skills back up to date.

How long have you been involved with And, what made you interested in the project to begin with?

I really need a good office package to write my research on. I tried the others out there but was disappointed in their ability to correctly import M$ (Microsoft) Office docs. I played around with StarOffice on my Sun box at work and liked it. So I decided last year to help the project's already ongoing efforts to port it to PPC Linux.

You are one of the more active participants in the porting project (though your participation is by no means limited to that project), and the porting project has the nice distinction of being probably the most active project in Would you want to describe what it is you are engaged in doing for the project? I think that the impressive work you have done in porting the code to Linux PPC and in helping to keep interest in the Mac OS X port alive merit attention.

I originally helped complete the PPC Linux port. That port is now basically complete and in maintenance mode. Since I use for writing research papers, I am interested in helping to fill the "gaps" to get something stable and working out there as soon as possible. I have recently begun work on getting both a spell checker and thesaurus integrated into

Being a Mac user and an old MkLinux fan, I am also very interested in getting a working port for Mac OS X out there. I personally believe that without a viable alternative to Microsoft (MS) Office, Apple will always be a prisoner to MS' whims (i.e., if MS pulled the plug on Office for the Mac, many users would be forced to move to other platforms). Luckily Patrick [Luby; see his interview--ed.] has done a huge amount for the port and hopefully a few volunteers from Apple or Darwin will step in to help support that project.

Related to the above, the OS X port has created some fair interest in the Mac community. I would like to see some more movement in the port development, however. How would you suggest we should go about eliciting more interest and in moving those who are interested into becoming active contributors to the OS X port? (For what it is worth, I followed your suggestions and sent notices to the OS X developer forums.)

Work with Stan Shebs of Apple/Darwin--he is a longtime GDB and GCC developer--to work out the compiler and linker issues so that the forthcoming GCC 3.0 will not have many of the hurdles that make the port to Mac OS X at present so difficult. The compiler/linker issues alone are enough to make a new developer pull his/her hair out. Perhaps we could get Patrick and Stan together for some work for a short while.

Also, the site needs to have some recent screenshots up there to show people how full-featured and complete the current [build of] really is. They should be featured on the main page. Many Darwin/Mac OS X developers have never used Star Office and if they have, may have hated how it took over the complete desktop. Getting new screen images up there would really help.

And, would you consider either becoming the project lead of a Mac OS X porting project (or sub-project) or helping us (the community) find a suitable project lead?

I would certainly help whomever becomes the Mac OS X project lead and has tried to build interest. But currently the state of the compiler tools and linker makes the porting work quite frustrating. I strongly recommend getting in touch with Stan and finding out to what extent we can get all of the tools issues resolved in time for gcc-3.0 or soon after.

I'd like to turn now to the slightly more abstract issues. Namely, those having to do with motivation within Open Source communities. So: What do you hope to gain from your participation in this project (or for that matter, in any of the other many Open Source projects in which you are involved)?

I do this for a couple of reasons. Primarily [these reasons include] filling a need (I need a good for my research), updating my skills to become current (my old APL, PL/I, and Fortran, along with 8080 assembler were getting a little rusty ;-)), and because I find programming personally very satisfying (where else can you get immediate feedback these days!).

I want to return to this question about motivation because I want to address the hanging question of what drives developers in Open Source projects. For instance, there is, as you know, the prevailing belief--right or wrong--that Open Source developers don't work within a money economy but within a so-called gift economy. Others, more pragmatically inclined, believe that the Open Source developer works chiefly to satisfy an "itch," that is, to address a problem that is bugging him or her. Obviously, I can't have you speak for the community, but if you could discuss your own motivations (and I recognize that you addressed some of these points above).

They are a mix of both. does scratch an itch for me. But I also welcome feedback and positive reinforcement. One thing does not have is a strong single leader. Therefore, many times people's efforts go unnoticed or unguided and frustration slips in. It is sometimes hard to get feedback from Hamburg in a timely manner. [Hamburg is where most of the key committers are located--ed.] Perhaps, a front person from Hamburg should join the porting list to act as a facilitator to get communication and feedback moving better.

Understand, developers will find building hard for a number of reasons:

  1. constantly huge changes to the source base
  2. the lack of up-to-date or clear documentation
  3. the sheer size of the project
  4. the unusual build tools
  5. the length of time to actually do a build
  6. the fact that it is full-blown C++ with templates and exceptions, and STL, and "components," making the code much harder to read and understand
  7. comments in German
  8. the source code is not well documented, to say the least, and often lacks the usual comments above every method that briefly describe what it does (and not just comments for public methods in header files).

All of these make for a very, very big challenge.

What you really need is for things to be more along the lines of Thomas Lange's wonderful How-To for the Spell Checker implementation. He made it brain-dead easy to add spell-checker support without having to understand the complete code around building and registering "components."

A few more things like that for small, focused projects would certainly help build successes for new developers.

The key is getting developers excited by the great things has to offer. Once involved, and with a few early successes, we ( should be able to build a larger developer base.

The other more or less abstract issue that I am hoping you could address relates to what might be considered to be another central problematic of Open Source operations: the process by which contributions are incorporated into the whole. At present, uses IssueZilla and a fairly simple method for dealing with community contributions. However, the project is growing rapidly and will grow even more rapidly (I hope). Do you have any suggestions as to how the process might be improved?

I think for an Open Source project to be truly effective, it needs clear and strong leadership. That leadership need not be confined to a benevolent dictator (as in the case of the Linux kernel) but can revolve through a set of interested individuals (release or project managers), with the backing of an oversight board. I think the GCC project with its steering committee and release managers is a good illustration of this idea in action.

Also, the recently promoted idea of having "supported builds" is a good one. It will help to greatly improve release stability, as would having the Hamburg developers using the same build process as the rest of us.

Also, a priority list of "gaps" to be filled might help focus improvements while providing a way for new developers to get involved (spell checking, thesaurus, help system, etc.).

Previous Articles

Apache Software Foundation

Copyright & License | Privacy | Contact Us | Donate | Thanks

Apache and the Apache feather logo are trademarks of The Apache Software Foundation. OpenOffice, and the seagull logo are registered trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.