Skip to content

Open Call for ContributionsΒ #42

@Haleshot

Description

@Haleshot

πŸ”” Open Call for Contributions πŸ””

Hey there! πŸ‘‹

We are excited to open up our repository for open-source contributions and can't wait to see what educational notebooks you come up with! πŸ§‘β€πŸ« This is a collaborative space where we develop and share high-quality marimo notebooks for education, covering fundamental concepts across various topics.

πŸš€ Projects We'd Love Your Help With

Below is a list of courses we're eager to develop. Each course is an opportunity to contribute and make a meaningful impact:

Project Status Author/s
Probability Course βœ… @Haleshot
Python βœ… @Haleshot
Polars Course 🚧 @koushikkhan, @jorammutenge, @etrotta, @debajyotid2, @peter-gy, @Jystine, @jesshart
Daft Course 🚧 @peter-gy
DuckDB course 🚧 @Mustjaab, @julius383, @thliang01
Functional programming course 🚧 @metaboulie
Calculus for Machine Learning Open -
HoloViews course Open -
hvplot course Open -
Plotly course Open -
Matplotlib Visualization Course Open -
Real Analysis Repo Open -
Linear Algebra Course Open -

✨ Have your own idea? Feel free to propose new courses or individual notebooks! Open an issue to suggest your idea, and we'll be happy to discuss and potentially add it to the list.

πŸ“ How to Contribute

  1. Open a New Issue

    • If you're interested in any of the courses above or have a new idea, please comment on the corresponding issue if it exists, or open a new issue with a title that reflects the project.
    • Use the issue to discuss your approach and gather feedback.
  2. Let Us Know

    • Comment on this issue to let us know you've opened a new issue. We'll update the project list with a link to your issue.
  3. Start Coding

    • Follow our contribution checklist when developing your notebook.
    • Use marimo's reactive programming model to create interactive, educational content.
  4. Submit a Pull Request

    • Once you're ready, open a Pull Request (PR) linking to the issue you created.
    • Make sure to tag the issue in your PR description for easy reference.

πŸ“š Contribution Checklist

  • Include package dependencies in notebook files using --sandbox
  • If adding a course, include a README.md
  • Keep language direct and simple
  • Follow marimo best practices for reactive programming
  • Ensure cells are idempotent and minimize global state
  • Use descriptive variable names that reflect data and computation intent
  • Apply appropriate caching strategies for expensive operations

🌟 Why Contribute to marimo learn?

Contributing to marimo learn is a great opportunity to:

  • Share your knowledge with the community
  • Receive an author byline in contributed notebooks and course README
  • Help others learn important concepts through interactive notebooks
  • Improve your own understanding of topics by teaching them
  • Build your portfolio and gain recognition in the open-source community
  • Help shape the future of educational content for marimo

πŸ” What Makes a Great marimo Notebook?

Great marimo notebooks for education should:

  • Explain concepts clearly with a mix of markdown explanations and code
  • Be structured with a clear learning progression
  • If appropriate, include visualizations and UI elements to enhance understanding
  • If appropriate, include exercises or challenges for learners to practice
  • Be accessible to the target audience (beginners, intermediate, advanced)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions