Grants:Project/WikiProject X/CollaborationKit MVP/Final
Welcome to this project's final report. This report shares the outcomes, impact and learnings from the grantee's project.
- 1 Part 1: The Project
- 2 Part 2: The Grant
- 3 Grantee reflection
Part 1: The Project
This was the third round of WikiProject X, intended to wrap up the project through the deployment and testing of our final product, CollaborationKit. In this, progress was made. Much of the development work to get CollaborationKit ready for live deployment was indeed completed. But overall, the project has failed, through this and every iteration thus far.
Let this report serve as a warning, to all who might consider requesting some funding to get your project going, knowing that what is available to Grantmaking is limited, and that coming from a volunteer background you are willing to put in some amount of time as a volunteer as well.
Do not do this.
You will burn yourselves out, as we have. For all the love that drove you to begin, there will come a time when none will remain to see it through.
The initial goal of WikiProject X was as follows:
- To address the causes of WikiProject failure on the English Wikipedia. By addressing these causes, we hope to increase the activity on WikiProjects and make WikiProjects more central to the experience of editing Wikipedia. This is based on the hypothesis that WikiProjects help facilitate Wikipedia-editing in a given subject area by organizing contributors around a cause and by providing resources and social support.
The goal of this round was to complete the overall project, to complete our product, CollaborationKit, and to thus finally, fully, test that hypothesis in practice.
To fulfil this goal, the project was thus broken down into the following targets:
- To complete development of CollaborationKit as a standalone minimum viable product (MVP).
- To fully deploy CollaborationKit for live testing on the English Wikipedia.
- To assess the success or failure of CollaborationKit to effectively meet the needs of users by removing the barriers we discovered in the first round of WikiProject X.
This goal was not met. Per the following sections, the targets were not met. WikiProject X is not complete; CollaborationKit is not complete. Funding was requested for approximately two solid months of outreach, administration, and development work, and after approximately two solid months of primarily development work, with some outreach and administration included according to the bare requirements of the grant agreement, development is not complete. We do not have a deployable MVP.
We cannot test our product. We cannot test our hypothesis.
And as much as it may have been viable to request further funding (budget change, project extension; there are a few different options), I am too burnt out to continue in any effective manner. I am done leading the community on with promises of a deployment that will happen 'soon'.
|Planned measure of success
(include numeric target, if applicable)
|To resolve deployment blockers and thus complete development of the CollaborationKit MVP:
|| Partly done:
||Ran out of time/resources to fully complete. Budget did not sufficiently account for the complexity of the required changes after years of accrued technical debt and especially the difficulty of working through the stress of the project, not just as a single person now working largely alone, but also after all of the issues we had with the previous two rounds and the subsequent accumulated psychological toll.
|To deploy CollaborationKit for testing on the English Wikipedia:
||Not done||Dependency was not completed. This could only be done after deployment blockers were resolved. Deployment blockers where not fully resolved.|
|To assess the success or failure of CollaborationKit and thus our overall hypothesis:
||Not done||Dependency was not completed. This could only be done after deployment. CollaborationKit did not reach MVP status, as deployment blockers were not fully resolved, and was thus not deployed.|
Looking back over your whole project, what did you achieve? Tell us the story of your achievements, your results, your outcomes. Focus on inspiring moments, tough challenges, interesting anecdotes or anything that highlights the outcomes of your project.
WikiProject X is a story of struggle, and yet this is the story that we haven't told. We have not gone into how under-budgeted the first round was, how we were all coming from a volunteer background, afraid we were asking for far too much money already, when in truth what we were asking for was well below market rates for but a fraction of the work we wound up having to put in, presenting it as part-time work to complete what was in truth a full-time project. We were like a startup, a tiny team with each member taking on too many roles, working well outside reasonable (or likely even legal) billing hours, for far longer than we had the resources to maintain, financially and psychologically.
James, as the manager and owner of the project, I think took the worst hit by far. He did his best the shield the rest of us, but looking back now, I don't think it was enough, or could have been. Even when he had to leave the project entirely after the second round, when the toll became too much for him to support, I thought I was fine. I thought I could continue on my own, asking for something more reasonable, a more reasonable budget for a more realistic scope. I was vague on the stated rate, and didn't overtly raise it as much as I should have, however. It seemed too glaring, next to the original budgets. And I didn't allot sufficient scope, build in all the usual considerations to account for just how hectic a technical project can be in practice, let alone one with such deep community integration as this one.
I just wanted it all to be over.
Had we discussed this before I'd started this round, it should perhaps have been obvious. I was repeating the very same pattern that had gotten us into this mess. I was doing the sames thing all over again, this time alone, under-scoping and under-budgeting just to move forward at all, to get it done, to get the whole thing to go away. But this conversation didn't happen, precisely for the same reason: we all just wanted it to go away. We didn't want to talk about it. For James, it was at times too much for him to even think about it at all.
We should have had a full team from the start. We should have had a budget perhaps orders of magnitude greater, in terms of time, funding, and all other kinds of expenses that would normally go with an extended contract-based development project. We began with what we knew, but when it became clear that more would be needed, we should have brought in the full requirements. We are professionals, and should have treated ourselves as professionals.
And now it is clear that we have caused ourselves even as-yet unknown damage, not just in terms of our quality of life and own professional development, but our very mental health.
In terms of what did happen with this round, I am really only a designer and developer. I can't effectively take on the other roles, especially not on top of everything else. By finally setting these others aside, and focusing only on the design and the development itself, I was able to proceed and fill the hours this round had allotted.
- CollaborationKit burndown graph - Between April 2018 and October 2019 shows the development progress on CollaborationKit over the course of this round of WikiProject X. Note the spike in tasks filed in early 2019, preceding and planning for the month-long development sprint to try to get it ready for deployment in one solid go.
This sprint almost succeeded.
I submitted the midpoint in May, having already burned through over three quarters of the total budget in terms of billable hours, switched gears to complete my other project, came back in July, used up the rest. After an odd talk with James in August, realised it was time to just pull the plug. I am just as burnt out as he was. With this round of the project at the end of its budget regardless, it's time to accept this, and stop, and finally just move on.
I can't do this anymore.
Methods and activities
Please provide a list of the main methods and activities through which you completed your project.
- Updates of current tasks
- Full review and triage of existing tasks on the workboard, both refamiliarising myself with what was already there from the previous round, as well as sorting out what has updated and changed since then
- Workflow testing and review of CollaborationKit itself in order to determine and file tasks for more obvious and immediately applicable UX problems
- Resolution of technical debt
- Code style and updates to match core/upstream expectation and extant standards
- Removing and updating usage of deprecated functions and libraries
- Determining paths forward to resolve some more complicated problems, or whether or not paths forward currently exist
- Determination and resolution of current deployment blockers
- Categorisation based on: simple UX problems that would result in unnecessary and distracting reports; schema changes that would result in breakages (cache or parsing) if deployed after the fact; existing bugs that will result in breakages if triggered; feasible content-model-related fixes
- Tracking upstream dependencies and resolutions in order to determine appropriate paths forward to resolve blockers
- Updates and maintenance for onwiki and community outreach channels
- Updates to parts of the existing WikiProject X WikiProject on the English Wikipedia (and attempting to determine what certain parts were intended for to begin with)
- Newsletters, outreach, requests for pilot projects
- Assisting WikiProjects interested in using or already using previous iterations of the prototype on-wiki, both as on-going support and also to better understand user expectations and maintain some cohesion and trust among interested community groups
Please provide links to all public, online documents and other artifacts that you created during the course of this project.
- Newsletters: Issue 12, Issue 13, Issue 14, Issue 15
- Updates to the CollaborationKit source code on gerrit
- Updates to and management of the Phabricator workboard
- Onwiki project updates and changes
What worked well
The project's progress thus far, and the learning patterns generated over the course of this and the concurrent project, Timeless, generally describe what has worked, and what we have found in terms of general recommendations:
- Learning patterns/When things go wrong, just tell people
- Learning patterns/Estimating time and complexity
- Learning patterns/Writing a new MediaWiki extension for deployment on a Wikimedia project
- Learning patterns/Designing and developing for an active, existing project
- Learning patterns/Developing intercompatible components within a complex and often inconsistent system
In terms of the work we did, much succeeded. In terms of how we got there, however, and the resources put into supporting this work, WikiProject X has not been a tale of success, and should rather more be taken as a warning to all who might follow in our footsteps.
What didn’t work
Next steps and opportunities
WikiProject X, as a wider project, is not complete. The CollaborationKit MVP itself is not complete. This round of the project, in terms of the scope and especially quantity of what was funded, is complete, but there is a very clear point to pick up from. The code is there. The workboard describes the current status and blockers. These reports, and the project on the English Wikipedia, though somewhat out of date, respectively show the progress so far in terms of findings and community engagement.
Any full properly equipped team could pick this project up and see it through to its proper end.
And if the overall WikiProject X project is to move forward, I must recommend that it only be taken up by a full team, in order to thoroughly and effectively handle all aspects of the investigation - not just development and ensuring compatibility with all updates in the product itself as well as upstream; with user settings and expectations; and with deployment requirements - but also proper and effective outreach and reporting to external and internal stakeholders; effective project and product management; and proper reporting, setting and tracking target goals, and management of appropriate metrics internally within the project team itself.
Each of these, or similar, should be a single, distinct, full-time role.
Part 2: The Grant
Per the project finances:
|Expense||Approved amount||Actual funds spent||Difference|
|CollaborationKit development, general WPX project coordination, outreach, etc to get CK deployed, assessed, and iterated||10,000 USD||10,000 USD||0.00|
|Total||10,000 USD||10,000 USD||0.00|
Do you have any unspent funds from the grant?
- No; this is a grant funding contract development work. All expenses were a part of that as such.
Confirmation of project status
Did you comply with the requirements specified by WMF in the grant agreement?
- As much as proved feasible.
Is your project completed?
In terms of amount of work proposed and funded by the grant, the project is completed. In terms of fulfilling the stated goals and objectives, however, the project is not completed, as the scope to truly complete WikiProject X and CollaborationKit as a viable prototype thereof turned out to far exceed what was proposed here. See above for the recommended next steps.
We’d love to hear any thoughts you have on what this project has meant to you, or how the experience of being a grantee has gone overall. Is there something that surprised you, or that you particularly enjoyed, or that you’ll do differently going forward as a result of the Project Grant experience? Please share it here!
- Not sure what to say. It didn't go as I'd hoped. I don't think I can come back to WikiProject X at all unless I have a really good team to support me, and only a very specific and well-defined role of my own within that team. This project has been the cause of so much stress for me over the years due to how under-resourced we've been at every stage that I now realise that it is not possible for me to simply put the past issues we've had with it behind me and proceed on my own. The toll of our prior experiences has continued to hang over me throughout this round of the project, and while I was finally able to power through regardless by focusing only on the development work, the budget was quickly expended even just doing that, and there is so far left to go.