For a client we added support for some synonymous Azure services to the AWS ones we use and I’ll be honest, the amount of garbage the Azure SDK created in our JVM codebase was quite annoying.<p>Now, I fully understand a Java SDK isn’t going to get quite the same love as their bread and butter, but everything about their Java SDK feels like, just copy the .NET SDK and make it work in Java.<p>I assumed the telemetry traces (or attempted traces) I was seeing, even with every configurable telemetry config flag EXPLICITLY set to disabled was just more of their bad choices of log levels, leaky internal log messages, and just generally not doing things “the Java way”.<p>Now I’m starting to wonder if there’s just flat out no way to turn all the telemetry off. Originally we built with the AWS and Azure SDKs and the cloud providers were configurable at run time. I was getting so annoyed with the garbage that MSFT was leaving in our logs even when disabled and running in AWS that we eventually bifurcated our build and re-organized the project.<p>We spent about a week adding abstractions we previously didn’t need, and another week testing, for what we were assuming was just an annoyance. Turns out maybe we were doing our other clients a solid and didn’t even know it.
The author doesn't understand GDPR.<p>The GDPR governs consent for processing of _personal data_. Generally, anonymized data is not personal.<p>The author attacks the anonymization method, but that is a thin branch to stand on. In particular, given how GDPR is very much about usage, Microsoft helps substantiate their anonymization simply by not attempting to deanonymize.<p>See eg Art 7,<p>> <i>Where processing is based on consent, the controller shall be able to demonstrate that the data subject has consented to processing of his or her personal data.</i><p>And Recital 26<p>> <i>The principles of data protection should therefore not apply to anonymous information, namely information which does not relate to an identified or identifiable natural person or to personal data rendered anonymous in such a manner that the data subject is not or no longer identifiable.</i>