<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-08-19 21:38 GMT+02:00 Tim Sutton <span dir="ltr"><<a href="mailto:tim@qgis.org" target="_blank">tim@qgis.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">Hi Ale<br><div><span class=""><blockquote type="cite"><div>On 19 Aug 2015, at 09:41, Alessandro Pasotti <<a href="mailto:apasotti@gmail.com" target="_blank">apasotti@gmail.com</a>> wrote:</div><br><div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-08-18 23:19 GMT+02:00 Tim Sutton <span dir="ltr"><<a href="mailto:tim@qgis.org" target="_blank">tim@qgis.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><span>Hi all<br><br>In the last few years we have been steadily improving the amount of funding we are able to accumulate in the QGIS project. Our goal in obtaining funding is always to 'make QGIS better'. Up until now we have focussed funding on high profile aspects of the project: Funding regular hackfests, paying for bug fixing work prior to releases, funding infrastructure such as servers, domain name registrations etc. <br><br>With improved funding levels we now have the opportunity to also start addressing some of the many less obvious components of QGIS that badly need attention, but often don't attract volunteers. In our July 2015 PSC meeting it was agreed that we would start this initiative by funding one or more developers to improve the python documentation in QGIS. If you are interested in working on this, please be so kind as to visit the form [1] that we have set up for this.<br><br></span><span><br></span><div>[1] <a href="http://goo.gl/forms/WRGSvWHkBb" target="_blank">http://goo.gl/forms/WRGSvWHkBb</a></div><div><br></div><div>Regards</div><div><br></div><div>Tim</div><br></div></blockquote><div><br><br></div><div>Hi Tim,<br><br></div><div>Thank you for writing this proposal:  QGIS developer documentation really needs some more love :)<br></div></div></div></div></div></blockquote><div><br></div></span><div>Yes it does!</div><span class=""><br><blockquote type="cite"><div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>While reading the form, I noticed that one of the goals is <br><br>* port the cookbook content over to the API documentation<br><br></div><div>Does this mean the end of the cookbook? I hope not!<br></div></div></div></div></div></blockquote><div><br></div><blockquote type="cite"><div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>IMHO the purpose of the cookbook is not to be a full API reference but a collection of small tutorials (recipes), with some introductory material.<br><br></div><div>I've spent quite some time lately trying to update the cookbook by proofreading and testing the examplesand adding new recipes and I think that the cookbook is an invaluable source of informations for PyQGIS programmers, the biggest problem is that it is not routinely updated when the underlying API changes, for instance there are no recipes for <br></div><div>QgsMapSettings or QgsMapRendererCustomPainterJob and a few examples use deprecated methods.<br><br></div><div>I liked a lot the idea we discussed in Denmark about adding tests directly in the rst sphynx code, this would be a nice improvement for the code examples and snippets.<br><br></div><div>I think that the cookbook must continue to exist, it would be awesome if the process of writing code examples could be automated to transfer them to the cookbook, adding the snippets to travis would be a nice start but we all should definitely dedicate more resources for keeping the cookbook in sync with the source code changes.<br><br></div></div></div></div></div></blockquote><div><br></div><div><br></div><div><br></div></span><div>I also really like the cookbook, though I worry about the maintenance of it - if we can do the tests in ret to make sure that it remains current that would be one good motivation for keeping it current. An alternative approach would be to move the content of the cookbook into doxygen documentation (you can add arbitrary pages there - they don’t all need to be generated from header files. <br> </div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div><br></div><div>But let me rather step back and say that my intention in the proposal was more that we sponsor someone to really look into these things and come up with a well established standard - something like the django folks have done in your link below. We obviously don’t currently have funding for a complete revision of every single source file, but I think if the person we hire can establish a good working system, it will be easier to point others to when they submit patches, telling them ‘we need docs with that!’ - and pointing the to examples and instructions on how to document their code nicely.</div></div></div></blockquote><br><br></div><div class="gmail_quote">Ok, agreed.<br><br></div><div class="gmail_quote">The Django folks are very picky about "Have documentation" and "Have tests" before accepting any patch, and the documentation always have examples.<br><br></div><div class="gmail_extra">Doxygen also accepts RST and we could place python documentation into .sip  files, maybe a solution would be to include snippets and examples from doxygen (.sip is preferred) into the cookbook, leaving the introductory material in the cookbook itself interleaved with included examples and snippets.<br><br></div><div class="gmail_extra">I don't know about QT but most of the (not API) documentation I've seen is made with sphinx, I might be wrong (maybe is just that I know sphinx better than doxygen) but I suspect that moving the whole cookbook into doxygen and outside from the rest of the documentation (user manual, tutorial etc.) is not a good idea.<br></div><div class="gmail_extra"><br><br>-- <br><div class="gmail_signature">Alessandro Pasotti<br>w3:   <a href="http://www.itopen.it" target="_blank">www.itopen.it</a></div>
</div></div></div>