Advertising

I've been using open source software for around 20 years. I have been
using the Linux OS platform at home all that time and where possible
also at work. As anyone who's been a user of FOSS for a reasonable time
would know, it's not all plain sailing - many a time is required to
google forums and get under the hood to fiddle with a config file.

But there are many things that don't work, missing drivers, or that
missing a feature that would be really helpful. Apart from at work where
I've had to use a VM to run company-mandated windows software, or highly
specialised apps that don't have equivalents in the open source world,
I've gotten by.

Obviously one answer to the downsides is to roll up my sleeves to help
out. The main trouble for me is that I'm relatively time poor. I did
try to help out at one project called Gnome planner (and yes, you can
google it if you want). I'm not proud of my early rookie use of git,
but I did write a patch to add a feature that I was missing from the
gantt chart planning tool. It served me well while I was using it for
work (until they forced me to start using MS project). I submitted the
patch, but AFAIK it has never been applied to the main trunk. I have
not chased this up.

PatchPitch is a reaction to the time poor thing, but still wanting to
help. If I'm going to be of any use, I'll need to figure out a way of
deriving a partial income to compensate me for the time I spend,
otherwise I simply won't have time to help. So yes, this is a venture
designed to generate income for me and any future team that is built.

The main idea, like bountysource and one or two other sites is to crowd
fund features and bugs. And the idea behind this is to give users an
option to address specific areas of pain for them where previously they
may have had none. I am trying to improve where these other sites have
not been a raging success. They have seemed to focus on building the
site and hoping people will come. I was wanting to approach the project
team directly (hence my posts here) to work out whether we could figure
out a way that *could* work and hence have a greater chance of real success.

At this point, I'd like to say that I certainly agree with your conflict
of interest assessment if I was to become part of the development team
and I was soley responsible for outsourcing project management work from
donations - especially if there was a lack of transparency.

My original thinking, however, was that I would remain independent of
the Gnucash team. I would help to raise funds and project manage the
work. The funds would cover the costs of all the work, including my
own, which would all be disclosed. Initially, I expect that the actual
development work (software or other) would need to be outsourced. You
rightly point out that writing the proposals, selecting and supervising
the contractors, evaluating the quality of the code, design and
documentation are all important aspects of the process. If I am not
part of the development team, then in order for the work to be
acceptable and therefore able to be merged into master, the team would
need to be involved somehow - either they would need to trust me or a
member of my team, or they would need to do some of that themselves.
The main "interface" tasks that I see are the proposals, possibly the
selection of the workers, and the review and final acceptance of the
completed work.

And so the viability of this concept hinges on these interface tasks and
hence why I am discussing this now to gauge interest (especially in
light of the significant amount of code re-write ahead) and to see
whether there are possible ways to work cooperatively.

Thanks & regards,
Paul.

Paul,
I don't think there's any misunderstanding. Rather I think you're trying to
sell the development team on something and being less than candid about your
motivations.
The conflict is very simple: From your Linkedin profile:
"I'm the founder, director and developer of PatchPitch.com. PatchPitch.com
brings certainty, control and
sustainability to Open Source Software, both for customers and
developers, through a form of project managed micro
crowd funding."
You also appear from Linkedin to have another company, SpikeSA, that is a
project management consultancy.
The conflict should be obvious: You're offering to help with the contracting
and managing on GnuCash's behalf of something that you're in business to
provide. If you can't recognize that conflict then you're remarkably ethically
challenged. The impression of ethical challenge is reinforced by the fact that
you have approached us twice and both times failed to disclose your business
interest.
But let's let that go for a moment. Let's also assume for a moment that we're
interested in following up on the crowdfunding proposal and letting you run it.
Apply for the job: Submit a CV and checkable references. I think the task
involves the following:
1. Understanding the overall goals and priorities of the GnuCash development
team for the next two release cycles (i.e., until 2020).
2. Analyzing those goals and priorities and developing concrete sub-projects to
further them.
3. Writing requests-for-proposal for accomplishing those sub-projects.
4. Make credible estimates of the costs for contracting out those tasks and
obtaining the requisite funds through crowdfunding, including whatever
commissions/salary you'd require for performing this work.
4. Finding consulting software engineers and documenters with the ability to
execute the sub-projects, get them to answer the RFPs, and select the best
proposals.
5. Write contracts for the selected engineers and documenters to perform the
work. Contracts need to include deliverables, concrete requirements for
evaluating the acceptability of the deliverables, intermediate milestones for
progress payments, and time frames for completion, plus all of the other legal
stuff that goes into contracts like that.
6. Supervise the contractors to ensure that the milestones are met and
administer payment.
7. Evaluate the provided code and documentation for good design,
implementation, and correct language choice. Ensure that documentation and code
is well-written, complies with GnuCash's coding standards, and is ready to
merge into GnuCash at each milestone.
Your Linkedin profile suggests that your actual experience covers only items 1
(though not for GnuCash), 6, and maybe 7 (see below), and there's no real
indication of actual proficiency there, it's just a bare CV.
Oh-by-the-way, since your employment at CSC seems to have been as a personal
services contractor to BAE Systems I don't place a lot of credibility on the
recommendations of your CSC colleagues. After all, they weren't the end
recipients of the work you did.
The next question is how do we manage you? Are you proposing to do all of that
work as a volunteer or do you expect to be paid? If the latter, what are your
deliverables, intermediate milestones, and payment schedule? How do we evaluate
your performance to those deliverables and milestones? How do we control your
solicitation on crowdfunding sites, collection of the money, disbursement of
the money, etc.?
You profess to "love open source", but what have you actually done for open
source projects?
What about coding and code evaluation skills? Are there some significant
features that you've implemented on major FLOSS projects that you can point to?
Large pull requests or patch sets that you've reviewed? Mailing list
discussions on a major project that you've contributed to in a meaningful way?
All of which falls far short of "adopting a commercial model", something that you haven't
brought up before (raising more questions about your motivations). FWIW, Linas Vepstas, one of the
original creators of GnuCash, tried that around 2000. You'll find vestiges in the copyrights on
some of the older modules; look for "Linux Developers Group". It didn't work out. One or
two developers have also tried selling GnuCash consulting and customization over the years, and
that hasn't worked out very well either. It might be possible to build a business around GnuCash
but past experience indicates it wouldn't be easy.
Regards,
John Ralls