Can I suggest creating a setup permission called "report writer". Users with this permission could - create new reports - see and copy existing reports, thus creating a new one - edit or delete reports created by themselves
- manage view subscriptions for reports whgich they created
I am finding that this is a task which could be delegated to "superusers" as opposed to developers, but because of the way the permissions are organised I would end up giving these superusers access to everything which neither I nor they want.