How do you start (and thus run) a Python project?
tldr; question in last paragraph


Two articles appeared in my InTray:

- Reuven Lerner (Python Trainer) saying "You’re probably using uv wrong" (https://lerner.co.il/2025/08/28/youre-probably-using-uv-wrong/), NB adapted from [his] “Better developers” newsletter: https://BetterDevelopersWeekly.com which is worth checking-out

and

- Microsoft's Python Environment Tool Finally Tackles Developers' Biggest Headache The new VS Code extension promises to end the chaos of managing multiple Python setups—and it's already winning converts. By David Ramel

The former going into more detail than I will below. The latter, offering VS-Code users project-templates and a layer above the pip-s and conda-s of this world. In addition, a colleague tells me he's 'off' to Pycon Australia to present a paper on "Pipelines for a Secure Python Development Lifecycle". Different means to the same end? Is one more 'right' than the other(s)?


Back in the ?good, old, days we had project-template directories laid-out with (empty) sub-directories, a README file, requirements.txt, etc; according to the then Packaging Rules/requirements/regulation.

The effort involved in starting a new project was:
- copy the templateDIR
- rename to new projectNM
- jump-in and start coding.


Recently uv burst onto the scene. Their primary claim-to-fame seemed to be that Rust is "blazingly fast", which single phrase was responsible for turning-off a bunch of Pythonistas, who thus didn't get to the point where they could discover its benefits in relation to virtual-environments.

So, their process of starting a new project consists of:
- uv init the new project's name/DIR (pyproject.toml controlled)
- jump in
- set up a VCS, eg git
- start coding
- git commit and push to external repository
(the last two may be in the opposite order, but are an alternating series thereafter)


Finally, we can use GitLab facilities to:
- create a new project (there) using a Python+ template
- clone that to the local machine
- start coding (etc)


Hopefully, you employ some form of the last two!

Do you prefer to start on your local machine and remote + commit, or to start from the external repository and clone?
(and please say why?)

--
Regards,
=dn

--
https://mail.python.org/mailman3//lists/python-list.python.org

Reply via email to