Re: Media Wiki
Posted: Fri Jun 09, 2017 10:33 pm
The benefit of having documentation content in the EventGhost repository and built in to the application is that this will provide a snapshot of the documentation that matches the EventGhost version being used. As the application changes the documentation should change along with it. If you go to a system of only online documentation then you have two options:
As for changing to a system where the documentation is updated by editing the wiki, that is more appealing. The downside is that with the current system if I submit a pull request to add a new feature I can include the necessary changes to the documentation update with that pull request in the same commit as the change. The changes to the documentation can be reviewed as part of the pull request. The documentation is automatically updated when the pull request is merged. If I had to wait until the pull request is merged before updating the wiki it's much less likely for this to actually happen.
I do like the idea of making it easy for anyone to update the documentation but with the current system of having to apply to join the wiki usergroup and then wait to be approved it's actually not significantly easier than submitting an issue report or pull request to the GitHub repository.
It seems best to me to stick with the current separation of documentation and wiki and in fact to create a sharper divide between the two. It has long been a source of frustration to me that the two have bled into each other to such a ridiculous level. The documentation pages should be limited to things that are tightly coupled to the source code such as the command line options. The wiki can be a place for people to freely publish information that is more random in nature, such as a tutorial on how to control a specific device with EventGhost. The documentation content should be very tightly controlled, the wiki content should be given more freedom.
- Show the user the documentation for the latest release. If they're using an older EG version then the online documentation is ahead of their version. If they're using a pre-release then the online documentation is behind their version because the online documentation only gets updated during a real release.
- Version-specific online documentation. You could publish a copy of the documentation for each release. e.g. http://www.eventghost.net/docs/0.5.0/ and link to the appropriate version from the application Help menu.
As for changing to a system where the documentation is updated by editing the wiki, that is more appealing. The downside is that with the current system if I submit a pull request to add a new feature I can include the necessary changes to the documentation update with that pull request in the same commit as the change. The changes to the documentation can be reviewed as part of the pull request. The documentation is automatically updated when the pull request is merged. If I had to wait until the pull request is merged before updating the wiki it's much less likely for this to actually happen.
I do like the idea of making it easy for anyone to update the documentation but with the current system of having to apply to join the wiki usergroup and then wait to be approved it's actually not significantly easier than submitting an issue report or pull request to the GitHub repository.
It seems best to me to stick with the current separation of documentation and wiki and in fact to create a sharper divide between the two. It has long been a source of frustration to me that the two have bled into each other to such a ridiculous level. The documentation pages should be limited to things that are tightly coupled to the source code such as the command line options. The wiki can be a place for people to freely publish information that is more random in nature, such as a tutorial on how to control a specific device with EventGhost. The documentation content should be very tightly controlled, the wiki content should be given more freedom.