Godot version:
Godot 3.2+
Issue description:
There are a few common problems that I hear from the Godot community:
I believe that these problems' could be improved by defining a web API for the Q&A site and defining an interface within the editor that allows people to ask their questions directly from there. Perhaps even creating integrated tools in the API docs so that prefilled questions can be generated. We could also then use the tagging system in the Q&A site to generate links in the in-editor API docs. For example, if I had a question tagged with "Object.connect", I might then end up generating a link in the API docs for that function that would allow someone to visit the Object's API docs, find that method, click the link, and immediately jump to the relevant Q&A site question in-editor.
Anyway, just some ideas to toss out. WDYT?
As someone who has used Godot for half a year, I didn't even know there was a Q&A site! I also find that the API docs aren't as up to date with the latest version of the engine (unsurprising - hard to maintain).
So, I think this is an awesome idea. Who would filter/maintain the questions that came from the editor?
@bakenshake
Who would filter/maintain the questions that came from the editor?
Not sure what you mean by this. We would just be creating a GUI that can do basic CRUD operations via HTTPRequest. The Q&A site is basically community-managed. Anyone can post questions and answer them. The only restriction is that the site is read-only (can't ask or answer questions) if you aren't logged into it, so we'd need an interface for that built into the editor.
Sounds like a sizeable task, but I dig the idea! An official, well-integrated channel to ask questions and find answers straight from the engine would be nice. I'd definitely help people on the QA site more if this was the case.
Interestingly, I see the godot website and the asset library as FOSS repositories on GitHub, but I don't see one for the Q&A site. Not even sure where that's located.
The Q&A site runs on Question2Answer, but I don't know if it offers a REST API that could be used from the editor.
I'd do it way more minimally for a first step:
Next to each class, constant, member and method in the built-in docs, display "[search tutorials] [search q&a]" links that just open your web browser on a click, searching all tutorials/qa pages for that method name, class name etc.
That would already help a lot with discoverability of Q&A and the matching tutorials, IMO.
E.g. link to http://docs.godotengine.org/en/3.0/search.html?q=kinematicbody2d&check_keywords=yes&area=default for docs/tutorials and https://godotengine.org/qa/search?q=kinematicbody2d for the QA for KinematicBody2D for example.
This way requires no deep REST API integration anywhere.
Discoverability/usability of q&a would be better if assetlib and/or forum login could be integrated with it. However last time it was suggested, there were some problems with doing it?
Forum isn't official, so we can't integrate with that.
Maybe it's the time to use a well established forum software, to create a single place for help, and such a forum may have the required API to create the bridge to the Godot editor. Several problems solved by one solution !
It does seem like part of the issue is that the Q&A site isn't really advertised as being the "official" primary source for this kind of info (it's tucked away under the "Community" section). If it was listed more prominently on the Godot site (perhaps next to the docs link), I think it would help make the info more discoverable and would help encourage folks to contribute questions and answers to a single, canonical Q&A site, instead of the fragmentation that we seem to have right now.
As for actually integrating the Q&A info with the editor, that's an interesting idea! I would suggest, though, that such features be focused around how they would improve the dev cycle. For example, having in-editor access to answers would be interesting, especially if they were connected to the API docs instead of just being searchable.
On the other hand, I'm not sure that asking a question from the editor is all that useful. By the time that someone has to ask a question, they're already being interrupted from their state of flow, so reimplementing the Q&A UI in the editor doesn't seem like it would gain the user much.
@DriNeo rather than moving people to another place, a few quick Google searches revealed that Q2A has plugins that can let you define a web API. We may wanna check that possibility out first.
related: #10827
Closing in favor of https://github.com/godotengine/godot-proposals/issues/598, as feature proposals are now tracked on the Godot proposals repository.
Most helpful comment
I'd do it way more minimally for a first step:
Next to each class, constant, member and method in the built-in docs, display "[search tutorials] [search q&a]" links that just open your web browser on a click, searching all tutorials/qa pages for that method name, class name etc.
That would already help a lot with discoverability of Q&A and the matching tutorials, IMO.
E.g. link to http://docs.godotengine.org/en/3.0/search.html?q=kinematicbody2d&check_keywords=yes&area=default for docs/tutorials and https://godotengine.org/qa/search?q=kinematicbody2d for the QA for KinematicBody2D for example.
This way requires no deep REST API integration anywhere.