My solution was to correlate people to events, and events to locations. This allows you to not only remember what you were doing, but pivot off of any piece of information to better recall an event. Logging into a web app to enter information is a bit of a slog. I think making a mobile app is really crucial. That could even lead to some automation of the logging. For example, "You just called [CONTACT], would you like to create an event for this? ", or at the end of the day, "You texted [CONTACT] today, give a quick summary of what you spoke about". From there you can make the analysis smarter and smarter.
It's really strange, all these companies have so much data about us. We don't have access to our own data in a decent format though. My call history is with my telco, my location history is with Google (and probably many others), my conversations are spread out among so many different apps. What happens when I want to query the data about me though?