• 1 Post
  • 91 Comments
Joined 2 years ago
cake
Cake day: June 15th, 2023

help-circle
  • I did a “game design” school when I was younger, but couldn’t get a job as a programmer. Worked for a laboratory for a little over a year, and then went back to school to get a software engineering degree. I was 28 when I went into it, worked with “youngsters” of 18 years and older. It was completely fine.

    I’m now 50k in debt, but I’m also making twice as much as I did with my minimally paying job at the laboratory. It’s going to be a boon in the long run, IMO.

    Then, luck should be taken into account. Once you are done with your degree, perhaps the market will have recovered a bit, because I’m hearing a lot of negative feedback lately.

    edit: If you’re not sure, you can take a peek at this graph of free MIT YouTube courses. Choose something interesting on the right, then figure out where to start on the left to get to your chosen point. Each course can easily take about 100 hours, which sounds a lot, but if you do them you can take that knowledge and more easily extrapolate information in the future.









    1. let pyproject.toml track the dependencies and dev-dependencies you actually care about
    • dependencies are what you need to run your application
    • dev-dependencies are not necessary to run your app, but to develop it (formatting, linting, utilities, etc)
    1. it can track exactly what’s needed ot run the application via the uv.lock file that contains each and every lib that’s needed.
    2. uv will install the needed Python version for you, completely separate from what your system is running.
    3. uv sync and uv run <application> is pretty much all you need to get going
    4. it’s blazingly fast in everything

  • pip3 freeze > requirements.txt

    I hate this. Because now I have a list of your dependencies, but also the dependencies of the dependencies, and I now have regular dependencies and dev-dependencies mixed up. If I’m new to Python I would have NO idea which libraries would be the important ones because it’s a jumbled mess.

    I’ve come to love uv (coming from poetry, coming from pip with a requirements/base.txt and requirements/dev.txt - gotta keep regular dependencies and dev-dependencies separate).

    uv sync

    uv run <application>

    That’s it. I don’t even need to install a compatible Python version, as uv takes care of that for me. It’ll automatically create a local .venv/, and it’s blazingly fast.