<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://www.andrewdenty.com/blog/feed.xml" rel="self" type="application/atom+xml" /><link href="https://www.andrewdenty.com/blog/" rel="alternate" type="text/html" /><updated>2026-10-29T18:21:23+00:00</updated><id>https://www.andrewdenty.com/blog/feed.xml</id><title type="html">Andrew Denty</title><subtitle>Thoughts on design</subtitle><entry><title type="html">Introducing Gay Places</title><link href="https://www.andrewdenty.com/blog/2026/03/19/kicking-off-gay-places.html" rel="alternate" type="text/html" title="Introducing Gay Places" /><published>2026-03-19T09:00:00+00:00</published><updated>2026-03-19T09:00:00+00:00</updated><id>https://www.andrewdenty.com/blog/2026/03/19/kicking-off-gay-places</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2026/03/19/kicking-off-gay-places.html"><![CDATA[<p><img src="/blog/assets/img/gay-places-graphic.png" alt="Gay Places" /></p>

<p>I’ve recently started a new side project called <a href="https://www.gayplaces.co/" target="_blank">Gay Places</a>, a curated guide to gay bars, clubs, and queer spaces around the world.</p>

<p>The aim is to build something quieter, more considered, and more useful than the usual listings, especially for people exploring a city through its gay scene.</p>

<p>It’s early days, but I’m excited to see where it goes. I’d love to hear in the comments if you have any ideas or suggestions for where to take this!</p>]]></content><author><name></name></author><category term="Side Projects" /><category term="LGBTQ+" /><category term="Travel" /><summary type="html"><![CDATA[Introducing Gay Places, my new side project: a curated guide to gay bars, clubs and queer spaces worldwide, built to be more useful than the usual listings.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/gay-places-graphic.png" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/gay-places-graphic.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">How to Install Pi-hole on Windows 11 with Docker</title><link href="https://www.andrewdenty.com/blog/2022/03/13/installing-pi-hole-on-windows-11.html" rel="alternate" type="text/html" title="How to Install Pi-hole on Windows 11 with Docker" /><published>2022-03-13T08:05:00+00:00</published><updated>2026-10-29T11:00:00+00:00</updated><id>https://www.andrewdenty.com/blog/2022/03/13/installing-pi-hole-on-windows-11</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2022/03/13/installing-pi-hole-on-windows-11.html"><![CDATA[<p><img src="/blog/assets/img/install-pihole-on-windows-11-using-docker.png" alt="Pi-hole on Windows 11" /></p>

<p><a href="https://pi-hole.net/" target="_blank">Pi-hole</a> is a free ad blocker for your whole home network. It works as your network’s DNS server, the service your devices use to look up websites. When a phone, laptop or smart TV tries to load an ad or a tracker, Pi-hole blocks the request before anything is downloaded. Ads disappear on every device, even inside apps, without installing anything on them.</p>

<p>Pi-hole was designed for the Raspberry Pi, but thanks to Docker you can run it on a Windows PC you already own.</p>

<p>Back in 2020 I wrote a step-by-step guide to <a href="/blog/2020/01/25/installing-pi-hole-on-windows-10.html">installing Pi-hole on Windows 10</a>. I definitely wasn’t prepared for the response! The post has had hundreds of thousands of visits, and heaps of helpful comments that helped me refine the instructions. I wrote it as a go-to guide for myself, and somehow it became one for a whole community of tinkerers. This Windows 11 version followed in 2022 when I moved to a new PC, and I keep it up to date as Pi-hole, Docker and Windows change.</p>

<blockquote>
  <p><strong>Updated October 2026 for Pi-hole v6.</strong> Pi-hole v6 changed how passwords and settings work in Docker, so older instructions (including earlier versions of this guide) no longer work. If you can’t log in to Pi-hole, <a href="#cant-log-in">jump to the fix</a>.</p>
</blockquote>

<p>If you’re wondering whether it’s worth running Pi-hole on Windows, or whether you should just buy a Raspberry Pi, take a look at my <a href="/blog/2020/04/24/review-living-with-pi-hole-on-windows-10.html">review of living with Pi-hole on Windows</a>.</p>

<p><strong>Jump to:</strong> <a href="#step-by-step">Step-by-step guide</a> · <a href="#update">Updating Pi-hole</a> · <a href="#upgrade">Moving from an older version of this guide</a> · <a href="#troubleshooting">Troubleshooting</a> · <a href="#faqs">FAQs</a></p>

<h3 id="what-youll-need">What you’ll need</h3>
<ul>
  <li><strong>A Windows 11 PC that you’re happy to leave on all the time.</strong> A small, quiet, power-efficient PC is ideal. In my case I’m using an Intel NUC. Windows 11 Home and Pro both work.</li>
  <li><strong>At least 8 GB of RAM.</strong> That’s Docker Desktop’s minimum. Pi-hole itself only needs a fraction of it.</li>
  <li><strong>Virtualisation turned on in your PC’s BIOS.</strong> It’s on by default on most PCs, and Docker will tell you if it isn’t.</li>
  <li><strong>Access to your router’s settings</strong>, so you can point your network at Pi-hole.</li>
</ul>

<p>Before you start, run Windows Update so your PC is fully up to date. Then stop your PC from going to sleep. Go to <strong>Settings &gt; System &gt; Power &amp; battery</strong> (just <strong>Power</strong> on some desktop PCs) and set your PC to never sleep when it’s plugged in. If your PC sleeps, so does Pi-hole, and the devices on your network won’t be able to load websites.</p>

<h3 id="step-by-step">How to install Pi-hole on Windows 11, step by step</h3>

<h4 id="step-1">Step 1: Install WSL</h4>
<p>Docker uses the Windows Subsystem for Linux (WSL) to run Linux software, like Pi-hole, on Windows. Right-click the <strong>Start</strong> button, choose <strong>Terminal (Admin)</strong>, and run:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">wsl</span><span class="w"> </span><span class="nt">--install</span><span class="w"> </span><span class="nt">--no-distribution</span><span class="w">
</span></code></pre></div></div>

<p>When it’s finished, restart your PC.</p>

<h4 id="step-2">Step 2: Install Docker Desktop</h4>
<ol>
  <li>Go to the <a href="https://www.docker.com/products/docker-desktop/" target="_blank">Docker Desktop download page</a> and choose <strong>Download for Windows – AMD64</strong>. This is the right version for almost all PCs, including ones with Intel processors. You don’t need a Docker account.</li>
  <li>Run the installer and stick with the recommended options. If it asks how to install, choose the recommended option for your user account, and keep <strong>WSL 2</strong> as the backend. If the installer asks you to restart or sign out at the end, do that.</li>
  <li>Open <strong>Docker Desktop</strong> from the Start menu and accept the Docker Subscription Service Agreement. Docker Desktop is free for personal use. You’ll also be asked to sign in or create an account. This is optional, so you can skip it.</li>
  <li>Open Docker Desktop’s <strong>Settings</strong> (the cog icon at the top) and, under <strong>General</strong>, turn on <strong>Start Docker Desktop when you sign in to your computer</strong>, then click <strong>Apply</strong>. This is off by default, but it’s important: without it, Pi-hole won’t come back on after your PC restarts.</li>
</ol>

<h4 id="step-3">Step 3: Give your PC a static IP address</h4>
<p>Every device on your network needs to be able to find Pi-hole, so your PC needs an IP address that never changes.</p>

<ol>
  <li>Open <strong>Terminal</strong> and type <code class="language-plaintext highlighter-rouge">ipconfig</code>. Under your Wi-Fi or Ethernet adapter (ignore any “vEthernet” entries), make a note of your <strong>IPv4 Address</strong>, <strong>Subnet Mask</strong> and <strong>Default Gateway</strong> (this is your router’s address).</li>
  <li>Open <strong>Settings &gt; Network &amp; internet</strong>. Click <strong>Ethernet</strong>, or if you’re on Wi-Fi, click <strong>Wi-Fi</strong> and then your network’s properties.</li>
  <li>Under <strong>Network profile type</strong>, choose <strong>Private network</strong>. This tells Windows it’s your trusted home network, so other devices can reach Pi-hole.</li>
  <li>Next to <strong>IP assignment</strong>, click <strong>Edit</strong>. Choose <strong>Manual</strong> and turn on <strong>IPv4</strong>.</li>
  <li>Fill in the following:
    <ul>
      <li><strong>IP address:</strong> your current IP address with the last number changed to something higher, which is less likely to clash with other devices. For example, if your IP address is <code class="language-plaintext highlighter-rouge">192.168.1.23</code>, use <code class="language-plaintext highlighter-rouge">192.168.1.200</code>.</li>
      <li><strong>Subnet mask</strong> and <strong>Gateway:</strong> copy these from <code class="language-plaintext highlighter-rouge">ipconfig</code>. The subnet mask is usually <code class="language-plaintext highlighter-rouge">255.255.255.0</code>.</li>
      <li><strong>Preferred DNS:</strong> the same IP address you’ve just chosen, so your PC uses Pi-hole too. Leave <strong>DNS over HTTPS</strong> off.</li>
      <li><strong>Alternate DNS:</strong> <code class="language-plaintext highlighter-rouge">1.1.1.1</code> (<a href="https://1.1.1.1/dns/" target="_blank">Cloudflare’s DNS service</a>). This keeps your PC online if Pi-hole isn’t running.</li>
    </ul>
  </li>
  <li>Click <strong>Save</strong>. You only need to configure IPv4.</li>
</ol>

<p><img src="/blog/assets/img/5-windows-11-set-static-ip-address.png" alt="Windows 11 Edit network IP settings dialog with a manual IP address and Pi-hole as the preferred DNS server" /></p>

<p><strong>Tip:</strong> if you’re comfortable with your router’s settings, you can reserve an IP address for your PC there instead (often called <em>DHCP reservation</em> or <em>address reservation</em>). Either approach works.</p>

<h4 id="step-4">Step 4: Create your Pi-hole settings file</h4>
<p>Pi-hole’s settings live in a small text file called <code class="language-plaintext highlighter-rouge">docker-compose.yml</code>. Docker reads this file to set up Pi-hole for you, and it makes updating Pi-hole much easier later on.</p>

<p>Open <strong>Terminal</strong> (you don’t need admin this time) and run these commands to create a folder for Pi-hole and a new file inside it:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">mkdir</span><span class="w"> </span><span class="nx">C:\pihole</span><span class="w">
</span><span class="n">cd</span><span class="w"> </span><span class="nx">C:\pihole</span><span class="w">
</span><span class="n">notepad</span><span class="w"> </span><span class="nx">docker-compose.yml</span><span class="w">
</span></code></pre></div></div>

<p>Notepad will ask whether you want to create a new file. Click <strong>Yes</strong>, then copy and paste the following into Notepad:</p>

<div class="language-yaml highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="na">services</span><span class="pi">:</span>
  <span class="na">pihole</span><span class="pi">:</span>
    <span class="na">container_name</span><span class="pi">:</span> <span class="s">pihole</span>
    <span class="na">image</span><span class="pi">:</span> <span class="s">pihole/pihole:latest</span>
    <span class="na">ports</span><span class="pi">:</span>
      <span class="c1"># DNS: how your devices talk to Pi-hole</span>
      <span class="pi">-</span> <span class="s2">"</span><span class="s">53:53/tcp"</span>
      <span class="pi">-</span> <span class="s2">"</span><span class="s">53:53/udp"</span>
      <span class="c1"># Pi-hole's web dashboard</span>
      <span class="pi">-</span> <span class="s2">"</span><span class="s">80:80/tcp"</span>
      <span class="pi">-</span> <span class="s2">"</span><span class="s">443:443/tcp"</span>
    <span class="na">environment</span><span class="pi">:</span>
      <span class="c1"># Your timezone</span>
      <span class="na">TZ</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Europe/London'</span>
      <span class="c1"># The password you'll use to log in to the dashboard</span>
      <span class="na">FTLCONF_webserver_api_password</span><span class="pi">:</span> <span class="s1">'</span><span class="s">choose-a-password'</span>
      <span class="c1"># Where Pi-hole sends the requests it doesn't block (Cloudflare)</span>
      <span class="na">FTLCONF_dns_upstreams</span><span class="pi">:</span> <span class="s1">'</span><span class="s">1.1.1.1;1.0.0.1'</span>
      <span class="c1"># Lets the other devices on your network use Pi-hole</span>
      <span class="na">FTLCONF_dns_listeningMode</span><span class="pi">:</span> <span class="s1">'</span><span class="s">ALL'</span>
    <span class="na">volumes</span><span class="pi">:</span>
      <span class="c1"># Keeps your settings and blocklists when you update Pi-hole</span>
      <span class="pi">-</span> <span class="s">pihole_data:/etc/pihole</span>
    <span class="na">cap_add</span><span class="pi">:</span>
      <span class="c1"># Lets Pi-hole keep its clock accurate and run smoothly</span>
      <span class="pi">-</span> <span class="s">SYS_TIME</span>
      <span class="pi">-</span> <span class="s">SYS_NICE</span>
    <span class="na">restart</span><span class="pi">:</span> <span class="s">unless-stopped</span>

<span class="na">volumes</span><span class="pi">:</span>
  <span class="na">pihole_data</span><span class="pi">:</span>
</code></pre></div></div>

<p><strong>You will need to change:</strong></p>
<ul>
  <li><code class="language-plaintext highlighter-rouge">choose-a-password</code>: the password you’ll use to log in to Pi-hole. Keep the quotes around it, and avoid using <code class="language-plaintext highlighter-rouge">$</code> or <code class="language-plaintext highlighter-rouge">'</code> in your password, as they confuse Docker.</li>
  <li><code class="language-plaintext highlighter-rouge">Europe/London</code>: your timezone, from this <a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones" target="_blank">list of time zones</a>. For example, <code class="language-plaintext highlighter-rouge">America/New_York</code> or <code class="language-plaintext highlighter-rouge">Australia/Sydney</code>.</li>
</ul>

<p>Leave the spaces at the start of each line exactly as they are, because Docker is fussy about them. Then save the file (<strong>Ctrl + S</strong>) and close Notepad.</p>

<p>You can leave everything else as it is. If you’d prefer a different DNS provider, you can swap the Cloudflare addresses for another one, such as Quad9 (<code class="language-plaintext highlighter-rouge">9.9.9.9;149.112.112.112</code>). There are also <a href="https://docs.pi-hole.net/docker/configuration/" target="_blank">lots of other settings you can add</a> if you want to customise Pi-hole.</p>

<p><strong>Good to know:</strong> anything set in this file is locked in Pi-hole’s dashboard. To change it later, edit the file and run <code class="language-plaintext highlighter-rouge">docker compose up -d</code> again.</p>

<h4 id="step-5">Step 5: Start Pi-hole</h4>
<p>Back in Terminal, in the <code class="language-plaintext highlighter-rouge">C:\pihole</code> folder, run:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">docker</span><span class="w"> </span><span class="nx">compose</span><span class="w"> </span><span class="nx">up</span><span class="w"> </span><span class="nt">-d</span><span class="w">
</span></code></pre></div></div>

<p>Docker will download Pi-hole and start it. The first time, this takes a minute or two. When it’s done, you’ll see that the <code class="language-plaintext highlighter-rouge">pihole</code> container has started, and it’ll also appear under <strong>Containers</strong> in Docker Desktop.</p>

<p>You’ll probably see a Windows Firewall pop-up for <strong>Docker Desktop Backend</strong>. Make sure <strong>Private networks</strong> is ticked and click <strong>Allow access</strong>. If you skip this, the other devices on your network won’t be able to reach Pi-hole.</p>

<p><img src="/blog/assets/img/6-windows-11-firewall-dialog-pi-hole.png" alt="Windows Defender Firewall pop-up asking to allow Docker Desktop Backend on private networks" /></p>

<h4 id="step-6">Step 6: Log in to the Pi-hole dashboard</h4>
<p>Open your web browser and go to <a href="http://localhost/admin" target="_blank">http://localhost/admin</a>. Log in with the password you chose in Step 4. If the page doesn’t load straight away, give Pi-hole another minute to finish starting up.</p>

<p>From the dashboard you can see how many ads and trackers have been blocked, manage your blocklists, and allow or block individual websites. To open it from another device on your network, use your PC’s IP address instead, for example <code class="language-plaintext highlighter-rouge">http://192.168.1.200/admin</code>.</p>

<h4 id="step-7">Step 7: Point your router at Pi-hole</h4>
<p>The final step is to tell your router to use Pi-hole as the DNS server for your network. This gives every device on your network Pi-hole’s ad blocking magic, with nothing to install.</p>

<p>Log in to your router’s settings page. You can usually do this by typing your Default Gateway address from Step 3 into your browser. Find the <strong>DNS server</strong> setting (often under the LAN or DHCP settings) and change it to your PC’s IP address, for example <code class="language-plaintext highlighter-rouge">192.168.1.200</code>.</p>

<p>Every router is different, so if you get stuck, search for your router’s model name and “change DNS server”. If your router doesn’t let you change it, see the <a href="#router-dns">FAQs</a>.</p>

<p>Devices pick up the change when they next reconnect, so restart them or turn their Wi-Fi off and on again.</p>

<h4 id="step-8">Step 8: Check it’s working</h4>
<p>Browse a few websites on your phone or laptop. Ads should be gone, and in the Pi-hole dashboard you’ll see <strong>Queries Blocked</strong> start to climb.</p>

<p>For a quick test, run this in Terminal, using your PC’s IP address:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">nslookup</span><span class="w"> </span><span class="nx">doubleclick.net</span><span class="w"> </span><span class="nx">192.168.1.200</span><span class="w">
</span></code></pre></div></div>

<p>If Pi-hole is working, the answer will be <code class="language-plaintext highlighter-rouge">0.0.0.0</code>. That’s Pi-hole blocking one of the internet’s biggest ad servers.</p>

<p>Congratulations! At this point you should have a Pi-hole protected home. If something isn’t working, check the troubleshooting tips below or leave a comment.</p>

<h3 id="update">How to update Pi-hole</h3>
<p>A new version of Pi-hole comes out every month or so. You’ll see a message at the bottom of the dashboard when an update is available. To update, open Terminal and run:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">cd</span><span class="w"> </span><span class="nx">C:\pihole</span><span class="w">
</span><span class="n">docker</span><span class="w"> </span><span class="nx">compose</span><span class="w"> </span><span class="nx">pull</span><span class="w">
</span><span class="n">docker</span><span class="w"> </span><span class="nx">compose</span><span class="w"> </span><span class="nx">up</span><span class="w"> </span><span class="nt">-d</span><span class="w">
</span></code></pre></div></div>

<p>Docker downloads the latest version and swaps it in. Your settings, password and blocklists are kept, because they’re stored separately from Pi-hole itself. To free up disk space afterwards, run <code class="language-plaintext highlighter-rouge">docker image prune</code> and type <code class="language-plaintext highlighter-rouge">y</code> to delete the old version.</p>

<p>Pi-hole’s developers recommend updating by hand rather than automatically, as occasionally an update needs extra changes. It’s worth glancing at the <a href="https://github.com/pi-hole/docker-pi-hole/releases" target="_blank">release notes</a> before you update.</p>

<h3 id="upgrade">Moving from an older version of this guide</h3>
<p>If you set up Pi-hole using an earlier version of this guide (or my Windows 10 guide), you’re probably running Pi-hole v5. The <code class="language-plaintext highlighter-rouge">docker run</code> command in those guides uses settings like <code class="language-plaintext highlighter-rouge">WEBPASSWORD</code> that Pi-hole v6 no longer understands. It also didn’t save your settings outside the container. The easiest way to move to v6 is to back up your settings, then start fresh:</p>

<ol>
  <li>Make sure Docker Desktop is up to date. It will prompt you, or you can check under <strong>Settings &gt; Software updates</strong>.</li>
  <li>In your current Pi-hole dashboard, go to <strong>Settings &gt; Teleporter</strong> and click <strong>Backup</strong> (it’s called <strong>Export</strong> if you’re already on v6). This downloads a <code class="language-plaintext highlighter-rouge">.tar.gz</code> file with your blocklists and your allowed and blocked domains.</li>
  <li>Remove your old Pi-hole. In Docker Desktop, go to <strong>Containers</strong> and delete <strong>pihole</strong>, or run <code class="language-plaintext highlighter-rouge">docker rm -f pihole</code> in Terminal.</li>
  <li>Follow <a href="#step-4">Steps 4 to 6</a> above. Your static IP address and router settings don’t need to change.</li>
  <li>In your new dashboard, go to <strong>Settings &gt; Teleporter</strong>, choose your backup file under <strong>Import</strong>, and click <strong>Import</strong>.</li>
</ol>

<h3 id="troubleshooting">Troubleshooting</h3>

<h4 id="cant-log-in">I can’t log in to Pi-hole</h4>
<p>This is usually caused by older set-up instructions. Before Pi-hole v6, you set the password with <code class="language-plaintext highlighter-rouge">WEBPASSWORD</code>. Pi-hole v6 ignores that setting and creates a random password instead.</p>

<p>To find the random password, open Docker Desktop, click <strong>Containers</strong> and then <strong>pihole</strong>, open the <strong>Logs</strong> tab, and search for “random password”. Or run this in Terminal:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">docker</span><span class="w"> </span><span class="nx">logs</span><span class="w"> </span><span class="nx">pihole</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">findstr</span><span class="w"> </span><span class="nx">/i</span><span class="w"> </span><span class="nx">password</span><span class="w">
</span></code></pre></div></div>

<p>To choose your own password instead, run the following and follow the prompts:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">docker</span><span class="w"> </span><span class="nx">exec</span><span class="w"> </span><span class="nt">-it</span><span class="w"> </span><span class="nx">pihole</span><span class="w"> </span><span class="nx">pihole</span><span class="w"> </span><span class="nx">setpassword</span><span class="w">
</span></code></pre></div></div>

<p>This only works if you haven’t set a password in a <code class="language-plaintext highlighter-rouge">docker-compose.yml</code> file. If you followed this guide, change the password in the file instead and run <code class="language-plaintext highlighter-rouge">docker compose up -d</code> again. If you’re still on the old set-up, I’d recommend <a href="#upgrade">moving to the new one</a>.</p>

<h4 id="docker-says-a-port-isnt-available">Docker says a port isn’t available</h4>
<p>Pi-hole needs port 53 (for DNS) and port 80 (for the dashboard) to be free on your PC.</p>

<ul>
  <li><strong>Port 80</strong> is sometimes used by other software, such as a web server. In your <code class="language-plaintext highlighter-rouge">docker-compose.yml</code> file, change <code class="language-plaintext highlighter-rouge">"80:80/tcp"</code> to <code class="language-plaintext highlighter-rouge">"8080:80/tcp"</code>, run <code class="language-plaintext highlighter-rouge">docker compose up -d</code>, and use <code class="language-plaintext highlighter-rouge">http://localhost:8080/admin</code> instead. If port 443 is the problem, you can delete the <code class="language-plaintext highlighter-rouge">"443:443/tcp"</code> line altogether.</li>
  <li><strong>Port 53</strong> can be taken by Windows itself, for example when <strong>Mobile hotspot</strong> is turned on, or by other DNS software. Turn off Mobile hotspot, or put your PC’s IP address in front of the two port 53 lines, like this: <code class="language-plaintext highlighter-rouge">"192.168.1.200:53:53/tcp"</code> and <code class="language-plaintext highlighter-rouge">"192.168.1.200:53:53/udp"</code>. Then run <code class="language-plaintext highlighter-rouge">docker compose up -d</code> again.</li>
</ul>

<h4 id="pi-hole-works-on-my-pc-but-not-on-other-devices">Pi-hole works on my PC, but not on other devices</h4>
<p>This is usually Windows Firewall. Check that your network is set to <strong>Private network</strong> (Step 3). Then search the Start menu for <strong>Allow an app through Windows Firewall</strong>, click <strong>Change settings</strong>, and make sure <strong>Docker Desktop Backend</strong> is ticked under <strong>Private</strong>.</p>

<h4 id="pi-hole-stops-working-after-my-pc-restarts">Pi-hole stops working after my PC restarts</h4>
<p>Make sure <strong>Start Docker Desktop when you sign in to your computer</strong> is turned on (Step 2). Docker Desktop only starts once you’ve signed in to Windows, so if Windows restarts on its own for an update, Pi-hole stays off until you sign in again.</p>

<p>To avoid this, go to <strong>Settings &gt; Accounts &gt; Sign-in options</strong> and turn on <strong>Use my sign-in info to automatically finish setting up after an update</strong>. Windows will then sign you back in after an update and lock the screen, which should give Docker Desktop the chance to start.</p>

<h4 id="docker-says-no-configuration-file-provided">Docker says “no configuration file provided”</h4>
<p>Make sure you’re in the right folder (<code class="language-plaintext highlighter-rouge">cd C:\pihole</code>) and that the file is called exactly <code class="language-plaintext highlighter-rouge">docker-compose.yml</code>. Run <code class="language-plaintext highlighter-rouge">dir</code> to see what’s in the folder. If the file has been saved as <code class="language-plaintext highlighter-rouge">docker-compose.yml.txt</code>, rename it with <code class="language-plaintext highlighter-rouge">ren docker-compose.yml.txt docker-compose.yml</code>.</p>

<h4 id="docker-desktop-wont-start">Docker Desktop won’t start</h4>
<p>If Docker says WSL needs updating, run <code class="language-plaintext highlighter-rouge">wsl --update</code> in <strong>Terminal (Admin)</strong> and then reopen Docker Desktop. If it says virtualisation isn’t supported, you’ll need to turn it on in your PC’s BIOS. It’s usually called Intel VT-x, AMD-V or SVM.</p>

<h4 id="i-can-still-see-ads">I can still see ads</h4>
<ul>
  <li><strong>Check the device is using Pi-hole.</strong> Restart it, or turn its Wi-Fi off and on, so it picks up the new DNS settings. If it is using Pi-hole, you’ll see requests appear in the <strong>Query Log</strong> as you browse.</li>
  <li><strong>Check your browser.</strong> Some browsers can use their own secure DNS, which skips Pi-hole. In Chrome or Edge, make sure <strong>Use secure DNS</strong> isn’t set to a specific provider. Pi-hole automatically turns off Firefox’s automatic secure DNS, unless you’ve turned it on yourself.</li>
  <li><strong>Check your router’s IPv6 settings.</strong> Some routers also hand out your internet provider’s IPv6 DNS servers, which lets devices skip Pi-hole.</li>
  <li><strong>Some ads can’t be blocked by Pi-hole</strong>, such as YouTube video ads (see below).</li>
</ul>

<h3 id="faqs">FAQs</h3>

<h4 id="can-pi-hole-block-youtube-ads">Can Pi-hole block YouTube ads?</h4>
<p>Not reliably. YouTube serves its video ads from the same servers as the videos themselves, so Pi-hole can’t block one without breaking the other. The same goes for sponsored posts on sites like Facebook and Instagram. A browser ad blocker is still the best option for those.</p>

<h4 id="is-docker-desktop-free">Is Docker Desktop free?</h4>
<p>Yes, for personal use, education and non-commercial open source projects. It’s also free for small businesses with fewer than 250 employees and less than $10 million in annual revenue. Larger businesses need a <a href="https://www.docker.com/pricing/" target="_blank">paid subscription</a>.</p>

<h4 id="what-happens-if-my-pc-is-turned-off">What happens if my PC is turned off?</h4>
<p>If your router only uses Pi-hole for DNS, the devices on your network won’t be able to load websites while your PC is off. Many routers let you add a second DNS server, like <code class="language-plaintext highlighter-rouge">1.1.1.1</code>, which keeps the internet working when Pi-hole is down. The catch is that devices will sometimes use the backup even when Pi-hole is running, so a few ads will slip through. If you want Pi-hole to be truly always on, a Raspberry Pi is a great option.</p>

<h4 id="router-dns">My router won’t let me change the DNS server</h4>
<p>Some routers from internet providers lock this setting. You can still use Pi-hole by setting the DNS server on each device instead. On Windows, it’s the <strong>DNS server assignment</strong> setting, next to the IP assignment setting from Step 3. Pi-hole can also act as your network’s DHCP server, but unfortunately that doesn’t work with Docker Desktop on Windows.</p>

<h4 id="does-the-pc-have-to-be-connected-with-an-ethernet-cable">Does the PC have to be connected with an Ethernet cable?</h4>
<p>No. When I first set this up, my PC was connected over Wi-Fi and it worked really well. Ethernet is a little faster and more reliable though, so use it if you can.</p>

<h4 id="why-does-the-dashboard-show-all-my-devices-as-one-client">Why does the dashboard show all my devices as one client?</h4>
<p>Docker Desktop passes network traffic through to Pi-hole on your devices’ behalf, so Pi-hole usually sees every request as coming from Docker. Ad blocking still works on every device; you just won’t get a breakdown per device. If that matters to you, you’ll need to run Pi-hole on a Raspberry Pi or another Linux machine.</p>

<h4 id="can-i-use-a-single-docker-run-command-instead-of-docker-compose">Can I use a single <code class="language-plaintext highlighter-rouge">docker run</code> command instead of Docker Compose?</h4>
<p>Yes. This PowerShell command sets up Pi-hole with the same settings as the file in Step 4:</p>

<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">docker</span><span class="w"> </span><span class="nx">run</span><span class="w"> </span><span class="nt">-d</span><span class="w"> </span><span class="nt">--name</span><span class="w"> </span><span class="nx">pihole</span><span class="w"> </span><span class="nt">-p</span><span class="w"> </span><span class="nx">53:53/tcp</span><span class="w"> </span><span class="nt">-p</span><span class="w"> </span><span class="nx">53:53/udp</span><span class="w"> </span><span class="nt">-p</span><span class="w"> </span><span class="nx">80:80/tcp</span><span class="w"> </span><span class="nt">-p</span><span class="w"> </span><span class="nx">443:443/tcp</span><span class="w"> </span><span class="nt">-e</span><span class="w"> </span><span class="s2">"TZ=Europe/London"</span><span class="w"> </span><span class="nt">-e</span><span class="w"> </span><span class="s2">"FTLCONF_webserver_api_password=choose-a-password"</span><span class="w"> </span><span class="nt">-e</span><span class="w"> </span><span class="s2">"FTLCONF_dns_upstreams=1.1.1.1;1.0.0.1"</span><span class="w"> </span><span class="nt">-e</span><span class="w"> </span><span class="s2">"FTLCONF_dns_listeningMode=ALL"</span><span class="w"> </span><span class="nt">-v</span><span class="w"> </span><span class="nx">pihole_data:/etc/pihole</span><span class="w"> </span><span class="nt">--cap-add</span><span class="w"> </span><span class="nx">SYS_TIME</span><span class="w"> </span><span class="nt">--cap-add</span><span class="w"> </span><span class="nx">SYS_NICE</span><span class="w"> </span><span class="nt">--restart</span><span class="w"> </span><span class="nx">unless-stopped</span><span class="w"> </span><span class="nx">pihole/pihole:latest</span><span class="w">
</span></code></pre></div></div>

<p>I’d still recommend Docker Compose though, as your settings are saved in a file, which makes updating much simpler.</p>

<h4 id="can-i-do-this-on-a-mac-or-on-windows-10">Can I do this on a Mac, or on Windows 10?</h4>
<p>Yes. On a Mac, install <a href="https://www.docker.com/products/docker-desktop/" target="_blank">Docker Desktop for Mac</a> and use the same <code class="language-plaintext highlighter-rouge">docker-compose.yml</code> file. On Windows 10, the Docker steps are the same, although Microsoft no longer supports Windows 10, so I’d recommend upgrading if you can.</p>

<h4 id="why-use-docker-and-not-a-linux-virtual-machine">Why use Docker and not a Linux virtual machine?</h4>
<p>Docker is easier to set up and maintain. With a virtual machine you need to install, configure and update Linux yourself. With Docker, Pi-hole runs in its own isolated container, and all of your settings live in one file, so you can update or rebuild it in a couple of minutes.</p>

<h3 id="whats-changed-in-this-guide">What’s changed in this guide</h3>
<ul>
  <li><strong>October 2026:</strong> Rewritten for Pi-hole v6, which changed how passwords and settings work. Now uses Docker Compose, covers the latest Docker Desktop and Windows 11, and adds instructions for updating Pi-hole, moving from the old set-up, and troubleshooting.</li>
  <li><strong>March 2022:</strong> First published, based on my original <a href="/blog/2020/01/25/installing-pi-hole-on-windows-10.html">Windows 10 guide</a>.</li>
</ul>

<p>I’ll keep updating this guide as Pi-hole, Docker and Windows change. If you run into problems, or spot something that’s out of date, let me know in the comments!</p>]]></content><author><name></name></author><category term="Pi-hole" /><category term="Docker" /><category term="Ad-blocking" /><category term="hacker project" /><category term="Windows 11" /><category term="Privacy" /><summary type="html"><![CDATA[Block ads on every device at home by running Pi-hole on Windows 11. A step-by-step Docker guide, updated for Pi-hole v6 in 2026, plus fixes for common problems.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/install-pihole-on-windows-11-using-docker.png" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/install-pihole-on-windows-11-using-docker.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">How transparency helps us become better designers</title><link href="https://www.andrewdenty.com/blog/2020/10/29/how-transparency-helps-us-become-better-designers.html" rel="alternate" type="text/html" title="How transparency helps us become better designers" /><published>2020-10-29T06:49:00+00:00</published><updated>2020-10-29T06:49:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/10/29/how-transparency-helps-us-become-better-designers</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/10/29/how-transparency-helps-us-become-better-designers.html"><![CDATA[<p><img src="/blog/assets/img/design-transparency-cover.png" alt="How transparency helps us become better designers" />
Ever since becoming a Product Designer I’ve been on a gradual journey of realising that being open and transparent with your work is almost always better. At first working in an open and transparent fashion felt counter-intuitive.</p>

<p>Don’t designers need to lock themselves away in a basement and wait for inspiration to strike?  In most cases this couldn’t be further from the truth. In my experience, the more (and earlier) cycles of feedback and input you get on any project almost always result in a tighter, more useful end product.</p>

<p>This is an article I wrote recently for The Org exploring the benefits of adopting a transparent design process.</p>

<p><strong>Link</strong> - <a href="https://theorg.com/insights/how-transparency-helps-us-become-better-designers" target="_blank">How transparency helps us become better designers (Andrew Denty on The Org Insights)</a></p>]]></content><author><name></name></author><category term="Design Process" /><category term="Transparency" /><category term="The Org" /><category term="Figma" /><category term="Product Design" /><summary type="html"><![CDATA[Why sharing your work early and openly almost always leads to a better end product. An introduction to the article I wrote for The Org on transparent design.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/transparency-thumb.jpg" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/transparency-thumb.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">How to pause your Audible subscription without losing your credits</title><link href="https://www.andrewdenty.com/blog/2020/10/27/how-to-pause-your-audible-subscription-without-losing-your-credits.html" rel="alternate" type="text/html" title="How to pause your Audible subscription without losing your credits" /><published>2020-10-27T20:10:00+00:00</published><updated>2026-10-29T11:00:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/10/27/how-to-pause-your-audible-subscription-without-losing-your-credits</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/10/27/how-to-pause-your-audible-subscription-without-losing-your-credits.html"><![CDATA[<p><img src="/blog/assets/img/audible/pause-audible.png" alt="How to pause your Audible subscription" />
I love Audible.</p>

<p>It’s a fantastic way to absorb books. A few years ago I had a daily cycle commute across Copenhagen which meant I was cycling for almost an hour every day. During this time Audible helped me use this time to devour books.</p>

<p>However since then I’ve moved apartments and jobs. I still find Audible valuable, I just can’t get through audiobooks in the way that I used to. I’ve often found my Audible credits are building up faster than I can get through audiobooks.</p>

<blockquote>
  <p><strong>Updated October 2026:</strong> Audible has changed a lot since I first wrote this post in 2020, so I’ve rewritten it. Pausing is now much easier, and Audible UK has changed how credits work.</p>
</blockquote>

<p>When I first wrote this post, there was one thing I didn’t like about Audible: the dark patterns it used to keep people from leaving. In fact I’d argue they were downright nefarious. The option to pause was buried at the very end of the cancellation process, and at every step Audible’s design did its best to obscure your choices. You were repeatedly told that if you cancelled, you’d lose your valuable credits. You can see what it looked like <a href="#how-it-used-to-work">further down</a>.</p>

<p>The good news is that Audible has since moved the pause option somewhere you can actually find it. There’s now a <strong>Pause membership</strong> link on your account page, and you can pause in the Audible app too. You don’t need to go anywhere near the cancellation process.</p>

<h3 id="how-to-pause">How to pause your Audible membership</h3>
<h4 id="on-the-audible-website">On the Audible website</h4>
<ol>
  <li>Sign in to your Audible account.</li>
  <li>Select your name at the top of the page, then choose <strong>Account details</strong>. On some Audible sites, including audible.com, this is called <strong>Membership details</strong>.</li>
  <li>Select <strong>Pause membership</strong>.</li>
  <li>If you’re asked how long to pause for, choose 30, 60 or 90 days. Then select <strong>Pause membership</strong> again to confirm.</li>
</ol>

<h4 id="in-the-audible-app">In the Audible app</h4>
<ol>
  <li>Go to your <strong>Profile</strong>, open the <strong>Membership</strong> tab and select <strong>Manage</strong>.</li>
  <li>Select <strong>Pause membership</strong> and choose 30, 60 or 90 days.</li>
  <li>Confirm the pause.</li>
</ol>

<p>That’s it. While your membership is paused you won’t be charged and you won’t get any new credits, but you can still spend the credits you have and listen to everything you own.</p>

<p>If you change your mind, you can resume at any time. On the website, select <strong>Resume membership</strong> in your account details. In the app, go to <strong>Profile</strong>, then <strong>Account</strong>, then <strong>Resume membership</strong>. Payments start again from your next billing date.</p>

<h3 id="before-you-pause">Things to know before you pause</h3>
<ul>
  <li><strong>You can pause for up to 90 days.</strong> In the UK you can pause once every 12 months, and the 12 months start from the day your membership resumes. In the US you get up to 90 paused days in any 12 months, which you can split across up to three pauses.</li>
  <li><strong>You need to have paid for at least 30 days.</strong> If you’re still on your free trial, you can pause the trial for 30 days instead, which extends it. In the UK, you’ll find this option behind the <strong>Cancel membership</strong> link.</li>
  <li><strong>Annual plans can’t be paused.</strong> More on that <a href="#annual-plans">below</a>.</li>
  <li><strong>You’ll lose access to the Plus Catalogue</strong>, the audiobooks and podcasts included with your membership, until you resume. Anything you’ve bought with a credit or cash stays in your library.</li>
  <li><strong>On the cheaper Standard plan</strong>, you won’t get a new monthly title while you’re paused, and the titles you’ve already picked are locked until you resume.</li>
  <li><strong>If you pay through Apple’s App Store or Google Play</strong>, different rules apply. In the UK, your pause starts from your next billing date. In some countries, including Canada, you can’t pause at all.</li>
</ul>

<p>The rules vary a little from country to country, so if you’re not sure, check Audible’s help page for your country, for example <a href="https://help.audible.co.uk/s/article/pause-your-membership" target="_blank">Audible UK</a> or <a href="https://help.audible.com/s/article/pause-your-membership" target="_blank">Audible US</a>.</p>

<h3 id="credits">What happens to your credits?</h3>
<p>This is the part that has changed the most since 2020.</p>

<p><strong>In the UK</strong>, Audible credits no longer expire after 12 months. Instead, there’s a limit to how many you can save up. On the one-credit-a-month plan it’s 6 credits, or 12 if you get two credits a month. If you’re already at the limit when your next payment goes through, you lose a credit, so you end up paying for a credit you can’t keep. If your credits are piling up, that’s the perfect time to pause.</p>

<p><strong>In the US and Canada</strong>, credits still expire 12 months after they’re issued, and pausing doesn’t stop the clock. If you have credits that are close to expiring, make sure you spend them.</p>

<p><strong>Wherever you are</strong>, if you cancel your membership, you lose any credits you haven’t spent. Anything you’ve already bought with your credits stays in your library, even after you cancel.</p>

<h3 id="annual-plans">What about annual Audible plans?</h3>
<p>If you have an annual Audible plan, you won’t be able to pause your membership. This is because you’ve effectively paid for the whole year upfront. However you can cancel your membership and you’ll still be able to keep and access any audiobooks in your library, even without a membership. Just make sure you spend your credits before you cancel, as you’ll lose any you haven’t used.</p>

<h3 id="how-it-used-to-work">How pausing used to work</h3>
<p>For the record, here’s what pausing Audible looked like in 2020. Please don’t follow these steps today. Use the <strong>Pause membership</strong> link instead.</p>

<p>Back then there was no pause link. Instead, you had to select <strong>Cancel membership</strong> and work your way through Audible’s cancellation process. The first page warned that if you cancelled, you’d lose your credits. Your credits were still perfectly safe at this point, but the page was designed to make you think twice.</p>

<p><img src="/blog/assets/img/audible/pause-audible-step-3.png" alt="Audible's cancellation page in 2020, warning that you'll lose your credits if you cancel" /></p>

<p>Next came a survey asking why you were cancelling, with a <strong>Cancel Membership</strong> button that felt very final.</p>

<p><img src="/blog/assets/img/audible/pause-audible-step-4.png" alt="Audible's cancellation survey in 2020" /></p>

<p>Only then, on the very last page, were you finally offered the option to pause, alongside a couple of offers to tempt you to stay.</p>

<p><img src="/blog/assets/img/audible/pause-audible-step-5-the-options.png" alt="The pause option at the end of Audible's cancellation process in 2020" /></p>

<h3 id="looking-for-a-way-to-use-up-your-spare-credits">Looking for a way to use up your spare credits?</h3>
<p>If you have a few credits to use up and would like some book recommendations, these are some books I’ve thoroughly enjoyed on Audible:</p>
<ul>
  <li><a href="https://www.audible.co.uk/pd/Good-Strategy-Bad-Strategy-Audiobook/0593162927" target="_blank">Good Strategy Bad Strategy by Richard Rumelt</a></li>
  <li><a href="https://www.audible.co.uk/pd/Putin-Prisoner-of-Power-Audiobook/B07W4WVNXK" target="_blank">Putin: Prisoner of Power by Misha Glenny</a> (free for members, so it won’t use a credit)</li>
  <li><a href="https://www.audible.co.uk/pd/Alchemy-Audiobook/1473566800" target="_blank">Alchemy: The Surprising Power of Ideas That Don’t Make Sense by Rory Sutherland</a></li>
  <li><a href="https://www.audible.co.uk/pd/Atomic-Habits-Audiobook/1473565421" target="_blank">Atomic Habits by James Clear</a></li>
  <li><a href="https://www.audible.co.uk/pd/The-Design-of-Everyday-Things-Audiobook/B07L5RH9LZ" target="_blank">The Design of Everyday Things: Revised and Expanded Edition by Don Norman</a></li>
  <li><a href="https://www.audible.co.uk/pd/At-Home-A-Short-History-of-Private-Life-Audiobook/B004FTITV4" target="_blank">At Home: A Short History of Private Life by Bill Bryson</a></li>
  <li><a href="https://www.audible.co.uk/pd/Build-Audiobook/B09MSBVCYL" target="_blank">Build: An Unorthodox Guide to Making Things Worth Making by Tony Fadell</a></li>
</ul>]]></content><author><name></name></author><category term="Audible" /><category term="Dark patterns" /><category term="life hacks" /><summary type="html"><![CDATA[How to pause your Audible membership on the website or in the app, how long you can pause for, and what happens to your credits. Updated for 2026.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/audible/pause-audible.png" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/audible/pause-audible.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Recreating an Apple event invite in Figma</title><link href="https://www.andrewdenty.com/blog/2020/10/07/reverse-engineering-apple-event-graphics.html" rel="alternate" type="text/html" title="Recreating an Apple event invite in Figma" /><published>2020-10-07T19:06:00+00:00</published><updated>2020-10-07T19:06:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/10/07/reverse-engineering-apple-event-graphics</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/10/07/reverse-engineering-apple-event-graphics.html"><![CDATA[<p><img src="/blog/assets/img/apple-event-reverse-engineered.jpg" alt="Recreating an Apple event invite in Figma" /></p>

<p>This week as a side project I decided to recreate this year’s October Apple event invite in Figma.</p>

<h3 id="why-do-this">Why do this?</h3>

<p>Every Apple event has its own particular style with beautifully crafted graphics specific to that event. This October’s event was announced yesterday with an invite including almost luminous overlapping circles. Personally, this is one of my favourites; it reminds me of looking up into a <a href="https://www.louispoulsen.com/en/catalog/private/pendants/ph-5?v=90293-5741099812-01&amp;t=about" target="_blank">Louis Poulsen PH5 lamp</a> . This got me wondering what the actual inspiration was, and how it was created.</p>

<p>I then decided to have a go at recreating it this as one area I’d like to improve my skills is in creating illustrations. Most of my work is creating web pages and user interfaces, but rarely do I try something a little more whimsical.</p>

<h3 id="why-figma">Why Figma?</h3>
<p>Yep, I know Figma is absolutely the wrong tool to use for this task, but I really love how versatile Figma is, and I’m pretty comfortable using it as I use it for pretty much everything from flow charts to high fidelity interface mock-ups at work.</p>

<p>I wasn’t sure how to get started, but through the process of trial and error I’ve created a reasonably realistic knock-off of Apple’s original. Apple, please don’t sue me :-)</p>

<p>If you’re interested you’re more than welcome to take a look at the original in Figma. I’d love to know how it could be improved - there are certainly some areas where the lighting effects are not quite right.</p>

<p><a href="/blog/assets/img/apple-invite-comparison.png"><img src="/blog/assets/img/apple-invite-comparison.png" alt="Comparison of the Apple event invite and my Figma recreation" /></a></p>

<p><a href="https://www.figma.com/file/L2QZKwroB6UutnUPI1SbP8/Apple-Kata?node-id=0%3A1" target="_blank">View or fork the project in Figma</a></p>

<p>Let me know in the comments if you have any suggestions or tips for ways of improving it.</p>]]></content><author><name></name></author><category term="Graphic Design" /><category term="Figma" /><category term="Apple" /><category term="Visual design" /><summary type="html"><![CDATA[A side project recreating the glowing, overlapping circles of Apple's October 2020 event invite in Figma: why I tried it, how it compares, and a file to fork.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/apple-event-reverse-engineered.jpg" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/apple-event-reverse-engineered.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">How to design for the almost offline edge case</title><link href="https://www.andrewdenty.com/blog/2020/08/02/how-to-design-for-the-almost-offline-edge-case.html" rel="alternate" type="text/html" title="How to design for the almost offline edge case" /><published>2020-08-02T12:02:00+00:00</published><updated>2020-08-02T12:02:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/08/02/how-to-design-for-the-almost-offline-edge-case</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/08/02/how-to-design-for-the-almost-offline-edge-case.html"><![CDATA[<p><img src="/blog/assets/img/almost-offline-edge-case-design.png" alt="Almost offline edge case design" /></p>

<p>Here’s a lesson on designing for edge cases that I learned while travelling around Greece this summer.</p>

<p>We were lucky enough to be able to hike in the northern mountainous region of <a href="https://www.parttimebackpacker.com/blog/2016/6/27/zagoria-greeces-hidden-wilderness" target="_blank">Zagoria</a> and then spend some time on the island of the Milos where we mostly ate too much and sat on the beach. Either way, this post is not about my holiday, but about a usability edge case that it exposed me to…</p>

<p>Most of the islands and remote areas in Greece have very patchy reception. For the most part, seeing ‘3G’ on your phone essentially means no data, and ‘4G’ means slow, unreliable data. Eventually, you may be able to load a light web page, but this is mostly going to be a torturous experience.</p>

<p>Luckily before we travelled, I downloaded everything I would need. Mostly audiobooks, maps podcasts and music. Accessing content with limited internet connectivity has clearly been considered by most app developers. Or so I thought…</p>

<p>In reality, it turns out the way many app developers are approaching cached and offline content is broken.</p>

<p>For example, Google maps when opened in an area with crappy internet connectivity does not display the cached (or manually downloaded) map content, but instead displays a super, low-resolution version of the map. I assume this is because it is attempting to download a full resolution, up to date version of the content. While it’s good to show up to date information such as traffic, in a case where I needed to quickly glance at a map waiting for Google Maps to repeatedly attempt to access a map from Google’s servers which already exists on my device is the absolute worse experience.</p>

<p><img src="/blog/assets/img/where-am-i.png" alt="Where am I?(/blog/assets/img/where-am-i.png)" /></p>

<p>In many instances, the only way I could get Google Maps to work was by switching to Flight Mode in order to force the app to use downloaded maps.</p>

<p>This isn’t an isolated instance. For example, Audible exhibits the same behaviour. Before playing a downloaded audiobook the app first attempts to connect to Audible - possibly to check if there’s an updated play location. If the app can’t connect to Audible it will either show an error message stating the download content is corrupt (a bug?), or simply just not play the content. Again, the only workaround seems to be to briefly enter Flight Mode and be truly offline</p>

<p><a href="/blog/assets/img/where-is-my-book.png"><img src="/blog/assets/img/where-is-my-book.png" alt="Where is my book?" /></a></p>

<p>Obviously, not all apps are this bad at handling flaky connections. Spotify for example reliably allows access to and plays downloaded content immediately on an unreliable connection. Netflix also mostly gets this right provided you launch downloaded content from the downloads view in the iOS app.</p>

<p>I think many of these issues could be avoided if when designing new functionality, we as designers spend a little more time considering the edge cases. For example, offline usage, take the time to really understand all of the situations your users will be in when using your product.</p>

<p>In practice, this means broadening the definition of “offline” to include crappy internet connections. The reason the user downloaded is likely because they knew they would have limited internet access, or possibly wanted to reduce their data usage. In this case, prioritise offline content until a working connection can be established. If the content is downloaded, let the user use it.</p>]]></content><author><name></name></author><category term="Interaction design" /><category term="Usability" /><category term="Edge case design" /><category term="Visual design" /><summary type="html"><![CDATA[Patchy signal on holiday in Greece showed how Google Maps and Audible struggle with downloaded content. Why designers should treat a weak connection as offline.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/almost-offline-edge-case-design.png" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/almost-offline-edge-case-design.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Why macOS Big Sur is flatter than ever</title><link href="https://www.andrewdenty.com/blog/2020/07/10/why-macos-big-sur-is-flatter-than-ever.html" rel="alternate" type="text/html" title="Why macOS Big Sur is flatter than ever" /><published>2020-07-10T19:51:00+00:00</published><updated>2020-07-10T19:51:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/07/10/why-macos-big-sur-is-flatter-than-ever</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/07/10/why-macos-big-sur-is-flatter-than-ever.html"><![CDATA[<p><img src="/blog/assets/img/why-macos-big-sur-is-flatter-than-ever.png" alt="Catalina vs Big Sur" /></p>

<p>Forget skeuomorphism, or even the newly coined neumorphism.</p>

<p>macOS Big Sur is flatter than ever.</p>

<p>In the last few weeks there have been a lot of suggestions that this is the start of a <a href="https://applypixels.com/blog/comeback" target="_blank">new “fun” era of visual design</a> and that Apple is returning to skeuomorphism, or even a new thing called <a href="https://www.inputmag.com/design/apple-macos-big-sur-the-rise-of-neumorphism" target="_blank">neumorphism</a>. Neumorphism is a design trend that focuses on creating an impression of a realistic 3D environment using shadow and lighting effects.</p>

<p>The times may well be changing, but in my view we are not returning to an age of textured writing paper and 
stitched leather. This is why.</p>

<h3 id="icons-icons-icons">Icons, icons, icons</h3>

<p>Since the unveiling of macOS Big Sur a lot has been made of its new iOS shaped icon set. Everyone seems to either love or hate the new icons.</p>

<p><a href="/blog/assets/img/macos-flat/macos-big-sur-icons.jpg"><img src="/blog/assets/img/macos-flat/macos-big-sur-icons.jpg" alt="macOS Big Sur icons" /></a></p>

<p>Don’t be mislead by the icons - macOS icons have always been richer and more detailed than iOS icons. They have also used shadows and to create a sense of depth. In my view desktop interfaces are often more detailed as desktop users tend to use them for longer periods of undistracted time compared to mobile devices. Therefore adding more detail and richness is appropriate. In short, for as long as technology has allowed, macOS icons have been rich, detailed and realistic looking. Here are a selection of macOS Catalina’s icons to illustrate this:</p>

<p><a href="/blog/assets/img/macos-flat/depth-in-macos-catalina.png"><img src="/blog/assets/img/macos-flat/depth-in-macos-catalina.png" alt="Detailed macOS Catalina icons" /></a></p>

<p>The new icon set in Big Sur is simply a convergence of the existing highly detailed macOS icons with the consistent shape of iOS icons. During the WWDC 20 keynote, Alan Dye, Apples VP of Human Interface explained the rationale behind the new icons:</p>

<blockquote>
  <p>“We wanted consistency throughout the ecosystem so users can move fluidly between their Apple devices, but we also love that Mac icons have a deep history and a distinct look and feel. So we retained many of the highly crafted details and th playful elements that make Mac icons unique”</p>
</blockquote>

<p>It’s also worth remembering that in many places the icons in macOS are simpler than before as Apple is porting its unified language of symbols from iOS. This means that in many places, existing detailed icons have become simple, monochrome 2D icons.</p>

<p><a href="/blog/assets/img/macos-new-ui/apple-music-podcasts/5-podcasts-preferences-macos-catalina-big-sur-comparison.png"><img src="/blog/assets/img/macos-new-ui/apple-music-podcasts/5-podcasts-preferences-macos-catalina-big-sur-comparison.png" alt="Icons in Podcast app's preferences" /></a></p>

<h3 id="big-sur-is-flatter-than-ever">Big Sur is flatter than ever</h3>

<p>This may surprise a few people, but if you look at the user interfaces in macOS Big Sur and compare it to the current release Catalina you won’t see richer shading and detailing. Also, while macOS Big Sur uses transparency, and shadows to create the impression of layers in the UI, this isn’t a new thing for macOS.</p>

<p>Actually, you’ll see a lot of the detail, texture and shadows have been removed. As a whole, macOS Big Sur’s interface is cleaner and more minimalist than ever. One of the aspects I’ve noticed most is there tends to be less contrast between UI elements. Apple has also completely dropped the aluminium inspired window chromes which can be traced back to Quicktime in the 1990s.</p>

<p><a href="/blog/assets/img/macos-flat/finder-toolbar-comparison.png"><img src="/blog/assets/img/macos-flat/finder-toolbar-comparison.png" alt="Comparison of Finder toolbars between macOS Catalina and Big Sur" /></a></p>

<p>Take for example the notes app. The faux-paper texture has finally been completely removed. The toolbar buttons no longer have containers and there is no background separator between the toolbar and writing area.</p>

<p><a href="/blog/assets/img/macos-flat/notes-compared.png"><img src="/blog/assets/img/macos-flat/notes-compared.png" alt="Comparison of Notes app between macOS Catalina and Big Sur" /></a></p>

<h3 id="if-anything-the-design-trend-is-convergence-with-ios">If anything the design trend is convergence with iOS</h3>
<p>This is not a new paradigm in visual design, but a shift towards unification between platforms. There is increasingly less separation between iOS and macOS. Both in hardware with Apple’s switch to an all ARM architecture and software where iPhones and iPads can now do many of the tasks once reserved for desktop computing.</p>

<p>In many ways the interface changes in macOS Big Sur reflect this transition. The iOS glyph icon set, the removal of distinct buttons and increasingly rounded corners. Apple has clearly been asking why interface elements on an iPad and a Mac should look different, and come to the conclusion there’s no longer a good reason for this.</p>

<p>On the topic of conversion, one interesting question will be how much further this transition goes. Can we expect to see touch enabled laptops? Dual booting iPads? iPhones with docking stations?</p>

<h3 id="but-what-about-fun-design---isnt-that-coming-back">But what about fun design - isn’t that coming back?</h3>

<p>As a designer I’ve often found the trend towards flat, minimalist design frustrating. I pretty much always have an urge to add little embellishments or extra layers to work. I then subsequently almost always end up removing them. Either due to what I’ve learned when testing the design with users, or just realising that these extra details often end up detracting from the bigger picture.</p>

<p>This doesn’t mean there’s no value in intricate detailing. If you are a designer and you can inject a fun details into your work in a way which delights and enriches your users lives then I implore you to do this. I just don’t think that macOS Big Sur is the signal we’ve all been waiting for to bring out those shadows, textures and bevels.</p>]]></content><author><name></name></author><category term="Apple" /><category term="macOS" /><category term="Catalina" /><category term="Big Sur" /><category term="UI" /><category term="Interaction design" /><category term="Visual design" /><summary type="html"><![CDATA[Despite talk of skeuomorphism and neumorphism making a comeback, macOS Big Sur is flatter than ever. Why its new look is really about converging with iOS.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/why-macos-big-sur-is-flatter-than-ever.png" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/why-macos-big-sur-is-flatter-than-ever.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">A visual comparison of macOS Catalina and Big Sur</title><link href="https://www.andrewdenty.com/blog/2020/07/01/a-visual-comparison-of-macos-catalina-and-big-sur.html" rel="alternate" type="text/html" title="A visual comparison of macOS Catalina and Big Sur" /><published>2020-07-01T16:01:00+00:00</published><updated>2020-07-01T16:01:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/07/01/a-visual-comparison-of-macos-catalina-and-big-sur</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/07/01/a-visual-comparison-of-macos-catalina-and-big-sur.html"><![CDATA[<p><img src="/blog/assets/img/catalina-vs-big-sur.jpg" alt="Catalina vs Big Sur" />
This post is an attempt to provide a visual comparison of pretty dramatic UI changes between macOS Catalina and Big Sur.</p>

<p>Why did I end up doing this? Well, this week I installed the developer beta of macOS Big Sur as I was curious what impact the new UI would have on the <a href="https://www.andrewdenty.com/airtame-desktop-app.html">app I currently design</a>. I wanted to make sure my team was ahead of any coming changes as we were burned by changes in last year’s release of Catalina.</p>

<p>I found myself taking lots of screenshots to try and track the changes and thought this might be worth sharing. I decided to carry out a quick catalogue of the UI changes as this may be helpful to other people getting ready for macOS Big Sur.</p>

<p>All of the screenshots below are taken on a default install of macOS and the Catalina version is always on the left. I made a conscious effort not to resize any windows or change any default settings. I haven’t captured everything, but it is a good taste of the changes so far.</p>

<h2 id="first-impressions">First impressions</h2>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/general/about-macos-macos-catalina-big-sur-comparison.png" title="about-macos-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/general/about-macos-macos-catalina-big-sur-comparison.png" alt="about-macos-macos-catalina-big-sur-comparison" title="about-macos-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/general/desktop-macos-catalina-big-sur-comparison.jpg" title="desktop-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/general/desktop-macos-catalina-big-sur-comparison.jpg" alt="desktop-macos-catalina-big-sur-comparison" title="desktop-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/general/launchpad-macos-catalina-big-sur-comparison.jpg" title="launchpad-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/general/launchpad-macos-catalina-big-sur-comparison.jpg" alt="launchpad-macos-catalina-big-sur-comparison" title="launchpad-macos-catalina-big-sur-comparison" /></a></li></ul>

<p>At first glance macOS is a lot more colourful with, and the biggest obvious change is the bright, slightly more cartoonish iOS shaped icons. Everything is more rounded and it feels like everything has gotten a little bigger. Could this be the first hint that macOS is preparing for touch support in the future? One interesting tidbit, is that even though the icons are based around the capsule shape, many of them (like Contacts, or Preview) have elements which protrude from them giving an extra feeling of depth.</p>

<h2 id="finder-and-preview">Finder and Preview</h2>
<p>Finder sees some significant changes. Of all the places I think Apple needs to get the new UI spot on, is Finder. Overall the default size of Finder seems to be bigger in macOS Big Sur.</p>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/finder/1-finder-utilities-macos-catalina-big-sur-comparison.png" title="1-finder-utilities-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/finder/1-finder-utilities-macos-catalina-big-sur-comparison.png" alt="1-finder-utilities-macos-catalina-big-sur-comparison" title="1-finder-utilities-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/finder/2-finder-gallery-view-macos-catalina-big-sur-comparison.png" title="2-finder-gallery-view-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/finder/2-finder-gallery-view-macos-catalina-big-sur-comparison.png" alt="2-finder-gallery-view-macos-catalina-big-sur-comparison" title="2-finder-gallery-view-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/finder/3-finder-advanced-options-macos-catalina-big-sur-comparison.png" title="3-finder-advanced-options-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/finder/3-finder-advanced-options-macos-catalina-big-sur-comparison.png" alt="3-finder-advanced-options-macos-catalina-big-sur-comparison" title="3-finder-advanced-options-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/finder/4-finder-search-macos-catalina-big-sur-comparison.png" title="4-finder-search-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/finder/4-finder-search-macos-catalina-big-sur-comparison.png" alt="4-finder-search-macos-catalina-big-sur-comparison" title="4-finder-search-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/finder/5-preview-macos-catalina-big-sur-comparison.png" title="5-preview-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/finder/5-preview-macos-catalina-big-sur-comparison.png" alt="5-preview-macos-catalina-big-sur-comparison" title="5-preview-macos-catalina-big-sur-comparison" /></a></li></ul>

<p>One thing that struck me at this point is that Finder looks a mess with many of the more advanced features enabled. The bottom screenshot shows Finder with a Path Bar, Status Bar and multiple tabs. To me, it seems like the design team have not yet been able to find a way to elegantly integrate these elements into the iOS inspired UI.</p>

<p>One final thing to note is that in Finder the search bar at the top right has been replaced with a search icon that expands when clicked. This change seems a little inconsistent as it’s not made it to Preview. I can guarantee this will result in fewer people discovering Finder’s Spotlight search goodness.</p>

<h2 id="preferences">Preferences</h2>
<p>Preferences sees quite a lot of change in some areas.
The Dock preferences pane has become “Dock and Menu Bar” and now integrates controls for the new macOS control center. It uses a nicely integrated sidebar to manage different categories.</p>

<p>It’s a shame that this sidebar hasn’t yet made it to other parts of the preferences UI with Network and Notifications still using a very old looking sidebar.</p>

<p>One aspect of preferences that has been quite controversial (on Twitter at least) is the new icons. I’m going to hold off judgement for now as they don’t yet look finished. For example, the Notifications icon does not even support retina displays.</p>

<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/preferences/1-preferences-macos-catalina-big-sur-comparison.png" title="1-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/preferences/1-preferences-macos-catalina-big-sur-comparison.png" alt="1-preferences-macos-catalina-big-sur-comparison" title="1-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/preferences/2-dock-preferences-macos-catalina-big-sur-comparison.png" title="2-dock-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/preferences/2-dock-preferences-macos-catalina-big-sur-comparison.png" alt="2-dock-preferences-macos-catalina-big-sur-comparison" title="2-dock-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/preferences/3-network-preferences-macos-catalina-big-sur-comparison.png" title="3-network-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/preferences/3-network-preferences-macos-catalina-big-sur-comparison.png" alt="3-network-preferences-macos-catalina-big-sur-comparison" title="3-network-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/preferences/4-notification-preferences-macos-catalina-big-sur-comparison.png" title="4-notification-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/preferences/4-notification-preferences-macos-catalina-big-sur-comparison.png" alt="4-notification-preferences-macos-catalina-big-sur-comparison" title="4-notification-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/preferences/5-preferences-general-macos-catalina-big-sur-comparison.png" title="5-preferences-general-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/preferences/5-preferences-general-macos-catalina-big-sur-comparison.png" alt="5-preferences-general-macos-catalina-big-sur-comparison" title="5-preferences-general-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/preferences/6-power-preferences-macos-catalina-big-sur-comparison.png" title="6-power-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/preferences/6-power-preferences-macos-catalina-big-sur-comparison.png" alt="6-power-preferences-macos-catalina-big-sur-comparison" title="6-power-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/preferences/7-preferences-startup-disk-dialog-macos-catalina-big-sur-comparison.png" title="7-preferences-startup-disk-dialog-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/preferences/7-preferences-startup-disk-dialog-macos-catalina-big-sur-comparison.png" alt="7-preferences-startup-disk-dialog-macos-catalina-big-sur-comparison" title="7-preferences-startup-disk-dialog-macos-catalina-big-sur-comparison" /></a></li></ul>

<p>You’ll notice that the Startup Disk pane uses apples new dialog (or sheet) UI. This is quite a departure from the existing sheet drop-down - it feels much more iOS-like.</p>

<h2 id="menu-bar-and-notification-center">Menu Bar and Notification Center</h2>
<p>This is one of the areas where macOS has changed the most. It’s also difficult to take decent screenshots of  both of these. Control Center looks like it’s been badly photocopied and the Notification Center in Catalina has a bug whereby it renders at double it’s normal width.</p>

<p>What was obvious within a few minutes of use was that the Control Center is a massive improvement on Catalina’s row of scattered Menu bar icons. The updated WiFi menu is also a massive improvement, as the old list could easily be overwhelming with the number of WiFi networks displayed.</p>

<p>I’m less convinced that the Notification Center is easier to use though. Now it has no background, there is less to separate a list of notifications from my messy desktop!</p>

<p>I will try and get better screenshots for this section and update it in the near future.</p>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/menubar-and-notification-center/0-menu-bar.png" title="0-menu-bar"><img src="/blog/assets/img/macos-new-ui/menubar-and-notification-center/0-menu-bar.png" alt="0-menu-bar" title="0-menu-bar" /></a></li><li><a href="/blog/assets/img/macos-new-ui/menubar-and-notification-center/1-notification-center-macos-catalina-big-sur-comparison.png" title="1-notification-center-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/menubar-and-notification-center/1-notification-center-macos-catalina-big-sur-comparison.png" alt="1-notification-center-macos-catalina-big-sur-comparison" title="1-notification-center-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/menubar-and-notification-center/2-wifi-menu-macos-catalina-big-sur-comparison.png" title="2-wifi-menu-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/menubar-and-notification-center/2-wifi-menu-macos-catalina-big-sur-comparison.png" alt="2-wifi-menu-macos-catalina-big-sur-comparison" title="2-wifi-menu-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/menubar-and-notification-center/3-control-center-macos-catalina-big-sur-comparison.png" title="3-control-center-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/menubar-and-notification-center/3-control-center-macos-catalina-big-sur-comparison.png" alt="3-control-center-macos-catalina-big-sur-comparison" title="3-control-center-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/menubar-and-notification-center/apple-menu-macos-catalina-big-sur-comparison.jpg" title="apple-menu-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/menubar-and-notification-center/apple-menu-macos-catalina-big-sur-comparison.jpg" alt="apple-menu-macos-catalina-big-sur-comparison" title="apple-menu-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="safari">Safari</h2>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/safari/safari-first-run-macos-catalina-big-sur-comparison.png" title="safari-first-run-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/safari/safari-first-run-macos-catalina-big-sur-comparison.png" alt="safari-first-run-macos-catalina-big-sur-comparison" title="safari-first-run-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/safari/safari-preferences-macos-catalina-big-sur-comparison.png" title="safari-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/safari/safari-preferences-macos-catalina-big-sur-comparison.png" alt="safari-preferences-macos-catalina-big-sur-comparison" title="safari-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/safari/safari-tab-overview-macos-catalina-big-sur-comparison.png" title="safari-tab-overview-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/safari/safari-tab-overview-macos-catalina-big-sur-comparison.png" alt="safari-tab-overview-macos-catalina-big-sur-comparison" title="safari-tab-overview-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="calendar-and-contacts">Calendar and Contacts</h2>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/calendar/calendar-day-dark-mode-macos-catalina-big-sur-comparison.png" title="calendar-day-dark-mode-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/calendar/calendar-day-dark-mode-macos-catalina-big-sur-comparison.png" alt="calendar-day-dark-mode-macos-catalina-big-sur-comparison" title="calendar-day-dark-mode-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/calendar/calendar-first-launch-macos-catalina-big-sur-comparison.png" title="calendar-first-launch-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/calendar/calendar-first-launch-macos-catalina-big-sur-comparison.png" alt="calendar-first-launch-macos-catalina-big-sur-comparison" title="calendar-first-launch-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/calendar/calendar-month-view-macos-catalina-big-sur-comparison.png" title="calendar-month-view-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/calendar/calendar-month-view-macos-catalina-big-sur-comparison.png" alt="calendar-month-view-macos-catalina-big-sur-comparison" title="calendar-month-view-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/calendar/contacts-macos-catalina-big-sur-comparison.png" title="contacts-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/calendar/contacts-macos-catalina-big-sur-comparison.png" alt="contacts-macos-catalina-big-sur-comparison" title="contacts-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="reminders">Reminders</h2>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/reminders/reminders-create-reminder-macos-catalina-big-sur-comparison.png" title="reminders-create-reminder-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/reminders/reminders-create-reminder-macos-catalina-big-sur-comparison.png" alt="reminders-create-reminder-macos-catalina-big-sur-comparison" title="reminders-create-reminder-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/reminders/reminders-first-launch-macos-catalina-big-sur-comparison.png" title="reminders-first-launch-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/reminders/reminders-first-launch-macos-catalina-big-sur-comparison.png" alt="reminders-first-launch-macos-catalina-big-sur-comparison" title="reminders-first-launch-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="notes">Notes</h2>
<p>The biggest news in Notes is that after years, the Skeuomorphic paper texture has finally been retired!</p>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/notes/0-notes-first-launch-macos-catalina-big-sur-comparison.png" title="0-notes-first-launch-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/notes/0-notes-first-launch-macos-catalina-big-sur-comparison.png" alt="0-notes-first-launch-macos-catalina-big-sur-comparison" title="0-notes-first-launch-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/notes/1-notes-icloud-macos-catalina-big-sur-comparison.png" title="1-notes-icloud-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/notes/1-notes-icloud-macos-catalina-big-sur-comparison.png" alt="1-notes-icloud-macos-catalina-big-sur-comparison" title="1-notes-icloud-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/notes/2-notes-light-mode-macos-catalina-big-sur-comparison.jpg" title="2-notes-light-mode-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/notes/2-notes-light-mode-macos-catalina-big-sur-comparison.jpg" alt="2-notes-light-mode-macos-catalina-big-sur-comparison" title="2-notes-light-mode-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/notes/3-notes-dark-mode-macos-catalina-big-sur-comparison.jpg" title="3-notes-dark-mode-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/notes/3-notes-dark-mode-macos-catalina-big-sur-comparison.jpg" alt="3-notes-dark-mode-macos-catalina-big-sur-comparison" title="3-notes-dark-mode-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="photos">Photos</h2>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/photos/1-photos-about-macos-catalina-big-sur-comparison.png" title="1-photos-about-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/photos/1-photos-about-macos-catalina-big-sur-comparison.png" alt="1-photos-about-macos-catalina-big-sur-comparison" title="1-photos-about-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/photos/2-photos-first-launch-macos-catalina-big-sur-comparison.png" title="2-photos-first-launch-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/photos/2-photos-first-launch-macos-catalina-big-sur-comparison.png" alt="2-photos-first-launch-macos-catalina-big-sur-comparison" title="2-photos-first-launch-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/photos/3-photos-days-view-macos-catalina-big-sur-comparison.png" title="3-photos-days-view-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/photos/3-photos-days-view-macos-catalina-big-sur-comparison.png" alt="3-photos-days-view-macos-catalina-big-sur-comparison" title="3-photos-days-view-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/photos/4-photos-single-image-macos-catalina-big-sur-comparison.png" title="4-photos-single-image-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/photos/4-photos-single-image-macos-catalina-big-sur-comparison.png" alt="4-photos-single-image-macos-catalina-big-sur-comparison" title="4-photos-single-image-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="apple-music-and-podcasts">Apple Music and Podcasts</h2>
<p>Music and Podcasts were brand new last year with the release of Catalina. It’s obvious that the new UI has been planned for a while as Apple Music and Podcasts are mostly indistinguishable from their initial Catalina release. For example both apps already include the new full height sidebar.</p>

<p>For me this illustrates a bigger point that <a href="https://twitter.com/stevesi/status/1275311056672325633" target="_blank">Steven Sinofsky recently made on Twitter</a> - that Apple is executing a meticulous multi-year strategy.</p>

<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/apple-music-podcasts/1-podcasts-first-launch-macos-catalina-big-sur-comparison.png" title="1-podcasts-first-launch-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/apple-music-podcasts/1-podcasts-first-launch-macos-catalina-big-sur-comparison.png" alt="1-podcasts-first-launch-macos-catalina-big-sur-comparison" title="1-podcasts-first-launch-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/apple-music-podcasts/2-podcasts-macos-catalina-big-sur-comparison.png" title="2-podcasts-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/apple-music-podcasts/2-podcasts-macos-catalina-big-sur-comparison.png" alt="2-podcasts-macos-catalina-big-sur-comparison" title="2-podcasts-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/apple-music-podcasts/3-apple-music-radio-macos-catalina-big-sur-comparison.png" title="3-apple-music-radio-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/apple-music-podcasts/3-apple-music-radio-macos-catalina-big-sur-comparison.png" alt="3-apple-music-radio-macos-catalina-big-sur-comparison" title="3-apple-music-radio-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/apple-music-podcasts/4-apple-music-preferences-macos-catalina-big-sur-comparison.png" title="4-apple-music-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/apple-music-podcasts/4-apple-music-preferences-macos-catalina-big-sur-comparison.png" alt="4-apple-music-preferences-macos-catalina-big-sur-comparison" title="4-apple-music-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/apple-music-podcasts/5-podcasts-preferences-macos-catalina-big-sur-comparison.png" title="5-podcasts-preferences-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/apple-music-podcasts/5-podcasts-preferences-macos-catalina-big-sur-comparison.png" alt="5-podcasts-preferences-macos-catalina-big-sur-comparison" title="5-podcasts-preferences-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/apple-music-podcasts/music-playing-macos-catalina-big-sur-comparison.png" title="music-playing-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/apple-music-podcasts/music-playing-macos-catalina-big-sur-comparison.png" alt="music-playing-macos-catalina-big-sur-comparison" title="music-playing-macos-catalina-big-sur-comparison" /></a></li></ul>

<p>One area where changes are evident are is in preferences windows. Both apps make use of Apple’s new accent colour and new glyph icon library.</p>

<h2 id="other-bundled-apps">Other bundled apps</h2>
<p>It was impossible to go into depth with every single bundled app. On the whole, the updates to Maps, Books and Mail all look solid with extensive use of the new sidebar.</p>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/other-apps/app-store-macos-catalina-big-sur-comparison.png" title="app-store-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/app-store-macos-catalina-big-sur-comparison.png" alt="app-store-macos-catalina-big-sur-comparison" title="app-store-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/other-apps/apple-books-first-launch-macos-catalina-big-sur-comparison.png" title="apple-books-first-launch-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/apple-books-first-launch-macos-catalina-big-sur-comparison.png" alt="apple-books-first-launch-macos-catalina-big-sur-comparison" title="apple-books-first-launch-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/other-apps/apple-maps-macos-catalina-big-sur-comparison.png" title="apple-maps-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/apple-maps-macos-catalina-big-sur-comparison.png" alt="apple-maps-macos-catalina-big-sur-comparison" title="apple-maps-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/other-apps/apple-tv-macos-catalina-big-sur-comparison.png" title="apple-tv-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/apple-tv-macos-catalina-big-sur-comparison.png" alt="apple-tv-macos-catalina-big-sur-comparison" title="apple-tv-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/other-apps/books-store-macos-catalina-big-sur-comparison.jpg" title="books-store-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/books-store-macos-catalina-big-sur-comparison.jpg" alt="books-store-macos-catalina-big-sur-comparison" title="books-store-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/other-apps/dictionary-macos-catalina-big-sur-comparison.png" title="dictionary-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/dictionary-macos-catalina-big-sur-comparison.png" alt="dictionary-macos-catalina-big-sur-comparison" title="dictionary-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/other-apps/mail-first-launch-macos-catalina-big-sur-comparison.png" title="mail-first-launch-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/mail-first-launch-macos-catalina-big-sur-comparison.png" alt="mail-first-launch-macos-catalina-big-sur-comparison" title="mail-first-launch-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/other-apps/voice-memos-macos-catalina-big-sur-comparison.png" title="voice-memos-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/other-apps/voice-memos-macos-catalina-big-sur-comparison.png" alt="voice-memos-macos-catalina-big-sur-comparison" title="voice-memos-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="utilities">Utilities</h2>
<p>Both Activity Monitor and Disk Utility have received a new style toolbar. As with Finder, there are no longer any rows meaning all elements are at the same level. On first impressions, I feel this is a little visually confusing and makes it harder to scan. The search field also loses a lot of its contrast.</p>

<p>Unsurprisingly Terminal is almost unchanged.</p>

<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/utilities/activity-monitor-macos-catalina-big-sur-comparison.png" title="activity-monitor-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/utilities/activity-monitor-macos-catalina-big-sur-comparison.png" alt="activity-monitor-macos-catalina-big-sur-comparison" title="activity-monitor-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/utilities/disk-utility-macos-catalina-big-sur-comparison.png" title="disk-utility-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/utilities/disk-utility-macos-catalina-big-sur-comparison.png" alt="disk-utility-macos-catalina-big-sur-comparison" title="disk-utility-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/utilities/terminal-macos-catalina-big-sur-comparison.png" title="terminal-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/utilities/terminal-macos-catalina-big-sur-comparison.png" alt="terminal-macos-catalina-big-sur-comparison" title="terminal-macos-catalina-big-sur-comparison" /></a></li></ul>

<h2 id="almost-unchanged">Almost unchanged</h2>
<p>On the subject of unchanged apps, there were a number of other apps that are so far relatively unchanged.</p>

<p>Siri in macOS Big Sur shows no apparent changes. I think this is a little strange considering the overhaul Siri is receiving in iOS 14. There don’t even seem to be any radius changes to the borders.</p>

<p>The most extreme case of no change is Stickies. It’s completely identical between both releases. What’s more, I don’t think it’s changed much since MacOS 9 judging from its weird, retro controls.</p>
<style>
    .image-gallery {overflow: auto; margin-left: -1%!important;}
    .image-gallery li {float: left; display: block; margin: 0 0 0 0; width: 100%;}
    .image-gallery li a {text-align: center; text-decoration: none!important; color: #777;}
    .image-gallery li a span {display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; padding: 3px 0;}
    .image-gallery li a img {width: 100%; display: block;}
</style>

<ul class="image-gallery"><li><a href="/blog/assets/img/macos-new-ui/unchanged/bootcamp-macos-catalina-big-sur-comparison.png" title="bootcamp-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/unchanged/bootcamp-macos-catalina-big-sur-comparison.png" alt="bootcamp-macos-catalina-big-sur-comparison" title="bootcamp-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/unchanged/siri-macos-catalina-big-sur-comparison.png" title="siri-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/unchanged/siri-macos-catalina-big-sur-comparison.png" alt="siri-macos-catalina-big-sur-comparison" title="siri-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/unchanged/spotlight-macos-catalina-big-sur-comparison.png" title="spotlight-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/unchanged/spotlight-macos-catalina-big-sur-comparison.png" alt="spotlight-macos-catalina-big-sur-comparison" title="spotlight-macos-catalina-big-sur-comparison" /></a></li><li><a href="/blog/assets/img/macos-new-ui/unchanged/sticky-notes-macos-catalina-big-sur-comparison.png" title="sticky-notes-macos-catalina-big-sur-comparison"><img src="/blog/assets/img/macos-new-ui/unchanged/sticky-notes-macos-catalina-big-sur-comparison.png" alt="sticky-notes-macos-catalina-big-sur-comparison" title="sticky-notes-macos-catalina-big-sur-comparison" /></a></li></ul>

<p>Boot Camp is also practically unchanged, although this is perhaps unsurprising given Apple’s move to Apple Silicon, so presumably Boot Camp’s days are numbered. It did receive a new icon though.</p>

<h2 id="takeaways">Takeaways</h2>
<p>Overall, the UI changes in macOS aren’t as dramatic as I was expecting. Big Sur’s new UI feels like a largely incremental set of changes to make macOS feel more coherent with iOS and iPad OS. Even if there are a few teething issues and the look is a little jarring at first, this has to be a good thing in the long-term.</p>

<p>Having said that, Apple still has a vast amount of work to do to perfect the new macOS UI. It unsurprising as this is the first developer beta, but there are still many rough edges.</p>

<p>I hope in the long term they focus on creating consistent patterns: for example for the first launch experience of apps. Right now there are several different layouts and approaches to this UI. I also hope Apple don’t leave pro users behind. Right now some of the less frequently used UI elements such as status bars and path bars look a little unloved. They don’t feel well integrated into the UI and in some cases lack visual separation.</p>

<p>If you’re interested in reading even more about the design changes in macOS Big Sur, Cult of Mac have <a href="https://www.cultofmac.com/715717/fantastic-fugly-all-new-app-icons-macos-big-sur/" target="_blank">a comprehensive overview of the new icons</a>.</p>]]></content><author><name></name></author><category term="Apple" /><category term="macOS" /><category term="Catalina" /><category term="Big Sur" /><category term="UI" /><category term="Interaction design" /><category term="Visual design" /><summary type="html"><![CDATA[Side-by-side screenshots of macOS Catalina and the Big Sur beta, covering Finder, Preferences, Control Center, Safari, Notes and more, with first impressions.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/catalina-vs-big-sur.jpg" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/catalina-vs-big-sur.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Review: Pi-hole on Windows 10</title><link href="https://www.andrewdenty.com/blog/2020/04/24/review-living-with-pi-hole-on-windows-10.html" rel="alternate" type="text/html" title="Review: Pi-hole on Windows 10" /><published>2020-04-24T12:49:00+00:00</published><updated>2020-04-24T12:49:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/04/24/review-living-with-pi-hole-on-windows-10</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/04/24/review-living-with-pi-hole-on-windows-10.html"><![CDATA[<p><img src="/blog/assets/img/review-living-with-pi-hole-on-windows-10.png" alt="Pi-hole shaped heart" /></p>

<p>I’ve been running Pi-hole on my Windows 10 PC for over four months now. When I initially installed Pi-hole on my PC <a href="/blog/2020/01/25/installing-pi-hole-on-windows-10.html">I wrote a short set-up guide</a>. I did this purely so I could remember the steps I took to get it working on Windows 10, but was completely blown away by the reception. This blog which normally gets around twenty visits a week started to get thousands of visits, all to the post about installing Pi-hole on Windows 10.</p>

<p>It’s clear that there’s a lot of interest in this topic, so I thought it was a good time to share some of my day-to-day experiences of running Pi-hole on Windows 10 and review whether it’s actually worth it.  I’ll explore some of the areas that running Pi-hole on Windows 10 excels and then go into some detail of some of the problems I encountered. It’s also worth mentioning that much of this is also applicable if you’re running Pi-hole on a Raspberry Pi, Linux PC or Mac.</p>

<h3 id="an-all-round-better-ad-blocker">An all-round better Ad blocker</h3>

<p>There’s not really much to say about Pi-hole’s ability to block ads other than it’s utterly excellent. It just works. Web browsing with Pi-hole is a faster, less cluttered, cleaner experience. I won’t be going back.</p>

<p>Having said that, Ad blocking is arguably a commoditised feature at this point and this wasn’t my main reason for switching to Pi-hole. For me the biggest appeal of Pi-hole was it’s ability to bypass annoying ad blocker detection. I’d been using a browser based ad blocker, AdblockPlus for years. It was reasonably effective and did a good job of propagating across my different devices because of Google Chrome’s useful (or creepy) sync feature which ports your favourites, history and ad-ons to wherever you’re signed in. The biggest drawback however was the increase in annoying “Ad blocker detected” messages displayed on websites. While Adblock plus makes it pretty straightforward to disable the ad blocking for specific websites, it quickly becomes frustrating. Pi-hole makes this a thing of the past.</p>

<p>In my experience, Pi-hole is 100% effective at bypassing Ad blocker detection.  I’ve seen absolutely no “Ad blocker detected” pop-ups when browsing the since switching to Pi-hole.</p>

<p>Below is an example of the same page when viewed using Pi-hole (left) and AdblockerPlus (right):</p>

<p><img src="/blog/assets/img/pi-hole-vs-adblock-plus.png" alt="The same page viewed using AdblockerPlus and Pi-hole" />
The other main advantage of Pi-hole over other ad blockers is it’s ability to work on all devices on your network. While Android and iOS now support ad blocking functionality through apps and ad-ons, in my experience it’s always been a clunky experience that doesn’t work everywhere. Also, with this approach you’re effectively trusting a 3rd party commercial app with all of your browsing data.</p>

<p>For network-wide ad blocking Pi-hole wins here hands-down as it requires no extra apps, plugins or software. It works on every single device on your network, and you own and manage your own data through the Pi-hole Admin console. This is the perfect segway to talk about what you can do with that data…</p>

<h3 id="use-pi-hole-to-identify-privacy-concerns">Use Pi-hole to identify privacy concerns</h3>

<p>There was one unexpected benefit of using Pi-hole, it helped me identify devices and apps on my network which were invading my privacy. The Pi-hole admin dashboard provides detailed statistics of the traffic flowing through your network which makes it easy to see what is calling home on your network. If this seems like a little too much for you, you can also disable this functionality and tell Pi-hole not to do any logging.</p>

<p><img src="/blog/assets/img/pi-hole-detailed-traffic-statistics.png" alt="Pi-hole Admin console traffic statistics" /></p>

<p>In my case the Pi-hole admin dashboard made it clear to see that our Samsung TV was communicating almost non-stop with Samsung owned domains all day and night. This led me to investigate and it turns out Smart TVs are notorious for collecting data about what you watch with a technology called <a href="https://www.consumerreports.org/privacy/how-to-turn-off-smart-tv-snooping-features/" target="_blank">automatic content recognition, or ACR</a>
. I could find no obvious way of disabling this, and the TV itself didn’t seem to include any privacy settings, so I took the nuclear option of simply blocking its network access. We don’t use the in-built apps to watch tv, so this caused no inconvenience at all.</p>

<p>If you’re interested in learning more about how Smart TVs are increasingly spying on their users, Cheddar has produced a really informative video on the subject:</p>

<iframe width="560" height="315" src="https://www.youtube.com/embed/NWwawTnT7LM" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>

<h3 id="performance-pi-hole-as-a-dns-server">Performance: Pi-hole as a DNS server</h3>

<p>How does Pi-hole perform as a DNS server? It is effectively replacing your DNS server after all. Although could run a ton of benchmarks (and I may actually get round to this if there’s enough interest), I think real world, subjective experience may actually be a better judge in this case.</p>

<p>In my experience using the internet has honestly felt a little faster. I haven’t noticed any awkward DNS resolution hangs when loading websites. I’m talking about the kind of delay where you enter a URL, nothing happens for five seconds and then the page loads instantly. This can happen when a DNS server is slow to respond, or cannot be reached.</p>

<p>Overall I’ve been shocked at how well Pi-hole has functioned as a DNS server. In fact when I first set it up, I was skeptical that it was actually working because it was so fast. This even more surprising given that I run Pi-hole on a PC connected to my network via WiFi.  If you’re a professional, unlike me you’ll run this on a wired connection!</p>

<h3 id="performance-host-pc--performance">Performance: host PC  performance</h3>

<p>What about Windows 10 performance, does running Pi-hole on docker affect my PC’s performance? In my experience, the impact on performance is very modest. My machine is a relatively <a href="https://ark.intel.com/content/www/us/en/ark/products/95067/intel-nuc-kit-nuc7i5bnh.html" target="_blank">low end 2017 Intel NUC</a> with a dual core i5 and a paltry 8GB of ram. Running docker and Pi-hole it still runs smoothly and is completely useable for everything I’d normally use it for such as web browsing, designing with Figma, running a Plex server and playing a few games on Steam. The only impact I have noticed, is that running Docker at startup causes the machine to be a bit less responsive for the first few minutes after boot. This is hardly surprising however as Docker is effectively booting a second OS using Hyper-V. I suspect if you have a more powerful machine with more memory and more cores you won’t even notice this.</p>

<h3 id="maintaining-and-updating-pi-hole">Maintaining and updating Pi-hole</h3>

<p>One of my concerns going into this process was Pi-hole on Docker would be complicated to maintain and update. I think this is partially true as there is no way of automatically updating to new versions. This biggest challenge here was working out how it is done as the process of updating to new versions of Pi-hole on docker doesn’t seem to be widely documented. However if you follow these steps documented in <a href="/blog/2020/01/25/installing-pi-hole-on-windows-10.html">my guide to setting up Pi-hole on Windows 10</a>, it’s not too complicated or time-consuming. It’s also worth pointing out that although Pi-hole is actively maintained, there haven’t been a deluge updates, so you won’t need to do this too frequently.
Link How to update Pi-hole on Docker</p>

<h3 id="reliability-what-can-go-wrong">Reliability: what can go wrong?</h3>

<p>Overall I found Pi-hole running on Windows 10 to be incredibly reliable. It worked for weeks at a time without needing any attention, however there are a few things to be aware of.</p>

<h4 id="windows-10-updates">Windows 10 Updates</h4>
<p>Windows 10 is infamous for its updates. Whether you think this is a good, or a bad thing, the reality is that any Windows 10 PC will restart over night on a relatively frequent basis. In this case, I’d get up in the morning and find my internet wasn’t working.</p>

<p>It is possible to get round this problem however as Microsoft supports a <a href="https://support.microsoft.com/en-us/help/324737/how-to-turn-on-automatic-logon-in-windows" target="_blank">method for automatically logging on to Windows 10</a>. The obvious trade-off with this approach is your PC is no longer secure. Anyone can effectively access your PC by simply turning it off and on again. If this wasn’t bad enough, your password is stored in the Windows registry as plain text. I haven’t enabled this and have opted to put up with the minor inconvenience of occasionally signing into your PC again. I recommend using Windows Remote Desktop to do this. This lets me sign in from whichever device I’m using at the time.</p>

<h4 id="google-shopping-and-adverts-on-google">Google Shopping and Adverts on Google</h4>

<p>This may sound kind of obvious, but Google Shopping and any paid for link on Google will no longer work. This is also the case for services such as Google Analytics, or other B2B analytics services. Although this is exactly what I expected, I often found it surprising as I tend to forget that Pi-hole is running in the background. This can be kind of frustrating. but I have a workaround. Using a VPN service. I use a VPN (<a href="https://www.expressvpn.com/" target="_blank">Express VPN</a>) quite frequently as I’m a Brit living in Denmark and it’s really convenient to be able to visit UK only websites.</p>

<p><img src="/blog/assets/img/pi-hole-blocked-site.png" alt="A site blocked by Pi-hole" /></p>

<h4 id="using-a-vpn-on-your-host-pc">Using a VPN on your host PC</h4>

<p>As I mentioned previously, I use a VPN. One thing I noticed was that if I connected to the VPN on my Windows 10 machine (the same machine which is running Pi-hole) the rest of the devices in my house partially lose internet connectivity. This is because the VPN client makes the Pi-hole DNS server unreachable to other devices on the local network. I found this a little surprising as I’d specified a backup DNS server (<a href="https://1.1.1.1/dns/" target="_blank">Cloudflare’s 1111 service</a>) on my router, and in the case my Pi-hole DNS server is not responding, it should switch to the secondary server. I didn’t investigate this too thoroughly and found the easiest way to get round this is to stop simply stop using the VPN directly on your PC.</p>

<h3 id="what-doesnt-work-right-now">What doesn’t work right now?</h3>

<p>There are two areas where I’ve struggled to get Pi-hole on Docker to work the way I hoped it would.</p>

<p>The first is blocking Youtube ads. Before installing Pi-hole I’d heard rumours that it could be used to block those annoying mid-video ads in Youtube, however this doesn’t seem to be the case. Pi-hole will block the banner ads which sometimes appear in embedded ads, but is currently unable to block video ads on Youtube. If I am able to find a way of blocking these, I’ll write about it.</p>

<p>The second thing I’ve not managed to do with Pi-hole on docker is maintain customised whitelists or blacklists in the Pi-hole docker configuration. This is useful if there are certain websites you wish to allow. For example, I don’t mind certain adverts such as listings on Google Shopping when I’m searching for a product to purchase. Even though you can whitelist certain domains with Pi-hole, this is not advisable if you are running Pi-hole on docker as each time you update to a new version, your whitelist configuration is lost. If anyone has successfully configured whitelists in via the docker command, I’d love to hear how!</p>

<h3 id="conclusions-is-it-worth-running-pi-hole-on-docker">Conclusions, is it worth running Pi-hole on Docker?</h3>

<p>My experience over the past 4 months has completely reinforced my belief that Pi-hole is hands-down, the best ad blocker available. Its ad blocking is unrivalled, it speeds up your web browsing experience across all of your devices and doesn’t require you to install any additional software on those devices.</p>

<p>But, what about running Pi-hole on Docker on a Windows 10 PC? In reflection, I’d definitely recommend turning any spare PC on your network into a Pi-hole server. It makes the internet a slightly nicer place and isn’t too much of a hassle to maintain even if it does have a few niggles. It’s also a great way of evaluating whether Pi-hole is right for you (and everyone else in your household) before purchasing a Raspberry Pi.</p>

<p>If it works out, then I’d recommend purchasing a Raspberry Pi to run it on as you’ll have a dedicated device running your Pi-hole server, easier updates and the ability to maintain custom whitelists and blacklists. My next project will be to set up Pi-hole on a proper <a href="https://www.raspberrypi.org/products/raspberry-pi-4-model-b/" target="_blank">Raspberry Pi 4</a> connected via ethernet and see if the experience is any better.</p>

<p>If you haven’t already tried running Pi-hole on Windows 10, check out my orignal post <a href="/blog/2020/01/25/installing-pi-hole-on-windows-10.html">Install Pi-hole on Windows 10 and live ad-free forever</a>.</p>]]></content><author><name></name></author><category term="Pi-hole" /><category term="Docker" /><category term="Ad-blocking" /><category term="hacker project" /><category term="Windows 10" /><summary type="html"><![CDATA[Four months of running Pi-hole in Docker on a Windows 10 PC: how it blocks ads, how it performs as a DNS server, what went wrong and whether it's worth it.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/review-living-with-pi-hole-on-windows-10.png" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/review-living-with-pi-hole-on-windows-10.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Install Pi-hole on Windows 10 and live ad-free forever</title><link href="https://www.andrewdenty.com/blog/2020/01/25/installing-pi-hole-on-windows-10.html" rel="alternate" type="text/html" title="Install Pi-hole on Windows 10 and live ad-free forever" /><published>2020-01-25T13:45:00+00:00</published><updated>2020-01-25T13:45:00+00:00</updated><id>https://www.andrewdenty.com/blog/2020/01/25/installing-pi-hole-on-windows-10</id><content type="html" xml:base="https://www.andrewdenty.com/blog/2020/01/25/installing-pi-hole-on-windows-10.html"><![CDATA[<p><img src="/blog/assets/img/install-pihole-on-windows-10-using-docker.png" alt="Pi-hole on Windows 10" /></p>

<blockquote>
  <p><strong>Update October 2026:</strong> This guide was written for Pi-hole v5, and the Docker command below no longer works properly with the current version of Pi-hole. Windows 10 has also reached the end of support. For up-to-date instructions, follow my <a href="/blog/2022/03/13/installing-pi-hole-on-windows-11.html">guide to installing Pi-hole on Windows 11</a>. The Docker steps are the same if you’re still on Windows 10.</p>
</blockquote>

<h3 id="what-is-pi-hole-and-why-run-it-on-windows">What is Pi-hole and why run it on Windows?</h3>

<p><a href="https://pi-hole.net/" target="_blank">Pi-hole</a> is hands-down, the best ad blocker available.</p>

<p>That’s because it acts as a network wide ad-blocker. This means it blocks ads on every single device on your network without any browser extensions clogging up your browser. It even blocks ads inside apps.</p>

<p>What’s more, unlike browser based ad-blockers which just prevent ads from being displayed in your browser, Pi-hole speeds up your browsing experience as it blocks ads from being downloaded in the first place. If that wasn’t enough, it even prevents those annoying “<em>it looks like you’re using an ad-blocker</em>” pop-ups.</p>

<p>All of these benefits did come with one major drawback though. It was originally designed to run on Raspberry Pis. So, unless you had a Raspberry Pi, or a computer running Linux, you were out of luck. However, it’s now available for <a href="https://www.docker.com" target="_blank">Docker</a>. This means it can be installed on any device which will run Docker, such as Windows PCs or Macs.</p>

<p>I recently set up Pi-hole on my home network on a Windows PC and so far it’s worked flawlessly.</p>

<p>Anyway, here’s a step by step guide to block ads on all of our devices by installing Pi-hole on Windows 10.</p>

<h3 id="what-youll-need">What you’ll need</h3>
<p>A Windows 10 PC (Pro or Enterprise edition) which you’re happy to leave on all of the time. Preferably a power efficient, quiet PC. In my case I’m using an Intel NUC.</p>

<p>If you have a Mac, you can also install Pi-hole on MacOS using a similar process to the one described below.</p>

<h3 id="step-by-step-instructions">Step by step instructions</h3>

<h4 id="step-1---download-docker">Step 1 - Download Docker</h4>
<p><a href="https://www.docker.com/products/docker-desktop" target="_blank">Download Docker for Windows</a>. As part of this, you will need to create a Docker account.</p>
<h4 id="step-2---install-docker">Step 2 - Install Docker</h4>
<p>Install Docker, keeping “enable required Windows Features” selected as Docker needs Microsoft Hyper-V which is not enabled by default.</p>

<p>Avoid clicking the “Use Windows Containers” option. Pi-hole will require Linux containers which is the default.</p>

<p><img src="/blog/assets/img/1-install-docker-windows.png" alt="Installing Docker for Windows Desktop" /></p>
<h4 id="step-3---configure-docker">Step 3 - Configure Docker</h4>
<p>When docker is installed the first thing  you will need to do is sign in. Docker lives in the task bar notification area.</p>

<p>After signing in I recommend tweaking some settings in Docker. You can access docker settings from the docker menu in the task bar tray. I reduced the available Memory to 1GB. Pi-hole doesn’t actually need 2GB, so reducing it to 1GB frees up more memory for your PC. Click ‘Apply and restart’.</p>

<p><img src="/blog/assets/img/2-docker-windows-resources-configuration.png" alt="Docker for Windows rescource settings" />
<strong>Update June 2020</strong> - If you don’t see these options, just skip to step 4. Docker is releasing a new version with a technology called WSL 2. This is a new way of emulating Linux within Windows and replaces the existing Hyper-V setup. The main advantage is that WSL 2 uses less resources and dynamically uses memory instead of preassigning a chunk of your PC’s memory. This means there is now nothing to configure. You can read more about it on the <a href="https://docs.docker.com/docker-for-windows/wsl/" target="_blank">Docker website</a>.</p>

<h4 id="step-4---download-pi-hole">Step 4 - Download Pi-hole</h4>
<p>To download the Pi-hole container, open Windows Command Prompt as an administrator and type the following command: <code class="language-plaintext highlighter-rouge">docker pull pihole/pihole</code></p>
<h4 id="step-5---give-your-pc-a-static-ip-address">Step 5 - Give your PC a static IP address</h4>
<p>Next, let’s ensure our PC has a static IP address. This will ensure other devices can always reach your Pi-hole server without any issues. To do this:</p>
<ul>
  <li>Navigate to <strong>Start menu</strong> &gt; <strong>Settings</strong> &gt; <strong>Network and internet</strong> &gt; <strong>Network and Sharing Center</strong> &gt; <strong>Change adapter settings</strong> &gt; Right click on your active network connection and click <strong>Properties</strong>. Double click on <strong>Internet Protocol Version 4 (TCP/IPv4)</strong> and select <strong>Use the following IP address</strong>.</li>
  <li>Set a manual IP address. If you are unsure what to use for the subnet mask or default gateway, type <code class="language-plaintext highlighter-rouge">ipconfig</code> in the command prompt and reuse the same values for the IP address.</li>
  <li>I recommend increasing the last number of your IP address by 50 or so to make IP address conflicts less likely on your network. For example, if your IP address was 192.168.0.5 try 192.168.0.55.</li>
  <li>For DNS settings, use the IP address of your machine you have just set and for an alternative use <code class="language-plaintext highlighter-rouge">1.1.1.1.</code> (this is <a href="https://1.1.1.1/dns/" target="_blank">Cloudflare’s DNS service</a>).</li>
</ul>

<p><img src="/blog/assets/img/3-windows-change-to-static-ip.png" alt="Windows 10 IP address settings" /></p>

<h4 id="step-6---create-a-customized-docker-command">Step 6 - create a customized Docker command</h4>
<p>Now Docker is running and Pi-hole is downloaded we can configure and start it. You will need to customise your script. Here’s a base:</p>

<p><code class="language-plaintext highlighter-rouge">docker run -d --name pihole -e ServerIP=172.16.154.130 -e WEBPASSWORD=password -e TZ=Europe/Copenhagen -e DNS1=127.17.0.1 -e DNS2=1.1.1.1 -e DNS3=1.0.0.1 -p 80:80 -p 53:53/tcp -p 53:53/udp -p 443:443 --restart=unless-stopped pihole/pihole:latest</code></p>

<p><strong>You will need to replace:</strong></p>
<ul>
  <li><code class="language-plaintext highlighter-rouge">ServerIP</code> with your IP address</li>
  <li><code class="language-plaintext highlighter-rouge">WEBPASSWORD</code> with a password of your choosing (you’ll use this to access Pi-hole’s settings)</li>
  <li><code class="language-plaintext highlighter-rouge">TZ=</code> this is optional. You can specify your timezone in the <a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones" target="_blank">TZ format</a></li>
</ul>

<p>Note: <code class="language-plaintext highlighter-rouge">DNS1</code> needs to be left as <code class="language-plaintext highlighter-rouge">127.17.0.1</code> in order for Pi-hole to work. If you’re curious, 127.17.0.1 is the IP address for Localhost (or in other words <em>this computer</em>). You can change <code class="language-plaintext highlighter-rouge">DNS2</code> and <code class="language-plaintext highlighter-rouge">DNS3</code> to whatever you like.</p>

<p>The base script above will get you up and running, however if you want to customise how Pi-hole works, there are a <a href="https://github.com/pi-hole/docker-pi-hole#environment-variables" target="_blank">number of variables you can set as part of this script</a>.</p>

<p>You’ll also find more information and documentation on the <a href="https://github.com/pi-hole/docker-pi-hole" target="_blank">Docker Pi-hole Docker Github page</a>.</p>

<h4 id="step-7---run-your-script-and-start-your-pi-hole-server">Step 7 - run your script and start your Pi-hole server</h4>
<p>Open command prompt as an administrator again and paste in your customised command and press enter. This will create your Pi-hole Docker container and run it.</p>

<h4 id="step-8---check-pi-hole-is-up-and-running">Step 8 - Check Pi-hole is up and running</h4>

<p>Go to your web browser and type - <a href="http://127.17.0.1/admin/" target="_blank">http://127.17.0.1/admin/</a> or http://localhost/admin/  you should see the Pi-hole admin console. This means you’re up and running!</p>

<p><img src="/blog/assets/img/4-pi-hole-admin-console.png" alt="Pi-hole admin interface" /></p>

<p>The Pi-hole admin console lets you configure the advanced settings of Pi-hole, see which domains have been blocked as well as  blacklisting or whitelisting new domains.</p>

<h4 id="step-9---configure-your-router">Step 9 - Configure your router</h4>
<p>The final step is to change the DNS server on your router to point to your PC. In my case this is <code class="language-plaintext highlighter-rouge">172.16.154.130</code>. This will ensure all of the devices on your network get Pi-hole’s ad blocking magic.</p>

<p>Congratulations! At this point, provided everything has worked you should have an ad-free home!</p>

<h3 id="faqs">FAQs</h3>
<p>When I shared this post on <a href="https://www.reddit.com/r/pihole/comments/eu6qnj/installing_pihole_using_docker_on_windows_10/" target="_blank">Reddit</a> I got lots of really useful feedback and questions, so I’ve put together a short FAQ section:</p>

<h4 id="does-the-pc-have-to-be-connected-via-an-ethernet-connection">Does the PC have to be connected via an ethernet connection?</h4>
<p>At first I thought this would be a problem, but apparently not. My setup works really well over WiFi. Because of where my PC is located in my apartment it’s pretty much impossible for it to use a wired connection. Like always ethernet is preferable though.</p>

<h4 id="can-i-do-this-on-macos">Can I do this on MacOS?</h4>
<p>Yes - you absolutely can. The process is very similar. I’ve tested this on Mac OS Catalina and it works.</p>

<h4 id="why-use-docker-and-not-just-a-linux-virtual-machine-vm">Why use Docker and not just a Linux Virtual Machine (VM)?</h4>
<p>This could be a whole article, but in a nutshell Docker is easier to set up and maintain compared to a VM. With a VM you need to ensure your Linux installation is correctly configured and kept up to date. This takes time, and in the case where you encounter a problem, reinstalling everything takes a long time. Whereas using Docker, Pi-hole is kept in an isolated container and Docker takes care of everything else. What’s more all of the configuration settings are kept in your Docker script, so you can easily delete the container and recreate it if you run into problems.</p>

<h4 id="what-if-the-pi-hole-stops-working-or-i-restart-my-pc">What if the Pi-hole stops working, or I restart my PC?</h4>
<p>Restarting your PC is not a problem. By default Docker for Windows is configured to run automatically when you start your PC and the <code class="language-plaintext highlighter-rouge">--restart=unless-stopped</code> string in the Docker script I’ve provided means your Pi-hole Docker container will automatically start up. Your internet will also continue to work if your PC is turned off as you can specify a secondary DNS server on your router. In this case your router will simply use this backup DNS server if your Pi-hole is unreachable.</p>

<h4 id="can-i-install-this-on-windows-10-home-edition">Can I install this on Windows 10 Home Edition?</h4>
<p>Not easily. Docker for Windows relies on using Hyper-V, a virtualisation technology only included in Windows 10 Pro or Enterprise. For this reason it’s not straightforward to install Docker on Windows 10 Home. It is technically possible, but it does require you to jump through a lot of hoops. Mark Cameron wrote a guide on <a href="https://medium.com/@mbyfieldcameron/docker-on-windows-10-home-edition-c186c538dff3" target="_blank">Installing Docker on Windows 10 Home</a>  which might help.</p>

<h4 id="how-to-update-pi-hole-on-docker">How to update Pi-hole on Docker</h4>
<p>Occasionally you will notice in the Pi-hole admin interface that a new version is available.</p>

<p>With Docker you don’t update the installed version of Pi-hole, but rather delete it and reinstall it with the variables you created in your customized docker command. This is essentially has the same effect as upgrading, but ensures you have a clean, new environment each time.</p>

<p>In order to do this, head to the ‘Docker dashboard’. You can access the dashboard from the docker menu in the Windows notification tray. Once you’re in the Docker dashboard, click the delete icon next to your Pi-hole container. This will stop and delete the docker container.</p>

<p>The next step is to head to an elevated Command Prompt and type:</p>

<p><code class="language-plaintext highlighter-rouge">docker image prune -a</code></p>

<p>This command clears out the Docker cache and all unused images (i.e. the out of date version of Pi-hole).</p>

<p>Once this has completed, you can reinstall Pi-hole using the instructions in this article.</p>

<p>Essentially all you have to do is run <code class="language-plaintext highlighter-rouge">docker pull pihole/pihole</code> in the Command Prompt, and when it has completed downloading, run your customized docker command to restore your Pi-hole instance. Congratulations, you should now be running the latest version of Pi-hole!</p>

<h4 id="what-is-this-set-up-like-to-use-on-a-daily-basis">What is this set-up like to use on a daily basis?</h4>
<p>See my follow up post where I share my experiences after four months <a href="/blog/2020/04/24/review-living-with-pi-hole-on-windows-10.html">Review: living with Pi-hole on Windows 10</a>.</p>

<h4 id="pi-hole-keeps-crashing---whats-going-on-updated-june-2020">Pi-hole keeps crashing - what’s going on? (updated June 2020)</h4>
<p>In the latest version of Pi-hole (version 5.0) there is a bug which can cause Pi-hole to crash meaning you’re left without an ad-blocker or DNS server. I haven’t run into this myself, and I’m running Pi-hole 5.0 on Docker with no problems. However, if you do have problems Angel-Panda Diaz has helpfully shared a workaround which may prevent this problem. This workaround increases the size of the Docker container’s shared memory (SHM) to 5 gigabytes. I haven’t attempted this workaround myself, but let me know if it helps!</p>

<p>If you’re experiencing crashing, try the following script:
<code class="language-plaintext highlighter-rouge">docker run -d --name pihole -e ServerIP=172.16.154.130 -e WEBPASSWORD=password -e TZ=Europe/Copenhagen -e DNS1=127.17.0.1 -e DNS2=1.1.1.1 -e DNS3=1.0.0.1 -p 80:80 -p 53:53/tcp -p 53:53/udp -p 443:443 --shm-size="5g" --restart=unless-stopped pihole/pihole:latest</code></p>

<p>I’ll update this post when this bug is fixed.</p>]]></content><author><name></name></author><category term="Pi-hole" /><category term="Docker" /><category term="Ad-blocking" /><category term="hacker project" /><category term="Windows 10" /><summary type="html"><![CDATA[How I set up Pi-hole on a Windows 10 PC with Docker to block ads across my home network. Step-by-step setup, router settings and answers to common questions.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://www.andrewdenty.com/blog/assets/img/install-pihole-on-windows-10-using-docker.png" /><media:content medium="image" url="https://www.andrewdenty.com/blog/assets/img/install-pihole-on-windows-10-using-docker.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>