Personal Dashboards for Self-Tracking Data

Thanks for the informative reply and sorry I missed the discussions on reddit.
I totally agree that open sourcing it will be great

1 Like

Hi everyone!

Several months ago, I got inspired by @Agaricus and his participation to the Dataframed podcast, and Iā€™ve since been working on creating my own personal life dashboard in PowerBI, where I track all sorts of things about my daily life.

Iā€™ve written an article (A step-by-step guide to building your personal life dashboard | by Valentin Herinckx | Aug, 2023 | Medium) to share my insights and Iā€™d be delighted to get some feedback from the community on it!

If you plan to use some of the sources I used in my journey, you can find all the python code I wrote in this GitHub repo: GitHub - VaHerinckx/LifeLog_Project

4 Likes

Thanks.

I think you have solved a problem for me with your apple_processing.py script. Been wanting to extract items from my Health app exports without needing to use an external web site to unpick the XML.

Although looking through the source I am intrigued by the call on sed to delete specific lines from the exported Health app data, viz

sed -e ā€˜156,211dā€™ ā€¦

as those lines in my export are right in the middle of data that I am interested in extracting for my quantification. What is it you are trying to remove there as I donā€™t want to lose anything that is useful to me.

But I did spot there are data entries that I had not realised was in there namely

HKQuantityTypeIdentifierFlightsClimbed and HKQuantityTypeIdentifierWalkingSpeed

I probably should go re-read the HealthKit document more closely as there may be other relevant (to me) data previously overlooked.

Cheers.

1 Like

@glimfeather glad the code could help!
The reason Iā€™m removing those rows is because, for some reason, the .xml file I receive from apple seems to be corrupted, and those rows were making my code bug.

Iā€™m not an .xml file expert, but it seems like the row numbers donā€™t match from one person to another, as they can contain information or not based on what your Iphone stores about you. In my case, those were empty rows about glasses prescription. If the code is running without removing them for your files, I think you can leave them in!

@Valentin_Herinckx thanks for the response. I can quite forsee why certain data lines might cause problems.

At the moment I only use a few of iOS Health appā€™s data items can generate/store. For ā€œfunā€ I looked at the user Summary to Edit Favourites then selected All to get a complete list of what can be stored. Some of the items indeed entire categories are irrelevant for me ā€” Cycle Tracking, for example, I do not need as there is no risk of my ever becoming pregnant because well Iā€™m male.

I speak XML fluently. :crazy_face:

Not only would the lines change from one user to another (depending upon what specific data is being collected) but they do change from device to device. I can see at a glance which lines originate from the various iPhone models I have owned although the keys of the items remain the same.

On the sed line it might be better to find out what those lines contain and then search explicitly for the the type/key by name. Iā€™m no expert on sed but have found loads of useful documentation around the web; some of it very cryptic.

Following up on my most recent response here I stumbled across an interesting domain using Apple Health (as an exemplar) in their work. Namely forensics! Trying a naĆÆve DuckDuckGo search of ā€œsql apple healthā€ had found me this conference/academic journal paper https://www.sciencedirect.com/science/article/pii/S2666281723000057 on using workout tracking data stored in Appleā€™s Health app database to verify an alibi. The paper is focused on retaining vital forensic evidence some of which can be lost when using the appā€™s export function. Apparently timezone data is lost/normalised to GMT. For my usage that isnā€™t an issue.

Also highlighted some interesting uses of workout data with one of the paperā€™s authors using the ā€œRowingā€ category to record his ā€œbell ringingā€ activities. I can see why he might make that lateral leap rowing is pulling horizontally and bell ringing pulling vertically. Although the variability of GPS tracking could put a perp merely in the vacinity of a crime not at its exact location.

The mentioned repurposing of workout categories started me thinking whether there are any others that I might repurpose to support my quantified self. The idea has somewhat tempered my hold out for buying an Apple Watch only when it includes on board blood pressure monitoring with the immediate possibilities of tracking my exercise (primarily walking). Also thinking that maybe ovulation dataā€™s ā€œhot flushesā€ subcategory could be useful in tracking the side-effect of some of my medication and whether is a correlation with any of my regular activities. (Anecdotally it feels like the hot flushes are worse in the mid to tail end of a course and less frequent immediately after a new course has been administered.) Being male ovulation tracking had really been of no interest to me plus I thought it a risky form of family planning but this paper has sparked my imagination.

Looks like I need to read the Halth Kit documentation in greater detail ā€” only given it the most cursory of glances to date ā€” to see what (other) lateral moves there could be achieved by reuse.

Hi @alexey, Iā€™m just out of highschool and am now going down the rabbit hole of QS. Your personal site it amazing and by far the best looking design iā€™ve seen so far. Would you be able to send me some details of how you have done this or share a link to your git if possible? Honestly, Iā€™m shocked that anyone could make something this polished for a personal project!

Finally bit the bullet and bought myself an Apple Watch 9 with a Withings blood pressure monitor. For some months have been using the Health app on my iPhone. With the upgrade to iOS 17 and iPadOS 17 I am becoming frustrated with the Health appsā€™ display method. Great to see the individual items but I want them plot together so I can see if there is a cause for a spike in my blood pressure or why side effects of some medication are now reducing. Difficult to do any of that when essentially what one is presented with a list of discrete readings.

The more I look at Appleā€™s Health app presentation the more I dislike it. The most recently updated categories are sorted to the top of the list (Summary > Show All Health Data) which means I never know where to look for the item thta interests me.For example, when I have a Hot Flush ā€” itā€™s a well documented and common side effect of some of my medication ā€” this most-recent-first causes a hunt for Hot Flushes ready to add a data point and some times, such as today, it isnā€™t in the list but is on the Yesterday list instead.