If I rename all of my programs to follow a new naming convention, will I have to edit my campaigns and smart lists that use the names of these programs (for example, the filter 'is member of program, program name is X) as well?
When an asset is used, it's program name is appended and it will auto-populate if the program name is changed. For example if you have the filter "member of smart list: Program A.Smart List A" and then change the Program A name to Program B, the smart list will auto-populate with "Program B.Smart List A" and it still references the same smart list.
There are some flow steps where this will not change - and you will need to make the change manually. Primarily any custom fields that could be populated with the program name. For example, those in yellow will need to be manually changed, while those in green will be updated automatically: