• 0 Posts
  • 37 Comments
Joined 1 year ago
cake
Cake day: July 2nd, 2023

help-circle




  • For me they only work in relatively quiet environments, or with earplugs. As soon as a car drives by it completely drowns out the sound. With music that might not be an issue, but with podcasts or calls it’s very annoying. I’ve bought earplugs especially for this, as my other earbuds have issues with wind while running, but it does feel like it’s defeating the purpose a bit. I guess turning them all the way up would also work, but that doesn’t feel healthy. Other than that I like them and the mic quality is also good according to people I’ve spoken with over the phone.


  • WSL 1 is a compatibility layer that lets Linux programs run on the Windows kernel by translating Linux system calls to Windows system calls, so in that sense I understand the name: it’s a Windows subsystem for Linux [compatibility]. It doesn’t use the Linux kernel at all. With WSL 2 they’re using a real Linux kernel in a virtual machine, so there the name doesn’t make much sense anymore.


  • I’m not sure, it depends on your configuration and blocking list. I don’t use native tracking protection, and my blocklist (oisd) prioritizes functionality over blocking, so in my case everything just works and I don’t have anything special added to my whitelist. I don’t like DNS blocking to be in the way and I also share my configuration with some family members, so that’s why I’ve made this choice, but if you prefer a stricter approach you might have to do some whitelisting.


  • If the iCloud Private Relay ODoH DNS server is used it will show up as a DNS leak, even if the IP address from its response isn’t used for browsing. For privacy it doesn’t matter, as with ODoH the DNS resolver doesn’t know your IP or identity, the most important thing is whether it will bypass the NextDNS blocklist. In my testing I couldn’t visit any website that was blocked by NextDNS, meaning that the iCloud DNS resolver wasn’t used as the primary DNS resolver, which matches with their documentation (that page 10 that I linked to earlier). Note that Apple will only use a custom DNS resolver if you’re using the native DoH option, so for example the configuration that you can get from https://apple.nextdns.io/.

    You can easily test it yourself: block a hostname in NextDNS that you haven’t visited recently (due to cache) and try to visit it in Safari.

    I don’t know why Apple still uses the Cloudflare DNS resolver even if it seems to be ignoring its responses. Maybe they use it for some custom metadata that’s sent along with the request which somehow is important for the relay. All I know is that I’ve never seen it bypassing the NextDNS blocklist, which again is exactly how it’s documented by Apple.


  • So for some reason Apple keeps using their DNS resolver even with a custom DoH resolver configured, but in my testing it didn’t affect the blocking capabilities of NextDNS at all, meaning that the answers from their resolver are just ignored (or used for some other purpose). The way NextDNS knows that you’re using another resolver is by letting the browser resolve some unique hostnames, so that way it will show up even if the answers from that resolver aren’t used. As to why Apple does this I don’t know. In theory it could be the case that Apple just used whichever answer arrives first and that NextDNS just happened to be faster in my testing, but that doesn’t match with how it’s documented in their PDF.

    Which one to pick (if you don’t just want to use them at the same time) depends on what your goal is. I use iCloud Private Relay + NextDNS + AdGuard, but nowadays I mainly use another browser with a built-in adblocker, so iCloud Private Relay and AdGuard aren’t used in that case.

    I use NextDNS everywhere I can and use a list that prioritizes not breaking anything. It’s a nice backstop. It’s not a replacement for an in-browser adblocker in my opinion, unless you don’t care that it’s less effective.


  • Contrary to common believe, iCloud Private Relay and NextDNS are compatible and can both be enabled at the same time, see page 10 of https://www.apple.com/icloud/docs/iCloud_Private_Relay_Overview_Dec2021.pdf. When you try to visit a blocked hostname in Safari, you’ll see that it won’t work. This is something that I’ve personally confirmed.

    What NextDNS solves and iCloud Private Relay doesn’t, is blocking hostnames system wide, thereby completely blocking some ads and tracking. What iCloud Private Relay solves is hiding your browsing traffic a bit better within your local network and from your ISP, as well as hiding your IP from trackers and hiding your identity from their DNS resolver (not from NextDNS, though).

    Some background information why using HTTPS together with encrypted DNS doesn’t fully hide which websites you visit (yet): https://blog.cloudflare.com/announcing-encrypted-client-hello.

    If I had to choose, I’d go with NextDNS for system wide blocking and I’d add an adblocker browser extension to block trackers and ads that can’t be blocked with DNS based blocking. But you don’t have to choose and can use both at the same time.





  • Note, however, that the mere fact that all those apps exist for iOS adds a lot of value for Apple too. Apple wouldn’t sell nearly as many iPhones if the most important apps weren’t available on their platform. They spin it as if they are only creating value for the app developers without asking for much in return, while the App Store is an enormous cash cow, which they’ve been able to build due to the lack of restrictions (pre DMA). A good API is not just a service for app developers, it’s a way to enhance the user experience and sell more phones, because of all the work that app developers do to turn it into useful and exciting features.


  • It’s Markdown syntax. You can actually format it nicely in a code block:

    bool isEven( long long x ) {
      if ( x < 0 ) x = -x;
      if ( x == 1 )
        return false;
      if ( x == 2 )
        return true;
      return isEven( x - 2 );
    }
    

    You do that by adding ``` above and below it. To force single line breaks, you can terminate your sentences with two spaces, or a backslash.


  • I don’t doubt the fact that they take some margin to extend the lifetime of the battery, but if we take iPhones as an example, they:

    • charge at a slower rate when nearing 100%
    • try to postpone charging the final 20% until the last moment before disconnecting from the wall outlet
    • can be software capped at 80% by the user (in newer models)

    This makes me suspect that that the margin between what’s reported in software as 100% and the actual capacity of the battery is less than 20%. This also makes sense from the standpoint of the consumer expecting a long battery life on their expensive high-end device, putting pressure on the companies to make the margin smaller and the charging algorithms smarter. Just my observations, of course.




  • But then when you’re talking about 10:00 hours without specifying anything else, it actually means something completely different in the local context, apart from it being the exact same time globally. It doesn’t tell you whether it’s night or day at the other persons location. Your default point of reference in that system is the world, while even today, time is mostly used in a local context for most people. When I’m talking to someone abroad and I say “my cat woke me up at 5:00 in the morning”, I expect the other person to get the meaning of that, because the other person understands my local context.

    When planning meetings you’d have to now the offset either way, because I’m not going to meet at idiotic times if there is an overlap in working hours between the two countries, which is something that you’d have to look up regardless of the time system. And if I send out a digital invite to someone abroad, the time zone information is already encoded inside it, and it shows up correctly in the other person’s agenda without the need to use a global time. In that sense UTC already is the global time and the local context is already an offset to that in the current system. We just don’t use UTC in our daily language.

    But if it helps: I do agree that in an alternative universe the time system could’ve worked like that and it would have functioned. I just don’t see it as a better alternative. It’s the same complexity repackaged and with its own unique downsides.


  • But with such a system in place, what are we actually solving? If we’re agreeing on offsets (which would happen in a sane world), we’re just moving the information from one place to another. In both systems there is a concept of time zones, but it’s just the notation that’s different, which adds a whole new bunch of stuff to adapt to that’s goes very much against what is ingrained into society, without offering much in return. It’s basically saying “it’s 10:00 UTC, but I’m living in EST, so the local offset is -5 hours (most people are still asleep here)” [1]. Apart from the fact that you can already use that right now (add ISO 8601 notation to the mix while you’re at it), it doesn’t really change the complexity of having time zones, you just convey it differently.

    Literally the only benefit that I can come up with is that you can leave out the offset indicator (time zone) and still guarantee to be there at the agreed time. Right now you’d have to deduct the time zone from the context, which is not always possible. That doesn’t outweigh the host of new issues that we’d have to adapt to or work around in my opinion.

    [1] In practice we would probably call that 10:00 EST, which would be 10:00 UTC, but indicate the local offset.