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

Revamping the examples repository #1109

Open
dpoulopoulos opened this issue May 18, 2024 · 2 comments
Open

Revamping the examples repository #1109

dpoulopoulos opened this issue May 18, 2024 · 2 comments

Comments

@dpoulopoulos
Copy link
Contributor

The kubeflow/examples repository is a valuable resource for demonstrating how to use Kubeflow for machine learning. However, it has fallen out of date, with examples using outdated libraries and lacking maintenance. I'd like to suggest a list of actions to address these issues and improve the overall quality and relevance of this repository:

  1. Restructure Repository Content
    • End-to-End Examples Only: Retain only the end-to-end examples in this repository.
    • Tool-Specific Examples: Move framework-specific examples to their corresponding repositories, where their respective working groups will be responsible for maintenance.
  2. Code Overhaul
    • Review and update existing examples: Update the code to use the latest versions of libraries and frameworks, ensuring compatibility with the current Kubeflow version.
    • Develop and integrate new examples: Identify and prioritize new examples that demonstrate cutting-edge use cases and advanced features of Kubeflow.
  3. Branching Model
    • Introduce Development Branch: Establish a develop branch (the default branch) for ongoing development work.
    • Release Management: Create specific release branches from the develop branch that follow Kubeflow releases.
  4. Best Practices and Repository Management (for example)
    • Main branch Protection: Protect the main repository to ensure stability.
    • PR Reviews and Merging: Enforce the practice of PR reviews before merging changes.
    • Templates for PRs and Issues: Introduce standardized templates for creating Pull Requests and Issues to streamline contributions.
  5. Documentation Updates
    • README: Update the README file to reflect the changes and provide clear instructions on how to use and contribute to the repository.
    • CONTRIBUTING: Revise the CONTRIBUTING file to include the new contribution guidelines and best practices.

If you agree with the proposal, I'd like to get involved. Based on this suggestion, let's start by identifying and categorizing existing examples into end-to-end and tool-specific. Then, we can create and configure a develop branch that will house the end-to-end examples and begin introducing the code and documentation changes we need.

@StefanoFioravanzo
Copy link
Member

@dpoulopoulos Thanks for starting this issue. I couldn't agree more with all the action items you raised! Is there a particular sequenced priority that you would like to recommend?

cc some people who might be interested in this @andreyvelich @chasecadet @rimolive

@kimwnasptd
Copy link
Member

Really nice proposal!

Regarding the structure, I don't have too much of a preference over e2e only ones. My only suggestion would be to think how we could make it easier for a new user coming in to know what a tutorial is about. For example, it's more helpful to organise them and say a tutorial is about hyper parameter tuning, rather than Katib.

Only because end users don't have the mapping of components in their mind, but tasks and flows they want to do and find similar examples to what they want to do

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

No branches or pull requests

3 participants