> Why is running software still such a tricky thing in 2023, where you have to read tutorials and tinker with manually setting up an environment?
I think this is unfair criticism. Conda is extremely common in data science, as common as Docker is in software development.
While I agree docker is easier to use as a consumer, Conda automatically sets up the environment and a quick Google would show you how to install conda.
This isn't software. Software is something like MS Office.
This is research code. It's raw. If you want to work with it, you need to know a little about how environments to build the code work. In the case of ML code using Python, nearly everyone is using Conda.
Install Anaconda on your system. Create a base environment and make sure your terminal is now using Anaconda for python and not your system python.
Then follow their one-liner to setup the environment with their yaml file. Conda will literally download and install all the python packages they need. It is really, really simple.
The conda file is for conda to read, it's not a set of instructions for you.
> How far down this rabbit hole is someone who just wants to run a software supposed to go?
Depends how much you want to run it really. It's a free thing and making easily installable software across wildly different systems is hard. Providing conda setup stuff is actually pretty nice.
These things are often hard to setup though, the alternative is waiting for someone else to do it for you.
Having set up various diffusion models I'm gonna say that the "read tutorials and tinker with manually setting up an environment" is EXTREMELY fair criticism. Much of the ML ecosystem is kinda held together with duct tape and string.
As I get older, I feel more and more that the initial reactions of people completely new to a software system are incredibly valuable, and the best response is to try and capture those reactions so you can find out what underlying problems (if any) that caused them. When you hire a junior engineer straight out of college, maybe they'll react with horror when they see what real production code looks like. It's EASY to just say that they'll get used to it. However, their reactions are sometimes correct and sometimes miss the mark. It takes work to sort it out, but the first step is capturing the initial reactions of people new to the system, and knee-jerk responses just get in the way.
Most of the senior engineers can't see the problems. They've been surrounded by those problems for too long and the problems just turn into background noise.
I think this is unfair criticism. Conda is extremely common in data science, as common as Docker is in software development.
While I agree docker is easier to use as a consumer, Conda automatically sets up the environment and a quick Google would show you how to install conda.