Developer Center Platform Requirements
This issue tracks the requirements we have for a new GNOME Developer Center. Feel free to suggest more requirements and we can add them.
Minimum Requirements
Easy to Edit Content
One of the major reasons developer.gnome.org is in a semi-unmaintained state is because of a high barrier to contribution. Newer documentation efforts such as HowDoI and Newcomer Guide ended up in the GNOME Wiki because it has low barrier to contribution and is easy to maintain. Three concrete requirements from this would be:
-
Support different login backends such as GNOME LDAP, Github, Google, Bitbucket, etc.. -
Online Editing -
Use a common or easy syntax, fx markdown.
Search
Some of the greatest documentation sources out there are great because you find what you search for in there. See for example how centrally Mozilla Developer Network places their search on their front page. If we want the search to be powerful, we might even want to consider external ressources like stackoverflow where we currently have GNOME QA. Some concrete requirements:
-
Search titles and content -
Search external ressources -
Have Search auto-completion as you type
Support for multiple programming languages
We can't ignore the big language diversity in GNOME. Even if we won't have volunteer-power enough to treat/maintain every programming language as first class citizen, the platform must have that base support for editing/adding documentation in multiple programming languages. See fx how Unity3D's Documentation supports C# and Javascript respectively.
-
Easy to view documentation in different languages. -
Have auto-generated API for high level languages generated via g-i-r.
Nice to Have
Handle Multi-media
Some learn through reading text, some prefer watching videos. It would be great to have all of this gathered in one place, regardless of documentation type.
Translation
While English documentation is a great start, all of the world does not speak it. Ideally we could export individual paragraphs of documentation to .PO or something similar which integrates with the Damned Lies workflow translators are already accostumed to.
Dynamic Content
In the very long-term it could be nice to support dynamic content such as question and answers for developers, Comments on tutorials and uploading code snippets.