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

Improving the feast quickstart documentation #4593

Closed
lokeshrangineni opened this issue Oct 1, 2024 · 1 comment · Fixed by #4618 or #4624
Closed

Improving the feast quickstart documentation #4593

lokeshrangineni opened this issue Oct 1, 2024 · 1 comment · Fixed by #4618 or #4624
Labels
kind/feature New feature or request

Comments

@lokeshrangineni
Copy link
Contributor

lokeshrangineni commented Oct 1, 2024

This issue we are creating to track the suggestions recommended by feast community member - @MattDelac

I wanted to drop some feedback and notes here about my experience:

  1. The generated template doesn't contain .gitignore for feast
  2. The generated template does not contain any pyproject.toml or requirements file, this is something I'd expect from a scaffolding script for a python-based codebase
  3. The quickstart guide doesn't mention anything about instantiating a new virtual environment, this is also something I'd expect
  4. If feast is meant to by an executable, I'd recommend instructing users to install it via pipx instead of pip.
  5. How do I start the feast server? Do I even start it? It's not clear to me
  6. The feast init generated templates use absolute paths for some files instead of relative paths. I usually find this to be confusion/bad as people can codify things about their local machines into code bases without realizing it (ex: the example_repo.py) contains path=/Users/matt/code/pnl/feast-test/feast_test/feature_repo/data")
  7. not super sure why the generated repo is a python module (contains an init.py file but also has a sub directory/module called feature_repo
  8. nit: I don't understand why Step 3 has a, b, c, d, and e? Maybe just make it step 3, 4, 5, 6 etc
  9. Include a description of what Feast is
  10. What feast includes
  11. Not defining the fundamental concepts in an easy way
  12. Project isn't defined under Concepts>Overview
  13. Entity concept documentation was confusing
  14. feedback unrelated to docs but would be helpful to add the str, repr and maybe even repr_html methods to the FeatureStore class to make debugging easier
  15. Another quickstart suggestion: I'd recommend actually including the code itself in the quickstart rather than relying on users to have to run feast init. This reduces friction for new people by allowing them to quickly skim the quickstart and follow along without having to be at their computer and install something (for example if they're on their phone).
    It also helps ensure the quickstart guide is at least internally consistent meaning you don't have a situation where the someone updates the generated code but forgets to update the quickstart guide. It also helps ensure the quickstart guide is at least internally consistent meaning you don't have a situation where the someone updates the generated code but forgets to update the quickstart guide.
@lokeshrangineni lokeshrangineni added the kind/feature New feature or request label Oct 1, 2024
@hadisbabakhani
Copy link

Missing .gitignore: The generated template doesn't include a .gitignore file specific to Feast. This would be helpful to avoid committing unnecessary files.

No pyproject.toml or requirements.txt: Including these files in the generated template would provide better support for managing dependencies in Python-based projects.

Virtual Environment: The quickstart guide doesn't mention setting up a virtual environment, which is generally expected in Python project scaffolding.

pipx Installation Recommendation: Since Feast is an executable, it may be better to recommend installation via pipx instead of pip to avoid polluting the global Python environment.

Feast Server: It's unclear how to start the Feast server, or if it's even necessary. Clearer documentation around this would help new users.

Absolute Paths in Generated Templates: The generated templates use absolute paths for some files, which can lead to confusion and issues when sharing codebases. Relative paths should be used instead (e.g., in example_repo.py).

Python Module Structure: The structure of the generated repository is confusing, as it includes an init.py file but also has a subdirectory named feature_repo. Clarification on this structure would be helpful.

Quickstart Guide Step Structure: The numbering of steps (e.g., 3a, 3b, 3c) could be simplified to just 3, 4, 5, etc.

Lack of Explanation on Feast and Concepts:

Include a clear description of what Feast is.
Outline what Feast includes and define fundamental concepts clearly.
The concept of "Project" isn’t defined under Concepts > Overview.
Entity concept documentation was found confusing.
FeatureStore Class Enhancements: Adding str, repr, and potentially repr_html methods to the FeatureStore class would make debugging easier.

Quickstart Code Inclusion: It would be beneficial to include the actual code directly in the quickstart guide rather than requiring users to run feast init. This reduces friction for new users, especially those who want to skim the guide before working hands-on.

Thank you again for sharing your experience, and we hope to address these points to make Feast even more user-friendly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature New feature or request
Projects
None yet
2 participants