When you make a plugin, you want to add a new feature to help users to do more with WordPress. You try to give the best product you can but you make choices for users. Most of them will be ok with your plugin but maybe sometimes they would want a different way to work in such or such place.
Often, it's pretty easy to guess where an user could want something different. You just have to add a hook there. Another developer will be able to add some code to extend your plugin easily. It's really cool and your plugin will be even a better plugin.
In Stripeseveral plugin, I decided to add some hooks to help developers. It's important to listen the needs to add them when it's necessary. It's sometimes better to give the opportunity to extend your plugin instead of adding features only useful for 3 or 4 users. Don't hesitate to give powerful examples using your hooks.
(Post on 2018-09-14)