It's like having an attic or a garage where you can put stuff while you (do not) decide what to do with it.
Then you carry around this clutter everywhere.
Developers might add something to a resource fork that should go in the file.
Utilities have to deal with files AND resource forks.
You have to backup a file, but then you also have to back up the resource fork.
If it goes to another filesystem you have to figure out how to deal with it if the filesystem deals with only, you know, files.
so what if the file and the resource fork are separated? Then you have a file that might not work.
this burden is carried by the developers, the administrators, the users.
There are plenty of analogous situations to this, like ftp
ftp used to have two connections - a control connection and a separate data connection.
Then when you had a firewall, you had to deal with an outgoing connection, plus an outgoing or incoming data connection.
Then they added passive mode, and you only had to deal with two connections in the same direction, but there had to be special firewall logic to track them both.
This is why I miss them, but understand that they're not used any more.
Resource forks let you put stuff outside of files that can and should go inside them. Now people have to look two places, or even be aware there are two places.