Global statistics of Xcode install times (split by machine/version/settings)
(A small idea, not direct product feedback.)
Xcode installs are sooo slow. I wonder how it compares on different machines.. Not sure if you already have any statistics, but it would be fun to create a global dashboard of install times across all installs through Xcodes by machine / version / Xcodes settings (e.g. the unzip experiment).
I would love to have more stats on how Xcodes is used! # of installs, Xcode versions, speed, total downloads, etc.
I struggle with the open source nature of the project and when collecting stats, where that would be sent to and most likely just myself having access to that data, and is that against the nature of open source.
That makes sense. I think there should be a few ways to do it. Here's some thoughts / me brainstorming (not sure how viable these ideas are):
- Also make the backend (mostly) open source (and possibly even provide access to the raw data?)
- Log to a private backend from within the open source code (and utilize the data in whatever way you intend. E.g. show stats in the app / on a website or only publish summaries at certain times, or otherwise..)
- Use a "fake backend". E.g. publish tweets to a stats account and then summarize them based on that account? Or possibly use Google Docs/Sheets as a "backend". I recently read about this and it seems interesting as a starting point. Or use a stats repository, which the app commits to?
- There's probably other ways to do this...
I don't think it goes against the nature of open source. You could also offer explicit opt-in or at least opt-out options upon installing/using the app. All of these would need some way of authentication though, as you don't want any spam/rogue requests coming in. And you don't want to leak private auth information like keys or tokens either in the open source code either. Not sure how to solve this best.
@Cocoapods might be an interesting example - they do log to a private backend for statistics (Idea 2. above basically) and offer a way to opt-out. @orta wrote about their solution back in 2015: https://blog.cocoapods.org/Stats/ I'm not sure how involved the backend was, but he mentions that he was aiming for something more "lightweight". I'm also unsure if it's a free or payed deal with Segment to act as a backend. I'm curious how they do authentication too. @orta do you want to chime in? Is that post still up-to-date? Do you think others could follow that model?
CocoaPods is a bit of an edge case here because it was quite involved but all server infra was OSS but the actual db was private (more because I never planned to make the redshift db public) we just provided solid APIs to the CP website and anyone wanting to look at that data.
I think a complementary example is homebrew: https://formulae.brew.sh/analytics/
Who uses google analytics under the hood ( :-/ ) and then provide these web pages to users.
Or elementaryOS, who use plausible and anyone can see all of their events: https://plausible.io/elementary.io
This is me sounds like the closest thing