Minecraft to add telemetry(minecraft.net) |
Minecraft to add telemetry(minecraft.net) |
At some point we have to accept that this data actually helps them fix real issues too, they're not monetizing their players directly with it.
It is strange that this community of all communities has such a resistance to this idea. Software developers should know better than anyone how difficult it is to identify and fix vague software problems without having specific details about the problem. Yes, there is a negotiation between the value of telemetry and privacy and often too much privacy is sacrificed. But I am always surprised to hear developers say all telemetry is bad.
1. Telemetry is unethical if the users didn't provide informed consent (opt-in) for it. It's not just a theoretical point - anyone who's worked in tech sector for a while should know most companies cannot be trusted to behave ethically (especially if they took VC funding).
2. There's a certain dysfunction/antipattern that's popular in tech sector, called being a "data-driven company". It's the practice of making decisions through divination from data collected through extensive telemetry, to the exclusion of other knowledge sources (like e.g. actually talking to your users, hallway testing, or thinking things through). This leads to software being optimized in questionable directions - so in a sense, you could say that adding telemetry implies an increased chance the software will become worse over time.
Gaming is a weird point though, telemetrics are already in heavy use, the privacy risk is indeed minimal, and gamers don't seem to care anyway though. I can't tell you how many GDC talks I've watched that discussed player heatmaps, incident (like death) reports, and whatnot used to fine-tune game balance.
There are numerous places where telemetry is completely inappropriate, like one's operating system. An idle computer should indeed be 100% idle, internal housekeeping exempted. (I recently installed freebsd on a new server, did some setup, and basked in the glory of htop showing 32 cores at 0.0% and a root process list that was under a page long. I wish other operating systems could follow that example)
Transparency is key here. If projects explained the steps taken to anonymize the data (either provably using Differential Privacy, or approximated via some other means), I feel like people might trust them more. Even with DP, though, the server does see IP addresses, even if it doesn't know what the telemetry is, and that alone might cross the line for some people. Even if the project promises to not log them.
I don't think many people here have any resistance to this. It's simply true. I think a lot of people, though, think that benefit isn't sufficient to overcome the drawbacks.
And we are a very abused culture sitting in the middle of what I hope is peak surveillance capitalism.
Beat someone with a stick enough, and when you go to scratch your back and they flinch, it's not sensible to deride them for being irrational.
On the other hand, if it wasn't Microsoft's brand being connected to this and it wasn't called telemetry but "Automatic Bug Report Sharing" nobody would make a peep.
The same goes for the kind of data or application: if people know what type of data would be shared and what it would look like, they might indeed understand that this isn't some nefarious profiling but just normal software improvement. If you are a developer, bug reports are nearly useless unless it's super repeatable with normal conditions and a few clearly defined steps... or if there is a useful automatic reporting system in place.
But none of that reduces someone's expectation of privacy or acceptance of data sharing.
How do you know? Did they pinkie swear on it? Did they add any kind of T&C around their use of Telemetry specifically?
Telemetry that can be used to identify frequently used game functionality could equally be used to identify game functionality that can be monetized. Identifying how a user dies is a fantastic way to identify items which can be sold to prevent those common deaths.
It can be a good thing, yes. Why on earth would anyone assume it would be used and only used in positive, privacy respecting ways in this day and age?
Just as commonly, it is done to identify bugs and issues, tweak the game balance to get it to a better state, or to see which things players like to do (as opposed to what they say on forums and in focus groups) in order to provide more of similar features.
It is no different from engagement logging in a lot of applications. It is far from always being done for the purpose of monetization. If my business application has a lot of users stuck on a particular screen for prolonged periods of time due to the UX being confusing, I would want to know about it and address it. A lot of times it is hard to gauge how bad it is, because users might just tolerate it if it is ok, or maybe it is something users attribute to their own fault (i.e., they might feel it is just them being confused about it, not that the UX is confusing for everyone). Engagement logging would help me identify that problem and pinpoint it very fast.
>How do you know [they are not using it for monetizing]?
How do you know they are? I am more surprised they didn't have that type of telemetry already for a while, because that's one of the most common ways to identify pain-points in the gameplay balancing, which features might need more attention/rework, identifying potentially very tricky to catch bugs, and come up with ideas for new feature ideas that users might like based on actual data (as opposed to hearsay and public feedback, which can get significantly skewed by selection bias and other factors).
If you are judging based on Windows as a benchmark, almost all software is going to come in as acceptable.
It's not that I blame those who distrust any form of telemetry. Many companies are eager to harvest as much personal information as possible. Depending upon one's definition of personal information, some of the data acquired by telemetry can be used for that purpose. In many cases the data collection process is deliberately opaque. In the remaining cases, very few people have the ability to verify that what is actually sent reflects what they are told is sent. That's before factoring in Microsoft's involvement here, since they have a negative reputation in some circles due to their past business practices.
But seriously though, it's not on the same level as, say -visual studio code sending back telemetry which includes potentially secret code or anything. Or Defenders willy-nilly sending "samples" back to the mothership for analysis.
I sincerely don't mind it if a game sends this info back, I think it's actually a good use of Telemetry.
What do we know about that?
Microsoft have long lost the benefit of doubt with their shady data collection practices.
But then Minecraft is a video game. Why do they need to spy on their customers?
I mean, world building is an expensive but actually pretty simple, predictable operation. If they want to see how it performs on slower computer they don't need to get telemetry, just actually run it on slower hardware.
So it was there, they took it out, now it's back.
launcher identifier user identitifer (XUID) client session id (changes on restart) world session id (changes per world load, to be reused for later events) game version operating system name and version Java runtime version if client or server is modded (same information as on crash logs) server type (single player, Realms or other) game mode
Are you certain about your assertion? Can you link to the document where you found it?
1: https://www.youtube.com/watch?v=4WEX_ICnZHE or the snapshot video just before it?
always rings alarm bells in my head. It's corporate lingo for "We want to increase profits by selling your private data for as long as we can get away with it."
This is a game, so let's use other games as examples. Here's two pretty damn good talks from GDC about what the value telemetry brings to the table (the StS one goes into a whole bunch of other stuff that's sort of irrelevant but also serves to motivate the telemetry topic):
* https://www.youtube.com/watch?v=Urx7WQE6NY0 * https://www.youtube.com/watch?v=7rqfbvnO_H0
Sure, the fact that they have two divergent, separate games and are completely unable to move over to the C++ codebase and sunset the Java version due to the lack of modding (I remember the modding community screaming about needing a proper modding API back in the olden days, and Mojang hiring some of the Bukkit team back in 2012 to develop it, and it never came to fruition, still to this day), makes them having to do twice the work implementing stuff, but that's at least parallelizable work. I doubt the same people work on both codebases?
I feel I need to sit down with someone who's working at Mojang and ask wtf is going on over there because it could be fascinating.
Is it possible you were playing an old "world" which doesn't have the latest features? Or were playing an older version (which is supported in the latest launcher)?
I can't agree that the additions have been "enormous". Not for 10 years. And if you've seen one mineshaft or stronghold or underwater temple, you've seen them all. No variation.
There's of course something to be said about staying true to the purity of the gameplay experience (like, say, DOTA2, but the depth and replayability there is in strategy, not content), but that feels like the wrong approach to a game that's in a large part about exploring like Minecraft.
This was a huge change and it is honestly pretty slow even on beefy boxes.
I don't actually play vanilla (unmodified) PC Minecraft more than perhaps a few minutes every year to see what's new or test something in the vanilla program.
But I spent hours every month playing packs like Compact Claustrophobia (a pack where you spend all except the last section of the "plot" trapped inside Compact Machines, pocket universes which don't exist in the vanilla game at all but are fairly popular in modding). Or say Seaopolis which starts out in a vast world-covering ocean but eventually allows you to do space travel.
Mojang and then Microsoft did some basic work to enable this, but a huge part of it comes from the core being Java, and so once modding is allowed it's possible to reach inside an object and replace parts of the game wholesale. And from the contingent popularity and huge community that took this and really ran with it.
Modding enables people to focus on the type of play they most enjoy. If you wish the game had more tricky combat and needed survival skills, you can have that. If you'd rather become a God-like being and form the world as it should be, you can have that. If you like problem solving, you can spend all your time building complicated machines to solve increasingly dubious problems (e.g. don't think "automatically farm carrots" think "automatically farm dragon eggs").
then telemetry can actually be beneficial to keep improving your product and features.
edit: Apparently this happens when running the "I don't care about cookies" browser extension, which is necessary to make the web somewhat usable after the EU's ridiculous ruling.
All jokes aside though, this doesn’t seem too bad and I can put myself in their shoes to understand why they want this data. It would be difficult to monotone this information (asides maybe a nice shiny new Surface machine).
Contains following information: launcher identifier user identitifer (XUID) client session id (changes on restart) world session id (changes per world load, to be reused for later events) game version operating system name and version Java runtime version if client or server is modded (same information as on crash logs) server type (single player, Realms or other) game mode
https://bugs.mojang.com/browse/MC-236618
Inflammatory zingers aside, I don't mind telemetry in a product like this and I'm sure I'd want it if I were working on it. But I'd want automated tests first. Factorio's approach seems enlightened, but very rare in the industry.
I only recently started playing Minecraft again after years. Last time I played it, The End did not exist yet in Minecraft. Back then we used to joke about “winning Minecraft”. Also, lava used to be an infinite resource if you built a cross and filled each corner with lava, you could then take infinite lava out from the middle which was neat. But they decided to remove that for some reason.
Anyway, bugs happen and I think the GP is wrong to suggest that telemetry is not helpful. Being able to see how people actually use the software is how Microsoft has done it since many many years AFAIK. And it helps Microsoft to develop better software.
There are many things I don’t like about Microsoft and I don’t use their Windows operating system almost at all. But I think they still got a lot right about how to develop software.
https://minecraftbedrock-archive.fandom.com/wiki/Minecraft
> This version is programmed in C++ and is available for a multitude of platforms including iOS, Android, VR, Xbox One, and Nintendo Switch. Since the Bedrock engine is a full rebuild different from the Java Edition, there is a noticeable difference between Bedrock and Java edition.
(i.e. if you observe telemetry data being abused at the company you work for and that is tolerated, you'll be wary of any telemetry?)
https://www.minecraft.net/en-us/article/minecraft-snapshot-2...
That "specific version of Minecraft" being a weekly development snapshot and not a point release, to be clear.
As long as it is anonymous, it's a good thing, IMO.
As long as users give informed consent, then it's acceptable.
Doing such a study would be the first step in optimizing for a good emotional state. But it (quite understandably) led to an outcry which stopped it dead in its tracks.
https://www.nytimes.com/2014/06/30/technology/facebook-tinke...
And if the only way to opt out is not use the product. Or stop using it particularly.
This is sarcasm. Right?
https://minecraft.fandom.com/wiki/Official_pages/Parity_issu...
It also doesn’t help that the two versions are separate purchases.
Didn't bedrock edition come for free with windows 10? I have it but I am sure I never paid for it.
It always makes me happy to see how short the list returned from `ps aux` is with FreeBSD. Whereas if you go onto a typical Linux box (even just a raspberry pi!) and run that, you get at least a screenful of processes doing who knows what. (Just my small experience.)
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 3.5 0.0 8944 332 ? Ssl 11:38 0:00 /init
root 7 0.0 0.0 8944 228 tty1 Ss 11:38 0:00 /init
dando 8 1.7 0.0 16804 3396 tty1 S 11:38 0:00 -bash
dando 32 0.0 0.0 17392 1916 tty1 R 11:38 0:00 ps aux
A strange irony that the most purist Unix-like Linux is to be found in the belly of the Windows beast, for the equivalent of those hundreds of processes doing who knows what on a typical native Linux install are instead all in Windows Task Manager.It depends on which processes. If you include kernel threads (which show as processes), the number of processes can get pretty huge, especially on many-core servers (several of these kernel threads are per-core).
I don't know whether on FreeBSD kernel threads show up as separate processes; if they don't, it might explain part of the difference.
As a dev, telemetry makes me nervous because so many projects rely on it too heavily and make bad design decisions because the telemetry blinds them.
- Have a screen that shows all telemetry that is going to be or has been sent
- Ask for permission to send any telemetry, or certain types of telemetry (i.e. crash reports)
– Publicly share the collected telemetry.
Can you give 1(one) example of a program which was improved by using telemetry ? And no, trashing the UI in the name of change or modernism does not count.
Thank you.
- We found out by looking at the distribution of software version that we had a strong holdout on one specific revision. It turns out we had a regression in a niche feature which was very important to a sub-community of our users, and users were basically telling each other to just use that old version. No bug report was filed until we found out via analytics and asked.
- We have a "game quirks" mechanism where the emulator reports weird edge cases that happen very rarely. Current list: https://github.com/dolphin-emu/dolphin/blob/master/Source/Co..., example usage: https://github.com/dolphin-emu/dolphin/blob/ffdc8538a162b1ca... . We used this to find games that use currently unimplemented or stubbed features.
- The list of popular games being played on the emulator was extremely surprising because it turns out there's a huge disconnect in what most NA/EU players are playing and what JP players are playing. This led to us adding a bunch of new games to the list we regularly test for performance and stability regressions. Would you have guessed that Inazuma Eleven GO: Strikers 2013 is in the top10 of emulated games on Dolphin?
I’m talking extremely basic things, like, what are the most popular crashes in the app? Which did I introduce in the most recent version? Why is there an increase in end to end latency in fetching data from the server? Stuff that would fall under “bug fixes and improvements” that you would likely not notice.
The last example sounds detailed enough. And some privacy considerations are moot when the app is a client for your server.
https://github.com/dolphin-emu/dolphin/blob/master/Source/Co... is the actual code which collects most of the information. We do multiple things to avoid being able to track user activity too much -- for example, while every instance of Dolphin has a unique ID so we can do things like unique counts, events that happen within a play session are associated to truncated_hash(unique ID + game ID) and not directly with the unique ID. This means that we can only correlate events from the same user playing the same game, but not* two events from one user playing different games.
* Our implementation is a bit weak given that the set of all gameids is small and enumerable. We could probably do better there.
This sounds more like 'MS bad, must hate MS at all costs' then actual legitimate complaints.