All Project Forks Are Not Bad

In general, I believe that project forks are not good. I wouldn’t really say that forks are bad, but they do tend to duplicate effort and split the community. They certainly are justified if the particular project is stalled or is not willing to meet the needs of a community or if the new project has a different goal.

In 2011, there was a fork of Bacula started by Graham Keeling, called Burp (burp.grke.org).  In the past, Graham had contributed some interesting features  to Bacula.  What is clear is that Graham and his fork are not at all hostile towards the Bacula project, in fact it is just the opposite.  Graham does have different ideas of backup or different goals, which are nicely explained on his site.

I have been aware of this fork since its inception, and when looking at the source code, I noticed a few minor problems with the copyrights, but decided that it was not significant enough to mention.

However, recently Graham asked a question on the Bacula web, and I did my best to respond to it.  In my response, I mentioned that I found a few issues with his fork.  Graham immediately contacted me, and off-list, I explained that I felt that few of the file headers should really include the Bacula FSFE copyright.  The next day, Graham posted a commit that in my view fixed all the problems and in exactly the right way.

I must say that this surprised me in a very positive way, because I just mentioned the problem and Graham fixed it.

I asked Graham if Bacula and Bacula Systems could include some of his code in the bacula.org and Bacula Enterprise versions, and Graham,  stated that any of the burp code can be used in bacula.org (they are licensed the same) and anything that goes into bacula.org can also be used in Bacula Enterprise — the mark of a real gentleman.

Conclusion: Burp is a fork of Bacula that has implemented something different and both projects can benefit from the other.