I've thought about data parsing before, specifically when I was working on my accountability standards program—a small Ruby script that helps the user decide their daily accountability checklist, then lets them check in every day to see if they lived up to their standards. The data parsing portion of it is pretty extensive by my standards. It draws from a text file that generates a new array per day that the user checked in, and their answers regarding their standards. It uses the data to count up all met and unmet standards, and exposes the data in the form of a chart; it also calculates and exposes average daily success rates, standards with success rates below 40%, and even a visual graph of success rates over time (that one I'm especially proud of: it's not easy to create a self-generating ASCII graph!). All this data is printed to the screen as well as exported into a text file. Here's a sample exported data file:
What I realized when I was working on the accountability checker program was that I really enjoy working with data. I'm drawn to the kind of work that companies like Keen IO are doing with data, helping others experience more concreteness and supporting their efforts. So I've been keeping an eye out on other data parsing opportunities, like this one for my meditation thought counter project.
This is a much more simple data parsing concept than what I was doing with the accountability standards project. It exposes the total thoughts recorded during the meditation session, the averare time between thoughts, and the longest interval between thoughts. I think the fact that it does so little is the result of my being inspired by the project itself: it's about reaching for simplicity and mental quiet. But I was also stumped for what sort of data might be useful, the same sort of problem I ran into when building my accountability standards project. I was hampered by my own imagination, not my technical ability, and it was interesting to experince this as much as it was somewhat frustrating. I'll be adding to this meditation thought counter data parsing method in the future if I think of more things that would be useful. In the meantime, it does the bare bones and does them elegantly.