Functional spec begun: please review

I have begun a functional specification for MVP based on the requirements we’ve collected so far. The spec is not complete; many pieces await elaboration and some await resolution of discussions here on the forum.

Please take a look at what we have so far and reply on this thread with feedback. Questions to ask yourself when reading include:

  • Is that what I think we meant?
  • What’s missing that hasn’t been explicitly noted as missing?
  • As a front-end developer, do I have enough information to proceed to a design (for the parts that are specified)?
  • As a database designer, do I have enough information to proceed on a schema (ditto)?
  • As a back-end developer, do I see anything that raises alarms (performance, number of server calls, etc)?

I’m 95% sure that soft deletion isn’t good enough for COPPA compliance. I’d have to look it up. If the site is run by a non-profit, COPPA doesn’t usually apply, so that might not be an issue for MVP. Someone who knows the GDPR would have to check if soft deletion is good enough for that.


GDPR does not apply to posts, only to personal information (although if there’s personal information in posts, we’d need to redact it).

COPPA is a separate thing. As the spec says, we should soft-delete in the vast majority of cases. We will, however, handle legal requests (including COPPA compliance and GDPR) separately, and these will often involve hard-deletions.


Concerning meta discussion:

Isn’t that just going to be another instance/network? Or are we planning on doing additional features for that?

Even more so, it seems most intuitive to me to start out with a meta.
For all of Codidact (like meta stack exchange), where we can start voting on stuff while working toward more public releases (“real” instances), fixing some “teething problems”. So MVP - or to be more clear, “public release” - would be just creating another instance/network, but with the issues we found in the mean time fixed of course.

I’m not in the loop concerning the current plans about this though.

1 Like

An instance is a collection of sites. Each of those sites needs to have a place to have its meta discussions (scope, why was this question handled this way, should we merge these tags, etc). An instance probably needs a place to have instance-wide meta stuff, since each instance is free to set its own policies and stuff.

Then there’s the Codidact project itself, which needs a place to discuss changes to the platform and stuff like we’re discussing here on this forum. Presumably bugs and well-formed, complete feature requests go to GitHub bug-tracking, but there also needs to be a place to work stuff out and discuss stuff. I don’t know whether that’s this forum, something on Github, or what.

The Codidact platform is different from Codidact instances, though we expect this team to stand up an instance on top of the platform.