-
Notifications
You must be signed in to change notification settings - Fork 100
Objection to Archiving the Solid SpecΒ #226
Description
@timbl @johnbizguy there is a proposal in another repo, to archive this Solid Spec. This is really a short hand for saying to deprecate the Solid Spec.
That would be a premature optimization
This repo includes all the work we did at MIT and predates inrupt and the subsequently created process. Some people may want to work that way. And that's great, it gives the project much needed momentum. But not everyone does. IMHO, it suits full time employees, but Solid also should be welcoming to people that are hobbyists, volunteers, work in their spare time and at weekends, or casual members of the JavaScript and other communities.
I would like to join @kidehen in voicing objection to the to the proposal on the following grounds:
-
The Solid Spec was the result of at least 5 years hard work, and was a team effort. It was a mix of academics and power users that used solid on a daily basis. That had great experience and iterated on tiny details. A team coming to it afterwards does not necessarily have the unilateral right to deprecate it
-
There are multiple server instances coded and working on solid specs up to and including 0.7 (Go, PHP, Node) some of which are still catching up to 0.7. Namely to introduce webid-oidc to gold and ldphp. That work should not be stopped
-
There are multiple apps targeted to 0.7 and they should be given breathing room to adapt
-
The main solid reference implementation, node-solid-server is targeted at 0.7
-
This repo has over 1000 stars, is very much part of the solid history, and solid story. It should provide a historical record of how the project evolved. And issues should not be unilaterally moved from one repo to another without consent.
More importantly the nature of trying to sell a new spec in a somewhat heavy handed way might not have the desired effect, and in some cases could have the opposite:
"The way the Web spread was a piece at a time. So you could take html without taking http. So the failure of NEXT was a lesson, donβt try to sell it all at one time. Sell each piece on its own merits. Never insist that everybody take all. They will take all the pieces once they see how it fits together." -- Tim Berners-Lee
Furthermore the work on "specification" is not complete.
I would invite close reading of the following architectural principles of design:
https://www.w3.org/DesignIssues/Principles.html
Also pay attention to Brian Carpenter's architectural principles
ftp://ftp.isi.edu/in-notes/rfc1958.txt
And perhaps most important: Nothing gets standardised until
there are multiple instances of running code.
AFAIK The newer work does not have multiple implementations that conform to it. It is more complex. It is less modular. There are question marks over backwards compatibility.
I propose that the bar for replacing one spec with another should be very high
- You are replacing like for like
- It is backwards compatible
- It has implementations of the new work
- It has unanimous consent and no informal or formal objections
Quite happy for the work on specification to go ahead. But it should not be at the detriment to existing work.
I back the proposal of @kidehen to let both repos exist in parallel. At least for now.
There should be a path for people that have spent a lot of time working up to 0.7, and that have working systems and running code, to continue that work, and fix bugs where necessary.
Given that, there would perhaps be benefit to be a bridge between the two works that can join them together. One group works on solid v.next. One group will fix the pain points on existing work on 0.7. This is something we experience in the community and work on regularly. Then maybe we could have a 0.8 that pulls in the consensus from the new work and applies it to what exists.
That may create a smooth upgrade path that everyone can live with
If there is a wish to deprecate this work it should be first endorsed by @timbl with an open discussion here. And ought to give guidance to those that have spent a lot of time working here, what to do next
Thanks for reading!