All I want to do is write code and do creative work. How do you get over this? How do you find joy (or at least not hate) in development again?
I try to mitigate this as much as possible with templating projects. I use https://gitlab.com/reedrichards/cookiecutter-goapp for small webservers and this generates the infra i need for aws, and go has been a relatively simple development and packaging platform for me.
I am also working at https://brev.dev and have been using their product at work and on personal projects to help standardize my development environment well. I often found myself at other companies constantly fire fighting developer environments falling into entropy and wishing for something like this so we can not having to worry about the different configurations of N developers * M machines.
*edited to make link clickable
It's still a slow start.
Then you have the getting to understand what to build/correct, what for, who for (that part is the slowest one).
Then deployment (somehow slow, but akin to automation like setup above).
The production (not slow, but depending on the environment and the history, might be painful).
The fun is occasionally in the coding part. But it more surely happens most of the time in the relationships and discussions around it.
(speaking for me, not a general case)
For work, yeah.... it's a grind. All the custom build tools. Multi-step set up processes. That stuff does take days. But corporate jobs are slow for other reasons too and they're valid reasons. It takes a week or two to make a change at work that would take a few hours at home, due to planning, testing, waiting, approvals, etc. So the build environment is just another annoyance of working in a company that I suck up and deal with.
This doesn't solve the problem of distributing developer-specific configuration, and limits the UI tools that can be used, but if you can live with these constraints then it allows you to treat your development environment as yet-another-service!
For company environments hopefully there is a script to do the setup, or an existing environment you can pull down or otherwise create trivially. If there isn't it's usually a day 1 thing and you're getting paid, so hard to complain.
For personal stuff I have environment files in a git repo and install what I want as I need it. It's not that difficult to manage, certainly not hours.
For provisioning new machines like CI/CD runners and so on, your project should have a configure script to do everything automatically.
Tweak things that aren't working.
Has been working for my side projects since 2017.
I really hate the whole babel, npm, sass, ts ecosystem. Too many dependencies, too many pre and post processors, pipelines to build, transpile… it sucks.
So switched to Swift and Xcode for personal stuff. I am still learning but it has been very refreshing and programming is fun again.
This helped me get my motivation back.