Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve documentation #22

Open
8 tasks
xmnlab opened this issue Jul 11, 2018 · 12 comments
Open
8 tasks

Improve documentation #22

xmnlab opened this issue Jul 11, 2018 · 12 comments

Comments

@xmnlab
Copy link
Member

xmnlab commented Jul 11, 2018

Would be good to improve documentation the documentation to improve user and developer experience.

Topics to improve:

  • Special topics that deserve detailed documentation. E.g: Ragged arrays ( var(offsets))
  • Guidelines on how to extend xnd/gumath and how to use it as a back-end library
  • Guidelines on how to contribute to plures projects
  • Keep a list of projects using xnd as a backend library (e.g: https://github.com/Quansight/xndframes) or xnd's extensions (https://github.com/Quansight/numba-xnd) on xnd's website so that they can be used as reference for developers.
  • More Ideas/suggestions of what needs to be done to improve the documentation

Extra topics:

  • Improve tests including conda packaging
  • Triage of issues and maybe a wish list of features that need to be implemented
  • Add code coverage
@saulshanabrook
Copy link
Member

I was just thinking I would like to add a little blog somewhere so we can talk about xnd. Even if it was just a slightly elaborated version of our meeting notes that we have once a week, I think it would be useful for others who are new to the project to see where development is going.

I like Dask's website https://dask.pydata.org/en/latest/ because it seemlessy transitions between the intro page and the read the docs. Could we replicate this in some way? Goals I see:

  • Make it easy for users to navigate between docs of all projects
  • Should be able to get to landing page easily, right now none of the docs link to xnd.io
  • On landing page, have intro, examples, blog posts.

Thoughts?

@saulshanabrook
Copy link
Member

I think the Rust (the game) project has a very nice developer blog, see: https://rust.facepunch.com/blog/the-team-update/ They make it interesting and fun to follow their work even if you are not using their project (playing their game). I think we could do the same. Simplest way to do this might be to add jekyll auto generation to website repo, so we could write posts in markdown and have them posted. I am happy to help set this up.

@xmnlab
Copy link
Member Author

xmnlab commented Jul 12, 2018

@saulshanabrook

I like that! I think we could do that. if we have at least one blog post each week .. it will be very interesting.

I don't have experience with jekyll but I can learn and help you with you want.

should we schedule a meeting just for documentation tasks?

@xmnlab
Copy link
Member Author

xmnlab commented Jul 12, 2018

cc @andersy005 @davidbrochart ^^^

@saulshanabrook
Copy link
Member

saulshanabrook commented Jul 13, 2018 via email

@xmnlab
Copy link
Member Author

xmnlab commented Jul 17, 2018

notes from last meeting (2018-07-16):

  • ndtypes and datashapes should be similar docs.
  • create blog jekyll
  • put the notebooks inside read the docs.
  • xnd/ndtyeps/gumath
  • developer guideline (start point https://github.com/plures/xndtools/blob/master/doc/notes/notes1.rst)
  • use git subtree, use single command to build single library
  • tutorial add extra types float66
  • examples extending xnd, operations and kernels (gumath)
  • add kenerls outside from gumath, extension module
  • create documentation for xndtools
  • gumath, xnd, ndtypes should be connected
  • create text about the relation about gumath/xnd/ndtypes (could use dask as reference)
  • maybe create a readthedocs inside the same url like url/lib
  • add more numpy api functions/attributes to xnd_gumath class

@wesm
Copy link

wesm commented Jul 17, 2018

I have mentioned it elsewhere, but since xnd and gumath are inseparable from ndtypes, why not develop in a single git repository? Some people might be discouraged from contributing if patches might require multiple simultaneous changes across different repos. The GitHub UI and development workflow doesn't accommodate this very well in my experience. Less build / CI infra to maintain, one issue tracker instead of many, etc.

@skrah
Copy link
Member

skrah commented Jul 17, 2018

I think that is a good proposal. I'd like to do the merging myself so that the history stays intact.

@skrah
Copy link
Member

skrah commented Aug 2, 2018

@wesm @shoyer After some internal discussions we thought that ndtypes should be kept as a separate upstream package for now.

However, I've merged all packages as git subtrees into https://github.com/plures/xnd-all .

So, trying out everything just requires a single python3 setup.py develop or python3 setup.py install.

Contributing of course still requires pull requests to the individual libraries in theory, but personally I would also be happy with diffs attached to an xnd-all issue that cover multiple libraries.

@wesm
Copy link

wesm commented Aug 2, 2018

Cool, sounds good.

In the interest of building an inclusive developer community I would advise you to consider limiting "internal discussions" and having discussions like these in a public setting.

https://producingoss.com/en/setting-tone.html#avoid-private-discussions

@skrah
Copy link
Member

skrah commented Aug 2, 2018

This is a good link, I agree about public discussions. "Internal" was misleading, the discussion was actually on public Gitter. I think I still only recognize archived mailing lists as really public, hence the mistake. :)

@wesm
Copy link

wesm commented Aug 2, 2018

Ah, good to know. Unfortunately systems like Slack and Gitter are harming public discourse in this way; it's hard to find relevant discussions with internet searches =/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants