littlelogs

Keep a social journal of your work progress as you make and learn things.

April 2017

belle

Finally finished reading a research paper this morning, based on a study done using #exist! It was mainly about correlations and how to figure out which ones are interesting to users and avoid overwhelming the user with too much information. Some really interesting insights in there.

After that I went back to last year’s annual Exist user survey and read through all the free-form responses again. Nothing gets me more fired up about working hard (and impatient about everything we have to get done) than reading lots of user feedback and thinking about concrete ways to improve the product.

belle

Yesterday I spent the afternoon working on adding #customtracking to #exist for #ios. @josh helped me work out the basic steps to get the user’s custom tags showing up, but I got stuck on the layout and ran out of time to get it working.

I also finally made it to a #cocoaheads meetup last night. I’ve been meaning to go for months and something always stops me, so even though I got off at the wrong train station and had to walk an extra 25 minutes to get there, I made sure I did!

#laterlog

belle

Some final bug fixes in #exist for #ios today. Part of my update that adds #applehealth #sleep syncing was to make the initial sync cover the past 30 days instead of the past 14. I found a timeout issue in that process, thanks to some good user feedback, and sorted that out today.

Submitted a new build using the new #TestFlight setup. Thankfully it didn’t take too long to figure out where they’d moved all my cheese to, and some parts of the process are more simple now (e.g. seems like they’ve removed the specific “notes for review” section, which I never used anyway). Feeling good about getting sleep out to all our users very soon!

belle

Today I did a few improvements to the beta version of #exist for #ios: I added an option to force sync #applehealth data from the past 30 days in case it doesn’t stay up-to-date, made all Apple Health data sync 30 instead of 14 days when first set up, and added a message to tell users who only track time in bed or time asleep but not both that they should use a different sleep tracking app.

March 2017

belle

Ahhh I thought I fixed that crash in #exist for #ios yesterday but I didn’t. Should have known that if I couldn’t reproduce it, it probably wasn’t what I thought I’d fixed. Turns out, it was only affecting some of our UK users, because they just switched to daylight saving time last weekend and some naïve usage of date objects on my part created a crash in some cases. So I tracked that down and fixed it today with @josh’s help.

belle

Are you all sick of hearing about #applehealth yet? 😏 Today I had a couple of bug reports about an un-Apple Health-related crash, so I fixed that and sent out an update. But then it was back to the #sleep beta to debug some weird behaviour. #healthkit seems to be calling my app with “new data” over and over in the same minute and I can’t work out why. There’s no new data, either. When I go looking, I keep getting the same results over and over. It did that maybe a couple of times to me during testing, but I’ve seen some beta user logs with 20 or 30 calls exactly the same within a minute.

belle

Got my first two bug reports for the #applehealth #sleep beta in #exist for #ios today. Thankfully both for the same issue, which I’ve already fixed.

Sad to see how bad everyone’s data is, though. The main reason we put off this integration is because Apple Health doesn’t enforce any kind of data standards on the apps syncing to it, so the data I can get out tends to be low-quality, inconsistent, or both. I was hoping I was worrying about this more than necessary, but so far I’ve seen exactly the kind of bad data I expected in most cases.

belle

Left #exist for #ios alone over the weekend to see how well my #healthkit background updating would work. Today I had a look at the logs and it looks like all my data is updating without me opening the app, but not as often as I’d like. A change I made to stop duplicate updates occurring seems to be stopping a lot of non-duplicate updates getting through, so I had to try a different approach to de-duping the updates. I also noticed the app is getting a lot of “Network connection lost” errors when trying to send requests. Not sure what that’s about yet, as I haven’t been able to reproduce those errors to debug them. Still, getting closer and closer to releasing the #applehealth #sleep update to beta testers!

belle

Worked on #larder for #ios yesterday. Still lots to get done before it’s ready for beta testing, but I’m slowly making progress. Yesterday I improved the design and layout of the login screen and the add bookmark screen.

belle

Yesterday I tried using beginBackgroundTaskWithExpirationHandler to ask #ios to give my app more time to complete tasks in the background. This seems to have fixed the #exist for iOS bug @josh and I have been struggling with for a week now. Certain calls, usually when my app was in the background, were taking ages and eventually timing out during the handshake stage with the server. It seems like it was actually iOS killing the tasks, but I don’t know why it was taking so long to do so. I didn’t try this beginBackgroundTask method earlier because everywhere I’ve seen it mentioned it seems to be used for continuing tasks in the background that were started in the foreground, which isn’t what I’m doing, but it seems to have worked anyway! #laterlog

belle

Aaaargh #applehealth! I’ve had the majority of the #sleep integration in #exist for #ios done for days now, but I’ve been fighting with getting the background observers working. I can’t watch the logs run in realtime, because I’m testing for #healthkit waking up my app in the background and telling it to send new data to Exist, and it won’t do it every time I add new data, because it wants to save battery. So I’m stuck adding data and waiting an hour or so before grabbing the log file to see if anything happened.

belle

Fixed a bug in #exist for #ios today that was causing the app to crash when users turned on location tracking for the first time. Also continued some refactoring of #healthkit code in an effort to get background observers working for #applehealth #sleep and other HealthKit data. The idea is that iOS will notify my app when the user syncs new data to Apple Health, rather than me checking for it regularly. Still trying to get that working for activity data, but it seems to be working well for sleep so far.

belle

Today I figured out a way to filter out duplicate #applehealth #sleep samples from the same app. I’m using Sleep++ (among others) for testing, and it’s duplicated all my sleep records for the past few days. Although the Apple Health app handles merging and de-duping data for the user, when a developer queries HealthKit, it just returns whatever it has, so you have to de-dupe it and all that good stuff yourself.

belle

Making great strides today with #applehealth #sleep integration in #exist for #ios! Thanks to some help from @josh last night I got on the right track and today I figured out why I wasn’t adding up all the sleep data per day correctly. I fixed that, and also added some code to check what the longest period of “time in bed” is per day, so I can get bedtime and wake time from that record, in case there are multiple “time in bed” periods. I also added a check to make sure I only use data from one app per day, so if users record data from multiple apps for the same day I’ll just take the first app’s data and ignore the rest so they don’t get doubled-up data in Exist.

February 2017

belle

Spent most of the weekend coming down from the high of #playgroundscon. It’s quite similar to the post-show blues I used to get in theatre, as you spend a short period of high intensity work with a group of strangers, then suddenly you’re plunged back into normal life and it’s quite a shock.

Yesterday I drafted a #blog post about #diversity in tech and some of the good and bad things I noticed at Playgrounds. I also put together the start of a WIP doc on GitHub of ways conference organisers and speakers can increase diversity and inclusion at their events. Hoping lots of other people in the tech community will contribute so this doc can grow over time and provide lots of suggestions for people who want to improve their events but don’t know where to start.

belle

Phew! It’s been a crazy two days at #playgroundscon. It was my first ever conference, so I wasn’t sure what to expect. Overall it turned out quite well. I met quite a few people, learned a lot, and got lots of inspiration to try new things and improve my code. The organisers worked really hard on diversity and inclusion, which showed. It was great to feel part of the community, since I haven’t had that much in the past. Now I need all weekend to recover!

belle

Last night I went to an event as part of #playgroundscon here in Melbourne. It was a screening of the documentary CODE: Debugging the Gender Gap. The film was pretty good, and it’s an important topic, but now that I’m up and getting ready for a full day of conference on a little over 5 hours sleep I’m kind of regretting going!

Older