HandcartCactus opened a new issue, #62298:
URL: https://github.com/apache/airflow/issues/62298

   ### What do you see as an issue?
   
   <img width="1638" height="862" alt="Image" 
src="https://github.com/user-attachments/assets/12b7fc5b-3fd8-4d17-8116-32febf935206";
 />
   
   Hey! Airflow user here. The quick start page is the most important 
documentation page of any project, and Airflow's needs some love. I'm 
volunteering to fix it, this issue will document some of my changes.
   
   A quick start page is reflects the bare minimum required to install the 
project and get it running. See, for example, 
[pandas](https://pandas.pydata.org/docs/getting_started/index.html), 
[numpy](https://numpy.org/install/), or [jupyter](https://jupyter.org/install). 
There is no discussion of versions or extras or pinned dependencies. That goes 
somewhere else.
   
   Specific Issues:
   1. Grammar: "methods is" should be "methods are".
   2. the "\` or \`\`uv\`\`" in the source file appears to be missing here, for 
reasons I don't understand.
   3. The install command should be a copyable code block.
   4. Beginners do not usually understand `[EXTRAS]`. They don't know that 
`EXTRAS` needs to be replaced with real values, and this page does not explain 
that the options are any of `async, graphviz, kerberos, memray, gunicorn, otel, 
statsd` or `all`. One could define a bash variable earlier in the code block 
called `EXTRAS` and refer to it here as `$EXTRAS`, but that is seriously 
overkill for a quick start page. A simple list will do, if you mention it at 
all.
   5. Someone visiting the quick start page wants the most recent airflow 
version. If they wanted something else, they would be on a different page. 
Also, it's not clear to some users that AIRFLOW_VERSION needs to be replaced. 
It isn't wrapped in `<THE_REGULAR_SYNTAX>` for a required replacement or set as 
a `$VARIABLE`. Like EXTRAS, this is a potential stumbling block. A simple `pip 
install apache-airflow` will download the most recent version by default. 
Requiring a pin here for the quick start page increases documentation 
maintenance surface area and makes life difficult for first timers (for little 
benefit).
   6. `--constraint` is an uncommon flag, I have never seen it in any other 
project's quick start page. Discussion of reproducible builds probably belongs 
elsewhere, like the more detailed installation page. Generally speaking, all of 
the dependencies you need to get started *should* be in the `pyproject.toml` or 
`requirements.txt`.
   7. See 5.
   8. See 5 about variable syntax. If Airflow is going to tell people to 
reference PYTHON_VERSION on the quick start page, it might as well show them 
how to get it right up front, so people with less experience don't have to 
leave the page.
   9. This example is for an outdated version of Airflow, which, as discussed, 
is probably not what people want to install when they visit a quick start page. 
I think a project should generally avoid this. See 5.
   10. Discussion of how to use unsupported tools should probably be in a 
distinct section, and maybe not on the quick start page.
   11. "convert these pins to whatever appropriate workflow and tool your 
project requires" is not quick start instructions.
   12. (not labled) Calling out "just add `uv` to the beginning of the command" 
is almost certainly going to be missed by most users. Most people will be 
skimming for a code block. [`numpy` handles this by providing both commands 
explicitly.](https://numpy.org/install/)
   13. (not labeled) Everything beneath this screenshot belongs in the more 
detailed installation page. Steps 4 and 5 can stay in the quick start page. 
Maybe a test command can stay too.
   14. (not labeled) Python version compatibility goes in a full matrix in the 
main install page.
   
   ### Solving the problem
   
   Move the existing documentation to a more detailed install page and replace 
this entire page with something far simpler.
   
   ### Anything else
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [x] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to