David Craven is cited in this IPFS article as the main author behind Rust-IPFS. I remember when he wrote that library last year; it was the primary reason he was hired to work as a core developer at Parity.

Now, you CANNOT see him on the list of contributors on the project’s github page. Note that contributor tally shown in the github UI is 1 greater than the contributors listed so we know that there’s somebody else but David is erased from the codebase’s history as a contributor.

That’s definitely the part that gets at me the most. I would just hate to work on a project for over a year and then have it taken from me without any indication that I used to work on it.

Theory of Why?

In February, David worked for Equilibrium Labs which took over the project under a grant for IPFS. Eventually, there was a difference of opinion on the technical direction of the project.

David believes that Web3 applications should prefer native to the web. He wanted Rust-IPFS to pursue support for this path before web because he thinks that Web3 applications should not depend on HTTP to distribute the User Interface (UI). His opinion is that HTTP was designed for a system in which a few servers distribute the UI to many clients (browsers).

“The future of Web3 technology should not handicap itself by relying on centralized information distribution protocols to compete with centralized services. We can harness the power of hardware with native applications and Flutter allows us to generate interfaces for mobile and desktop from a single codebase.”

So David started ipfs-embed to build an embeddable ipfs implementation that can share its backing sled database with a substrate light client. IPFS-Embed has 8 stars and David’s old Rust-IPFS implementation which will never again show his contributions has over 500 stars. They also have the official Rust-IPFS twitter account. My greatest fear is that they steal David’s work on ipfs-embed and get more funding. If that keeps happening, I’ll be worried about his health.

What might have caused this? David left Equilibrium Labs after they received a $7K USD grant and paid him $2K before the technical disagreement. Weeks after this split, they applied for this grant from Web3 https://github.com/w3f/General-Grants-Program/pull/283 which could be worth anything between $30K-$100K USD. If you look at the comments in that PR, David questions their approach and I believe this led to the separation and their complete erasure of his contribution history from the project. That’s definitely the part that gets at me the most. I would just hate to work on a project for over a year and then have it taken from me without any indication that I used to work on it. I can relate to this too – I’m still proud of the Substrate Recipes and so impressed with what they’ve become over the past few months. It would hurt me somewhere deep down if the world never knew that I poured a lot of time into it.

Consequences

Equilibrium labs released a blog post in response blaming the lack of credit on the github UI instead of their own conscious actions.

Some people have responded to this post by reaching out to me to tell me that it was David’s fault and he should’ve protected the permissions on the repo. Some context is that Equilibrium Labs was receiving a Protocol Labs grant to work on David’s repo and the Protocol Labs representative @vmx convinced David to add Equilibrium Labs as owners despite his concerns. They even made an issue called Governance in the repo and it served as a written agreement of the purported governance norms.

As soon as their Web3 Foundation grant was merged, Equilibrium Labs removed David and myself as owners and blocked us. They deleted the Governance written agreement from the repo’s issues. @vmx can attest to this, but he may not have an incentive to do so.

I’m glad I posted this. It taught me a lot about other people.