Garmin Backup
Over on the iSMARTtrain blog, there’s details of my new Mac App, Garmin Backup.
Over on the iSMARTtrain blog, there’s details of my new Mac App, Garmin Backup.
I’ve seen quite a bit of press about MyWhoosh, a competitor to Zwift. It’s being used for the UCI Cycling Esports World Championships for the next couple of years (2024 – 2026). I thought I’d give it a go as an alternative to Zwift, which I’ve using exclusively for the last 5-or-so years. MyWhoosh is…
Project ANT is our new product from Yellow Field Technologies. It’s an application to enhance your turbo training or treadmill sessions. For use with any ANT+ Sport compatible power meter, heart rate monitor belt, speed or cadence sensor, it displays your data on your desktop or laptop Mac with a graph or video. The data…
Recently, I had an issue where I’ve wanted to display a SwiftUI List and Button together in a Popover. The idea was to have a List of items and a button to clear the list. My code was as follows: However, this didn’t work in the way I’d expected. Only the Button displayed in the…
This past weekend, I attended NSScotland in Edinburgh. The conference, in its 3rd year, is organised by Alan Francis and Paul Wilson, who also organised the Scottish Ruby conference. The venue for the conference was on the south side of Edinburgh in the Pollock Halls. Spread over two days, the conference covered a good mix…
I’ve started using the Core Plot framework in one of my Mac apps, and I had a few problems setting it up, which, looking through some posts on the web, other users have had as well. Since it took a while for me to track down the exact solution to my problem, I’m posting in…
Recently, when working on the next release of iSMARTtrain, I wanted to display an NSPopover containing the various options when a button in the toolbar was clicked. I mean, how hard can that be? – I’d already done it in the iPad version of Ergophase. Trivial! Three hours later, it turns out, it’s not as…
Cookie | Duration | Description |
---|---|---|
cookielawinfo-checbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
Get all of my new posts direct to your inbox.