I’m not complaining, but I didn’t realize how much work it was. It makes me really respect the people who do it on a regular basis.
For example:
- You know how to use your software, but other people don’t. So you need to write documentation.
- You can just modify the source files, but it’s impractical for everyone to do that. So you need to add a config file.
- You can just drag the output files into place, but that’s impractical for everyone to do. So you need to package it.
- You trust yourself, but distro maintainers rightfully don’t. So you need to package your source code and configure the package to compile it.
- You will abide by your idea of how the software should be used, but other people might not. So you need to pick a license.
Sometimes I think there must be an easier way, but I can’t think of any. I guess it probably gets easier with experience.
That’s why engineers are, on average, paid more than researchers… And why research is such a nicer job.
Create robust and easy-to-use stuff is tough and you don’t get much reward
I’ve been attempting to build systems to make this “robustness” redundant across all my works, but I always feel there’s something more that I missed. I can’t tell if this task is simply never-ending or I just lack the knowledge of covering all the dots from the get-go or both.
Those are signs of an ever evolving/improving mind! You continue to perfect your craft and as such your older self is less efficient, perfect and organised.
Packaging and installation are important for released software