A fun and very nerdy afternoon leading to a big question; CIQ1 support.

After indulging myself with a somewhat nerdy afternoon cutting and refactoring and cutting till I could get the functionality of this one https://apps.garmin.com/en-US/apps/542d099f-4f5d-46af-8c71-11c17c4f2f1c to run on a CIQ1 device following a user request  (I managed and am just waiting on approval for it to go live, but only by exploring devices.xml to find that Epix, for some reason, has eight times as much memory as every other CIQ1, to let me get to a point it would run at all before I started cutting) I started to wonder; is supporting CIQ1 just a nerdy, abstract and slightly Zen way to purify the soul or is it a valid thing for DF developers to consider?

And, of course, like all big questions, it is only truly answerable with data that is either hard to come by or fully unavailable.

Anecdotally, after talking to a few people in my triathlon club, I can say that there are definitely some people still using CIQ1 watches - you see a fair few 920xt still running, for example. And, obviously, the guy with his FR235 who wanted my Dialistic field is still on CIQ1.

However, that number must surely be declining (even if only because I know the 920xt sometimes falls off its strap and, again anecdotally, this means there is at least one deep down in the sea in Dun Laoghaire harbour following the most recent "Ironman 70.3" there).

So...

Obviously it would be very rough, but Garmin must have some rough ideas (from the Garmin Connect infrastructure) how many CIQ1 devices are still out there in current use. 

Is there any way at all for us humble developers to gauge the proportions of users on older devices and so divine whether or not it is worth supporting CIQ1 any more?

G

  • There is no way to see anything like how many downloads you have for CIQ1 devices.

    I pretty much never support the Epix, for two reasons.  People don't seem to use it, and it's not only CIQ 1, it's CIQ 1.2 (and the sim isn't that great for the Epix).  Other CIQ1 devices have 1.4.x

    I'll support the 920 for some things, but by request.  Things like the fr 23x/630 and f3 I'll support given available memory, etc., and some of my apps were first written for those devices so they already have the support.

  • But even if I could see downloads for my DF, that wouldn't answer the question, I think, because a) I'd have to build it to find out if it was worth building and b) it's almost impossible to guess whether or not your DF will even be found by searching, let alone appeal to anybody if they do find it by searching!

    From your reply, it seems pretty much an "if it's easy, then there is no reason not to" rather than either "you really should" or "you really shouldn't bother unless requested".

    Nonetheless (like the way I needed to mine devices.xml in order to even approach the task) it does seem like a place Garmin could provide us more data as they do have a means to find that data.

    I guess I can understand them being a little protective over raw sales numbers, but to draw a parallel with something like Flash in the web world or browser versions, stats on the proportion still using various versions were actively maintained and made available to developers as that would actively inform business and development decisions that helped to support and build the underlying product. 

  • "if it's easy, support it" is a good way to look at CIQ1 right now, as well as CIQ2 (there are only a handful of CIQ 2 devices left).

    You kind of get a feel for what devices might use an app over time, and even if Garmin released some numbers, I'm not sure how much sense they would make for older devices.  People might have bought, say a fr230 when it came out, and they've upgraded to something newer so the 230 is sitting in a drawer.  Also, for business reasons, Garmin wants to sell the newer devices

    Just as a side note, my most downloaded device app is only for CIQ1 devices.

  • as well as CIQ2 (there are only a handful of CIQ 2 devices left).

    Hmm.

    I'm not saying you're wrong, but (again, anecdotally) I know that the 735xt is still very popular in the triathlon groups and I see frequent discussion threads about people getting a new one as their first proper triathlon watch.

    Added to that... from other threads, it appears to actually be more capable for customisation than newer, supposedly better, watches... I remember being utterly flabbergasted by your assertion (that has yet to be contradicted) that it can handle more CIQ fields than Fenix 6, 945 and so on. 

  • Just as a side note, my most downloaded device app is only for CIQ1 devices.

    O_O

    Life is weird.

    Right up until the end.

  • The 735 is CIQ2, and is different for watches as it allow 3 CIQ data fields.  It's a multi sport device, unlike the 23x/630.

    But at the same time, while it might still be popular, maybe not so much with CIQ.  You'll see the same with things like the f6 devices.  CIQ isn't that big on them.

  • If it's easy, support it. For many apps (especially, when new), the more people downloading it, the better.

    Knowing what devices people are downloading your app to would also indicate what *type* of devices it's being downloaded to.

    That lets you have some idea if your app is being downloaded to watches (for example).

    If that number is small, it might mean the effort to support the app on older watches isn't worth it.

  • Multi device support can be hard when you're new, as what's popular for a device depends on what the app does as much as anything.  If the device has a native app to do XYZ, a similar CIQ app may not be very popular on that device, but could be very popular on devices that don't do XYZ.  And it takes a while to understand what's on a number of devices natively.  Or if there are a bunch of CIQ apps that already do a very similar thing, that niche may already be filled.

    Also, over time, you learn to write apps such that they are easy to adapt to different (often new) devices.  My most complex app required a one line change to adapt to the f6 devices, for example. (and it was something I doubt most users would notice)

  • Knowing what devices people are downloading your app to also indicates what type of devices it's being downloaded to.

    Um, yes, it very much would...

    Is there a typo in that or do you know of a source of information that I haven't found?

  • On newer devices, there is a way, using onAppInstall() to send info to you're own server on what device it's installed on, but then you also must consider things like GDPR as well as an increase in the memory footprint.  Plus, it can be kind of tricky to get correct.