https://www.involve.me/blog/how-to-gather-user-generated-content