Why do I need to use separate accounts for installing and running a program?

Writing a new user specifically for one application is a really good idea.

If someone was able to hack through the program somehow, will not have administrator privileges (they won't be "root"), only the privileges assigned to that specific user. You can create a new user in debian/ubuntu consoles by executing this command:

sudo adduser mynewusername

(where you change mynewusername to your liking)

You may also want to assign the user into some groups: cat /etc/group

sudo adduser mynewusername newgroup

(where you change the newgroup and mynewusername. Changes when you logout/login that specific user.)

Also, they won't be able to see other users' files (if file permissions are assigned properly). You can change file permissions using the chmod command.