Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Add Matplotlib Journey online course to external resources #30032

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

Merged

Conversation

JosephBARBIERDARNAL
Copy link
Contributor

PR summary

Following discussions with @tacaswell and @story645, I have added Matplotlib Journey, an online course on matplotlib, in the external resources.

Please let me know if any changes need to be made (for example, to make it clear that this is a paying resource).

PR checklist

@github-actions github-actions bot added the Documentation: user guide files in galleries/users_explain or doc/users label May 9, 2025
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for opening your first PR into Matplotlib!

If you have not heard from us in a week or so, please leave a new comment below and that should bring it to our attention. Most of our reviewers are volunteers and sometimes things fall through the cracks.

You can also join us on gitter for real-time discussion.

For details on testing, writing docs, and our review process, please see the developer guide

We strive to be a welcoming and open project. Please follow our Code of Conduct.

@JosephBARBIERDARNAL

This comment was marked as outdated.

@rcomer
Copy link
Member

rcomer commented May 10, 2025

I think spam bots have existed ever since online forums have existed. On GitHub, you can report them using a link in their profile (at the bottom of the left-hand panel).

@JosephBARBIERDARNAL
Copy link
Contributor Author

First time I see some on Github, but thanks for the info.

@jklymak
Copy link
Member

jklymak commented May 10, 2025

Is this a paid course? If so has anyone on the Matplotlib team taken it so we know it is reasonable?

While we have linked to paid resources in the past, I think that is mostly for people we know from the project.

@JosephBARBIERDARNAL
Copy link
Contributor Author

Is this a paid course? If so has anyone on the Matplotlib team taken it so we know it is reasonable?

While we have linked to paid resources in the past, I think that is mostly for people we know from the project.

Yes it is. @story645 has access to it, and I can give access to anyone in the matplotlib team (I only need an email), as I already said to @tacaswell by email.

@jklymak
Copy link
Member

jklymak commented May 10, 2025

I think we should be cautious about linking commercial resources, including books, as it gives the impression we think these resources are "good". I'm not at all saying that this particular contribution is not "good" or not "worth the money". However, I think we should reconsider linking to commercial resources, or if we do, the "Resources" page should have a disclaimer that we are listing these for informational purposes, and don't endorse any commercial links on the page.

@story645
Copy link
Member

story645 commented May 11, 2025

While we have linked to paid resources in the past, I think that is mostly for people we know from the project.

@JosephBARBIERDARNAL has a bunch of third party packages and his collaborator (Yan Holtz) is the creator of the python graph gallery which is listed on the external resources page.

However, I think we should reconsider linking to commercial resources, or if we do, the "Resources" page should have a disclaimer that we are listing these for informational purposes, and don't endorse any commercial links on the page.

What about a paid resources section with a disclaimer there? Though we've never explicitly endorsed the free resources either.

I'm also gonna loop in the @matplotlib/steering-council since I sent 'em an email about this as a follow up to last weeks call discussion.

@timhoffm
Copy link
Member

I think we should be cautious about linking commercial resources, including books, as it gives the impression we think these resources are "good". I'm not at all saying that this particular contribution is not "good" or not "worth the money". However, I think we should reconsider linking to commercial resources, or if we do, the "Resources" page should have a disclaimer that we are listing these for informational purposes, and don't endorse any commercial links on the page.

Fundamentally, listing something in "External resources" is a kind of endorsement. We would not add random stuff without knowing it is any good. There's no difference in whether it's free or paid content.

What we should do is

  • add a statement that this is all 3rd party content and not affiliated to matplotlib. - I'm not sure that "informational purposes, and don't endorse" is really the right wording, but we can work on that
  • mark all paid content as such, e.g. by adding (paid content) or a similar tag to the relevant entries. - I would not make separate sections for free/paid.
  • Have a documented minimal bar for adding content here, which is somewhat higher than regular docs content. - It could be something like "two approvals and no veto by a core developer"; exact conditions t.b.d. and "content must be good quality. Approvers should have the impression that it can be beneficial to users"

@story645
Copy link
Member

story645 commented May 14, 2025

add a statement that this is all 3rd party content and not affiliated to matplotlib. - I'm not sure that "informational purposes, and don't endorse" is really the right wording, but we can work on that

The third party packages page has:

A list of packages that extend Matplotlib. These are maintained and distributed independently from Matplotlib so go to the website listed for instructions.

Maybe a mash up:

A list of education resources for learning Matplotlib. These resources are maintained and distributed independently from Matplotlib and therefore not affiliated with Matplotlib.

Have a documented minimal bar for adding content here, which is somewhat higher than regular docs content

We should also have that for the third party page - I think the current standard is more or less that it's a documented and tested installable package.
ETA: I think the educational equivalent is something like the scope of the resource - it should provide a fairly comprehensive overview of matplotlib in service to its aims.

@jklymak
Copy link
Member

jklymak commented May 14, 2025

We would not add random stuff without knowing it is any good. There's no difference in whether it's free or paid content.

"two approvals and no veto by a core developer"

I'd be fine with that, if the members who approve actually view the material to vet it. However, I won't be watching 30 h of commercially available material unless I am also paid, and I wouldn't expect anyone else to do that - even textbook reviewers typically get honorariums for their time.

I'd also probably be OK if we wanted to have "sponsored content" where someone pays the project a nominal fee to include an advertisement that has clearly has no endorsement from us

@story645
Copy link
Member

story645 commented May 14, 2025

"content must be good quality. Approvers should have the impression that it can be beneficial to users"

So skimming through mpl-journey, I think they've got a clearer definition of figure and axes than we do in our docs 😅 and they've got a clean scaffolded and chunked way of unrolling the information about mpl. I think for their audience, it's nicely motivated - axes has methods, want to make chart x? here's the methods on axes for that (with lots of interactivity that we can't have on our docs) - while still being concept first and wrapping up each section with quizzes and small modules. They also weave in visualization concepts/advice/best practices in a way I'd find out of scope for our docs.

Which they're covering:

  • overview of mpl - figure, axes, basic customization via parameters
  • customization/styling - mostly focusing on color/colormaps and theme but also mentions things folks ask for like ticks/spines/legend
  • annotations - text/annotate/legend/fonts/arrows (mostly via custom library but we have multiple open discussions on arrows needing to be sorted out)+ styling (some of their custom font stuff they do via a third party library might get easier once all the font work is complete)
  • custom layouts - subplots/subplot_mosaic/inset_axes/
  • maps - geopandas based, covers maps, choropleths, scatters(bubbles)

tldr: I think it's a solid well crafted resource that I could see being especially good for folks who aren't scientists.

ETA: I guess I should add the disclaimer that I have no financial stake/conflict of interest w/ this resource, I've just interacted with both Yan and Joseph on socials b/c they've been sharing a lot of "how to make pretty mpl" for I think years now.

@story645
Copy link
Member

I'd also probably be OK if we wanted to have "sponsored content" where someone pays the project a nominal fee to include an advertisement that has clearly has no endorsement from us

The original offer was for an affliate link/coupon code but that was shut down b/c of concerns about tracking.

@JosephBARBIERDARNAL
Copy link
Contributor Author

Thanks @story645 !

Some other things that might be relevant:

  • Here is one of the lesson that I think can give you a good idea of the course: https://www.matplotlib-journey.com/module1/build-any-chart
  • our course is really opiniated --> we don't try to be exhaustive about matplotlib, only what we consider the most useful (for example, we never explain how to use the pyplot interface)
  • it's in continuous improvement

@timhoffm
Copy link
Member

I'd be fine with that, if the members who approve actually view the material to vet it. However, I won't be watching 30 h of commercially available material unless I am also paid, and I wouldn't expect anyone else to do that - even textbook reviewers typically get honorariums for their time.

You don't have to do a tutorial / read a book completely to get a sense of quality. In fact, I believe that the assessment can often be done quite quickly by looking at a few passages. Therefore, I'd claim that paying for review in this specific context is barking up the wrong tree. It would come with it's own set of challenges. I would start with the base assumption that the topic can be handled like any other review in the sense that everybody is free to decide what they want to review. Only if such topics (of which we'll still have very few), then we'd need to discuss other approaches.

Copy link
Member

@tacaswell tacaswell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We are over-thinking this.

If we want to follow up and add (paid) markers to everything paid in this list, we should make a new issue and have the discussion there.

@tacaswell tacaswell added this to the v3.11.0 milestone May 15, 2025
@JosephBARBIERDARNAL
Copy link
Contributor Author

thanks!

@timhoffm
Copy link
Member

I'll merge based on two positive reviews.

@timhoffm timhoffm merged commit 5bd9b9d into matplotlib:main May 15, 2025
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation: user guide files in galleries/users_explain or doc/users
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.