<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>CWL - Small Business I.T. Services in Toronto – </title>
    <link>https://cwl.cc/</link>
    <description>Recent content on CWL - Small Business I.T. Services in Toronto</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Thu, 28 May 2026 22:56:07 -0400</lastBuildDate>
    
	  <atom:link href="https://cwl.cc/index.xml" rel="self" type="application/rss+xml" />
    
    
      
      
    
    
    <item>
      <title>Book - Take Me to Your Leader by Neil Degrasse Tyson</title>
      <link>https://cwl.cc/2026/book-take-me-to-your-leader/</link>
      <pubDate>Fri, 10 Jul 2026 08:30:45 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/book-take-me-to-your-leader/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/take-me-to-your-leader-01.webp&#34; alt=&#34;Take Me to Your Leader Book Cover&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Tyson is a great speaker. You can find him on &lt;a href=&#34;https://startalkmedia.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;StarTalk radio&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and just about every science-adjacent podcast. He was in Toronto recently also, but I missed that show. What Tyson has is a deep knowledge of pop-culture and entertainment. This is evidenced by his latest book &lt;em&gt;Take Me to Your Leader&lt;/em&gt;. The small sized book&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; is packed with references to just about every alien in entertainment. Of course, this is not a practical guide for what to do when you meet an alien, so it&amp;rsquo;s more of a geeky, joke-y run through fun ideas with a science angle.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s also an experience in humility. The idea that we&amp;rsquo;re superior to aliens in every way (and that the might look humanoid) is an unusual and egocentric idea when you start seeing things from Tyson&amp;rsquo;s perspective. It makes good sense too. Would the randomness on a planet light years away from us only have the ability to make humanoids, and yet also they&amp;rsquo;d have a way to travel this distance?&lt;/p&gt;
&lt;p&gt;And I love Degrasse&amp;rsquo;s observation about UFOs - it&amp;rsquo;s just as funny as it is true:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&amp;ldquo;UFOs are real&amp;rdquo; which on face value makes no sense at all. The abbreviation UFO has become synonymous with visiting aliens from outer space, which if so, should then require we call these things IFOs or &amp;ldquo;Identified flying objects&amp;rdquo;.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Through a generous gift, I managed to get access to &lt;a href=&#34;https://www.masterclass.com/classes/neil-degrasse-tyson-teaches-scientific-thinking-and-communication&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Tyson&amp;rsquo;s Masterclass&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. It&amp;rsquo;s something I&amp;rsquo;d heard about but had never viewed. The masterclass is general and topical, but much like his show &lt;a href=&#34;https://www.imdb.com/title/tt2395695/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Cosmos&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, you get a real sense of his love and joy for science. It&amp;rsquo;s infectious. His stories like the discovery of Neptune and the scientific method make you want to go out and dig into otherworldly mysteries.&lt;/p&gt;
&lt;p&gt;Science literacy is one of the great challenges of our time, and Tyson has been one of the best ambassadors for all things astrophysics and STEM in general. When he publishes a book, much like &lt;a href=&#34;https://cwl.cc/2017/07/book-review-sapiens-a-brief-history-of-humankind.html/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Yuval Harari&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, I immediately want to get it and read.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Take Me to Your Leader&lt;/em&gt; is a short, light read, yes, but it&amp;rsquo;s one of Tyson&amp;rsquo;s most lighthearted books. There isn&amp;rsquo;t a hint of heavy mental calculus here and the movie references are on point. If you&amp;rsquo;ve seen enough of his podcasts and appearances, you might even hear his voice and signature laugh in your head while you read. The book is available most bookstores. Be sure to shop and support local.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Physically small, but also less than 200 pages.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>A Tale of Two File Managers - Total Commander and Directory Opus</title>
      <link>https://cwl.cc/2026/a-tale-of-two-file-managers/</link>
      <pubDate>Mon, 06 Jul 2026 08:30:29 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/a-tale-of-two-file-managers/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-tale-of-two-file-managers-01.webp&#34; alt=&#34;Total Commander vs Directory Opus&#34;  loading=&#34;lazy&#34; /&gt;
File management is core to any operating system. Whether it&amp;rsquo;s the command line on Linux, the MacOS finder or Windows&amp;rsquo; Explorer, any power user is inevitably going to need to upgrade to a more powerful file manager than the stock OS tool. On Windows, we have an embarrassment of riches when it comes to file managers, being best of breed and around for decades. In this article I wanted to look at two of the most mature and well-known and do a comparison: Total Commander (Tcmd) and Directory Opus (Opus).&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s history here. Directory Opus was an Amiga tool and &lt;a href=&#34;https://en.wikipedia.org/wiki/Directory_Opus&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;according to Wikipedia&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and was released a lifetime ago in 1990. While I did have an Amiga, I don&amp;rsquo;t recall ever using Opus. Total Commander is no slouch, being released in 1993 as a shareware tool then called Windows Commander&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. These tools have extensive customization options and - to be clear - would work great for the everyday user. This article is an attempt to look deeper at the tools, for a pro user. And, full disclosure, I&amp;rsquo;m a lifetime Total Commander license holder and &lt;a href=&#34;https://cwl.cc/2012/02/that-great-tool-total-commander.html/&#34;&gt;love the tool&lt;/a&gt;. For this article, I&amp;rsquo;ve attempted to work with the latest, so I&amp;rsquo;ll be looking at Total Commander 11.58 RC3 and Directory Opus 13.23.5 Beta. Given these are betas or release candidates, I&amp;rsquo;ll forgive any kind of instability or crashes in an effort to look at features. They will both be running on Windows 11 Professional in this review. As time passes, features and licensing fees will change.&lt;/p&gt;
&lt;h3&gt;Basic Operations&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;basic-operations&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#basic-operations&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Tcmd&amp;rsquo;s approach to the details display is akin to a flat structure with less fluff. Opus takes a different approach and represents the detail view with carets that can expand the folder structure inline. These views are insanely customizable of course, but I tend to lean towards the sleeker Tcmd view. You&amp;rsquo;ll notice too that Opus kind of colour codes folders and files by default which is nice. I&amp;rsquo;m not sure if this is in all version of Opus, but opening folders plays an animation, which again, maybe a little too flashy. The elements on the screen that you find useful will boil down to your preference, and Tcmd leans in to the &lt;a href=&#34;https://en.wikipedia.org/wiki/Norton_Commander#/media/File:Norton_Commander_5.51.png&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Norton Commander&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; esthetic hard.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-tale-of-two-file-managers-02.webp&#34; alt=&#34;The file copy screen. Opus (top) and Tcmd (bottom)&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The file copy screen. Opus (top) and Tcmd (bottom)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The all-important right-click context menu in both Tcmd and Opus leave heavily to Windows&amp;rsquo; own built-in menu. Notably, Opus adds an extra shell context item for compression and Tcmd sometimes doesn&amp;rsquo;t show the exact context menu that Explorer might. These can both be somewhat annoying, so no edge to either file manager.&lt;/p&gt;
&lt;p&gt;When doing a file operation, the visuals are a bit different. There&amp;rsquo;s a big edge to Tcmd here in terms of speed, but both tools show enough information to keep it light while informing of the operation&amp;rsquo;s progress. Viewing files in a bit different here too. Tcmd has a nice built in viewer that manages to run fast and provide options for all kinds of files types beyond text through plugins. In terms of Opus, there seems to be a &amp;ldquo;slideshow&amp;rdquo; tool that acts like a file viewer. In both tools, you can enable a quick view pane that can be attached to the main window that lets you quickly view a file&amp;rsquo;s contents. I prefer Tcmd&amp;rsquo;s way of doing this, but both work.&lt;/p&gt;
&lt;h3&gt;Archives&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;archives&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#archives&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;When it comes to just about the most common thing you could do with a file manager outside of copying, the ability to compress and decompress files is core to both programs. They likely supported this right from the first release, so these tools have to be powerful and mature. Opus supports a bunch of archiving formats right out of the box, while Tcmd supports built-in zip, but has to be extended for support with other archivers. Visually, Tcmd&amp;rsquo;s archive window is superior, providing a great many options with almost zero wasted space. Strangely, Opus let&amp;rsquo;s you split archives in ZIP but not RAR. In this category Tcmd is the better tool, but Opus is not far behind. Both programs wisely treat archive files as they are folders, with the options to modify that behaviour.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-tale-of-two-file-managers-04.webp&#34; alt=&#34;The file archive or compression screen. Opus (top) and Tcmd (bottom)&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The file archive or compression screen. Opus (top) and Tcmd (bottom)&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Extensibility&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;extensibility&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#extensibility&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Tcmd shines here with deep support for plugins that do all sorts of things. The add-on system in Tcmd can make the program a much different tool. In Opus, it doesn&amp;rsquo;t seem to have a plugin system with the exception of what it calls &amp;ldquo;scripts&amp;rdquo;, but just about every visual element in Opus can be modified somehow. Tcmd offers more by allowing you to fully customize the main menu allowing for a ton of launch options for extended tools. Opus seems to take the approach of a custom bookmarks toolbar, which could function in a similar way.&lt;/p&gt;
&lt;h3&gt;Other Matters&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;other-matters&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#other-matters&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;As someone who cares about files, it&amp;rsquo;s important that I mention the main executable of both tools. Tcmd is written in Object Pascal&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; and Opus is likely written in C++. Tcmd&amp;rsquo;s main executable is 10.2 megabytes, while Opus runs at 35.5 megabytes. That&amp;rsquo;s quite a difference in size. These will vary wildly with the version and whether 32 or 64 bit, but Tcmd has a ton going for it in terms of optimization. And, also a shoutout to Christian, the developer of Tcmd, for including a HISTORY.TXT so one can pour over any recent changes to the program. It&amp;rsquo;s just a great touch.&lt;/p&gt;
&lt;p&gt;Tcmd&amp;rsquo;s help system is still a local CHM (Compiled HTML Help) file, while Opus goes the way of linking to an online help site. This is just preference, but you might like that you could get help with Tcmd even if you were off the Internet.&lt;/p&gt;
&lt;p&gt;Tcmd represents breadcrumbs in the form of a path listing or drive letter combo box. This might be a bit off-putting to the person used to dealing with Explorer. In Opus, you have more of an explorer representation with arrows and pull down boxes that show things like &amp;ldquo;My PC&amp;rdquo; and, of course, hide the C: drive. Really minor stuff, but these maybe lean your preference for tool in one direction or the other outside of customizing things.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-tale-of-two-file-managers-03.webp&#34; alt=&#34;The tools side-by-side. Opus (right) and Tcmd (left)&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The tools side-by-side. Opus (right) and Tcmd (left)&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Unique Features&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;unique-features&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#unique-features&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;In Opus, there&amp;rsquo;s an Admin mode that elevates the tool&amp;rsquo;s security level for a specified amount of time. That&amp;rsquo;s a slick feature I&amp;rsquo;ve found in many of the Sysinternals tools. There&amp;rsquo;s a place and time for that and it&amp;rsquo;s something that Tcmd does per operation (or you can run it as admin). There&amp;rsquo;s an Opus command line too that seems to interpret a bunch of languages. That seems like something that could be useful that Tcmd doesn&amp;rsquo;t have. Opus has a bunch of tools that might not typically be in a file manager (like rotating a photo), but this seems to be Opus&amp;rsquo; strength: tools galore.&lt;/p&gt;
&lt;h3&gt;Licensing&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;licensing&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#licensing&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;This is where Tcmd is moves ahead of Opus. At the time of writing, a single computer Opus license is $89 AUD and gets you a year of free updates and makes you pay $25 AUD every year after that for updates. It&amp;rsquo;s the prerogative of them to charge that, but for Total commander, there&amp;rsquo;s a different approach. you can use the free version for 30 days as long as you wish and it includes an opening nag screen. The license is EUR 42 and provides for free updates in perpetuity (unless something changes)&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;. Opus has a more rigorous registration process, while Tcmd&amp;rsquo;s registration is a keyfile and updates are a serious breeze. Tcmd&amp;rsquo;s program is portable by nature and compact by design.&lt;/p&gt;
&lt;p&gt;Total Commander is available at &lt;a href=&#34;https://www.ghisler.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ghisler.com&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, while Directory Opus can be found at &lt;a href=&#34;https://www.gpsoft.com.au/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;gpsoft.com.au&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;As often happens, a big company threatens a small guy and in this case Microsoft made the developer change to &amp;ldquo;Total,&amp;rdquo; though some remnants of the old name remain.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;Think the Delphi programming environment.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;it hasn&amp;rsquo;t changed since I bought a license what seems like at least a decade ago, maybe more.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Fun with Firefox and Chrome Profiles</title>
      <link>https://cwl.cc/2026/06/fun-with-firefox-and-chrome-profiles.html/</link>
      <pubDate>Fri, 03 Jul 2026 08:31:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/06/fun-with-firefox-and-chrome-profiles.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/browser-profiles-feature.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The modern Internet can be a pain in the ass. Sites are more persistent than ever, holding sessions and cookie information and forcing logins in an effort to feel more like applications and less like web sites. As someone in I.T., I need to open two or more of these at once, and that&amp;rsquo;s just not possible with Incognito Mode and all the browsers.&lt;/p&gt;
&lt;p&gt;Consider this, your business email is on Google Workspace and you view it all the time. You then need to open Gmail in a new browser tab. Oops. Google automatically &lt;s&gt;logs in&lt;/s&gt; forces you in to the corporate mail account and you have to submit to Google&amp;rsquo;s method of managing logins. This is very different from others like Microsoft still, and they both suck. There are paid tools to do this, and I&amp;rsquo;ve paid for them, but they don&amp;rsquo;t work with every site and often I just ended up using it for just one or two sites. I needed a way, for free, to separate sessions. What you do here will force a new window for each session you start, it&amp;rsquo;s not possible to do this in new tabs (without a plugin).&lt;/p&gt;
&lt;h2&gt;Creating the Profile on Firefox&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;creating-the-profile-on-firefox&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#creating-the-profile-on-firefox&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;This is my everyday browser. Mozilla has some direction on this feature &lt;a href=&#34;https://support.mozilla.org/en-US/kb/profile-manager-create-remove-switch-firefox-profiles&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;here&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. What you want is the &amp;ldquo;old&amp;rdquo; profile manager interface. The window you&amp;rsquo;ll see is below. You&amp;rsquo;ll simply choose &amp;ldquo;Create Profile&amp;rdquo; and follow the wizard.&lt;/p&gt;
&lt;p&gt;Get to this profile manager by running (WIN+R) on Windows&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&amp;quot;C:\Program Files\Mozilla Firefox\firefox.exe&amp;quot; -P&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Or in the MacOS Terminal:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;open -n -a &amp;quot;Firefox&amp;quot; --args -P&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/browser-profiles-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;When launching this screen, it&amp;rsquo;s not fully intuitive, but the &amp;ldquo;default&amp;rdquo; profile you run with is &amp;ldquo;default-release.&amp;rdquo; make sure that&amp;rsquo;s always selected/highlighted in the above window. First thing to do is create a new profile. Keep the name simple, short and descriptive. Since this gets referenced elsewhere, it&amp;rsquo;s also a good idea to leave out spaces too. In my example, I&amp;rsquo;ll call it &amp;ldquo;Profile1.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;There is the matter of Firefox&amp;rsquo;s &amp;ldquo;new&amp;rdquo; profile system and whether that will merge with this legacy system also called profiles. We&amp;rsquo;ll have to wait and see, but for now these systems seem separate. One caveat here is that Firefox will generally manage the directories that contain the profile settings if you leave to the defaults This going to sit in Firefox&amp;rsquo;s default data folder.&lt;/p&gt;
&lt;h2&gt;Creating the Profile on Chrome&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;creating-the-profile-on-chrome&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#creating-the-profile-on-chrome&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Chrome has user profile features, but those are good for syncing bookmarks and config data, but I wouldn&amp;rsquo;t use this for session control. The best way I&amp;rsquo;ve found is to launch new, distinct browser profiles from the command line. In the case of Chrome, you manage the profile directories yourself. Start by establishing a directory for profile data. As an example, I&amp;rsquo;ll create this structure:&lt;/p&gt;
&lt;div class=&#34;hextra-filetree hx:mt-6 hx:select-none hx:text-sm hx:text-gray-800 hx:dark:text-gray-300 not-prose&#34;&gt;
  &lt;div class=&#34;hx:inline-block hx:rounded-lg hx:px-4 hx:py-2 hx:border hx:border-gray-200 hx:dark:border-neutral-800&#34;&gt;
    &lt;ul class=&#34;hx:flex hx:flex-col&#34;&gt;
  

&lt;li class=&#34;hx:group hx:flex hx:list-none hx:flex-col&#34;&gt;
  &lt;button class=&#34;hextra-filetree-folder hx:inline-flex hx:cursor-pointer hx:items-center hx:py-1 hx:hover:opacity-60&#34; aria-expanded=&#34;true&#34;&gt;
    &lt;span data-state=&#34;open&#34; class=&#34;hx:data-[state=open]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
    &lt;span data-state=&#34;open&#34; class=&#34;hx:data-[state=closed]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M5 19a2 2 0 01-2-2V7a2 2 0 012-2h4l2 2h4a2 2 0 012 2v1M5 19h14a2 2 0 002-2v-5a2 2 0 00-2-2H9a2 2 0 00-2 2v5a2 2 0 01-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
    &lt;span class=&#34;hx:ltr:ml-1 hx:rtl:mr-1&#34;&gt;data&lt;/span&gt;
  &lt;/button&gt;
  &lt;ul data-state=&#34;open&#34; class=&#34;hx:ltr:pl-5 hx:rtl:pr-5 hx:data-[state=closed]:hidden&#34;&gt;
  

&lt;li class=&#34;hx:group hx:flex hx:list-none hx:flex-col&#34;&gt;
&lt;button class=&#34;hextra-filetree-folder hx:inline-flex hx:cursor-pointer hx:items-center hx:py-1 hx:hover:opacity-60&#34; aria-expanded=&#34;false&#34;&gt;
  &lt;span data-state=&#34;closed&#34; class=&#34;hx:data-[state=open]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
  &lt;span data-state=&#34;closed&#34; class=&#34;hx:data-[state=closed]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M5 19a2 2 0 01-2-2V7a2 2 0 012-2h4l2 2h4a2 2 0 012 2v1M5 19h14a2 2 0 002-2v-5a2 2 0 00-2-2H9a2 2 0 00-2 2v5a2 2 0 01-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
  &lt;span class=&#34;hx:ltr:ml-1 hx:rtl:mr-1&#34;&gt;chrome&lt;/span&gt;
&lt;/button&gt;
&lt;ul data-state=&#34;closed&#34; class=&#34;hx:ltr:pl-5 hx:rtl:pr-5 hx:data-[state=closed]:hidden&#34;&gt;
	      

&lt;li class=&#34;hx:group hx:flex hx:list-none hx:flex-col&#34;&gt;
&lt;button class=&#34;hextra-filetree-folder hx:inline-flex hx:cursor-pointer hx:items-center hx:py-1 hx:hover:opacity-60&#34; aria-expanded=&#34;false&#34;&gt;
&lt;span data-state=&#34;closed&#34; class=&#34;hx:data-[state=open]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
&lt;span data-state=&#34;closed&#34; class=&#34;hx:data-[state=closed]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M5 19a2 2 0 01-2-2V7a2 2 0 012-2h4l2 2h4a2 2 0 012 2v1M5 19h14a2 2 0 002-2v-5a2 2 0 00-2-2H9a2 2 0 00-2 2v5a2 2 0 01-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
&lt;span class=&#34;hx:ltr:ml-1 hx:rtl:mr-1&#34;&gt;Profile1&lt;/span&gt;
&lt;/button&gt;
&lt;ul data-state=&#34;closed&#34; class=&#34;hx:ltr:pl-5 hx:rtl:pr-5 hx:data-[state=closed]:hidden&#34;&gt;
    &lt;/ul&gt;
&lt;/li&gt;

    

&lt;li class=&#34;hx:group hx:flex hx:list-none hx:flex-col&#34;&gt;
&lt;button class=&#34;hextra-filetree-folder hx:inline-flex hx:cursor-pointer hx:items-center hx:py-1 hx:hover:opacity-60&#34; aria-expanded=&#34;false&#34;&gt;
&lt;span data-state=&#34;closed&#34; class=&#34;hx:data-[state=open]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
&lt;span data-state=&#34;closed&#34; class=&#34;hx:data-[state=closed]:hidden&#34;&gt;&lt;svg width=1em xmlns=&#34;http://www.w3.org/2000/svg&#34; fill=&#34;none&#34; viewBox=&#34;0 0 24 24&#34; stroke-width=&#34;2&#34; stroke=&#34;currentColor&#34; aria-hidden=&#34;true&#34;&gt;&lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; d=&#34;M5 19a2 2 0 01-2-2V7a2 2 0 012-2h4l2 2h4a2 2 0 012 2v1M5 19h14a2 2 0 002-2v-5a2 2 0 00-2-2H9a2 2 0 00-2 2v5a2 2 0 01-2 2z&#34;/&gt;&lt;/svg&gt;&lt;/span&gt;
&lt;span class=&#34;hx:ltr:ml-1 hx:rtl:mr-1&#34;&gt;Profile2&lt;/span&gt;
&lt;/button&gt;
&lt;ul data-state=&#34;closed&#34; class=&#34;hx:ltr:pl-5 hx:rtl:pr-5 hx:data-[state=closed]:hidden&#34;&gt;
&lt;/ul&gt;
&lt;/li&gt;

&lt;/ul&gt;
&lt;/li&gt;

&lt;/ul&gt;
&lt;/li&gt;

&lt;/ul&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;This could be on any local drive such as C:\ on Windows or Macintosh HD on MacOS. You could chose to place this in your own user folder context too. It&amp;rsquo;s up to you. Always keep in mind that this may consume a ton of data depending how many sites you browse with Chrome. Once you have the directories setup, it&amp;rsquo;s just a matter of running Chrome. If the directory is empty, Chrome will fill the location with default profile data and start there.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Windows&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Launching the browser looks like this. Replace the Chrome exe with the full path of your own Chrome installation. It can sometimes be in your profile or AppData directory:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&amp;quot;C:\Program Files\Google\Chrome\Application\chrome.exe&amp;quot; --user-data-dir=&amp;quot;c:\data\Chrome\Profile1&amp;quot;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MacOS&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;open -n -a &amp;quot;Google Chrome.app&amp;quot; --args --profile-directory=&amp;quot;/Users/user/data/profile1&amp;quot;&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;Putting these Profiles to work&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;putting-these-profiles-to-work&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#putting-these-profiles-to-work&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;On Windows:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Create a data directory and a directory for the each of the profiles that you need. Create a shortcut to launch each of those profiles with the command mentioned above. Put these links, or LNK files on the Desktop and launch them as you need.&lt;/p&gt;
&lt;p&gt;But, to make it faster, place all of these LNK files in a directory and use something like &lt;a href=&#34;https://ueli.app/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Ueli&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to quick launch it with the plugin &amp;ldquo;Application Search&amp;rdquo; pointed at that location. This way you can quickly launch any of these these with ALT+SPACE and using &amp;ldquo;Chrome&amp;rdquo; in the names of the LNK files. The speed and functionality will help make up for all the windows you&amp;rsquo;ll have to manage. As an added trick, enable Chrome&amp;rsquo;s bookmark bar and place a bookmark (to anything) and name it after the profile (say Profile1), and any time this window is in focus, you&amp;rsquo;ll know what profile you&amp;rsquo;re in.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;On MacOS:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;You could create a simple text file on the desktop and name it Profile1.command. The .command extension tells MacOS to run what&amp;rsquo;s in the file. You have to right-click on the file, click &amp;lsquo;get info&amp;quot; and set the x attribute to on. Then add the profile launch command to the first line of the file with TextEdit or any text editor:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;open -n -a &amp;quot;Firefox&amp;quot; --args -p &amp;quot;Profile1&amp;quot;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Double-clicking on that file will launch a new Firefox window and that profile and sessions within.&lt;/p&gt;
&lt;p&gt;But to take this further, use a utility. I would suggest the great &lt;a href=&#34;https://github.com/deseven/iCanHazShortcut&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;iCanHazShortcut&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; (ICHS), that sits in your menu bar waiting. You simply create shortcuts here and assign a global hotkey that will launch this profile quickly. For example, here&amp;rsquo;s a shortcut to launch a Facebook Marketplace profile that launches with CONTROL + SHIFT + S:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/browser-profiles-02-1024x444.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Keep in mind, when launching a different profile, that has to close fully like a new application.&lt;/p&gt;
&lt;h2&gt;Final Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;final-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#final-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;This might seem somewhat clunky, but it&amp;rsquo;s not bad considering what&amp;rsquo;s out there; and everything I&amp;rsquo;ve mentioned here is no cost. As you&amp;rsquo;re out on the web and find yourself logging into all sorts of systems, the need for multiple sperate sessions is going to present itself, and now you know how to do it.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;If you are running the 32bit edition on 64bit Windows, the path needs (x86) - &amp;ldquo;C:\Program Files (x86)\Mozilla Firefox\firefox.exe\&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>We Need To Improve How We Sell &#34;Smart&#34; Properties</title>
      <link>https://cwl.cc/2026/we-need-to-improve-how-we-sell-smart-properties/</link>
      <pubDate>Mon, 29 Jun 2026 08:30:06 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/we-need-to-improve-how-we-sell-smart-properties/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/smart-home-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
As I was preparing to sell a property in Ontario, Canada, it was becoming very clear that our current housing sales stream was limited in the face of new technological advances. Selling a house with a ton of smart features seemed mostly lost on buyers, and when they picked up on what was there, agreements were not structured well to accommodate this. With respect to that agreement, the entirety of what counted as inclusions was in the &amp;ldquo;Chattels&amp;rdquo; section. For my sale, it looked like this:&lt;/p&gt;
&lt;p&gt;All: electrical light fixtures, rods, blinds, window coverings. Gas furnace &amp;amp; equipment, central air conditioning, hot water tank (owned). Existing Appliances: stainless steel (S/S) fridge, S/S stove, S/S built in dishwasher, white washer and dryer, BBQ in backyard, central vacuum in garage, electronic car charger in garage, garage door opener &amp;amp; remote, all security cameras and accessories on property, doorbell camera.&lt;/p&gt;
&lt;p&gt;In houses increasingly being defined by what&amp;rsquo;s in them, relying on this description (especially if an agent who writes this who is not tech savvy) - it is highly limited and a major disservice to buyers and sellers. In my house were a number of &amp;ldquo;smart&amp;rdquo; devices and they all needed to be either reset or placed ready into the hands new owners. Given that all of them needed to either be on the Internet or make use of a user account, this would be challenging when the sale occurs because the house would not longer be online. For me, all these devices become orphaned in my accounts if not cleanly removed. For the buyer, they have to rely on learning how to hard reset them. While that&amp;rsquo;s all a challenge, it seemed possible that they&amp;rsquo;d take over the house and not even know about some of these devices at all.&lt;/p&gt;
&lt;h3&gt;Cameras&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;cameras&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#cameras&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The easiest things to handle were the cameras. I&amp;rsquo;d had a few Unifi cameras attached to a gateway device that I removed with the Internet connection. It was clear in the early days of listing the house that potential buyers were leery of &lt;a href=&#34;https://nationalpost.com/life/homes/attending-an-open-house-better-keep-your-voice-down&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;being recorded&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. The most prudent first step was to buy a new Network Video Recorder (NVR), a Unifi Instant and migrate those cameras to this new NVR while removing the Internet connection (and making it clear to people who came to showings). This would create separation from my systems. Later, leading up to the sale, all that was needed to reset the cameras and then the console itself so everything was at factory settings. Once they had an Internet connection, they would just need to connect the NVR and start the console setup and adoption.&lt;/p&gt;
&lt;h3&gt;Apple Homekit&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;apple-homekit&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#apple-homekit&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Operating on a larger level was an Apple Homekit &amp;ldquo;home&amp;rdquo; running on an Apple TV and a number of devices hooked into that. Additionally, an installation of Homebridge connected things like Unifi cameras to the Homekit ecosystem. Naturally, the majority of this setup left with me when moving from the house, but remnants still existed. All of the smart devices in the house were still hooked into the previous &amp;ldquo;Home,&amp;rdquo; so my removal of the home would not reset them. They&amp;rsquo;d all need to be reset and re-adopted, posing some challenges such as the smart switch near the front door. That had to be unscrewed from the wall and reset with a paper clip.&lt;/p&gt;
&lt;h3&gt;Garage Door Opener&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;garage-door-opener&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#garage-door-opener&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Along the way to enabling Homekit for different devices, the wireless garage door opener was a crucial piece of this. Having the ability to open the door in tools like Carplay was a major step in the home&amp;rsquo;s recent renovation (along with replacing the garage door itself). This involved getting a piece of hardware that would connect to the wireless network while also attaching to the Chamberlain door opener. Passing this to the new owners required a reset.&lt;/p&gt;
&lt;h3&gt;Entrance Doors&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;entrance-doors&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#entrance-doors&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Each one of the doors in the house featured a smart lock capable entry by code, fingerprints (except the garage entry door), physical key and even Apple&amp;rsquo;s Home key featured. These locks add so much convenience to the house, especially when one makes use of something like an Apple Watch. But, they too had to be kept linked to the manufacturer&amp;rsquo;s site until after the Internet was cut. This essentially orphaned them, but kept the Apple home features working. Agents would enter with a physical key from a lockbox, but every time I went back, I could still use my iPhone as a key. None of these three smart locks were mentioned in the sales agreement as a chattel.&lt;/p&gt;
&lt;h3&gt;Appliances&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;appliances&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#appliances&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The more common case is the refrigerator is a smart device, but in my home it was only the Stove, which was connected to the network and Internet. This was unlikely to be noticed or reset by the buyers given the limited utility and payoff for trying to understand the mechanics of getting it online. This was, again, something I needed to point out and highlight for the buyers.&lt;/p&gt;
&lt;h3&gt;Internal Networking&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;internal-networking&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#internal-networking&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Also left out of the agreement and possibly even unknown to the buyer was the networking cable that was installed while the house was renovated. All rooms, the garage, and parts of the basement were outfitted with CAT6 cabling with flush-mount jacks on the wall. in addition, three pair of fibre optic cables were run from a room upstairs (presumably an office) to the basement. This includes a pass through patch panel, switch in the garage and an access point installed in the kitchen. None of this was listed in the chattels of the agreement either. Certainly removing any of it would be difficult, but it seems possible the buyers wouldn&amp;rsquo;t even know these details or how to make use of this.&lt;/p&gt;
&lt;p&gt;In the end, I&amp;rsquo;d decided on creating a document that describes all the smart devices and how/where to use them so the new buyer was not in any doubt about what was installed. Modern sales agreements lack the kind of important specificity for new owners to take these tools and use them. I propose that a new section be created in the agreement for &amp;ldquo;Smart&amp;rdquo; features. Every existing device with the sale should be signalled and categorized including model numbers and other details so the homeowner is not in doubt about what they&amp;rsquo;re buying. As an added benefit, the inspector tasked with assessing the house&amp;rsquo;s fitness, could understand these features and report back.&lt;/p&gt;
&lt;p&gt;There is nothing in our agreement or in the &amp;ldquo;schedule&amp;rdquo; attached to it that dictates I describe or assist the new buyer in managing any of these smart devices. That seems to be a real disservice to them. As the May 28th, 2026 closing date approached, I had to consider what I could do to help these buyers. The way this process is setup, it seems like no communication is the expected outcome. With the blessing of my agent, I created an entire page (even with a table of contents) that explains all of the installed devices, links to manuals, etc. I printed a QR code link to this page (with a quick note and the house keys) to try and help them hit the ground running with the house.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/smart-home-qrcode.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Setting Up an iPhone or iPad to Access Microsoft 365 Mail</title>
      <link>https://cwl.cc/2026/add-microsoft-365-ios/</link>
      <pubDate>Fri, 26 Jun 2026 08:30:47 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/add-microsoft-365-ios/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/ios-365-feature.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m back with another &lt;a href=&#34;https://cwl.cc/categories/basics/&#34;&gt;basics&lt;/a&gt; article, this time I&amp;rsquo;m going to discuss connecting an iPhone or other Apple mobile device to access mail (and other data such as calendar) on a Microsoft 365 account. You have two ways to do this, either by way of the &lt;a href=&#34;https://apps.apple.com/us/app/microsoft-outlook/id951937596&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Outlook mobile app&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, or With Apple&amp;rsquo;s internal Mail app. Each one has their benefits&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;, but people do not typically use both.&lt;/p&gt;
&lt;h3&gt;iOS&amp;rsquo; Internal Mail App&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;ios-internal-mail-app&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#ios-internal-mail-app&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;If you had this email account setup previously, remove it - Go into Settings -&amp;gt; Mail -&amp;gt; Accounts and find any previous &amp;ldquo;Exchange&amp;rdquo; account attached to your device. Remove that by tapping on it and tapping &amp;ldquo;Delete Account&amp;rdquo; link. You&amp;rsquo;ll see a message &amp;ldquo;Delete from My iPhone&amp;rdquo; - please be sure to do that (it avoids duplicates)&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;.
&lt;img src=&#34;https://cwl.cc/images/ios-365-01.webp&#34; alt=&#34;Deleting the Previous Exchange Account&#34;  loading=&#34;lazy&#34; /&gt;&lt;/li&gt;
&lt;li&gt;Go back to  Settings -&amp;gt; Mail&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; -&amp;gt; Accounts and tap &amp;ldquo;Add Account.&amp;rdquo;
&lt;img src=&#34;https://cwl.cc/images/ios-365-02.webp&#34; alt=&#34;Adding the Account&#34;  loading=&#34;lazy&#34; /&gt;&lt;/li&gt;
&lt;li&gt;Choose &amp;ldquo;Microsoft Exchange.&amp;rdquo;&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;
&lt;img src=&#34;https://cwl.cc/images/ios-365-03.webp&#34; alt=&#34;Choosing Exchange&#34;  loading=&#34;lazy&#34; /&gt;&lt;/li&gt;
&lt;li&gt;Now, enter your full Microsoft 365 email address and the description can be anything - it automatically fills in.
&lt;img src=&#34;https://cwl.cc/images/ios-365-04.webp&#34; alt=&#34;Adding the email address&#34;  loading=&#34;lazy&#34; /&gt;&lt;/li&gt;
&lt;li&gt;Finally, you&amp;rsquo;ll go through the Microsoft login process (make sure to choose a work account if you use a custom domain), choose the stuff to sync (everything) and then the account is added and you&amp;rsquo;ll see email in the &amp;ldquo;Mail&amp;rdquo; app on the device.
&lt;img src=&#34;https://cwl.cc/images/ios-365-05.webp&#34; alt=&#34;Logging into the Account&#34;  loading=&#34;lazy&#34; /&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Microsoft&amp;rsquo;s Outlook App&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;microsofts-outlook-app&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#microsofts-outlook-app&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;Download the app from the &lt;a href=&#34;https://apps.apple.com/us/app/microsoft-outlook/id951937596&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;App Store&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Add Email Account&amp;rdquo; and login to your account.
&lt;img src=&#34;https://cwl.cc/images/ios-365-06.webp&#34; alt=&#34;Outlook on an iPad&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The Outlook app on an iPad device&lt;/em&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;There are other tools to access a Microsoft 365 account, though these would be the two most common ways to do on an iPhone or iPad. The process is going to look different on a MacOS device, so that&amp;rsquo;s not covered here, perhaps in a future basics article.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Outside the scope of this article.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;And, just a note that this does &lt;strong&gt;not&lt;/strong&gt; delete anything in 365, this is merely cleaning  your phone of the previous account&amp;rsquo;s data.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;In newer versions of iOS, this is under another sub menu called &amp;ldquo;apps.&amp;rdquo;&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:4&#34;&gt;
&lt;p&gt;In early iOS 27 betas, Apple appears to simply ask for an email address and tries to detect your provider. You can still manually choose &amp;ldquo;Microsoft Exchange.&amp;rdquo;&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Should the Canadian Government Ban Social Media? Looking at Bill C-34</title>
      <link>https://cwl.cc/2026/should-canada-ban-social-media/</link>
      <pubDate>Mon, 22 Jun 2026 08:30:51 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/should-canada-ban-social-media/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/should-canada-ban-social-media-banner.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Should we be banning social media for kids 16 and under? Will the Canadian government protect children with bill C-34? Should the government be in the business of banning Internet activities?&lt;/p&gt;
&lt;p&gt;The &lt;a href=&#34;https://variety.com/2026/digital/global/uk-social-media-ban-teens-under-16-1236781188/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;U.K. did it&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, and Canada is doing it with Bill C-34. You can read the full contents of the bill &lt;a href=&#34;https://www.parl.ca/LegisInfo/en/bill/45-1/C-34&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;here&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. As I write this post, it has not yet passed.&lt;/p&gt;
&lt;p&gt;We seem to have little conclusive evidence of how social media is affecting kids. Perhaps the most cited report is the one by the &lt;a href=&#34;https://www.hhs.gov/surgeongeneral/reports-and-publications/youth-mental-health/social-media/index.html?utm_source=chatgpt.com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;U.S. Health and Human Services&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. That one did say that social media presents a meaningful risk, but also provides benefits. A &lt;a href=&#34;https://assets.publishing.service.gov.uk/media/696e0b46bbcea094189e2366/impact-smartphones-social_media-children-study.pdf&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;report out of the U.K.&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; seems to indicate that we need more evidence and better quality studies.  But not everyone in the academic community is convinced of this. Candice Odgers takes the opposing point in her &lt;a href=&#34;https://acamh.onlinelibrary.wiley.com/doi/abs/10.1111/jcpp.13190&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;meta analysis&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, but seems to focus more on how poor the studies are, and not that social media is of no harm. Since studies of this nature take money and years, this may be something like smoking, in that there is a sense of danger, but we&amp;rsquo;ll need a time horizon to gather evidence.&lt;/p&gt;
&lt;p&gt;A good book to read is Jonathan Haidt&amp;rsquo;s &lt;em&gt;The Anxious Generation: How the Great Rewiring of Childhood Is Causing an Epidemic of Mental Illness&lt;/em&gt;. Haidt &lt;a href=&#34;https://cwl.cc/2025/02/is-there-an-epidemic-of-loneliness.html/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;describes a bleak&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; situation where children have stopped playing away from the keyboard and instead supplanted that with time spent on smartphones. This, he says, is rewiring children&amp;rsquo;s brains.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/should-canada-ban-social-media-02.webp&#34; alt=&#34;From The Anxious Generation&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;As Haidt describes it, girls are particularly vulnerable because:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;1.⁠ ⁠Girls are more affected by visual social comparison&lt;br&gt;
2.⁠ ⁠⁠Girls aggression is more relational&lt;br&gt;
3.⁠ ⁠⁠Girls more easily share emotions and disorders&lt;br&gt;
4.⁠ ⁠⁠Girls are more subject to predation and harassment&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;The starkest statistic Haidt provides is the rise in suicide rates for those aged 10-14 - that we lose our young people like this, and that it&amp;rsquo;s increasing at such an alarming rate is troubling. Let me be clear, it doesn&amp;rsquo;t necessarily mean it&amp;rsquo;s social media to blame, but it sure tracks well with the rise of the smartphone and later social media.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/should-canada-ban-social-media-01.webp&#34; alt=&#34;From The Anxious Generation&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;And we don&amp;rsquo;t need to go far outside ourselves for anecdotal evidence. As a man. I see the rise of the &amp;ldquo;manosphere&amp;rdquo; and elements such as anger, economic disparities, lack of opportunities and other ills making boys and men turn further inward and to addictive online media. This is creating angry apathetic young men with too much time on their hands.&lt;/p&gt;
&lt;p&gt;Scott Galloway, a writer and podcaster that has spoken exhaustively about men&amp;rsquo;s health says this in his book &lt;em&gt;Notes on Being a Man&lt;/em&gt;: &amp;ldquo;a large and growing cohort of bored, lonely, and poorly educated men is a malevolent force in any society, especially this one [USA].&amp;rdquo; I tend to agree. He also says to his sons later, &amp;ldquo;[the] enemy of masculinity is isolation,&amp;rdquo; &amp;ldquo;participate in as many collectives as possible.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Brittlestar, a popular Canadian comedian makes a good point in a &lt;a href=&#34;https://www.brittlestar.com/p/canadas-social-media-ban-problem&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;podcast&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;:
&amp;ldquo;If you ban kids from something, they&amp;rsquo;re just not going to be prepared for when they get unbanned from it.&amp;rdquo; He goes on to say &amp;ldquo;I think a social media ban for kids under 16 is largely unenforceable and maybe it will have negative impacts and that it&amp;rsquo;ll push kids into the darker, crappier sections of the web&amp;hellip;I think it has to be like spoking though, it has to be a cultural ban.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Unlearn16 or Joanna&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;, has &lt;a href=&#34;https://www.instagram.com/p/DZf81iTN4ig/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;another take on this&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. She thinks (after the ban) kids will be able to download social media apps, but just not post to them. While we don&amp;rsquo;t know who this ban will look in practice, that seems unlikely. Seems to me that, unless you&amp;rsquo;ve demonstrated you&amp;rsquo;re old enough to be on a platform, they will not let you access it. Period. She does make a great point in that are we going to ban Discord or YouTube? What really constitutes a social media app? And then Joanna says &amp;ldquo;instead of banning something, which by the way never works anyways.&amp;rdquo; That is incorrect Joanna. She goes on to say &amp;ldquo;We stop pretending like you can shield all the negative impacts of this stuff on to kids, and we start empowering them to deal with the realities of the day.&amp;rdquo; She&amp;rsquo;s half-right here because no one is pretending the kids can be completely shielded, but part of the solution absolutely includes empowering kids to understand and use the Internet in safe and smarter ways.&lt;/p&gt;
&lt;p&gt;Some companies are pre-empting this. The controls apple will give to parents are insane. A parent can turn a $2,000 iPhone into nothing more than a dumb phone, though who would buy an iPhone to be a glorified telephone+GPS tracker?&lt;/p&gt;
&lt;p&gt;There are some that say that parents should bear the burden of this. That parents should step in and stop their kids from using these services. That kids should &lt;a href=&#34;https://www.instagram.com/reels/DJr7YcSJ_7Z/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;face consequences inflicted by parents&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and take the stuff away. While &amp;lsquo;big tech&amp;rsquo; does need to be regulated more, the answer probably lies in both the parents while &lt;em&gt;still&lt;/em&gt; holding social media services accountable. There is a component to this, much like smoking, where society has to decide that kids should stop this activity and, in time, it falls out of style. Most but the outliers stop doing it, we move on. Savvy, rebellious kids are always going to find a way, guaranteed.&lt;/p&gt;
&lt;p&gt;To take it even further, the argument that children will only find ways around this by using burner phones or virtual private networking (VPNs) is valid. What I would say too is that we don&amp;rsquo;t know what sort of niche social network will exist under the radar that allows kids to get around these policies or corners of the Internet that all school kids know about but the government does not. This is not cats (kids) and mice (government), it&amp;rsquo;s more like cats and snails. The kids will be 100 steps ahead at any given time. Let&amp;rsquo;s face the reality too: If I&amp;rsquo;m an upstart 12-13 year old and see everyone else accessing stuff that is illegal to others, am I going to be able to get a cheap old iPhone or device that opens up the Internet? Yes. Policing this will be a nightmare and I think the experience of Australia&amp;rsquo;s ban has borne this out. However, the fact that parts of any ban may fail to work (a trusim), does not mean we don&amp;rsquo;t try.&lt;/p&gt;
&lt;p&gt;Another issue is what might kids lose? They may lose the ability to connect with friends the way they prefer (a la Snapchat) and risking further alienating a cohort that is already facing so much. Gander&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; user Nicola Woods makes a good point when she said:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;I worry a lot about the neurodivergent, disabled, chronically ill, gender non-conforming &amp;amp; otherwise minority teens who will lose access to online support spaces. I worry about our youth growing up without access to important minority voices that weren&amp;rsquo;t heard before the internet. I&amp;rsquo;d be ok with 12 [and under]&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Will these support spaces go away with a ban like this? I expect these effects could be devastating. I do also expect that most, if not all of these avenues are not solely based in social media access.&lt;/p&gt;
&lt;p&gt;Back to bill C-34, there are a ton of troubling things about this legislation. Leading this charge is Michal Geist who &lt;a href=&#34;https://www.michaelgeist.ca/2026/06/taking-stock-of-bill-c-34-five-things-to-know-about-the-governments-plan-for-a-kids-social-media-ban-mandated-age-verification-and-ai-chatbot-rules/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;rightly points out&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; that for any age verification system to be useful, everyone has to be verified. This means a massive handover of private information like identification where none of that is warranted now. The potential for this to be misused is enormous. I also think of those adults that wish to remain anonymous online, if social media services force those people to identify themselves, it could potentially put those people in danger. For those keen to disagree with anonymity online, think of people in danger of stalking or whistleblowers - anonymity could a life or death matter.&lt;/p&gt;
&lt;p&gt;The Canadian government has a poor track record for technology regulation in general. They failed to previously being about a ban on social media and caused considerable grief for users when they created an out-of-touch bill that forced online platforms to pay for linking to news. The essential idea of protecting children from social media is a good one, but the government is going to need to respond to the public better and adjust the legislation fast to find a way that balances all sides of this.&lt;/p&gt;
&lt;p&gt;This doesn&amp;rsquo;t even get into the waste of creating another super powerful government body that has vast, perhaps too far-reaching and open, powers. Canada needs to be reducing the size of government, not creating new branches of it.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.michaelgeist.ca/2026/06/thecommission/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;img src=&#34;https://cwl.cc/images/should-canada-ban-social-media-03.webp&#34; alt=&#34;From Michael Geist&#34;  loading=&#34;lazy&#34; /&gt;&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I am also a father to 10 month old boy. I sense that the right thing is to delay his access to a smartphone as long as possible. This could go well into his teens but I know that will likely be impossible in practice&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;. When he&amp;rsquo;s old enough, what is the social networking landscape going to look like? As parents, we may fail to protect him from the worst the world has to offer. Subjectively, I see the the landscape of social media as dangerous for his mental health. Twitter/X makes it easy to access a ton of graphic videos and people act horribly on social media (often because they can). Just recently, a woman was errantly thrown from a bridge in Brazil at a bungee ride; the people working there forgot to attach the safety harness and the 21 year-old women tragically fell to her death. Recorded in full, this video was then made available on every social media platform, unedited. Sometimes the worst is blurred out, sometimes the video cuts just before the woman hits the ground. In other cases, some have taken to saying the video was fake. If you were a child, you&amp;rsquo;d be inundated with this event from multiple angles and in graphic detail including every AI-slop created version after it until the next gruesome event comes along.&lt;/p&gt;
&lt;p&gt;The question I ponder is how to protect my son until he is ready think critically about what&amp;rsquo;s out there. Just like a late night festival where anything can happen, it&amp;rsquo;s prudent not to take him into that environment until it feels like he has the tools to think clearly, digest the chaos, be responsible, and enjoy himself. I understand that doesn&amp;rsquo;t coincide with a specific age, but that&amp;rsquo;s where parental teaching and guidance pays a huge role. As he ages, he&amp;rsquo;s going to gain agency and learn to circumvent anything I or the government tries to do. The hope is his tool chest of critical thinking has grown with his age.&lt;/p&gt;
&lt;p&gt;If by then, social media is boring and socially unacceptable, that is the only chance for something like this to succeed. Of course, a worse thing may take its place. I doubt anyone today has ultimate control over that outcome, but what we can do is not give in to the fear, uncertainty and doubt. Finding a path that protects young minds better while preserving the rights of everyone is a a health imperative. The addictive Internet complex is not going to do it for us. Parents can&amp;rsquo;t do it alone. The government will have to play some role. The way forward may include all of them.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;I sat a few tables away from her in a coffee shop one time. She was just like she is online.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;Gander is a Canadian &lt;a href=&#34;https://gandersocial.ca/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;social media site&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. It is currently an invite-only service.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;What&amp;rsquo;s a smartphone going to even look like in 8 to 10 years?&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Migrating a Large WordPress Blog to Hugo</title>
      <link>https://cwl.cc/2026/wordpress-to-hugo/</link>
      <pubDate>Fri, 19 Jun 2026 08:30:32 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/wordpress-to-hugo/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/hugo-logo.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
After seeing the beautifully created &lt;a href=&#34;https://excessivelyadequate.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Excessively Adequate&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, I was inspired to move my blog out of WordPress and into a static site generator like Jekyll or Hugo. Let me tell you, this site has accumulated so much cruft just to make it look nice that it&amp;rsquo;s started to bug me. But with north of 800 articles, is a switch going to be possible? I&amp;rsquo;m not above a big change and big project, but this one seemed daunting to say the least. The switch to Hugo would also need to stay out of the GitHub environment. There was no need to have this site connected to GitHub or its tools, so Hugo seemed like the best bet.&lt;/p&gt;
&lt;p&gt;Also the prospect of somehow drafting a post in Obsidian seemed like a fever-dream. And just to say, WordPress is &lt;a href=&#34;https://wordpress.org/news/2026/05/wp23/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;23 years old &lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and has gotten out of control with garbage plugins and self-promoting crap on the back-end. WordPress also seemed to handle its database like the Windows registry: Just grow and grow with all the never-cleaned remnants of old software left behind. As version seven of WordPress rolled out, the state of this system has become too insecure and people have become too dependant on the ecosystem. There&amp;rsquo;s a place for that, but not on a site that&amp;rsquo;s primarily a blog like this is. It&amp;rsquo;s time to go back to basics.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/wp-to-hugo-03.webp&#34; alt=&#34;WordPress to Hugo&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;What WordPress/Engintech (top) and Hugo/Hextra (bottom) look like displaying code.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The migration would start with an export of content from WordPress into Markdown format. I found &lt;a href=&#34;https://github.com/SchumacherFM/wordpress-to-hugo-exporter&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;a WordPress plugin&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; that would do this. The export is a little odd, by clicking on the menu item, you aren&amp;rsquo;t given an indication of what&amp;rsquo;s going on; but then the browser downloads a ZIP file of your blog&amp;rsquo;s content. It was looking good, so I started to think about how to set this up.&lt;/p&gt;
&lt;h3&gt;Installation&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;installation&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#installation&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Installing Hugo on Docker was not perfectly straightforward. It seemed that I was going to need to build from a Dockerfile, or at lest, run some manual commands to get the container to load. The container wasn&amp;rsquo;t loading a config file, nor were the location of the Markdown source files clear. Over time, I came to understand this new way of working with a static site generator.&lt;/p&gt;
&lt;p&gt;I found the &lt;a href=&#34;https://github.com/imfing/hextra&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Hextra&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; theme, and I really fell in love with the look. The short-codes available were perfect for my content containing code.&lt;/p&gt;
&lt;p&gt;The first template I tried failed to load. Oof. I found one that worked and started there. I found a way to get the slugs the way I wanted in posts. But, it seemed like the main page didn&amp;rsquo;t change with new posts. I liked how speedy things were. The theme I wanted was in Jekyll code and it would have to be &lt;a href=&#34;https://discourse.gohugo.io/t/how-to-port-jekyll-themes-to-hugo/3658&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ported&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. I wasn&amp;rsquo;t going to go there, but it was a start.&lt;/p&gt;
&lt;h3&gt;The folder and post structure&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;the-folder-and-post-structure&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#the-folder-and-post-structure&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;This was potentially a painful undertaking. The exported .MD (markdown) files made reference to images like:  &lt;code&gt;/wp-content/uploads/2021/04/Borland-Delphi.jpg&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;On Hugo, that image was located in: &lt;code&gt;/2021/04/Borland-Delphi.jpg&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;So I would have to update all those references in the files. As the migration progressed, I would take the better part of a month and do a search and replace. I even did a regex on some tags, but more on that later.&lt;/p&gt;
&lt;h3&gt;Hugo and NGINX&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;hugo-and-nginx&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#hugo-and-nginx&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Getting this working behind an NGINX proxy was another matter. Here was my site.conf:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-nginx&#34; data-lang=&#34;nginx&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;server&lt;/span&gt; {  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;listen&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;80&lt;/span&gt;;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;listen&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;[::]:80&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   &lt;span style=&#34;color:#f92672&#34;&gt;server_name&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;stage.cwl.cc&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   &lt;span style=&#34;color:#f92672&#34;&gt;root&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;/var/cwlhugo/html/&lt;/span&gt;; &lt;span style=&#34;color:#75715e&#34;&gt;#Absolute path to where your hugo site is
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   &lt;span style=&#34;color:#f92672&#34;&gt;index&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;index.html&lt;/span&gt;; &lt;span style=&#34;color:#75715e&#34;&gt;# Hugo generates HTML
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   &lt;span style=&#34;color:#f92672&#34;&gt;location&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;/&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;           &lt;span style=&#34;color:#f92672&#34;&gt;try_files&lt;/span&gt; $uri $uri/ =&lt;span style=&#34;color:#ae81ff&#34;&gt;404&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;   }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;This meant that my NGINX container had to see the root folder of the Hugo container (much like you see with fast-php). Once hooked up, I could preview site content from the domain &lt;strong&gt;stage.cwl.cc&lt;/strong&gt; locally. I&amp;rsquo;d made some progress on the main screen also, now showing the 10 most recent posts and the title was set correctly by way of a &amp;ldquo;partials&amp;rdquo; file in the template folder. I created recent-posts.html and added this:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-html&#34; data-lang=&#34;html&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;&lt;span style=&#34;color:#f92672&#34;&gt;h2&lt;/span&gt;&amp;gt;20 Most Recent Articles&amp;lt;/&lt;span style=&#34;color:#f92672&#34;&gt;h2&lt;/span&gt;&amp;gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;&lt;span style=&#34;color:#f92672&#34;&gt;ul&lt;/span&gt;&amp;gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{{ range first 20 (where .Site.RegularPages &amp;#34;Type&amp;#34; &amp;#34;blog&amp;#34;) }}  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;&lt;span style=&#34;color:#f92672&#34;&gt;li&lt;/span&gt;&amp;gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;&lt;span style=&#34;color:#f92672&#34;&gt;a&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;href&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;{{ .Permalink }}&amp;#34;&lt;/span&gt;&amp;gt;{{ .Title }}&amp;lt;/&lt;span style=&#34;color:#f92672&#34;&gt;a&lt;/span&gt;&amp;gt; -  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;&lt;span style=&#34;color:#f92672&#34;&gt;span&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;class&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;date&amp;#34;&lt;/span&gt;&amp;gt;{{ .PublishDate.Format &amp;#34;2 Jan 2006&amp;#34; }}&amp;lt;/&lt;span style=&#34;color:#f92672&#34;&gt;span&lt;/span&gt;&amp;gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;/&lt;span style=&#34;color:#f92672&#34;&gt;li&lt;/span&gt;&amp;gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{{ end }}  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;/&lt;span style=&#34;color:#f92672&#34;&gt;ul&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Then, to add this to the main page, I added a line referencing the partial file in the home.html file:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-html&#34; data-lang=&#34;html&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;&lt;span style=&#34;color:#f92672&#34;&gt;div&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;class&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;content&amp;#34;&lt;/span&gt;&amp;gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{{ .Content }}  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{{ partial &amp;#34;recent-posts.html&amp;#34; . }}  
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&amp;lt;/&lt;span style=&#34;color:#f92672&#34;&gt;div&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;As I migrated each post to the new site, they were populating, but not automatically. I found by editing the Hugo config file ( in my case hugo.yaml), and saving it, the home page gets rebuilt by the server&amp;rsquo;s agent. I&amp;rsquo;ll probably keep the old site functioning for a little while and see where Hugo goes. I will still be able to edit from a mobile device, and it will just be within Obsidian&amp;rsquo;s umbrella this time.&lt;/p&gt;
&lt;p&gt;With the exporter, I quickly came to see that it did not export content after the &amp;ldquo;more&amp;rdquo; tag - something of a remnant of my old site. So I had to go and remove the tag before doing a full export. I could get around this by adding a line to my theme&amp;rsquo;s functions.php:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;add_filter( &amp;#39;the_content_more_link&amp;#39;, &amp;#39;__return_empty_string&amp;#39; );&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Now that only hid the &amp;ldquo;more&amp;rdquo; tag, but the export still left out bottom post content. So it was back to the drawing board. I set out to remove the more tag from each post, one by one thinking about how I might do this faster in the database. For now, this was what worked. I got through it in two days.&lt;/p&gt;
&lt;p&gt;After getting the full content of post out, I had to make some basic edits, and then formatting. The hell of having to format all these posts was almost intolerable. Over time, there were so many tags overriding the theme and image links to all sorts off-page sites like Blogspot. This was going to need a full week of time to sift through all these posts.&lt;/p&gt;
&lt;p&gt;As I moved over about eight of the older posts, it was clear that the content would need to be slowly cleaned up and rebuilt on the new Hugo page. This would take a heck of a long time for almost 800 posts, but on the bright side, it would give me a chance to revisit my older stuff and clean up any of the uglier content.&lt;/p&gt;
&lt;h3&gt;Scheduling Posts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;scheduling-posts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#scheduling-posts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Scheduling posts was another challenge - since Hugo&amp;rsquo;s a static site generator, I needed to have the server rebuild periodically. I looked to the variable HUGO_REFRESH_TIME to see if that would help, but it seemed to be attached to a docker image I wasn&amp;rsquo;t using. The idea is that when setting the PublishDate to a date in the future, Hugo will honour that and the entry when that date is no longer in the future (I.E. in the past). Making this more challenging, most of the explainer sites out there link this process to Github actions. I was solely running Hugo on on Docker and that was it.&lt;/p&gt;
&lt;p&gt;This turned out be trickier than I thought.&lt;/p&gt;
&lt;p&gt;First, I made a test post and set a future date as the &lt;code&gt;date:&lt;/code&gt; in the frontmatter of the post. I checked on the site, the post did not publish. Good start. Then, from the docker host itself, I ran `docker exec -it -u root HugoContainer hugo list future&#39;&lt;/p&gt;
&lt;p&gt;Sure enough, hugo returned this result:
`content/sch.md,,test,2026-05-29T20:35:56-04:00,0001-01-01T00:00:00Z,2026-05-29T20:35:56-04:00,false,http://stage.cwl.cc/sch/,page,&#39;&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s what I was looking for, so I waited until after the date I wanted and did a manual full build from the docker host to see if the post would go up;
&lt;code&gt;docker exec -it -u root HugoContainer hugo build&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;It posted. Amazing. So on the bare metal docker host, I setup a cronjob to run at about 10am. Adding this to the crontab.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; :
`0 10 * * * docker exec -t HugoContainer hugo build&#39;&lt;/p&gt;
&lt;p&gt;As a nice bonus, the Hextra theme also read and responded to the &lt;code&gt;modified:&lt;/code&gt; entry in a post&amp;rsquo;s frontmatter and updated that date on a post&amp;rsquo;s bottom-right. While I was writing this article on WordPress, I took it over to Obsidian to finish. This would create a bit of a hybrid situation, but it wasn&amp;rsquo;t too painful in the end.&lt;/p&gt;
&lt;h3&gt;In Obsidian, to Preview Images Inline&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;in-obsidian-to-preview-images-inline&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#in-obsidian-to-preview-images-inline&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Linking this up with Hugo needed a similar folder structure on the Hugo server at &lt;code&gt;/src/static/images&lt;/code&gt; as would be used inside of obsidian at &lt;code&gt;/images&lt;/code&gt;. Then when referencing  images in Markdown source content, both would allow me to preview the article before posting it. This super-simple way of handling images meant that I needed to (in a rather clunky way) upload files to the server and keep them in the Obsidian folder. Annoying, but maybe a sync task could fix that in the future.&lt;/p&gt;
&lt;h3&gt;Removing Extra HTML Tags with a Regex&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;removing-extra-html-tags-with-a-regex&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#removing-extra-html-tags-with-a-regex&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;In too many of the old blog posts there were nasty span and div tags littered all over. To combat this, I used &lt;a href=&#34;https://notepad-plus-plus.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Notepad++&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and a regular expression to delete all occurrences of them. Use the Replace function:&lt;/p&gt;
&lt;p&gt;find: &lt;code&gt;&amp;lt;(span|div).*?&amp;gt;|&amp;lt;/(span|div)&amp;gt;&lt;/code&gt;&lt;br&gt;
replace with: {empty}&lt;br&gt;
Search Mode: Regular Expression&lt;/p&gt;
&lt;p&gt;You can remove the div or span, or add other tags if you&amp;rsquo;re going to use this expression yourself.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/wp-to-hugo-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;h3&gt;The Home Page&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;the-home-page&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#the-home-page&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;To bring all this together, I needed to code the basic look of the home page and its article listings. This was perhaps the most difficult to get right for me. Couple that with the fact that a full Hugo build had to happen to refresh the page. To get started, Ashik Nesin&amp;rsquo;s &lt;a href=&#34;https://nesin.io/blog/hugo-show-recent-posts-homepage&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;article&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; gave me some ideas on how to build in recent posts. I took that and expanded on it in my own way. That effort was focused on a partial file in Hextra&amp;rsquo;s theme folder and was something I&amp;rsquo;d change every day trying to get it just right.&lt;/p&gt;
&lt;h3&gt;Opengraph&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;opengraph&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#opengraph&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;With the root page taking shape and I&amp;rsquo;d gotten about halfway through the process of reformatting old content, I turned to trying to build all the meta information as it existed on the old site. It wasn&amp;rsquo;t clear if I needed to edit theme data or not.&lt;/p&gt;
&lt;p&gt;Since this was controlled in the theme, the file in Hextra most important to that was &lt;code&gt;themes/hextra/layouts/_partials/head.html&lt;/code&gt; - and this file calls a bunch of partial files from here:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;  {{- partial &amp;#34;opengraph.html&amp;#34; . -}}
  {{- partial &amp;#34;schema.html&amp;#34; . -}}
  {{- partial &amp;#34;twitter_cards.html&amp;#34; . -}}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;These files appear to call Hugo&amp;rsquo;s build in stuff for handling this. In my case, I overrode this by adding my own twitter_cards.html in Hugo&amp;rsquo;s root /layouts/partials directory. I then added a couple items, no doubt I will add more when the site is live and I can test it.&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;  &amp;lt;meta name=&amp;#34;twitter:site&amp;#34; content=&amp;#34;@cwlco&amp;#34; /&amp;gt;
  &amp;lt;meta name=&amp;#34;twitter:creator&amp;#34; content=&amp;#34;@cwlco&amp;#34;&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Taxonomy&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;taxonomy&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#taxonomy&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;I&amp;rsquo;ve also wanted to make use of the taxonomy system and display categories that were set for each post and sitting in front matter. Thsi took a little doing, but I managed to add the categories for each article inline next to the publish date. Here&amp;rsquo;s what I did.&lt;/p&gt;
&lt;p&gt;First, I created a file name cats.html in the &lt;code&gt;/themes/hextra/layouts/_partials&lt;/code&gt; directory. This included the following code (ripped and slightly modified from &lt;a href=&#34;https://www.jakewiesler.com/blog/hugo-taxonomies&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;this helpful site&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;):&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;{{ $taxonomy := &amp;#34;categories&amp;#34; }} {{ with .Param $taxonomy }}
&amp;lt;ul&amp;gt;
  {{ range $index, $tag := . }} {{ with $.Site.GetPage (printf &amp;#34;/%s/%s&amp;#34;
  $taxonomy $tag) -}}
  
    &amp;lt;a href=&amp;#34;{{ .Permalink }}&amp;#34;&amp;gt;#{{ $tag | urlize }}&amp;lt;/a&amp;gt;
  
  {{- end -}} {{- end -}}
&amp;lt;/ul&amp;gt;
{{ end }}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;With this code, it takes each category it finds referenced in the article&amp;rsquo;s front matter and displays it with a hashtag character in front of the reference. As is probably obvious, it was intended for tags, but I changed that to categories - I could further change variable names to clean it up later, but this works. In addition, this code will hyperlink to the category page when clicked.&lt;/p&gt;
&lt;p&gt;Next, I add a partial calling the cats.html in &lt;code&gt;/themes/hextra/layouts/blog/single.html&lt;/code&gt;, targeting just after the date:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt; &amp;lt;div class=&amp;#34;hx:mt-4 hx:mb-16 hx:text-gray-500 hx:dark:text-gray-400 hx:text-sm hx:flex hx:items-center hx:flex-wrap hx:gap-y-2&amp;#34;&amp;gt;
          {{- with $date := .Date }}&amp;lt;span class=&amp;#34;hx:mr-1&amp;#34;&amp;gt;{{ partial &amp;#34;utils/format-date&amp;#34; $date }}&amp;lt;/span&amp;gt;{{ end -}}
          
 {{ partial &amp;#34;cats.html&amp;#34; .}}		&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;When a post has categories in the front matter, it looks like this:
&lt;img src=&#34;https://cwl.cc/images/wp-to-hugo-04.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;h3&gt;Keeping Hugo Running Through Updates&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;keeping-hugo-running-through-updates&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#keeping-hugo-running-through-updates&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;As I&amp;rsquo;d be editing a ton of files and theme info, I was hyper aware of needing to be careful with updates to both Hugo and the Hextra theme.&lt;/p&gt;
&lt;p&gt;As I was migrating, Hugo&amp;rsquo;s docker container had an update, so I&amp;rsquo;d be able to test that. After backing up Hugo&amp;rsquo;s data volume, I updated the 500 MB docker container and the site came back online with no issues. There were no Hextra updates yet, so that will be a test for another day.&lt;/p&gt;
&lt;h3&gt;Other, smaller stuff&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;other-smaller-stuff&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#other-smaller-stuff&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;I added a reasonably nice way to attach captions to images while also centering the captions and bringing the font size down. This allowed me to call in markdown simply:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-markdown&#34; data-lang=&#34;markdown&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  ![&lt;span style=&#34;color:#f92672&#34;&gt;image&lt;/span&gt;](&lt;span style=&#34;color:#a6e22e&#34;&gt;/image.jpg&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  *Caption*&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;This is done in my theme&amp;rsquo;s custom css by overriding the img+em tags thusly&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-css&#34; data-lang=&#34;css&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;img&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;em&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;	&lt;span style=&#34;color:#66d9ef&#34;&gt;display&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;flex&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;	&lt;span style=&#34;color:#66d9ef&#34;&gt;text-align&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;center&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;	&lt;span style=&#34;color:#66d9ef&#34;&gt;justify-content&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;center&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;	&lt;span style=&#34;color:#66d9ef&#34;&gt;align-items&lt;/span&gt;: &lt;span style=&#34;color:#66d9ef&#34;&gt;center&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;	&lt;span style=&#34;color:#66d9ef&#34;&gt;font-size&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;15&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;px&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The three files I kept open the entire migration:
/themes/hextra/layouts/_partials/recent-posts.html
/hugo.yaml
/themes/hextra/assets/css/custom.css&lt;/p&gt;
&lt;h3&gt;Issues&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;issues&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#issues&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;While working with Hugo and Hextra, I did come across some challenges. The biggest challenge was when Hugo started to build type: page markdown files with four lines of blank space. I went crazy over this until I deleted hextra&amp;rsquo;s theme folder and placed the original files back. Slowly, I then edited any files I&amp;rsquo;d used previously and pages were rendering correctly again. it seemed for a while that the culprit was Hugo, but that was not the case.&lt;/p&gt;
&lt;h3&gt;What I&amp;rsquo;ll Miss&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;what-ill-miss&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#what-ill-miss&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The editor in WordPress was a far better experience for the most part because I didn&amp;rsquo;t have to remember short codes and style marks. I realize also that the podcast that sat hosted on this site will go away. I walked away from that so long ago that it was time to let it go. Secondly, the nice auto mailer I&amp;rsquo;d found called MailPoet would also go, since that&amp;rsquo;s WordPress only. I&amp;rsquo;d have to go back to the drawing board on solving the issue of mailing people when an article is published. The platform I used previously was SendFox and that may be a workable solution, but given that its RSS features seem to be broken, it might not work out. It&amp;rsquo;s useful to update people when a new post is out, so I wanted to keep this feature.&lt;/p&gt;
&lt;p&gt;Of course, the prospect of drafting and publishing this very post in Obsidian was exciting. I&amp;rsquo;m happy to say these very words are being written in &lt;a href=&#34;https://cwl.cc/2025/09/in-praise-of-obsidian.html&#34;&gt;this great tool&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Ending After the Switch to Hugo&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;ending-after-the-switch-to-hugo&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#ending-after-the-switch-to-hugo&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;This will also mark the end of this blog supporting comments. There&amp;rsquo;s been a long-standing love/hate relationship with them, but it was time to go. Most of what comes in is SPAM and the days of active commenters on the web seem to have taken a back seat to other venues, rage baiting and AI summaries prompted by another AI. You, of course, can always &lt;a href=&#34;https://cwl.cc/support/&#34;&gt;contact&lt;/a&gt; me and I welcome it. Sometimes, I add comments you send in to a post update or invite them to guest blog.&lt;/p&gt;
&lt;p&gt;Internal podcast stuff is also going to drop off. None of that has seen an update in many moons. The WordPress plugin supporting it seemed far too bloated for what it was doing. Buh-bye. The podcast itself, maybe one day it comes back. There were some dangling pieces of WooCommerce and plugins used but removed. That will all go away.&lt;/p&gt;
&lt;h3&gt;Final Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;final-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#final-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Once it was all done, it was time to take Google&amp;rsquo;s &lt;a href=&#34;https://pagespeed.web.dev/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;PageSpeed Insights&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and compare it to the previous site iteration. Here&amp;rsquo;s where the site was at before the update:
&lt;img src=&#34;https://cwl.cc/images/wp-to-hugo-old-site.webp&#34; alt=&#34;Google’s PageSpeed test on the old site&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;After the update, this page saw some significant gains in mobile performance.
&lt;img src=&#34;https://cwl.cc/images/wp-to-hugo-new-site.webp&#34; alt=&#34;Google’s PageSpeed test on the new site&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;There is still work to do, but this site should be faster, smoother and more interesting (doubt it, but one can hope). This has been a massive weeks-long marathon and it feels worthwhile so far. Time will tell. &lt;a href=&#34;https://cwl.cc/support/&#34;&gt;Get in touch&lt;/a&gt; and let me know what you think.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;The -it switch cannot be used in cron because it&amp;rsquo;s an interactive terminal. One has to change this to -t to allow the command to run properly.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;I just hit it with every damn centring statement I could think of. It&amp;rsquo;s possible a few of those aren&amp;rsquo;t really needed.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>A Look at Actual Multiple Monitors (Six Years Late)</title>
      <link>https://cwl.cc/2026/06/a-look-at-actual-multiple-monitors-six-years-late.html/</link>
      <pubDate>Mon, 15 Jun 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/06/a-look-at-actual-multiple-monitors-six-years-late.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/amm-logo.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Way back in 2020, I was in contact with the author of this software. He&amp;rsquo;d provided me with a review copy and I looked at it, wrote most of this post and it got shelved (my fault entirely). Today, I&amp;rsquo;m taking another look at this software to see if how it looks now. You can find the software on the &lt;a href=&#34;https://www.actualtools.com/multiplemonitors/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Actual Tools website&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/amm-main-screen.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;I wanted to provide a review of this application and the author was kind enough to provide a key so I’d be able to test all the features. My situation is somewhat unique in that my current laptop, a Microsoft Surface, is connected to many different monitors and in a number of different multi-monitor situation depending one where I am. As I added monitors to Windows (currently version 10), I noticed that the interface doesn’t handle the different monitors well. When I came back to this years later and tried to use the key, I found out that the software does not let you use a license in perpetuity (like &lt;a href=&#34;https://cwl.cc/tag/total-commander&#34;&gt;Total Commander&lt;/a&gt; does). Hey, that&amp;rsquo;s okay, it&amp;rsquo;s the prerogative of the author. One still gets a 30-day trial to use an test the software. The author has some &lt;a href=&#34;https://www.actualtools.com/multiplemonitors/landing/crack/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;thoughts about cracks&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, etc.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/amm-license.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;br&gt;
On running Actual Multiple Monitors (AMM), you’ll notice that it does a few really useful things right away. Probably the biggest and the best feature to me was duplicating the system tray area on every monitor&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. Sometimes I need access to a running tool, or when Total Commander is minimized to the try and a click on the tray icon gets it back. There&amp;rsquo;s lots of interaction with the tray usually, and having it sit way over on my small Surface primary monitor felt like a waste. Another cool feature related to the tray too was having the Recycle Bin (and the ability to right-click clean it) offered yet more convenience. You&amp;rsquo;ll notice too, that you can pin icons to the taskbar individually for each monitor. That&amp;rsquo;s helpful too when clicking on a pinned icon from a particular monitor&amp;rsquo;s taskbar launches the app there too (or at least that&amp;rsquo;s the ideal). Already AMM is useful.&lt;/p&gt;
&lt;p&gt;How windows interact with the different desktops is important too. The line sort of started to blur as far as what AMM was doing and what Windows itself was doing. In Windows, there’s a well-known hotkey combination of SHIFT + WINKEY + Arrow (right|left) that pushes the in-focus window to the corresponding numbered desktop. That works well enough, but AMM offers another tool, this right on the title bar of windows - AMM calls these “Muse Actions.” The button options there control a few things, but one of them moves the window to the next sequence monitor in the chain. It’s kind of a quick tool, which is useful, but I tend to lean more on the keyboard shortcuts (so they’re not forgotten). Strangely too, turning off this setting turns off the icons, but AMM has trouble keeping them off for good. Confusingly, these options are controlled in a setting called “Title Buttons”. They can be annoying because they’re overlaid on Chrome tabs (for example), blocking access to them.&lt;/p&gt;
&lt;p&gt;While useful, AMM has had issues. When attempting to change the resolution on my computer’s primary display, AMM set a resolution, but was unable to change it back. I had to exit, then use the built-in Windows display settings to get the display back to a usable state. Other times, shifting monitors from portrait to landscape, changing setting in AMM’s dashboard, yielded no change. In cases like that, I was forced to exit AMM, change the setting in Windows and reload. Also, all the pinned taskbar stuff was wiped. While it only occurred once, it seemed possible the tool crashed on me, but that may have been my error while testing it. Taken all together, things like these make me think AMM isn’t really playing well with the underlying Windows 10 system (not that I’d expect it, no thanks to Microsoft). Is that still the case in Windows 11?&lt;/p&gt;
&lt;p&gt;I also had to restart the AMM application because it wasn’t respecting the taskbar boundary limits when maximizing or snapping a window. Once restarted, AMM started working normally again.&lt;/p&gt;
&lt;p&gt;And working in single desktop (after disconnecting all monitors), the application generally sits benign adding some icons such as the Recycle Bin making things mostly useful. At some point my tray icons are colliding with the taskbar pinned buttons. Ah, a problem for another time. I should mention too, AMM runs fine without an Internet connection. I see the occasional refresh happening in the background, but that may not be AMM doing it.&lt;/p&gt;
&lt;p&gt;For the sheer number of options and things you can do with this tool, it&amp;rsquo;s worth checking out.&lt;/p&gt;
&lt;p&gt;Version of AMM Tested: in 2020: 6.x, in 2026: 8.15.3&lt;br&gt;
Computer: Surface Pro 6 / Dell Optiplex Desktop&lt;br&gt;
Monitors: (3 at maximum, 1 at minimum).&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;It&amp;rsquo;s probably the biggest reason to get this software, even on Windows 11.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Uncovering a QR Code Scam That Tries to Hijack Parking Payments</title>
      <link>https://cwl.cc/2026/a-qr-code-scam/</link>
      <pubDate>Wed, 10 Jun 2026 14:00:21 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/a-qr-code-scam/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-qr-code-scam-01.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Recently, the City of Toronto replaced a bunch of parking meters along a stretch of Yonge St. This in itself is unremarkable beyond the fact that these new machines record the user&amp;rsquo;s plate number where the old ones did not. The city has also stopped taking cash to pay for parking. But, that privacy issue for another column. Today, I noticed something on the front of these new and somewhat complicated machines: An easy to use (but haphazardly placed) QR Code on the front of the device that had &amp;ldquo;Scan to Pay&amp;rdquo; written under it. I knew this was a scam, and it was time to uncover this.&lt;/p&gt;
&lt;p&gt;This is better known by the phishing-like moniker quishing where a legitimate QR code is typically overwritten with a sticker. Sometimes the bad QR code is the first thing you see. When scanned, it takes you to the criminal&amp;rsquo;s website so they can either steal your money or information.&lt;/p&gt;
&lt;p&gt;When the victim scans this QR code, it linked to this page:
&lt;code&gt;https://161-35-47-111.cprapid.com/ca.html&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;This is obviously not a City of Toronto payment site. This is a criminal trying to get you to pay &lt;em&gt;them&lt;/em&gt; for parking. The actual way to pay, &amp;ldquo;Press here to begin,&amp;rdquo; never stood a chance.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-qr-code-scam-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;h3&gt;The Technical Details&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;the-technical-details&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#the-technical-details&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The scammers are running this all in one html page, presumably on Apache on the 161-35-47-111.cprapid.com domain. The front part of that domain is the IP  of the site, so this suggests this is some sort of temporary site service or redirector. At the time of writing there was nothing to see at &lt;a href=&#34;cprapid.com&#34;&gt;cprapid.com&lt;/a&gt;. Checking this out on Virus Total didn&amp;rsquo;t &lt;a href=&#34;https://www.virustotal.com/gui/url/972906d0c39fd80527af367d3e3295bf3ab46aa0bf3cdd1d312fa6906cba6135/details&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;return&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; much.&lt;/p&gt;
&lt;p&gt;The server appeared to be on AS 14061
( DigitalOcean, LLC ) while the server itself interacts with Cloudflare. Searching this domain&amp;rsquo;s history yielded no real metadata other than the fact that it changes &lt;a href=&#34;https://www.whoxy.com/cprapid.com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;rapidly&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-qr-code-scam-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;An older-style parking meter with a QR sticker&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Easy Park&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;easy-park&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#easy-park&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;In the time it took to get a coffee, the Green P site went down; perhaps law enforcement got wind of this. Trying other variations of names such as toronto.html, tpa.html, park.html yielded no pages.&lt;/p&gt;
&lt;p&gt;A quick look at the root of this domain and it shows an &lt;a href=&#34;https://easypark.com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;EasyPark&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; paying in British Pounds payment processor. A look at the actual Easypark and they seem to only offer a mobile app. Looking back at the fake  site, the logo seems good, though the top-right of the page shows two &amp;ldquo;Home&amp;rdquo; links that go nowhere, and it&amp;rsquo;s it&amp;rsquo;s the same for other links in the footer. Curiously, the site never shows a price. It starts out at 0 GBP promising so how the price later, then asks for a credit card still without showing a price. Once it has the card, details the site appears to start the payment process for some unknown amount. When I inserted a fake credit card number, the site&amp;rsquo;s processing wheels just kept spinning. It made me wish I could see what kind of transaction was being put forward, but there was no way to find a service that would support this on-the-fly without money attached.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-qr-code-scam-05.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The EasyPark interface&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;The Site Returns&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;the-site-returns&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#the-site-returns&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Then, just as fast as the Green P site went down, it came back up. It was a chance to get a good look at it. The Green P site had working duration controls, so selecting 11 hours and 15 minutes of parking yielded a charge of $45.00&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. The controls allowed for a maximum of 24 hours and 60 minutes, and for that one would need to pay $100.00. When stepping though the payment process, the site asks for a plate number, but that&amp;rsquo;s attached to a &lt;code&gt; &amp;lt;form action=&amp;quot;&amp;quot;&amp;gt;&lt;/code&gt; statement, meaning it&amp;rsquo;s irrelevant what you add (but probably also not being sent to the criminals). Doubly so for when it pushes the victim to the payment processor, our scammers tell you parking voucher process is complete while it does not verify the victim has paid. Once you give the criminals the nice payment, they may have your credit card to further exploit and you&amp;rsquo;ll also get a fat ticket from the City of Toronto for parking illegally.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s a look at the payment flow site in action:&lt;/p&gt;
&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
			&lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/BdDVyLwHpK4?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;p&gt;Most interesting, on Bunq, a payment processor, the seller&amp;rsquo;s account is listed as &amp;ldquo;EasyPark&amp;rdquo; with an account number of NL03 BUNQ 2196 0537 24. This may be how law enforcement finds these criminals. Could they be British?&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-qr-code-scam-04.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;BUNQ or Bank of the Free&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;As you might imagine, I scanned a bunch of these machines down the street to see if there were more stickers. When I found one. I immediately removed the sticker. They were placed on old and new machines alike. The threat website is live now, so one wonders if they&amp;rsquo;ve made money&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. Let&amp;rsquo;s get the word out and make sure that both the city and authorities know about this. Be vigilant folks. Be careful what QR code you scan.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Related&lt;/strong&gt;: Green P is aware of these and has &lt;a href=&#34;https://parking.greenp.com/news/be-alert-fraudulent-qr-codes/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;warned the public&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; about them and that they &amp;ldquo;report the incidents to City of Toronto Cyber Security and the websites are forced to shut down.&amp;rdquo; It&amp;rsquo;s not clear what mechanism they might use to do so.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: CTV News &lt;a href=&#34;https://www.ctvnews.ca/toronto/article/scammers-appear-to-be-affixing-fake-qr-codes-to-some-parking-metres-police-say/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;has coverage&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; of this scam and perhaps most interesting is that the fraudsters are charging up to $2,000 per transaction.&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;“The individual thinks they’re paying for street parking, scans a QR code, they are directed to what appears to be a legitimate website, make a payment, and instead of being charged $7 they’re charged almost $2,000,” Const. Laura Brabant said.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: It&amp;rsquo;s July 11th, 2026 and most of the stickers shown above have been removed from the area. Today, I noticed a new set of stickers, smaller and with payment processor logos on them. The criminals are back, this time pointing to &lt;code&gt;https://qr.link/42a0fn&lt;/code&gt; which redirects to a similar &amp;ldquo;EasyPark&amp;rdquo; page as the original. It&amp;rsquo;s likely the same individuals, just a new style of sticker. They aren&amp;rsquo;t going to stop if they&amp;rsquo;re making money. I have reported the link and taken down stickers wherever I can.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/images/a-qr-code-scam-06.avif&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;This is probably when the criminals use their own payment gateway obscuring the parking price until the final surprise transaction happens. You should expect they&amp;rsquo;ve compromised your credit card too.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Presumably Canadian dollars when finally charged to your card. Correction: As you see in the video, that was charging in Euros. Later in the day, the site&amp;rsquo;s payment processor was switched to inline.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;No doubt shutting down the site is nothing but a speed bump to them, especially if the domain is a redirector.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>(Mis)Adventures in Wholesale</title>
      <link>https://cwl.cc/2026/06/misadventures-in-wholesale.html/</link>
      <pubDate>Mon, 08 Jun 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/06/misadventures-in-wholesale.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/blueneck-logo.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The idea was simple: Find a reputable place to buy laptops in bulk or wholesale (tor a client). This is something I&amp;rsquo;m doing all the time, and to be honest I&amp;rsquo;m batting .000&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; in finding an outfit that maintains a decent standard. It seems so difficult to find a wholesaler that will do basic quality control and sell devices in reasonable condition. Procuring hardware and software at competitive prices is part of CWL&amp;rsquo;s core mission. Looking for these deals is a daily routine, trying to find sales in bulk or warehouse type offerings of devices that are in good enough quality to be useful.&lt;/p&gt;
&lt;p&gt;This time I found &lt;a href=&#34;http://bntechnologies.ca/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Blueneck Technologies&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. They&amp;rsquo;re located out on Satellite Drive in Mississauga. Varun appears to be the main guy involved and possibly the owner. When I contacted them on Facebook Messenger, they were identifying themselves as &amp;ldquo;Deep.&amp;rdquo; When I asked them where they were, they offered an address but would not offer a unit name until I&amp;rsquo;d arrived. Yes, there was definitely a shady feel to all of this, but I pressed on. Deep was selling a boatload of devices. His price list clearly indicated that he had more than 500 computers as his warehouse. Deep was careful send me a cropped image of a spreadsheet that only showed model numbers and stock level, not pricing. Still, while I was readying to visit these folks and the &amp;ldquo;bro&amp;rdquo; salutations continued&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; to ring in my head, I&amp;rsquo;d wondered if the price he gave me was really that great. Could I further bargain with this fellow when I got there? Were these guys legit?&lt;/p&gt;
&lt;p&gt;Deep, to his credit, started in on the quality of the devices, and began sending me pictures. After all, He was watching a sale slip away. His last request was simply &amp;ldquo;come bro, you will see quality.&amp;rdquo; Not sold on this, but not too sure this guy would move much on his prices, this could go in any direction if I went to the location for 11 AM. What I did have was curiosity. That was driving me forward to meet with this fellow and see what he was selling. It was crunch time and I needed to make the call, go or stay.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/wholesale-deep-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;I decided to make the trip. Deep&amp;rsquo;s location was way out near the airport in some vanilla strip mall. As planes flew above me, the road and buildings were bare because I&amp;rsquo;d come on a holiday. Deep made a point that he wouldn&amp;rsquo;t work the day before; a Sunday - but on one of Canada&amp;rsquo;s biggest holidays, he was at the office. I arrived and the location smelled like death. That seems odd in retrospect, but it smelled like embalmers were working in the back. The office was clean and polished though, with a nice logo on the wall opposite the main door. There were three guys working this small office and warehouse: a receptionist who answered the door, a tech in the back and the main guy - the one I presumed that I was talking to online because he also made a point to call me &amp;ldquo;bro&amp;rdquo; and &amp;ldquo;brother&amp;rdquo; every few sentences. I learned his name was Varun.&lt;/p&gt;
&lt;p&gt;Varun was right, the devices looked like they were cosmetically in good shape. The first odd thing I noticed was his lies about stock level. He said there twelve available and his stock spreadsheet indicated stock of 37 units when we chatted earlier. Yet, I get there the minute he opened at 11 AM and he didn&amp;rsquo;t have more than eight computers. He says &amp;ldquo;Bro, we&amp;rsquo;re selling fast,&amp;rdquo; and I said &amp;ldquo;Wait a second, this is a holiday, you were closed yesterday, you didn&amp;rsquo;t have a chance to sell anything since you opened five minutes ago. This doesn&amp;rsquo;t add up.&amp;rdquo; He deflected and I left the point alone. My inclination was to get less of these laptops anyway, so I left it alone. It&amp;rsquo;s likely he was just saying anything to get me out here.&lt;/p&gt;
&lt;p&gt;The next step was to test the laptops. They gave me a power cable and I did what I could to rip through these eight computers. Taking a drive I brought with me, I took apart a machine and installed Windows on one of the computers. That seemed fine. The second one I turned on, the screen was flickering intensely. Varun came to look and passed the computer off to his tech. They seemed to have stopped the flickering and returned passing it off as an artifact. I let it go and continued testing. They all turned on and loaded the BIOS. Okay. If I wanted to go further, I&amp;rsquo;d have to spend a few more hours taking apart and setting up the rest of these and I didn&amp;rsquo;t have time.&lt;/p&gt;
&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;
			&lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/pqaBbLB0It4?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;p&gt;Returning to my office, I could take the time to look further and setup all the computers. As I was testing, one was completely trashed with the drive slot screw completely stripped and the NVME port broken. It looked like someone ripped the previous drive off this motherboard. This in addition to the flickering screen, and it left me with two dead out of 8 - 25% had failed&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;. as I was communicating this with Deep, I didn&amp;rsquo;t have the time to fully check all of them by the next morning. I&amp;rsquo;d been thinking about what he would do, last on the list of making this right would be just refunding the amount of the two computers.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/wholesale-deep-02-768x1024.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;Even the most cursory &amp;ldquo;test&amp;rdquo; would have picked this up.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Earlier in the day I confirmed two of the devices were DOA. I said &amp;ldquo;Alright.. so after testing them all - there is just the two here that are DOA and unusable. Two of 8, what 25% - Now, I know you not going to waste my time by making me drive all the way back there - please tell me how you&amp;rsquo;re going to make this right?&amp;rdquo; He was mostly noncommittal instead taking the tactic of saying he had to talk to someone else, he said, &amp;ldquo;give me some time will text back i will talk with other ..&amp;rdquo; I still didn&amp;rsquo;t know who I was talking to here, was it the boss-guy I met at the office or the lowly technician?&lt;/p&gt;
&lt;p&gt;He wasn&amp;rsquo;t Varun, so I was forced to call him at his 514 phone number. He seemed to be overlay focused on Whatsapp. I told him I didn&amp;rsquo;t care about Whatsapp, and I asked what he would do to make this right. He said &amp;ldquo;come bro and I&amp;rsquo;ll refund the money.&amp;rdquo; So, at 4 PM on a Tuesday, I was going have to spend the entire rush hour driving to get a refund for these dead computers that should never have passed even a basic inspection. The drive up there took about two hours and total and I spent about three minutes in the storefront. He said &amp;ldquo;sit down bro,&amp;rdquo; and I refused. Asking for the refund, Varun pulled out the cash and I gave him the computers and left. I still had one computer that was questionable, but I let it be.&lt;/p&gt;
&lt;p&gt;Sadly, I still haven&amp;rsquo;t found a wholesaler that can execute on basic checks before selling. If you buy from BlueNeck, plan to thoroughly test everything, take it apart, and look at them all&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;. Expect a 25% failure rate and don&amp;rsquo;t walk away with any broken computers like I did.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Baseball reference meaning that I have not once found a reputable wholesaler.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;bro is such an odd thing to hear from someone you&amp;rsquo;&amp;rsquo;re chatting with.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;I consider a computer a failure or DOA when it is unusable or unsalable in its current condition. Cosmetics can be let go to a degree.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:4&#34;&gt;
&lt;p&gt;Of course, if you care that they are working. You may be buying a lot and in that case, some failure is expected.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Firing The Client</title>
      <link>https://cwl.cc/2026/06/firing-the-client.html/</link>
      <pubDate>Fri, 05 Jun 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/06/firing-the-client.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/yourfired.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The client is our lifeblood. They provide us service providers with the resources to live and carry on operating. The client relationship is something to be revered and protected above all. Through our failures, our successes and challenges, it’s that relationship that truly endures. Sometimes, this breaks down so horribly that we’re either fired or we decide it’s best to sever the relationship. The last year has seen one such case, where I&amp;rsquo;ve had to let go of an unhealthy client.&lt;/p&gt;
&lt;p&gt;This, of course, is not a blog post about knocking others for being “bad” while ensuring I look good. The relationship always goes both ways. Taking ownership for mistakes has to happen on both sides. This article is about what leads to these failing relationships and how it might be best to approach severing them.&lt;/p&gt;
&lt;h4&gt;What leads to firing a client?&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;what-leads-to-firing-a-client&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#what-leads-to-firing-a-client&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;&lt;strong&gt;Attitude&lt;/strong&gt;. This is one of the biggest challenges. Some clients come into a relationship looking at our services as we’re akin to taking out garbage. This history of a disrespectful attitude pervades over years of interactions and half-hearted apologies. Customers like this generally only offer back-handed apologies and will ensure that all errors - no matter the source - are caused by the service provider. They’ll not communicate in a timely manner when needs are established and will likely have never trusted, or offered that chance to trust their service provider. These things are not always alone grounds of firing the client, but when it becomes clear that they foster a culture like this, it’s time to be proactive. Also, you’ll find that they aren’t paying you much monetarily either.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Undermining Authority&lt;/strong&gt;. As the systems provider, there is a certain authority and control over the system required to monitor and troubleshot issues. When the client acts on the system without accounting for the service provider in some way, they have effectively undermined my efforts to maintain a stable system. Even worse when the client makes changes and doesn&amp;rsquo;t communicate with the service provider at all. This comes in many forms, something like adding a user to an Active Directory server is at benign as it gets. However, when the client makes major changes such as installing large software systems without prior discussion before or after the work. Well, that leads to wasted resources and often system errors. Taken further, when the heads of the company institutionalize this process within the company. That’s the time to walk away.&lt;/p&gt;
&lt;p&gt;Incidentally, if you combine the two above issues together, you probably have the client from hell. But, it gets worse.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Late, slow, poor payment&lt;/strong&gt;. This kind of client is most often just a nuisance. They’ll miss payment time frames, they’ll plead for time and you’ll give it. We’re all human and these things do happen. When does it get to firing-level? When you find them paying excessively late the majority of the time. When the client makes a payment more like a event. When the client forces you to chase them for money and don&amp;rsquo;t respond promptly to requests. Effectively, over time, clients like this will start creating costs around collecting money (travel time an effort calling to following-up). When these costs become pervasive and common (also, see attitude), it&amp;rsquo;s time to end this thing.&lt;/p&gt;
&lt;p&gt;Let’s talk about what the (now-former) client will focus on. They’ll focus on your knowledge of the system. Your knowledge of how the system works, passwords and network details. The impulse in a heated and emotional state is to hold that information back or not provide it at all. That approach is flat out wrong. For sure, offering some incentive to settle the client’s account balance is fine, but withholding system configuration information is always wrong. What’s more, provide the details even when they refuse to pay (that can be difficult to bare). Whenever possible, it&amp;rsquo;s smart to provide this information in a self-serve capacity by keeping good documentation and records.&lt;/p&gt;
&lt;p&gt;Firing clients is necessary if you’re trying to build the kind of firm that can keep good clients. It’s just about he hardest thing we can do, but with the resources freed from bad clients, we can focus on better serving good ones while gaining new, stronger relationships.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Unifi vs Asus vs Synology - Three NAS Devices Head to Head</title>
      <link>https://cwl.cc/2026/06/unifi-vs-asus-vs-synology-three-nas-devices-head-to-head.html/</link>
      <pubDate>Mon, 01 Jun 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/06/unifi-vs-asus-vs-synology-three-nas-devices-head-to-head.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/network_attached_storage_devices.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Today I wanted to look at three different modern Network Attached Storage (NAS) devices - the ASUSTOR FS6812X, The UNIFI UNAS 8, and the Synology&amp;rsquo;s DS1821+. Naturally, this is not going to be a complete apples to apples comparison. The ASUS NAS I&amp;rsquo;m testing, for example, uses native solid state NVME hard drives, wile the others use 3.5&amp;quot; mechanical drives primarily. But, the spirit of this comparison will measure the relative differences, strengths and weaknesses of each of these systems. What&amp;rsquo;s common between all NAS devices is the idea of a storage pool and managing drives, file sharing over the network and some kind of internal application store to get new features. Most NAS&amp;rsquo; now will also run tools like virtualisation and docker although Unifi is unique in tha none of those things is supported.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/asus-FS6812X-admin-1024x507.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;Asus&amp;rsquo;s admin interface&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Asus&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;asus&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#asus&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Asus seems relatively new to the NAS game (even though they&amp;rsquo;ve been around since 2012), but they&amp;rsquo;re quite unique in that they offer the only ASUSTOR NAS device that uses NVME Solid State Hard Disks. The model I&amp;rsquo;m using is FS6812X which supports a staggering twelve SSD drives. With how expensive these drives have become, it may cost you a few dollars to outfit twelve large NVME drives, but you&amp;rsquo;ll see benefits in speed and reliability&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;p&gt;The storage management tools are straightforward and standard. They work well. The overall interface of the NAS is quite bare bones, however. As with other NAS&amp;rsquo;, you&amp;rsquo;ll want to format the volumes in btrfs to make use of snapshots. This software comes with a feature like Synology Drive called ASUSTORE EZ-Sync, where files from the NAS are synced with clients dropbox-style. I wanted to love it as much as I do Synology&amp;rsquo;s offering, but the lack of support for Files on iOS and the roughness of the product left me wishing for more.&lt;/p&gt;
&lt;p&gt;While not as business-ready as I&amp;rsquo;d like, this NAS is a great device for a media server, sharing video with Plex installed, for example. Or, as a file sharing device on a 10 GB network for direct audio/video editing. If you are a self-hosting enthusiast looking to dip you feet in the water, this may also be a great option.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/UNAS8-admin-1024x426.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The Unifi NAS8&amp;rsquo;s web admin interface&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Unifi&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;unifi&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#unifi&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;For a company that has done well with cameras and network gear that leans heavily on storage, a NAS seems like a good fit. To date, they have a number different NAS devices to choose from and eight drive NAS all the way down to a two drive model. They all use similar software called Unifi Drive. With the &lt;a href=&#34;https://blog.ui.com/article/introducing-unifi-drive-4-0&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;4.0 release&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; of Unifi drive there is the addition of backing up Microsoft 365 and better fine tuning of SMB connections. The software as it is is quite limited. My &lt;a href=&#34;https://cwl.cc/2026/05/unifi-unas-pro-8-review.html&#34;&gt;recent review&lt;/a&gt; uncovered a great storage device, but lacking in the best software features. What the Unifi NAS device lacks is software and utility. It&amp;rsquo;s, at best, a file sharing and backup target. Unifi doesn&amp;rsquo;t even offer a basic file synchronization service thought its Drive product deserves a closer look. The app (called Identity) includes a &lt;a href=&#34;https://apps.apple.com/us/app/unifi-endpoint/id6450954172&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;mobile&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and &lt;a href=&#34;https://ui.com/download/app/identity-desktop&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;desktop&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; application and provides access to files on the NAS locally or by way of drive.ui.com over the Internet, though this seems clunky at best. There is no desktop file sync tool, yet. It&amp;rsquo;s a big blind spot for these devices that are well-priced in the market.&lt;/p&gt;
&lt;p&gt;Props to Unifi for the looks of their rack-mount NAS. It&amp;rsquo;s an all-metal sleek looking device that fits into a rack beautifully.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/synology-ds1821-admin-1024x523.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The admin interface of the DS1821+ NAS&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Synology&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;synology&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#synology&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Easily the best of the bunch, Synology had a tough 2025&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. They forced buyers of their new product to use on Synology-made hard disks. This sent shock waves throughout the Internet. Later that year, Synology &lt;a href=&#34;https://www.tomshardware.com/pc-components/nas/synology-walks-back-controversial-compatibility-policy-for-2025-nas-units-third-party-hdd-and-ssd-support-returns-with-diskstation-manager-7-3-update&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;walked back&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; that requirement. The power of Synology&amp;rsquo;s NAS lineup comes in being able to throw as much storage at the tools and features they offer.&lt;/p&gt;
&lt;p&gt;And that&amp;rsquo;s a ton. From the reliable Dropbox-like sync tool that uses your storage (Synology Drive), to using the NAS to backup multiple 365 or Google Workspace tenants to the ability to create &lt;a href=&#34;https://cwl.cc/2026/05/immutable-backups-and-synology-nas-devices.html&#34;&gt;immutable snapshots&lt;/a&gt;. Synology runs the gamut of other software tools you&amp;rsquo;d expect including Docker and stuff like Plex and Apache. Standard also are the file sharing protocols and storage management tools. Diskstation, the software the runs on Synology&amp;rsquo;s NAS is a solid and well-rounded offering that fits into business use very well. If only Synology dropped a 4 or 8 bay native NVME NAS, now that would be a great product. As it is now, NVME&amp;rsquo;s are only supported via two slots&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; on specific models.&lt;/p&gt;
&lt;h3&gt;Final Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;final-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#final-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;As is often the case, it boils down to what you want to do. If you are looking for robust native software and a more business-centric approach, Synology is the best choice for the powerful features and solid operating system. As a second choice, I&amp;rsquo;d pick ASUS only because of the wealth of applications.supported and fast drive configurations. Unfi&amp;rsquo;s NAS has a way to go, but that platform has potential to be great. Don&amp;rsquo;t could Unifi out.&lt;/p&gt;
&lt;p&gt;I don&amp;rsquo;t include QNAP here, but they deserve a mention. They&amp;rsquo;ve had some serious issues with recent hacks, but they&amp;rsquo;ve also been in the NAS game for longer than I can recall. While I did not have a device on hand to test at this time, I would have included them if I did.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;These drive have no moving mechanical parts. Presumably they break down far less often than their mechanical counterparts.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;Self-inflicted, of course.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;You mainly use these for caching, but some models support using them as a volume.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Exploring Windows on ARM</title>
      <link>https://cwl.cc/2026/05/exploring-windows-on-arm.html/</link>
      <pubDate>Fri, 29 May 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/exploring-windows-on-arm.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Windows-11-Logo.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
As many years I&amp;rsquo;ve worked with Windows, there only a handful of times I&amp;rsquo;ve had the chance to explore and use the version built specifically for reduced instruction set computers (RISC). Getting my hands on one such device gave me time to look closer. The &lt;a href=&#34;https://www.microsoft.com/en-us/software-download/windows11arm64&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Windows download&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; site offers the ARM-based iso for download, so it&amp;rsquo;s quite easy to get. If you&amp;rsquo;re running a computer with an Apple silicon CPU, for example, use that iso file with the great &lt;a href=&#34;https://getutm.app/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;UTM&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; virtualisation software and install Windows that way. In my case, installing this on a &lt;a href=&#34;https://cwl.cc/2026/04/macbook-neo-thoughts-on-moving-back-to-macos.html&#34;&gt;Macbook Neo &lt;/a&gt;meant the VM had to be limited to 4 GB of working memory, but wow, it ran quite well considering how little RAM. For both the reference 64-bit Windows 11 and its ARM counterpart, I installed Windows 11 25H2.&lt;/p&gt;
&lt;p&gt;Of great interest to me was how Windows on ARM was going to run applications built for the x86 platform. It is apparently so good that running an emulated process that this version of Windows is preferred over trying to directly emulate x86 in a virtual machine the Mac.&lt;/p&gt;
&lt;p&gt;Running executables complied for 64-bit x86 is a breeze and they run quite smoothly.&lt;/p&gt;
&lt;p&gt;What surprised me though, was how well Windows on ARM ran 32-bit processes. I&amp;rsquo;d thought the emulator would be sluggish or just spit out some kind of error, but the opposite was the case. Running my tool 32-tool &lt;a href=&#34;https://cwl.cc/install-uninstall/&#34;&gt;IU&lt;/a&gt; on Windows 11 ARM was smooth and functioned normally with its heavy dependence on the local Windows registry.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/windows-arm-IU.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;As you might expect, taking an ARM-compiled binary, such as notepad.exe over to the x64 version of Windows yielded some quirky results. Windows was able to decipher version information on this file, but not show in the file properties that the process was for ARM64. Running the process on x64 yielded a very Windows-esque error. It tells you &lt;strong&gt;just&lt;/strong&gt; enough, but with no specificity. If all you had was this error, the truth would remain a mystery:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/windows-arm-notepad-on-x64.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Comparing two key files in \Windows, the explorer.exe file in x64 and arm platforms, x64&amp;rsquo;s copy was 3,286,488 bytes while on arm, it is 3,147, 024 bytes in size. In \Windows\system32, the monster OneDriveSetup.exe is 89,771,848 bytes on x64 and 83,903,832 on ARM. These general size differences are repeated on most system files. Most path references to system tools are the same on ARM too with limited need to remember new locations or names for tools you use.&lt;/p&gt;
&lt;h3&gt;Running Monster 32-Bit Applications&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;running-monster-32-bit-applications&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#running-monster-32-bit-applications&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;To really dig into the emulator, I thought it might be interesting to throw a brutish application like Office or Acrobat for 32-bit to see if it would even install and run, much less run sluggishly. The first test was to tackle Microsoft Office. Not the current version, but something ancient. I went for the 32-bit version of Office 2016. As I was installing, an error popped up about printer compatibility. Huh, maybe that was Microsoft’s print to PDF. I closed that and carried on. The installation finished rather quickly and more smoothly than I expected, so let’s run one of these big apps: Word. Wild, it ran well and no sign of a slowdown. This is impressive.&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
    &lt;img src=&#34;https://cwl.cc/2026/05/windows-arm-word-32-bit.png&#34; title=&#34;windows-arm-word-32-bit.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
    &lt;figcaption&gt;windows-arm-word-32-bit.png&lt;/figcaption&gt;
  &lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;Let’s give Microsoft a slow clap for that one. They have exceeded my already low expectations.&lt;/p&gt;
&lt;p&gt;So I turned to Acrobat. Something like DC 2024 the x86 version. Sadly, we interrupt this program for Windows updates, because, of course Microsoft knows exactly when the wrong time is to update an operating system.&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
    &lt;img src=&#34;https://cwl.cc/2026/05/windows-arm-update.png&#34; title=&#34;windows-arm-update.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
    &lt;figcaption&gt;windows-arm-update.png&lt;/figcaption&gt;
  &lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;So, after the auto-update stupidness, we’re back to the Acrobat setup. Here we go, I found something that feels slower. Launching this felt noticeably slower, but I have to say it &lt;em&gt;did launch&lt;/em&gt;. Once I had Acrobat in memory, it was running fine.&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
    &lt;img src=&#34;https://cwl.cc/2026/05/Windows-arm-acrobat.png&#34; title=&#34;Windows-arm-acrobat.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
    &lt;figcaption&gt;Windows-arm-acrobat.png&lt;/figcaption&gt;
  &lt;/figure&gt;&lt;/p&gt;
&lt;h3&gt;Final Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;final-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#final-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;You know I’m doing all this on a Macbook Neo and the Windows ARM VM is only getting a paltry 4 GB of RAM? It makes no sense how well this runs on so little memory and resources. I expected this operating system to take five minutes to load a non-native binary or the operating system to feel so utterly foreign that it brought me back to the Windows RT days. That’s not the case. This shit works, and works well. With a capable ARM CPU natively, it’s probably fast too.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Unifi AirWire - Leveling Up Your Wireless Connection</title>
      <link>https://cwl.cc/2026/05/unifi-airwire-leveling-up-your-wireless-connection.html/</link>
      <pubDate>Mon, 25 May 2026 08:26:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/unifi-airwire-leveling-up-your-wireless-connection.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/unifi-airwire.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The $285.00 CDN (at time of publishing) &lt;a href=&#34;https://ca.store.ui.com/ca/en/products/u-airwire&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;AirWire&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; wireless network adapter is a bit pricey for the average user. The promise of this device is the ability to use multiple wireless streams to exploit faster than gigabit bandwidth without wires. This uses the new &lt;a href=&#34;https://help.ui.com/hc/en-us/articles/25656226682775-Multi-Link-Operation-MLO-in-UniFi-Network&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;MLO technology&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; from Unifi. With all this bleeding edge I wanted to try this and see how well it would work. The wireless access point used for this test was a U7-PRO-XGS connected to the network at 2.5GBs, so getting past 1 gig should be doable with this device..&lt;/p&gt;
&lt;p&gt;Quite unexpectedly, after connecting to the desktop via USB-C, it showed up in Unifi Network as a device to adopt. There was no interaction her with the mobile application, which is fine with me. The adoption process took longer than I expected this way so I returned to the Unifi mobile app and Bluetooth and attempted the adoption from there. With or without the app, the AirWire sat with &amp;ldquo;Ready for Adoption&amp;rdquo; on the screen and doesn&amp;rsquo;t change from that for some time. After about five minutes, which likely included a forced update on the device, the AirWire was adopted by way of the mobile application. Once it appeared in Windows 11, the network driver was &amp;ldquo;Realtek (R) USB Ethernet Controller.&amp;rdquo; Startup of the AirWire takes quite a bit of time and the device runs pretty hot. be warned. In my case, it may have even gotten stuck in a reboot loop.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/airwire-adoption-1024x362.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;While the computer&amp;rsquo;s USB-C port only supplied 15W, I had the sense this might be the reason for the constant reboots. I connected power into the AUX port and booted the device. The AirWire was then getting 20W of power and finally stopped rebooting endlessly and connected. Not the best start to this considering the AirWire does not come with a power brick for the AUX port or any sort of instructions or caveats. With the AirWire up, it included a similar nifty finder tool on the LCD and in Unifi network to help get the best direction for picking up signal. You want to get as far into the green as possible and given where my AP was, a little over halfway was a good spot.&lt;/p&gt;
&lt;p&gt;Transferring a large file to a server with a 10 GB connection yielded some respectable transfer speeds. I ran a YouTube video at 4K and it seemed to handle it just fine. I then pushed things to viewing an 8K trailer for Top Gun on YouTube and there was some buffering. Switching to Dune: Part Two trailer at 8K, the buffering was limited and the trailer played without pause. These are not the best tests, but I thought it was interesting.&lt;/p&gt;
&lt;p&gt;More pressing perhaps was how the connection would occasionally drop. This flakiness didn&amp;rsquo;t seem to be because of a limited signal given the AirWire was still in the green zone at 50 dBm. In Windows, the network adapter completely dropped off and showed &amp;ldquo;unplugged.&amp;rdquo; Disabling and re-enabling did not bring it back. Reconnecting the USB-C data cable did not reconnect the computer. Restarting the AirWire from the Unifi Network console (and a different computer) and again reconnecting the USB-C cable and the.connection came back. It would take about 20 minutes before, again, the connection dropped. The other mesh device on the network was working fine. In the Unifi Network console, the AirWire appeared to be functioning normally.&lt;/p&gt;
&lt;p&gt;A little online searching and I found that Windows&amp;rsquo; use of a crappy Realtek driver caused a ton of issues. That a new driver could be found &lt;a href=&#34;https://www.realtek.com/Download/List?cate_id=585&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;here&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. Downloading and installing version 115X.22.20 changed the driver name to &amp;ldquo;Realtek USB 5gbe family controller.&amp;rdquo; and appeared to vastly improve the connection. But, does the connection really improve? Let&amp;rsquo;s take a look at performance.&lt;/p&gt;
&lt;h3&gt;Performance&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;performance&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#performance&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Before connecting the AirWire, I took a test of the speed while connected via LAN cable to a &lt;a href=&#34;https://store.ui.com/us/en/products/udb-switch&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Device Bridge Switch.&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; This wasn&amp;rsquo;t the fastest gateway to the wireless connection, but it would give me a bit of a baseline. In iPerf3, this desktop computer achieved the following average speeds:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 991 MBytes 831 Mbits/sec sender
[ 5] 0.00-10.12 sec 990 MBytes 821 Mbits/sec receiver&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Once the AirWire was functioning (but unreliable), I conducted the same test with iPerf3 and these were the results:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 1.48 GBytes 1.27 Gbits/sec sender
[ 5] 0.00-10.01 sec 1.48 GBytes 1.27 Gbits/sec receiver&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Good, but the connection was clearly unstable. After correcting for the numerous issues encountered, another test yielded some promising results while the connection finally stayed up reliably:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 2.34 GBytes 2.01 Gbits/sec sender
[ 5] 0.00-10.01 sec 2.34 GBytes 2.01 Gbits/sec receiver&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Final Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;final-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#final-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;My experience with this device is somewhat limited, but in this time it has shown itself to be rather difficult to setup and prone to issues. The power you supply this device will be crucial and without a power block in the box, you have to fend for yourself. The promise of improving bandwidth past a gigabit port is super enticing, but without the chaos on setup, this might be too much of a headache for users. But once connected, this device has been very stable. In contrast, an entirely different way of getting to the same point (MLO Mesh) with the &lt;a href=&#34;https://ca.store.ui.com/ca/en/products/udb-switch&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;UDB Switch&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; had a easier setup and has also been reliable if not slower.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Ditching Bell&#39;s Gigahub 2.0 Router and Using Your Own</title>
      <link>https://cwl.cc/2026/05/ditching-bells-gigahub-2-0-router-and-using-your-own.html/</link>
      <pubDate>Fri, 22 May 2026 08:30:15 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/ditching-bells-gigahub-2-0-router-and-using-your-own.html/</guid>
      <description>
        
        
        &lt;p&gt;For enthusiasts everywhere, the prospect of fighting an ISP&amp;rsquo;s choice of modem and router is daunting. In the case of Bell Canada, they&amp;rsquo;ve used routers that have been dubbed Gigahub and Gigahub 2.0. In the first version of the router, there was no &amp;ldquo;bridge&amp;rdquo;&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; mode available, but if you place a router behind it, you can log in with your PPOE&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; account and enjoy direct access at full speed. Enter the 2.0 edition of Gigahub and that process found your connection throttled to 1gbs or less both ways. If you search enough, you&amp;rsquo;ll find a hardware bypass connecting the fibre line directly into an SFP adapter you buy.&lt;/p&gt;
&lt;p&gt;There are a ton of benefits to having your own router on the edge. One of the core of these is having better control over port forwarding, but it also let&amp;rsquo;s you introduce things like a robust intrusion protection system. When you self-host something, it&amp;rsquo;s an imperative to make it as secure as it can be. Bell was not going to give that to you and probably wouldn&amp;rsquo;t want you to self host anyway. This is somewhat clouded by the possibility that &lt;a href=&#34;https://en.wikipedia.org/wiki/Carrier-grade_NAT&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;carrier-grade NAT&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; comes into the picture and breaks the &lt;a href=&#34;https://en.wikipedia.org/wiki/End-to-end_principle&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;end-to-end-principle&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. Will Bell go there? It&amp;rsquo;s hard to know.&lt;/p&gt;
&lt;p&gt;But, the first I heard of this was a &lt;a href=&#34;https://pon.wiki/guides/masquerade-as-the-bce-inc-giga-hub-2-with-the-was-110/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;blog article&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; that described how to go about using a specially made SFP&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; adapter in a router (in my case, the Unifi &lt;a href=&#34;https://cwl.cc/2026/01/unifi-cloud-gateway-fiber-is-this-the-perfect-gateway.html&#34;&gt;Cloud Gateway Fibre&lt;/a&gt;) to connect directly to Bell&amp;rsquo;s network. This would require this somewhat pricey SFP adapter, a device that would let me address it directly (the Cloud Gateway Fibre would not), and of course a router to sit at the edge. Once done, the Gigahub becomes a paperweight.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; The first step was to log into your Gigahub&amp;rsquo;s web interface and go to the wan page. https://192.168.2.1/?c=advancedtools/wan - or replace the IP with your own Gigahubs&amp;rsquo;s IP Address. Make sure the current mode listed there is XGS-PON.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/giga_hub_2_wan_mode.jpeg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;strong&gt;2.&lt;/strong&gt; With that, order the XGSPON SFP from &lt;a href=&#34;https://www.aliexpress.com/item/1005007856556526.html?&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Aliexpress&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; or other vendors listed on the &lt;a href=&#34;https://pon.wiki/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;PON Wiki.&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; It took a little while to get to me, and that was fine since I&amp;rsquo;d wanted to let the Gigahub stay in service for at least a couple weeks so bell&amp;rsquo;s installation ticket closed cleanly&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;. Since this SFP gets a bit hot, getting the model that includes a fan is nice to have.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3.&lt;/strong&gt; When the SFP arrived, you face the dilemma of addressing it directly. This device, once plugged into a network router or switch, attempts to create a virtual in-in band interface. For a device like the Unifi Could Gateway, your out of luck, but that cannot be done. Some have used Mikrotik&amp;rsquo;s routers, and a Unifi 16 port switch would work, specifically the US XG 16 and likely others that support SFP. Insert the SFP and it will attempt to take the IP 192.168.11.1&lt;sup id=&#34;fnref:5&#34;&gt;&lt;a href=&#34;#fn:5&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;5&lt;/a&gt;&lt;/sup&gt;. For this device you ssh to it - &lt;code&gt;ssh root@192.168.11.1&lt;/code&gt; - and use the user name root and the password is empty. Once you&amp;rsquo;re in, you have run some commands.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4.&lt;/strong&gt; Next, you&amp;rsquo;ll need to gather some details. These can be found on the back sticker of your Gigahub next to ONT S/N. You&amp;rsquo;ll also need the MAC address of the router, also on that sticker. The MAC address in the &lt;code&gt;fwenv_set -8 iphost_mac&lt;/code&gt; command (purple dot in the image below) and the ONT S/N is used in the &lt;code&gt;fwenv_set -8 gpon_sn&lt;/code&gt; command (blue dot in image below). All the rest of these commands are static.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/giga_hub_2_label-1024x768.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;strong&gt;5.&lt;/strong&gt; Still SSH&amp;rsquo;d into the SFP, the commands you run are as follows (replacing the values in the second and third lines with your own gathered details):&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;fwenv_set mib_file
fwenv_set -8 iphost_mac 40:65:A3:FF:00:00
fwenv_set -8 gpon_sn SMBS00000000
fwenv_set -8 equipment_id 5697
fwenv_set -8 hw_ver Fast5697Bell
fwenv_set -8 cp_hw_ver_sync 1
fwenv_set -8 sw_verA SGM831000156
fwenv_set -8 sw_verB SGM83100011E
fwenv_set -8 mib_file /etc/mibs/prx300_1V_bell.ini
fwenv_set -8 fix_vlans 1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If you do an info command - &lt;code&gt;fw_printenv | grep ^8311&lt;/code&gt; - it might look like this:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/config.jpeg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Issue the &lt;code&gt;reboot&lt;/code&gt; command and let the SFP reboot at least once before continuing.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;6.&lt;/strong&gt; Now, take this SFP, plug it into your router&amp;rsquo;s WAN interface. Carefully disconnect the fibre line from the Gigahub 2.0 and insert it into your ONT SFTP. Load your router&amp;rsquo;s administration interface and be sure to set the WAN to log in via PPOE with your Bell b1.. username and password. If you don&amp;rsquo;t know this password, it can be reset or rewritten on the MyBell site.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s essentially it. Watch the WAN interface come up and get a public IP if all is good. You can then put the Gigahub aside and enjoy having full speed access to the Internet directly. I should point out strongly that this is not supported by Bell and not something you&amp;rsquo;ll do in a production environment. If you call Bell with issues, there is zero chance they&amp;rsquo;ll help you. Always keep the Gighub close at hand in case you need to roll it back.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Sometimes called &amp;ldquo;purple mode,&amp;rdquo; bridging was a method of bypassing the modem.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;Point-to-Point Protocol over Ethernet, it&amp;rsquo;&amp;rsquo;s a login and password that all Bell customers have.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;Small Form-factor Pluggable, this is a networking device that allows you to connect directly to the fibre optic line.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:4&#34;&gt;
&lt;p&gt;This, of course, doesn&amp;rsquo;&amp;rsquo;t apply if your Internet is not a new install.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:5&#34;&gt;
&lt;p&gt;Ideally, you&amp;rsquo;&amp;rsquo;re doing this independent of your own network in order to avoid IP conflicts and set your own device to 192.168.11.x&amp;#160;&lt;a href=&#34;#fnref:5&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Unifi UNAS Pro 8 Review</title>
      <link>https://cwl.cc/2026/05/unifi-unas-pro-8-review.html/</link>
      <pubDate>Mon, 18 May 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/unifi-unas-pro-8-review.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/unifi-unas.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
For a NAS device, the UNAS Pro 8 is at perfectly reasonable price-point of &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/network-storage/products/unas-pro-8&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;$1,145.00 before taxes&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. The drives are always what&amp;rsquo;s going to cost the most in this or any NAS. Just like the &lt;a href=&#34;https://cwl.cc/2026/01/unifi-cloud-gateway-fiber-is-this-the-perfect-gateway.html&#34;&gt;Cloud Gateway&lt;/a&gt;, you&amp;rsquo;ll have to buy the SSD tray. In this case, it takes two of them for caching, and with shipping, that order was a hefty $75.00. I also noticed 3D printed editions of this &lt;a href=&#34;https://makerworld.com/en/models/615071-ubiquiti-cloud-gateway-max-ssd-tray-2280?from=search#profileId-538429&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;tray floating around&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, which would have been a great cost savings if I had a 3D printer at the time. Setting up the UNAS is easy - just get it on the network and go to the local address of your UNAS 8 and install the &amp;ldquo;Drive&amp;rdquo; application on the device and run the requisite updates. It&amp;rsquo;s all very Unifi Protect-like&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. If you&amp;rsquo;re at the top-level of Unifi&amp;rsquo;s &lt;a href=&#34;https://unifi.ui.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;site manager&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; on the web, clicking on the UNAS device will get you into the Drive application.&lt;/p&gt;
&lt;p&gt;Storage on this is not well-suited for only two drives. You might setup a minimum of a RAID5 with three drives, but to get a RAID1 (mirror) just selecting two drives for a pool seems to not offer that option. When there&amp;rsquo;s data on the drives, it&amp;rsquo;s no issue to simply format it and use it later. Strangely, in multiple bays of the UNAS, it always detected the SATA drive placed there as an SSD, thus making it impossible to add drives in that slot to a pool. Finally, after mixing and matching drive sizes and types, the UNAS saw all three drives and used them. When a drive is bigger than the others in a RAID5, UNAS will limit the drive space to the smallest size available, which is a standard for mixing drives. Keep in mind, I was not following Unifi&amp;rsquo;s list of supported hard disks either. Synchronizing that storage pool was relatively speedy, though your mileage will vary depending on the drive sizes you use.&lt;/p&gt;
&lt;p&gt;Adding a cache with SSD drives is going to be something you want to fully utilize the UNAS. Adding them requires the previously mentioned trays and sticking to the same size. The UNAS has a &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/network-storage/products/unas-pro-8&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;compatibility list&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; for those also, but it seemed fine when I threw two very dissimilar 256 GB NVMEs at the UNAS.&lt;/p&gt;
&lt;h3&gt;SMB File Sharing&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;smb-file-sharing&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#smb-file-sharing&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;So, then what does this do primarily? The core thing you&amp;rsquo;ll use a Unifi NAS for is file sharing and backup. Enabled by default in the &amp;ldquo;Services&amp;rdquo; tab is &lt;a href=&#34;https://help.ui.com/hc/en-us/articles/14276882157975-UniFi-Drive-Add-UniFi-Drive-to-Your-Desktop-via-SMB&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;SMB sharing&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and &lt;a href=&#34;https://en.wikipedia.org/wiki/Time_Machine_%28macOS%29&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Time Machine&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; backups. Disabled, but available at the time of publishing was NFSv3, something you&amp;rsquo;d use with Linux. I expect this specific tab to expand with options over time.&lt;/p&gt;
&lt;p&gt;The SMB sharing is perhaps most interesting. The documentation Unifi provides refers to a setting that doesn&amp;rsquo;t exist in the software (in the earlier release I tested). Perhaps things change so fast and they haven&amp;rsquo;t kept up with it. They say go to Go to Control Plane &amp;gt; Users, but there is no path. One must find &amp;ldquo;Admins and Users&amp;rdquo; in the left menu and then &amp;ldquo;File Services &amp;amp; Time Machine Credentials&amp;rdquo; to control access to files. What this will look like in the interface a year from now? Who knows. At the time I reviewed this model, no user can access SMB shares by default. Enabling them allows for the creation of a independent username and password for the shares, submit to enforcement rules (like being 12 characters long&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;). The process itself seemed very convoluted&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;.Not only that, it can &lt;a href=&#34;https://community.ui.com/questions/Adding-local-credentials-broke-automatic-drive-mounting-via-Identity/d8e3e649-263d-4b62-9050-18709ea79b79&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;break services&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; when you change that username/password and it reportedly requires a reboot of the NAS.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/unas-13.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;After a little trial and error, I was able to get SMB functioning with setting in User -&amp;gt; Assignments. Both Windows 11 and MacOS connected to the NAS with no real issues at speeds I expected. This service is core to the UNAS, so it should be further simplified for casual users.&lt;/p&gt;
&lt;h3&gt;Other Features&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;other-features&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#other-features&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;As you might expect from a Unifi software device (1) it&amp;rsquo;s got to be hooked into the cloud to be useful and (2) the interface is somewhat bare-bones, but functional. These two things are locked with UNAS as so much of this depends on identity features or other cloud-based stuff provided by Unifi.&lt;/p&gt;
&lt;p&gt;Case in point: The out-of-the-box file sharing service. If you go to the file list on Drive and right-click a file and choose &amp;ldquo;Create Share Link,&amp;rdquo; Unifi immediately know what to do with that and creates a link on &lt;strong&gt;drop.ui.com&lt;/strong&gt;. This link presumably connects the the NAS via the cloud via some sort of WEBRTC service hosted by Unifi. So, keep this in mind if your NAS is super old and Unifi has moved on from hosting this service. When clicking on the share, it includes a basic viewer and the ability to download the content. As it is on most services like this, shares can be time-limited, password protected, or set to die after a set number of accesses. There doesn&amp;rsquo;t yet seem to be a settings page to make all shares expire or enforce any sort of rules on new or existing shares.&lt;/p&gt;
&lt;h3&gt;Performance&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;performance&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#performance&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;With all the above, I set to testing some of how fast this NAS can be. In my UNAS Pro 8, there wasn&amp;rsquo;t any blazing speed in the drives, using a mix of WDC WD5000AAKX SATA drives and Toshiba KXG6AZNV256G SSDs for caching. Installed at base was a RAID 5 for the storage pool and a RAID 0 (Read-Only) on the SSD cache. All synchronization and formatting was finished before testing. So let&amp;rsquo;s just say this was not going to exploit anything on the high-end. As with all things, these tests are relative.&lt;/p&gt;
&lt;p&gt;On my first test on a 1 GB network from a 1 GB client, the UNAS easily maxed out my network card and it was generally the same for other NAS devices available So, the first test went well. For my second test, I used a &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/accessories-cables-dacs/collections/pro-store-ethernet-adapter/products/uacc-adapter-rj45-usbc-10ge&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Unifi 10 GBs network adapter&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; on USB-C with a laptop directly plugged into the UNAS 2.5 GBps port. From there I easily topped 2 GBs speeds and burst even more in the beginning. There would likely be more here if the drive array were filled faster devices. All told, this is reasonably good performance given I&amp;rsquo;ve cobbled together this drive configuration. Since the UNAS 8 has a 10 GBPs port, this is the ideal means of testing the network but I did not have all the pieces in place before publishing this article.&lt;/p&gt;
&lt;h3&gt;Enter an Update&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;enter-an-update&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#enter-an-update&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;While testing, Unifi&amp;rsquo;s drive application was updated from 3.4.5 to 4.1.16, this would open up some new and interesting features. The first notable feature is mobile photo backup and secondly the anticipated Microsoft 365 backup tool. Both of these are a little half-baked and not fully fleshed out, but they work fine. In comparison, you&amp;rsquo;ll find Synology&amp;rsquo;s NAS software to be more fully featured on mobile and in the 365 backup department. But, it&amp;rsquo;s a good start for Unifi.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/unas-365-backup.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;h3&gt;Closing Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;closing-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#closing-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;While this is a beefy device, it&amp;rsquo;s light on real business-ready features. As a speedy SMB file sharing NAS, the UNAS is wonderful. And, with eight drive bays, you can get a seriously large volume setup. If you&amp;rsquo;re looking for more mature business-ready features liek full 365 and Google G Suite backups or &lt;a href=&#34;https://cwl.cc/2026/05/immutable-backups-and-synology-nas-devices.html&#34;&gt;immutable storage&lt;/a&gt;, you&amp;rsquo;ll need to look to other vendors like Synology. What&amp;rsquo;s here has a great deal of potential, and I&amp;rsquo;m excited to see where Unifi goes with the product and software. It makes sense for them to be in this market based on the years of experience with drive arrays and network video recording software.&lt;/p&gt;
&lt;p&gt;The oft-heard value proposition Unifi trumpets is &amp;ldquo;license free software,&amp;rdquo; and it&amp;rsquo;s less of an advantage here because most NAS-based software is that way. Expect the Unifi line of NAS devices to have a difficult time competing in a very crowded and mature market of players. That said, the potential is here for a feature that would be killer when help to other vendors, but it&amp;rsquo;s just not there yet.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Strangely though, Drive cannot be administered in the Unifi Network mobile application.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;You&amp;rsquo;ll have to change everyone&amp;rsquo;s local password to at least 12 characters to make pass-through authentication happen. This might be annoying in small peer-to-peer shops.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;And that&amp;rsquo;s saying something coming out of a Windows environment.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Immutable Backups and Synology NAS Devices</title>
      <link>https://cwl.cc/2026/05/immutable-backups-and-synology-nas-devices.html/</link>
      <pubDate>Fri, 15 May 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/immutable-backups-and-synology-nas-devices.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/nas-drives-data.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;a href=&#34;https://www.merriam-webster.com/dictionary/immutable&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Merrium-Webster&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; defines immutable as &amp;ldquo;not capable of or susceptible to change.&amp;rdquo; In the context of a backup or a stored copy of data, this means that data can&amp;rsquo;t be changed, moved or deleted. But why would you want to make a backup immutable? The main reason is to combat a type of malware attack called ransomware. This type of virus gains control of a device or network and jumbles up (encrypts) all the files on each device while the &amp;lsquo;bad guys&amp;rsquo; offer to decrypt the files for a monetary amount&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. Some versions of this ransomware will also spread out on the network to try to infect other devices or be installed on them and encrypt that stuff. This is messy if your &amp;ldquo;Documents&amp;rdquo; folder is encrypted, yes; but because most backup locations are read and writable, the malware will also simply encrypt that going full &lt;a href=&#34;https://cwl.cc/2026/05/re-watching-mr-robot.html&#34;&gt;Mr. Robot&lt;/a&gt;&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. Criminals are clever, so they sometimes take over entire virtual machines and encrypt them. All of your data is then unusable. Making the backup immutable is one solution to combat this.&lt;/p&gt;
&lt;h3&gt;How This Looks in Practice&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;how-this-looks-in-practice&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#how-this-looks-in-practice&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;On the Synology Network Attached Storage (NAS) devices that &lt;a href=&#34;https://kb.synology.com/en-ca/DSM/tutorial/which_synology_nas_models_support_WriteOnce_and_secure_snapshots&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;support this feature&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, it looks like snapshots of data points. For all applications on the NAS, there are buckets of data created to support them. You might have a Plex server that holds a large number of videos or a backup of your laptop&amp;rsquo;s &amp;ldquo;My Documents&amp;rdquo; folder. These data points can then have snapshots created.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; First. log into you your Synology admin interface and install the &amp;ldquo;Snapshot Replication&amp;rdquo; tool using Package Centre.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; Open &amp;ldquo;Snapshot Replication&amp;rdquo; and click the &amp;ldquo;Snapshots&amp;rdquo; item on the left-hand menu&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3.&lt;/strong&gt; You&amp;rsquo;ll likely start with a shared folder, but you can also configure LUNs too. Click to highlight an item and then click settings. It will look like the image below. Enable a schedule, then enable immutable snapshots.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/synology-snapshot.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;After this, the data saved on schedule for this share snapshot cannot be removed. The volume can&amp;rsquo;t be deleted, nor can the drives be formatted. This goes for all users on the. NAS, even the administrator. Of course, one could restore a snapshot, but for the above example of seven days, that data is stored and untouchable. If you look at the list of snapshots, you&amp;rsquo;ll see a blue shield icon in the column that says &amp;ldquo;Immutable,&amp;rdquo; indicating these can&amp;rsquo;t be removed during the retention period:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/snapshot-list.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;h3&gt;The Right Types of Data&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;the-right-types-of-data&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#the-right-types-of-data&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Most important to a feature like this is that when the data is created, it can not be deleted or altered. So, if you&amp;rsquo;re snapshotting up 1 TB of data every day for 14 days, this is going to grow fast. It&amp;rsquo;s important to remember, however, that snapped data is not one-to-one for each of the snapshot.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; To keep an eye on this, use the tool that lets you calculate spaced used. Remember, you cannot delete immutable snapshots while they are within the expiry window, so you&amp;rsquo;ll want to pay attention to the kinds of data you snapshot. The perfect data would be user-generated files such as those created by Synology Drive (the Users share) or perhaps a raw data folder that hasn&amp;rsquo;t grown too large. If you have enough space on your drives, you&amp;rsquo;ll be able snapshot it often. The best way to go is as the data being snapshotted is larger, snapshot less, and keep it for less time. 7 to 14 days is reasonable for most cases, and after that time those immutable snapshots become available.&lt;/p&gt;
&lt;p&gt;Most importantly, snapshots don&amp;rsquo;t appear to take up space one-to-one against the original data. In the example below, a total of eight snapshots are protecting about 13 GB of data but use up only 9.4 MB of space. These are all small files that change very little so in your case, results may vary.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/snapshot-space.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;h3&gt;Final Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;final-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#final-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The question becomes then, can a clever hacker not just attack the data and encrypt it, but attack Synology&amp;rsquo;s operating system and block access to that? I have to think someone will do that (if they haven&amp;rsquo;t yet). As blended threats continue to demand more out of backups and recovery sources, there&amp;rsquo;s a real need to find new ways to protect that data. Couple this with machine learning digging up lesser known exploits and the environment is about toe get nasty. If you have a NAS on-site, consider either upgrading to a model that can do immutability, or enable this option if supported.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Usually in some crypto coin like Bitcoin. The Government of Canada has a &lt;a href=&#34;https://www.cyber.gc.ca/en/guidance/ransomware&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;case study&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;That was what FSociety, the hackers on the show tried to do. Destroy the data and then all the backups. The ransom money was just burned.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;hey provide an explainer &lt;a href=&#34;https://kb.synology.com/en-ca/DSM/tutorial/How_can_I_free_up_snapshot_space_consumption&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;here&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Re-Watching Mr. Robot</title>
      <link>https://cwl.cc/2026/05/re-watching-mr-robot.html/</link>
      <pubDate>Mon, 11 May 2026 10:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/re-watching-mr-robot.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/05/mr-robot-title-card.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
It just was a matter of time that I&amp;rsquo;d come back this great show. My first attempt at watching it in 2015 was such a different era for technology. &lt;strong&gt;Mr. Robot&lt;/strong&gt; almost seemed like an answer to the kookiness of &lt;strong&gt;The Matrix&lt;/strong&gt; by plopping the hero into a real-ish world with the technology depicted right and the bad guy&amp;rsquo;s logo looking like the sideways &amp;ldquo;E&amp;rdquo; of Dell computers and called &amp;ldquo;Evil&amp;rdquo; no less&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. The trouble is, I don&amp;rsquo;t remember finishing its full four seasons. At some point this show was going to become new to me (though, after all these years it &lt;em&gt;feels&lt;/em&gt; new). This time around, I was astounded by well it holds up; especially in light of what technology has become in 2026 versus ten years ago.&lt;/p&gt;
&lt;p&gt;The hacker groups are named appropriately sinister (FSociety, Dark Army), and the episode titles have a ton of cool in-references&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. Watching all this again, yes the tech is dated, but it&amp;rsquo;s perhaps more surprising how relevant many of the references still are. The show&amp;rsquo;s creators attention to detail and obsession with displaying real things is something I&amp;rsquo;ve not seen in any other show before or since. That has always seemed to me like a love letter to technology. The accuracy is deliberate too. Per &lt;a href=&#34;https://en.wikipedia.org/wiki/Mr._Robot&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Wikipedia&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;,&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;[Creator Sam] Esmail hired Kor Adana (former network security analyst and forensics manager for Toyota Motor Sales), Michael Bazzell (security consultant and former FBI Cyber Crimes Task Force agent and investigator) and James Plouffe (lead solutions architect at MobileIron) as his advisors to oversee the technical accuracy of the show.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;As far as the hacking scenarios, yes, they&amp;rsquo;re outlandish and downright impossible in some cases, but Esmail&amp;rsquo;s efforts to make the technology as real as possible makes it all work in a weird way. In other cases, I would call them very plausible and even clever.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/04/mr-robot-terminal-window.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;At the time this level of reasonable authenticity made me giddy.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Needless to say, I&amp;rsquo;m not going to do some sort of stupid plot synopsis here.You should watch the show on whatever &amp;ldquo;Evil Corp.&amp;rdquo; service it&amp;rsquo;s available on right now. For how subversive and filled with the hacker ethos this show is, it genuinely surprising that it&amp;rsquo;s streaming on Amazon Prime and not outlawed.&lt;/p&gt;
&lt;p&gt;There are, of course, cheeseball moments in a show so filled with melodrama. In one case, when Elliot is under pressure to bust a guy out of prison, he says to his compatriot (who hammered out an exploit too quickly), &amp;ldquo;Since when did you become a script kiddie?&amp;rdquo; I found myself chuckling a second time at his saying such a cornball thing. It&amp;rsquo;s a reminder that, yes, these actors are not tech people. All the more reason to respect the effort here. And part of this melodrama is the use of an unreliable narrator and, well, an unreliable fourth wall. This is all a bit disorienting and downright icky at times, but it generally adds to the experience. Rami Malek is amazing as an awkward, bug-eyed dude with tech skills that border on a superpower. He is the perfect casting choice.&lt;/p&gt;
&lt;p&gt;Nostalgia overload is in just about everything. The show itself is a piece of history for a certain heyday of tech (2016-ish), but within the show we go back further in time and see the Mr Robot store&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;. Inside the store is every late 1980s, early 1990&amp;rsquo;s technology reference you can imagine. From peeling the labels off those damn AOL floppies to re-use them to the great ad posters of the era. There&amp;rsquo;s so much to see, you have to pause to take a look. With Mr. Robot working on these two levels, it almost completely subverts the machinations of the characters.&lt;/p&gt;
&lt;p&gt;The final result is an enjoyable four seasons and 45 episodes. It&amp;rsquo;s also a great show for a weekend binge.&lt;/p&gt;
&lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; allowfullscreen=&#34;&#34; frameborder=&#34;0&#34; height=&#34;315&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/1cMhZX3tfqM?si=eoXZ_GjRilWlUZF2&#34; title=&#34;YouTube video player&#34; width=&#34;560&#34;&gt;&lt;/iframe&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Heck, the in-world language converts &amp;ldquo;E-Corp&amp;rdquo; into &amp;ldquo;Evil Corp,&amp;rdquo; and everyone is just in on it and considers this name common knowledge.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;First season episodes are titled with common video file extensions. Look out for episode 7 (eps1.6_v1ew-s0urce.flv), named after the now-defunct Flash platform.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;Its frontage is even the title card of an episode.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>I Got a Colonoscopy</title>
      <link>https://cwl.cc/2026/05/i-got-a-colonoscopy.html/</link>
      <pubDate>Fri, 08 May 2026 08:30:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/i-got-a-colonoscopy.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/04/colonoscopy-feature.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Yes, it&amp;rsquo;s a weird topic to post here for a technology site. But hear me out; I&amp;rsquo;ve had a colonoscopy and I wanted to say that this was worth it. For the years since I turned 50, I&amp;rsquo;d been doing the very easy-to-use FIT Test. &lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; This test has always been great because of its ultra-low impact. Do it, send it back. Boom, results. Rinse and repeat every couple years. This last time, however, there was an anomaly. This then led to a Doctor visit and a referral for a full-blown colonoscopy.&lt;/p&gt;
&lt;p&gt;To say I was ambivalent is to put it mildly. What was coming felt scary - not to mention having to drink &amp;ldquo;fruit&amp;rdquo; juice&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; that is supposed to clear out your guts in what seems like the most uncomfortable way. This stuff was intended to clean out my intestines, and oh gosh, over this period of time, it did the job. What came along for the ride was a bunch of queasiness and diarrhea. Each gulp of the solution made the process progressively more difficult. Making it colder and sucking through a straw helped, but only minimally. I wanted nothing more than to not screw this up, so made sure to follow the instructions.&lt;/p&gt;
&lt;p&gt;The day of my procedure was more than inauspicious; a blizzard swept in two feet of snow. The clinic called me in early because people were cancelling. To top that off I need to take a 2.5 hour train ride to get from home to the clinic. The universe was making this challenging, but not impossible. To top it off, I didn&amp;rsquo;t want to have any unexpected bathroom emergencies while I was on a train or in some other unfamiliar location. Thankfully, that didn&amp;rsquo;t happen, and getting into the clinic, they seemed to have seen everything.&lt;/p&gt;
&lt;p&gt;The people at the clinic were a top notch group. They assisted with everything needed, took their time to explain things whenever something was about to happen. Leading up to the procedure itself, I was told I&amp;rsquo;d be put to sleep during the &amp;ldquo;work&amp;rdquo; and would wake up after it was all done.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; One I made it into the room, the doctor let me know when he&amp;rsquo;d start putting me to sleep and, wow, it was fast. I was out quicker than he could finish his sentence. But, something wild happened, I woke up while they were in the middle of the process. Looking up, I could see a monitor with what made me think of the movie &lt;a href=&#34;https://www.imdb.com/title/tt0093260/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Innerspace&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. The sensation in my butt also came back as I&amp;rsquo;d realized what I was looking at was my own intestines being traversed with a camera. Oh, an I really had to fart.&lt;/p&gt;
&lt;p&gt;Yes, lots to take in and, uhm, let out all in one moment. These new sensations were not painful though; they were more awkward and uncomfortable. Not scary. In fact, once the surprise of waking up had passed, I found myself enthralled by what was going on in from of me. The view was extraordinarily clear (I did my job with that crappy drink), and as the doctor encountered a small polyp, he surrounded it with what look like a clamp thing and removed it. All the while, he was jovially explaining the process. It&amp;rsquo;s as if he was happy to have an interested audience for work so many fear.&lt;/p&gt;
&lt;p&gt;Needless to say, there is no photographic evidence of the event. None of this was as awkward or scary as I&amp;rsquo;d imagined and I was more than glad to have taken care of it. If this is the worst one has to face to avoid cancer, it is minor. If you are a man who is fifty-plus years old, please get screened as soon as you can. Some are calling for screening as &lt;a href=&#34;https://www.colorectalcancercanada.com/screenat45/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;early as 45,&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and I can get behind that. It seems Ontario can too, as they will also lower the &lt;a href=&#34;https://www.thestar.com/politics/ontario-to-start-screening-for-colorectal-cancer-at-age-45-instead-of-50/article_96adbe24-901f-5cc9-87ac-433e35146860.html&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;screening age to 45&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. Great news. Protect yourself, get screened.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Provided here by the &lt;a href=&#34;https://www.ontario.ca/page/colon-cancer-testing-and-prevention&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Government of Ontario&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;The stuff is called PegLyte and you have to drink four litres of it before the colonoscopy. No indication of what fruit makes the drink taste like a two-year old tried to create a fruit flavour with crayons.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;The anaesthetic used here was Propofol&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Player Refresh Tool - CWL Software of the Past</title>
      <link>https://cwl.cc/2026/05/player-refresh-tool-cwl-software-of-the-past.html/</link>
      <pubDate>Tue, 05 May 2026 08:30:08 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/player-refresh-tool-cwl-software-of-the-past.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/pft-main-300.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Digging through the vault of older CWL software, I came across a utility that I&amp;rsquo;d created in, oh, 2003, with a plan to sell it. That never happened, but the tool was still a thing and I&amp;rsquo;d spent hours coding and testing. Today, let&amp;rsquo;s look at what the program did looked like. If there&amp;rsquo;s a way to provide it freely and someone out there is interested, I&amp;rsquo;ll will make it downloadable (let me know). The program itself is a bit dated but also still works if you have nodes that need to sync.&lt;/p&gt;
&lt;p&gt;This program was the first that I&amp;rsquo;d ever create a registration process for. On starting Player Refresh Tool, you needed to enter a key. I&amp;rsquo;m not sure I recall how these keys were generated, but it was likely that they&amp;rsquo;d be checked locally and not activated online. If no valid key was provided, the application would exit forcefully.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/player-refresh-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;strong&gt;Player Refresh Tool&amp;rsquo;s Purpose:&lt;/strong&gt;&lt;br&gt;
A player computer requires updates to a presentation that is played back on a number of computers. The player needs to pull these updates from a central location. The Player Refresh Tool controls the updating of the presentation (files) by some means of automatic transfer. The Player Refresh Tool has the following characteristics (a) automated retrieval of files on a fixed schedule (b) Administrable remotely (by which, the content of the update would be controlled remotely) (c) robust logging of file transfers and and some means of management (d) the ability to schedule reboot to enhance reliability&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; (e) Version control. Additionally, the application is 32bit on the Windows platform.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Main Features:&lt;/strong&gt;&lt;br&gt;
Startup Information: When the Player starts, information about the site version, operating mode, date and time show for a short time while the presentation manager loads (such as Scala). This feature allows support personnel to assess the configuration of a Player system at a glance. This feature tends to reduce the number of times a computer needs to be rebooted.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/player-refresh-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;br&gt;
FTP Server: The Player Refresh Tool includes a built-in, secure FTP Server that gives the Administrator of the network full access (list, download, upload, rename) on the Player Computer&amp;rsquo;s hard disk. This feature with appropriate port forwarding and network access would allow the network manager directly modify the device&amp;rsquo;s drive, if needed.&lt;/p&gt;
&lt;p&gt;LAN Mode: The Player Refresh Tool now includes a LAN mode that bypasses the need for a Dial-Up modem. This new mode allows the Player computers to be used over broadband, in corporate settings or other times when Dial-Up is not required. This feature allows the customer to use the Player in markets that may have previously been restricted.&lt;/p&gt;
&lt;p&gt;Internet Time Setting: While processing the download, the Player Refresh Tool can set the time on the local computer using public Internet servers. This feature will improve the reliability of reported data and diagnostic tools while saving support time and costs.&lt;/p&gt;
&lt;p&gt;Interface Enhancements: The Player Refresh Tool now sports an improved interface making the window readable in high contrast, plasmaTV, and televisions much easier. This feature reduces support times drastically by allowing the support personnel to see and read the screen from a distance; even on a television. Combined with keyboard enhancements, the vast majority of systems can now be supported merely with the use of a keyboard and a keyboard extension cable.&lt;br&gt;
.&lt;br&gt;
Uploading Files: The Player Refresh Tool can upload files (From the Player Computer to the server) based on a setting in a configuration file. This provides a proactive and useful method for identification of viruses or to troubleshooting playback or configuration problems, without the need to physically be on location.&lt;/p&gt;
&lt;p&gt;Alternate Dial-Up Number: If present, an alternate Dial-Up connection can be used to dial up to the Internet and get new Dial-Up configuration settings. This option allows Player computers to recover from a Dial-Up number changes, configuration changes or server movements making your network more resilient to points of failure.&lt;/p&gt;
&lt;p&gt;Domain Name: In addition to supporting an alternate Dial-Up connection, the Player Refresh Tool also supports the use of a hostname for connecting to the FTP server. This allows the server to have its IP address change while the Player resolves the new one.&lt;/p&gt;
&lt;p&gt;HotKey Support: The Player Refresh Tool supports the use of a hotkey combination CTRL+ALT+F11 that opens the Player Refresh Tool and thus removes the requirement for a mouse attached to the client computer. The Player Refresh Tool also minimizes with the use of the ESC key. This has been proven to dramatically reduce the time needed to service computers in the field.&lt;/p&gt;
&lt;p&gt;File Check: Player Refresh Tool now checks the server first before attempting to download the file. Without these checks, the download may be disrupted if an incorrect filename is encountered. This feature greatly improves the reliability of downloads.&lt;/p&gt;
&lt;p&gt;Location Information: Location information is included in the application to assist in the servicing the systems. All location information is passed in the log file and displayed in Site-UP or the Site Management System. This information can be used for local persistent information (dial-up numbers, prefixes, etc.) or to improve site-level awareness.&lt;/p&gt;
&lt;p&gt;Support Tools: A number of support tools have been added to assist in the diagnosis of problems while a service person is on-site, these include:&lt;br&gt;
- A full Player Refresh can be processed with a Dial-Up connection&lt;br&gt;
- A full Player Refresh can be processed without a Dial-Up Connection&lt;br&gt;
- A Dial-Up Connection to the ISP can be tested&lt;br&gt;
- The support person can directly open the local log file&lt;br&gt;
- The support person can directly view the FILE.INI off the server (requires connection)&lt;br&gt;
These tools augment and speed up the process of analyzing and testing problems on a system. Based on actual experience in the field, the use of these tools can cut the support time by as much as half (compared to using built-in Windows tools) while making the testing environment consistent on different computers and Operating Systems.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/player-refresh-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;br&gt;
Update Randomization: The connection process will run at a random period of time (between the trigger time and one hour past). This means that a Player set to connect at 12am will connect at a random time between 12am and 1am. This process balances the load on Dial-UP systems and FTP servers, as well as improving the reliability of downloads.&lt;/p&gt;
&lt;p&gt;Messaging Subsystem: In addition to being able to actively upload files, there will be a designated directory (C:\plrmessage) that the Player Refresh Tool will automatically send text files to the server. This will be the means of an active message transport system that can be used by applications that monitor the Player&amp;rsquo;s health. This feature will take the network from a reactive state and provide it with a more more powerful &lt;strong&gt;proactive&lt;/strong&gt; ability.&lt;/p&gt;
&lt;p&gt;Updates: The Player Refresh Tool keeps itself updated continuously by checking for newer versions of the application and downloading in the &lt;strong&gt;background&lt;/strong&gt; if necessary.&lt;/p&gt;
&lt;p&gt;Reboot: The &lt;a href=&#34;https://cwl.cc/reboot-log-off-shut-down/&#34;&gt;reboot.exe utility&lt;/a&gt; has been redesigned to be compatible with Windows 9x, Nt, 2000, and XP.&lt;/p&gt;
&lt;p&gt;Compatibility: The Player Refresh Tool has been tested on all known Windows platforms, this includes Windows 2000 and XP - for future use on servers&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. This guarantees that the Player Refresh Tool will run whenever and wherever you want to put it.&lt;/p&gt;
&lt;p&gt;Higher Security: The Player Refresh Tool includes higher security levels in all processes. The FTP Client password is encrypted stronger than that of previous versions, the FTP Server password is strong, and encrypted.&lt;/p&gt;
&lt;p&gt;Improved Logging: The Player Refresh Tool now logs the start of a process and uploads this to the server. This improves the process of troubleshooting failed or larger downloads. Logs are now created when the Player Refresh Tool starts, alleviating log size problems causing download or Site-Up disruptions and slowdowns. Diagnostic information has been added to the log to improve troubleshooting Information on specific file uploads and downloads is included in the log file.&lt;/p&gt;
&lt;p&gt;Download Process: The Player Refresh Tool no longer disconnects and reconnects to the server per file downloaded. This speeds up the process of downloading files. The Player Refresh Tool also connects to the FTP server in passive mode, making FTP connections more reliable.&lt;/p&gt;
&lt;p&gt;Usage Restrictions: This application is currently in beta testing. Since development cycles are unpredictable, until a final release date has been set, this application should still be considered &lt;strong&gt;in-development&lt;/strong&gt;. While we take great care in being as accurate as possible, some features listed above may or may not be included in the final release. Every effort will be made to ensure this site contains current information.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Making Player Refresh Tool&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;This software was written solely in Borland&amp;rsquo;s Dephi 7.0 development environment using object Pascal as a programming language. The largest Pascal unit file in the application clocked in a nearly 1,700 lines of code. The application made use of several VCL components to handle the version networking and encryption tasks. I&amp;rsquo;d also created a functions unit in a file named CwlUtils.pas that contained many of the tools I&amp;rsquo;d reused often between other programs. I compiled the application at 387 times with the last compilation ever happening August 17, 2003 at 7:14 AM - Likely I wold have been out at breakfast when I did that. Earlier iterations of this program existed as far back as 1999.&lt;/p&gt;
&lt;p&gt;Today, there are no copies of this program in use&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;, but it is possible that an older version/iteration of this is still used to update legacy devices in the field. It would have been prudent for that customer to update to newer/better software if that customer is still around; but it would not have been from me. The legacy of doing all this work to not see it used is a disappointment, but it also the legacy of doing; of solving problems and learning. This final product is a personal programming achievement and I&amp;rsquo;m proud of it.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;In the Windows XP days, we actually needed to do this.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;Yea, this stuff is old.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;That I know of.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>The Practicality of 3D Printing</title>
      <link>https://cwl.cc/2026/05/the-practicality-of-3d-printing.html/</link>
      <pubDate>Fri, 01 May 2026 10:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/05/the-practicality-of-3d-printing.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/04/3d-printer.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Being new to the act of 3D printing, there was a world of difference between my impression of this and the reality. In the past, much has been reported about these tools either printing &lt;a href=&#34;https://cwl.cc/2012/07/3d-printing-scary-or-new-frontier.html&#34;&gt;illicit gun parts&lt;/a&gt; or Batman figurines. I knew there was more to the story, but this needed a hands-on time to understand. Yes, non standard things are happening with these printers, but there are a ton of practical uses to these tools, and I&amp;rsquo;ll go over some of that. Having recently gotten a &lt;a href=&#34;https://store.creality.com/ca/products/k1c-3d-printer&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Creality K1C printer,&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; this world of creation opened up. Here are some of the practical things I&amp;rsquo;ve been able to do.&lt;/p&gt;
&lt;h3&gt;Improving Exiting Tools&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;improving-exiting-tools&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#improving-exiting-tools&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;When new worlds open up, it can be a bit overwhelming. As an installer of a ton of Unifi products, their tools and options have, at times, been limited. Unifi has improved greatly over the years, but having a specific camera view when needed can be a daunting task. There are so many surfaces, and only so many options in the box. But with 3d printing, one can expand those options many fold. In one case, I needed to mount a G4 instant camera in an unorthodox location. The camera features a standard mounting screw found in tripods; so that could have been an option, but there was a fascinating &lt;a href=&#34;https://makerworld.com/en/models/723606-unifi-protect-g3-g4-g6-instant-mount#profileId-654657&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;articulating option&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; I went with. This, with about a dollar of PETG filament and I had a ton of new ways to use this camera.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/04/3dprint-mount-unifi-camera.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Take the Unifi Gateway Fibre, I needed to mount it in a cabinet, but there was nothing out there I could find to do so. Enter a 3D printed base that allowed me to mount that perfectly vertical and out of the way.&lt;/p&gt;
&lt;h3&gt;Organization&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;organization&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#organization&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;3d printing is becoming known for the type of organization tools that can be printed. It&amp;rsquo;s still mostly undiscovered country for me but I&amp;rsquo;ve made use of &lt;a href=&#34;https://makerworld.com/en/models/2408557-large-wire-shelf-bin-universal-rack-organizer?from=search#profileId-2640572&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;shelf baskets&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, &lt;a href=&#34;https://makerworld.com/en/models/888042-dewalt-20v-tool-mount-with-clip#profileId-845154&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;drill mounts&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, and &lt;a href=&#34;https://makerworld.com/en/models/887110-adjustable-under-desk-shelf-honeycomb-for-keyboard?from=search#profileId-842602&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;under desk shelf&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to store my wireless keyboard when not in use. The real power comes in when using &lt;a href=&#34;https://gridfinitygenerator.com/en&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Gridfinity&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to print modular containers for tools, though I haven&amp;rsquo;t even dipped my toe in that proverbial pond. In one example, I took a bin of assorted type of new batteries and used the gridfinity tool to go from chaotic to much cleaner. This took some time to print all of these out, but the final result was easier to access something the replacement batteries I need to get often. An added bonus was using these &lt;a href=&#34;https://www.printables.com/model/1397859-gridfinity-baseplates-wire-shelf-edition&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;baseplates&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to get it on my shelf.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/04/gridfinity-batteries.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Another means of organizing my space was to make my desk more versatile. This lead me to printing a mount for a keyboard and one for my current &lt;a href=&#34;https://cwl.cc/2026/04/macbook-neo-thoughts-on-moving-back-to-macos.html&#34;&gt;laptop&lt;/a&gt;. Here&amp;rsquo;s a short timelapse video of those rails printing out:&lt;/p&gt;
&lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; allowfullscreen=&#34;&#34; frameborder=&#34;0&#34; height=&#34;530&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/yoJsDXaV4S0&#34; title=&#34;3D Printing a Macbook Under Desk Holder with the the Creality K1C 3D Printer&#34; width=&#34;943&#34;&gt;&lt;/iframe&gt;### Saving Money
&lt;p&gt;There was the story of a simple cup holder. The specific cup holder we used on our stroller was about $60.00 when we purchased it. Having a place to hold a cup of coffee while pushing a stroller frees your hands in major ways. Over time, this cup holder we had was lost. It was now a matter of buying another, &lt;a href=&#34;https://makerworld.com/en/models/1011142-pram-cup-holder?from=search#profileId-990552&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;or 3d print one&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. The result was a useful tool, if not imperfect. Sure the printed cup holder was a bit wobbly, and not meant for my specific stroller, but that&amp;rsquo;s a problem waiting to be solved. My cup of coffee is held well in the tool, frees a hand, and this was printed with what amounted to less than a dollar of PETG filament. This worked out so well, I printed another one for a friend.&lt;/p&gt;
&lt;h3&gt;Fun&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;fun&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#fun&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;While it is surely fun to print a cup with Batman&amp;rsquo;s face on it, I gravitate to the practical sorts of fun things. When a client asked me to look into printing a puzzle/vault sort of solver for a presentation they were giving to kids, I thought the 3d printer might make something cool. This was, in fact, the first thing i would ever print, my. first multi-coloured print job and first attempt at something practical. I landed on the &lt;a href=&#34;https://makerworld.com/en/models/629116-4-digit-secret-box?from=search#profileId-1702132&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;four digit secret box&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. This was going to need sever prints, a manual change in colour and even editing plates; something new to me. and at the end of printing all these parts I needed to glue them together.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/04/3d-print-vault.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;h3&gt;Closing Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;closing-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#closing-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;It&amp;rsquo;s clear too that getting into 3D printing means buying all t those other things like a filament dryer, plate glue and tiny magnets. The list of do-dads and little screws is growing to support all the things that have to be assembled. This isn&amp;rsquo;t for everyone, but there are a ton of practical things you can do with a 3D printer. As I continue to explore and experiment, there is much more to say about these tools.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Macbook Neo: Thoughts on Moving Back to MacOS</title>
      <link>https://cwl.cc/2026/04/macbook-neo-thoughts-on-moving-back-to-macos.html/</link>
      <pubDate>Wed, 29 Apr 2026 10:00:42 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/04/macbook-neo-thoughts-on-moving-back-to-macos.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/04/macbook-neo3.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
For some time now, my daily drive laptop has been a Windows PC. Back years ago when I was using a Macbook Pro, the Windows feature &lt;a href=&#34;https://learn.microsoft.com/en-us/windows/wsl/install&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;WSL&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; wooed me back to the platform. It was nice to be back on familiar ground again with Windows, doing things I&amp;rsquo;d always done before (and running &lt;a href=&#34;https://cwl.cc/2012/02/that-great-tool-total-commander.html&#34;&gt;Total Commander&lt;/a&gt; natively). But, with the debut of the &lt;a href=&#34;https://www.apple.com/ca/macbook-neo/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Macbook Neo&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, I turn my attention back to the Apple platform for a daily computer.&lt;/p&gt;
&lt;p&gt;But let me step back for a second. What in the world would make me want to go back to a Mac? Especially the Neo. For a tech person like me, it&amp;rsquo;s like going backwards and getting an iPad with a keyboard. Have you seen the thing&amp;rsquo;s tiny &lt;a href=&#34;https://www.reddit.com/r/macbook/comments/1rsq6oi/placa_madre_de_la_macbook_neo/?tl=en#lightbox&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;motherboard&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;? Surely, you&amp;rsquo;d think, as a power user, this machine would b e useless. I decided to challenge that notion and get the Neo to see for myself. The first and most noticeable thing was the keyboard. Something I&amp;rsquo;d remembered fondly and mostly hated on my Lenovo laptop - the Neo&amp;rsquo;s keyboard is a joy to use again. But, what what I found in the Neo was an Apple Silicon powerhouse capable of a ton, with power to spare. And this is all happening in the confines of 8 GB of RAM and a CPU they intended to &lt;a href=&#34;https://www.macworld.com/article/3107278/apple-binned-chips-iphone-ipad-mac.html&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;throw away&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;? Crazy.&lt;/p&gt;
&lt;p&gt;Over time, I hadn&amp;rsquo;t really realized how much I&amp;rsquo;d been creeping further and further into the Apple ecosystem. AppleTV, Airpods, iPad, iPhone; I was ready to see what the addition of a Mac would do to make all of these come alive. This is where the audio had a chance to shine. With Airpods, the Neo switches between the phone and laptop in the smoothest hand off I think I&amp;rsquo;ve ever seen. This stuff is like magic and compared to the Bluetooth of the Windows world. This all just opened up a world of use for my Airpods that I hadn&amp;rsquo;t previously seen.&lt;/p&gt;
&lt;p&gt;The size of the drive is also a key consideration. All you get are two options at Neo&amp;rsquo;s launch: 256 GB or 512 GB. For anyone looking to do anything useful, obviously the 512 GB is a must. One could use the smaller sized drive too, if you weren&amp;rsquo;t planning to use the machine like I was. Secondly, everything here is soldered down. The drive, the RAM, everything. There will be no adding to this computer. In my previous laptop, I replaced the RAM to bring it up to 64 GB.&lt;/p&gt;
&lt;h3&gt;So what do I like?&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;so-what-do-i-like&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#so-what-do-i-like&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The screen is not big, but it&amp;rsquo;s plenty bright. Nice, clear and crisp on a sunny day. Of course I&amp;rsquo;ve mentioned the keyboard and without the touch bar, it so great to be writing on this keyboard again. The hardware itself has little more, two USB-C ports and a headphone jack. Everything else has to be Bluetooth. And that&amp;rsquo;s fine. Coming back to MacOS after so many years, there are some standout features that I&amp;rsquo;m loving in Tahoe too. The iPhone mirroring is fantastic, solid an frankly insane. Getting the ability to do text messaging and phone calls on the Mac again is also nice. I&amp;rsquo;m also finding that most of the stuff I relied on on Windows is also available on MacOS. Since Apple Silicon is mature enough, the only real holdout is my favourite application: Total Commander.&lt;/p&gt;
&lt;p&gt;This brings me to one of the most important things I did on the laptop, namely virtualisation. The options there seemed endless, and I benefited from running many virtual machines at once. Now, it was rare and I knew it wasn&amp;rsquo;t going to be the case on the Neo, but could I at least run Windows and MacOS to test things as needed? The answer came with &lt;a href=&#34;https://mac.getutm.app/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;UTM&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. Universal Testing Machine (or UTM) runs natively on the A18 and can, of course run Tahoe without any issues (albeit slower). But, it really does get with Windows 11 on ARM. You aren&amp;rsquo;t going to want to emulate on MacOS, so running the ARM version and machine use of its ability to emulate x64 inside the OS is a boon. Most everything I need runs just fine there and the VM is speedy. I didn&amp;rsquo;t have options these great back on my old Macbook Pro.&lt;/p&gt;
&lt;p&gt;Charging with USB-C is great too. I can even charge the thing with a power bank it&amp;rsquo;s so versatile. The battery life is so good. It just runs, sleeps, runs and the battery lasts all day. I &lt;em&gt;still&lt;/em&gt; don&amp;rsquo;t feel that Windows PCs will ever be able to make power work so well and seamless (even though my Lenovo did an admirable job, there were episodes of power flakiness over its lifetime - until it just died). That&amp;rsquo;s all stuff I remember from my previous Macbook and it&amp;rsquo;s all still here. With my Lenovo laptop, I travelled with an AC adapter everywhere, with the Neo, it often leaves with no power cables to means to charge it. The battery just lasts.&lt;/p&gt;
&lt;h3&gt;What am I hating?&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;what-am-i-hating&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#what-am-i-hating&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Hate is pretty strong here because there&amp;rsquo;s so much to love, but I do have some things I don&amp;rsquo;t like. The first, and main thing that will probably take me back to Windows is not being able to run a stellar terminal and file manager. For file management on the Mac, &lt;a href=&#34;https://binarynights.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Forklift&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and &lt;a href=&#34;https://bloomapp.club/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Bloom&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; look like great options and I&amp;rsquo;ll try them again. For a terminal session, the MacOS terminal is great, but having the use of a tool like &lt;a href=&#34;https://mobaxterm.mobatek.net/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;MobaXterm&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; on Windows is something I just took for granted. So far, I&amp;rsquo;ve been on the hunt for something comparable. Oh, and there&amp;rsquo;s a native port of Notepad++ (Update: It appears this project (now Nextpad++) is &lt;a href=&#34;https://notepad-plus-plus.org/news/npp-trademark-infringement/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;unauthorized&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, be &lt;a href=&#34;https://arstechnica.com/gadgets/2026/05/unofficial-vibe-coded-notepad-for-mac-draws-objections-from-original-author/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;warned&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - this has caused &lt;a href=&#34;https://daringfireball.net/2026/05/nextpad&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;quite a stir&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;). Are you kidding me? That&amp;rsquo;s the last thing I expected.&lt;/p&gt;
&lt;p&gt;Of course, I don&amp;rsquo;t love the limited hardware specs. This is a great laptop at 8 GB of RAM, but if there was a 32 GB version, this machine would become all that much more versatile. I understand the price point needed to be maintained, but hey. The drive size is bearable for now, and that can be expanded well through external drive options anyway. The size is on the small end, but that also means the Neo is super light and easy to carry around. Your phone charger will probably also charge this computer.&lt;/p&gt;
&lt;h3&gt;Final Thoughts&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;final-thoughts&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#final-thoughts&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;After week, I gotta say I&amp;rsquo;m impressed. That&amp;rsquo;s no small thing. This is a fantastic computer and a great value. If you&amp;rsquo;re running a netbook or similar Windows device, this might be worth a look (especially if you spend most of your time with Office documents and web browsing). For the power user, there&amp;rsquo;s still a ton to love if you&amp;rsquo;ve got an iPhone and Airpods. In many ways, this computer is the resolution of a tension between what the iPad + mouse and what the Macbook should and could be. Expect it to be a success, but also expect Apple to launch more like this. The conflict (if you want to call it that) to resolve is whether the Macbook should have a touch screen. I say, no.&lt;/p&gt;
&lt;p&gt;There will be more to say about this. Stay tuned&amp;hellip;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: Here&amp;rsquo;s a really great &lt;a href=&#34;https://www.jdhodges.com/blog/macbook-neo-benchmarks-analysis/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;deep dive &lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;into all things Neo. Since getting the Neo, I&amp;rsquo;ve added what&amp;rsquo;s being called the &amp;ldquo;&lt;a href=&#34;https://www.youtube.com/shorts/QA-fcQfRdEs&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;thermal pad mod&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&amp;rdquo; to the laptop. Test the machine to see if performance improves.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>My Encounter With a Fake iPhone, circa 2026</title>
      <link>https://cwl.cc/2026/02/my-encounter-with-a-fake-iphone-circa-2026.html/</link>
      <pubDate>Mon, 23 Feb 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/02/my-encounter-with-a-fake-iphone-circa-2026.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/02/iphone17-fake.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Today I happened upon a sale for an iPhone 17 Pro. I&amp;rsquo;d arranged the meeting, but I&amp;rsquo;d been so leery of the sale that I didn&amp;rsquo;t even bring money with me. The seller, I&amp;rsquo;ll call him Isaiah, was cordial, but seemed to be full of stories. As he was describing the phone, it was filled with extraneous story details. I asked him if he bought the phone from Apple and his response was, &amp;ldquo;Thanks for asking, there’s nothing wrong with the phone, it wasn’t directly who gotten it, it was one of my employees I sent to do so, he had mentioned the day of pickup they were out, and he got it somewhere in Yorkdale mall, it came with the receipt and bag, and I can show you the warranty, tho I think because there’s no user signed it, there’s none right now.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;There were more red flags than the running of the bulls on opening day. In one of his images, the serial number was also visible - D4CM67VT64, so using a simple Google search, there was a single result that pointed to another sale, seemingly different than this. It&amp;rsquo;s a common practice for fake iPhone&amp;rsquo;s to come in boxes with serial numbers that are searchable and legitimate. A quick search on Apple&amp;rsquo;s own warranty coverage page showed that serial number as an &amp;ldquo;iPhone 17 Pro&amp;rdquo; but it was listed as purchased in September of 2025.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/02/iphone17-fake-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;I went back to Isaiah and messaged him if he had been trying to sell this since November of 2025, and his response was, &amp;ldquo;Nope I haven’t been tryna sell it, I simply got a different phone that I’m using to conduct my business on, and I missed the return date to give the phone back so well I’m cutting my loses.&amp;rdquo; So, there were enough inconsistencies to avoid this sale, but something about Isaiah that made em think he&amp;rsquo;s wasn&amp;rsquo;t scamming. In fact, he&amp;rsquo;d agreed to meet in the lobby of a police station. Something wasn&amp;rsquo;t adding up, so I did what any curious person should do and set a meet with Isaiah.&lt;/p&gt;
&lt;p&gt;Meeting at a coffee shop so we could sit down, and remember, without any money, Isaiah walked in an sat to my right at a four seat table&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. He walked in with a large coat, a nice hand bag and a rather large gold ring on his left hand that seemed overly oxidized. Isaiah had an older silver iPhone as his main phone. When he flipped that phone over, I could see the back glass on his personal phone was cracked. Isaiah did not seem nervous or in a rush and he didn&amp;rsquo;t give of a guarded vibe&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. Isaiah placed the &amp;ldquo;new&amp;rdquo; phone on the table while saying, &amp;ldquo;I know you want to see a legitimate phone and not some Android phone with a skin on it.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/02/iphone17-fake-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;From this point there was no way to get photos, but it would have been great. I picked up this iPhone and it felt light. The phone did not fit in the box correctly. Immediately keying into the screen, the edged were raised from the chassis. I immediately commented that this is not how iPhones are. That something was off. Isaiah listened and seemed genuinely curious about what I was doing. I next checked the software, and it seemed to be an installation of legitimate iOS software. Sure, it was a little laggy and slower, but this was Apple software. I told Isaiah that I wouldn&amp;rsquo;t be buying this; that I couldn&amp;rsquo;t confirm it was fake, but I was not confident that it was legitimate. Isaiah did something unexpected, instead of running as if he&amp;rsquo;d been caught, he actually asked me to look closer and figure out what was going on.&lt;/p&gt;
&lt;p&gt;Picking up the phone again, I started to look closer. Given I did not have a authentic reference iPhone to work from, there were limits, but I now had time to investigate. First thing I noticed was a SIM card slot. As I understood it, iPhone 17&amp;rsquo;s in North America did not include this but okay. The color of the phone&amp;rsquo;s back seemed consistent with the new orange version. I went back to the software and connected it to the Internet and tested some of the Apple software. This was alright. Back to the Settings -&amp;gt; General -&amp;gt; About, I noticed some serious and glaring inconsistencies.&lt;/p&gt;
&lt;p&gt;Here, I copied the serial number and pasted it in Apple&amp;rsquo;s warranty check, it returned an iPhone XR from 2019. I copied the model number and the same model was returned. Going back to the about screen, it clearly indicated &amp;ldquo;iPhone 17 pro.&amp;rdquo; This phone had clearly activated on Apple&amp;rsquo;s network because it had gotten past the welcome screen. Then, I copied the IEMI and tested it on &lt;a href=&#34;https://www.devicecheck.ca/check-status-device-canada/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;devicecheck.ca&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and that returned an unknown IMEI. While I did not have a SIM card to test with, it was a good guess to say this phone would not connect to a wireless network.&lt;/p&gt;
&lt;p&gt;It appeared to me what I was looking at was an iPhone XR board inserted into an iPhone 17 chassis. Certain versioning details had been re-written inside the device, but on cursory examination, this looked like a legitimate iPhone 17. For context, this is a $90 device slapped into the frame of a new phone so it could be sold off at $1,500 or more market price. Not a bad way to scam people, especially if you know they&amp;rsquo;re looking specifically for Android-looking software and defeating that means a sale in the moment.&lt;/p&gt;
&lt;p&gt;As for Isaiah, did he know this was a fake phone ahead of time? I&amp;rsquo;m not sure I&amp;rsquo;ll ever answer that. He may have been duped into buying this, but some of his actions tell me that he&amp;rsquo;s had some difficulty selling this (even of the buyer couldn&amp;rsquo;t figure out why the phone was fake). The fakers are more and more clever, and more sophisticated than ever. &lt;strong&gt;Be safe and be aware. Never rush through a purchase.&lt;/strong&gt; As I write this, well over a week past my encounter with this seller, his listing was still online with what appear to be fake Airpods.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Not across from me which is a common way to give others more space.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;These are common traits of scammers in online sales, they&amp;rsquo;re super guarded and want to rush you.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;This comment suggested, as did others, that he knew more about these things and was acting like he didn&amp;rsquo;t.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Book - Against the Machine</title>
      <link>https://cwl.cc/2026/02/book-against-the-machine.html/</link>
      <pubDate>Fri, 20 Feb 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/02/book-against-the-machine.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/Against-The-Machine-Cover.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
At most turns in this book, I was happy to write off this thesis as the musings of a crackpot. Kingsnorth&amp;rsquo;s foray into trans-related issues and his defense of conspiracies is just stupid. The assertion that progress wants the end of us is unnecessarily extreme. His holding on so much to religion and the idea that religion and science are somehow in opposition. There were times along the path of reading this that I&amp;rsquo;d wanted to put the book down and stop. Folks like this that are also Luddites often aren&amp;rsquo;t worth hearing out and don&amp;rsquo;t have a way to maintain credibility for 366 pages like Against the Machine demands.&lt;/p&gt;
&lt;p&gt;This is all just more fear of new technology that has been in style since new technology. The stories are novel and not hard to find. One great one was how &lt;a href=&#34;https://moazedi.blogspot.com/2014/07/the-immoral-bicycle.html&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;bicycles were immoral&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. One can never forget that pictures will steal your soul&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. And I suggest you check out the incredible 1980s movie &lt;a href=&#34;https://en.wikipedia.org/wiki/Maximum_Overdrive&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Maximum Overdrive&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; for peak fear-of-machines.&lt;/p&gt;
&lt;p&gt;But I took a deep breath and kept reading. Hard books can be worth sticking it out.&lt;/p&gt;
&lt;p&gt;There is the final salvo, which is for people to become what Paul calls the &amp;ldquo;reactionary resistance.&amp;rdquo; It&amp;rsquo;s a wishy-washy amalgam of an ideology or non-ideology or something that is &amp;lsquo;green,&amp;rsquo; while being anti-State power whilst building a moral centre where the state can reach you. At least Kingsnorth has a sense of humour for how loopy this all sounds.&lt;/p&gt;
&lt;p&gt;Something did sit with me while reading this, however. This growing distrust, disinterest and disgust for the systems we live in; his &amp;ldquo;Machine,&amp;rdquo; as he calls it. Kingsnorth seems to rail the most at &amp;ldquo;The West,&amp;rdquo; but it&amp;rsquo;s as if this is the only space that exists in his Matrix&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. There seems to be no South America, no Europe, and no other place that the machine hasn&amp;rsquo;t fully compromised. To him, progress has overtaken all and there&amp;rsquo;s no chance anyone could be unless they live &amp;ldquo;Outside the machine the better to see God and experience creation.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Tugging at my brain though, is that Kingsnorth is on to something. He might be barking up the wrong tree, but perhaps barking in the right direction. The rejection of how our lives have become systematized and digitized has some merit to it. The almighty God of growth has a ton of problematic things about it too. I wish the author focused more on how can find new ways of living within or without the problematic parts of this system more than the same old &amp;ldquo;get&amp;rsquo;em from the inside&amp;rdquo; he describes in the &amp;ldquo;cooked&amp;rdquo; section. One feels that he&amp;rsquo;s grasping for the concept of community that should have been the focus and not the heavy-handed leanings on religion.&lt;/p&gt;
&lt;p&gt;366 pages though. YMMV (Your mileage may vary).&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Likely apocryphal.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;From the movie of the same name.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Anker Knows How to Make a Power Bank</title>
      <link>https://cwl.cc/2026/02/anker-knows-how-to-make-a-power-bank.html/</link>
      <pubDate>Mon, 16 Feb 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/02/anker-knows-how-to-make-a-power-bank.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Anker-Maggo-00.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Previously, I&amp;rsquo;d used the &lt;a href=&#34;https://www.newdery.com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;NEWDERY&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; Portable Power Bank, and it was something of a marvel for its time. It had it&amp;rsquo;s troubles, however. One of them was the Apple Watch charge point not being magnetic. Because of that, this power bank would be a pain to use in the car and keeping the watch on the charging surface when in motion&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. It was still nice to have something I could use to charge an iPhone and Apple Watch on the road. Then, the U.S. Consumer Product Safety Commission (CPSC) &lt;a href=&#34;https://www.cpsc.gov/Warnings/2025/CPSC-Warns-Consumers-to-Immediately-Stop-Using-NEWDERY-Power-Banks-Due-to-Fire-and-Burn-Hazards-Risk-of-Serious-Injury-or-Death-Sold-Exclusively-on-Amazon-com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;chimed in&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and said,&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;CPSC Warns Consumers to Immediately Stop Using NEWDERY Power Banks Due to Fire and Burn Hazards; Risk of Serious Injury or Death.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Enter Anker&amp;rsquo;s &lt;a href=&#34;https://www.anker.com/ca/products/a1657-maggo-10000mah-power-bank&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;MagGo Power Bank&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. It uses a similar style as the NewDery with the same 10000mAh battery, but improves on it in some ways not related to risk of death.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Anker-MagGo-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;There&amp;rsquo;s a nifty clasp on the one USB-C cable that just needs to be pulled back and then it locks in the device&amp;rsquo;s housing. That way, it feels like the cable&amp;rsquo;s not going to get snagged on anything (unless it&amp;rsquo;s in a purse I guess), and the loop left behind doubles as a handle to carry with. The block is still heavy, so if you&amp;rsquo;re putting this in a bag and backpacking, keep that in mind because it all adds up.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Anker-MagGo-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;This power bank sports a small screen, it&amp;rsquo;s tiny, but it shows a ton of great info like charging percentage, charging speed and that blue/green half-moon is a progress bar. It&amp;rsquo;s nifty when you&amp;rsquo;re charging the power bank and want a quick glance at the charge level. To activate the display, you press a small button on top, or pop up the Watch charger apparatus. The sides of the power bank have a kind of bumpy texture; helpful for gripping the thing. Thankfully on the bottom there are rubberized bumps that help avoid slipping off everything, but perhaps in the next iteration.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Anker-MagGo-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The Leafs did not win that game.&lt;/em&gt;
In sum, this sturdy product is a winner and worth checking out if you need power on-the-go. Likely it&amp;rsquo;s available at all the big box and Amazon stores as you read this with Holiday 2025 imminent. It&amp;rsquo;s a battery pack, so let&amp;rsquo;s hope this is not recalled or marked as dangerous by a safety commission any time soon.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;This may have been because earlier generations of the Apple Watch did not make use of a magnetic charger.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Book: The Future of Truth</title>
      <link>https://cwl.cc/2026/02/the-future-of-truth-book.html/</link>
      <pubDate>Fri, 13 Feb 2026 08:00:22 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/02/the-future-of-truth-book.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/The-Future-Of-Truth-Cover.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
This topic of truth is something that has been on my mind. Recently, I wrote that &lt;a href=&#34;https://cwl.cc/2025/10/trust-needs-a-major-innovation.html&#34;&gt;trust needs a major innovation&lt;/a&gt;. What is clear, however, is that truth and fact are quite different things. Coincidentally, Werner Herzog releases a book titled &lt;a href=&#34;https://www.penguinrandomhouse.com/books/768051/the-future-of-truth-by-werner-herzog-translated-by-michael-hofmann/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;The Future of Truth&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, umm, yea. I&amp;rsquo;m in. Herzog has always seemed like something of an eccentric figure and I&amp;rsquo;m sure he&amp;rsquo;d have stories to tell.&lt;/p&gt;
&lt;p&gt;And he did, of working on movies, working with stars and, a weird and entire chapter to paraphrase a bizarre opera story. He talks of finding the truth beyond the facts. It&amp;rsquo;s something he calls the &amp;ldquo;ecstatic truth.&amp;rdquo; I love that. He talks about how overt lies are different than the lies told in service of the truth itself. When I think of it, he&amp;rsquo;s really on to something. His examples are often compelling, like that of Defoe:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;In 1722 Daniel Defoe published A Journal of the Plague Year, a factual account of the great London plague of 1665, but the book is pure invention. The remarkable thing is that his description of the scourge is so much more animated and believable than all the original documents that have come down to us. No one else gives you such deep insight into the horror as Defoe. There is no question that he used eyewitness accounts and had access to documents.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;What humans long to understand is the meaning that comes from information presented to us. That has to be where art connects to us, whether or not it&amp;rsquo;s actually a factual thing. As Herzog describes, suspension of disbelief in movies has to do with us where,&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;We buy tickets for a magical performance, where we are quite willingly misled.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;His solve for our Internet and news trust-based problems are to re-invigorate critical thinking, and I agree. Herzog is a unique figure that I confess could learn more about. His plea for us to read, read an read more books is also bang on. The final chapter contains just two sentences which I will not share here, but it&amp;rsquo;s a fitting end to this wonderful and short book. Now, Herzog&amp;rsquo;s movies are not always my cup of tea&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;, but there&amp;rsquo;s no doubt he&amp;rsquo;d be a fascinating person to sit down and talk to. This is a book worth checking out.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;&amp;ldquo;I am going to go back and see some of his past work. He&amp;rsquo;&amp;rsquo;s made some seriously oddball films.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>A Look Back at My First Blog / Website</title>
      <link>https://cwl.cc/2026/02/a-look-back-at-my-first-blog-website.html/</link>
      <pubDate>Mon, 09 Feb 2026 18:27:09 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/02/a-look-back-at-my-first-blog-website.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2015/05/Keep-Up-And-Blog-On.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
This is going to date me, but what if I told you I&amp;rsquo;d been blogging since 1998. Then, my site was nothing more than an offshoot of the original framed HTML page I created at Seneca College. At the school, a bit of hosting space was provided to everyone in an active technology course-load. After tinkering with some HTML (and leaving the school), I took the files, added more details, a few blog posts and then released it. I don&amp;rsquo;t really count what I worked on at the school, or my blogging might go back to 1997 or earlier.&lt;/p&gt;
&lt;p&gt;Now, I&amp;rsquo;ve had to blur out some of this. Back then, sharing too much information was far more common than it is today. I was still learning. Sheesh, on one of the pages there was even a username and password to a site. What you see in these images (from top) is my college I.D. photo, a picture of my Father and Mother in their younger years and (bottom right), a picture of myself and my sister Leigh. The rest will remain anonymous. It was also likely that almost no one saw this page while it was actively being served out at Globalserve, an ISP.&lt;/p&gt;
&lt;p&gt;Here it is in all its glory:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/First-Blog-Site.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Even back in the beginning, I offered freely some basic utilities, such that it was. This was instilled in me early on, do the work, but share the work freely when you can.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/First-Blog-Downloads.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Looking back at this from almost 30 years in the future, if I could go back &lt;i&gt;&lt;a href=&#34;https://www.panmacmillan.com/authors/toshikazu-kawaguchi/before-the-coffee-gets-cold/9781529029581&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Before the Coffee Gets Cold&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&lt;i/&gt;, I would say a few things to my younger self:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Stick to the classic white background. Don&amp;rsquo;t try to be fancy with that faux marble teal texture.&lt;/li&gt;
&lt;li&gt;I love the left-side tree menu. It&amp;rsquo;s not going to be scaleable for the coming 750+ articles you&amp;rsquo;re about write, but A for effort.&lt;/li&gt;
&lt;li&gt;Don&amp;rsquo;t ever blog about your current or former girlfriend. It was perhaps too family heavy too. This was unnecessary as there was a ton to talk about outside of these personal matters.&lt;/li&gt;
&lt;li&gt;Don&amp;rsquo;t put passwords on public websites. Ever.&lt;/li&gt;
&lt;li&gt;What was with the Pi symbol? I need to ask myself.&lt;/li&gt;
&lt;li&gt;It&amp;rsquo;s best to leave your email off the site. Ditto for linking the thing.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Can you see any similarities between the site you&amp;rsquo;re on now and the one I started with?&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Spec Sheet Viewer -  CWL Software of the Past</title>
      <link>https://cwl.cc/2026/02/spec-sheet-viewer-cwl-software-of-the-past.html/</link>
      <pubDate>Fri, 06 Feb 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/02/spec-sheet-viewer-cwl-software-of-the-past.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/Spec-Sheet-Viewer.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
When a client approached me and asked for an application to help them search for and bring up specification documents, I thought it was something I could help with. One caveat, however, was that the database referencing these documents was a Microsoft Access Database. Perhaps even more interesting was that files the database referenced were scattered across a vast Novell file server. If I recall, the original database application could not be developed further because they&amp;rsquo;d lost an admin password or something like that. Today I take another look at software I&amp;rsquo;d written in the past.&lt;/p&gt;
&lt;p&gt;Using Spec Sheet Viewer had to be simple. The user entered a specification sheet number or code and Spec Sheet Viewer showed a table of matching items. The user would select the item they wanted (or stay on the first) and press CTRL+L to launch a PDF viewer and load or print that spec sheet. This was installed on all production computers, and some didn&amp;rsquo;t include a mouse, so workers needed maximum flexibility.&lt;/p&gt;
&lt;p&gt;They also had the ability to look up customer codes and search for every spec sheet by customer. If one didn&amp;rsquo;t know the customer code, there was a lookup tool to browse that list alphabetically:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/spec-sheet-viewer-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Of the core applications I&amp;rsquo;ve written this one is the most likely to still be in use today. I can see ii somewhere on a laptop on the production floor of that customer. The production plant has long shut down by now, but the company itself lives on. Recently, I tested Spec Sheet Viewer and it still works today on the newest Windows 11 operating system&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. Sadly, this program is so hyper-specific that it would be difficult to turn into something useful elsewhere.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Even though Office 365 Access won&amp;rsquo;&amp;rsquo;t even open the damn database.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Unifi UPS Tower</title>
      <link>https://cwl.cc/2026/02/unifi-ups-tower.html/</link>
      <pubDate>Mon, 02 Feb 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/02/unifi-ups-tower.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/UPS-Tower-06.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Coming in the standard tower look that APC popularized, Unifi&amp;rsquo;s product is white rather than the typical black look. The UPS comes with the battery unplugged and one simply has to open the front panel and connect the battery. Once the UPS is then plugged into the network it can be adopted by your Unifi network controller.&lt;/p&gt;
&lt;p&gt;Of the more unique features of this device is the ability to pair with other Unifi ecosystems devices and do a &amp;ldquo;safe&amp;rdquo; shutdown. Not all devices support this, but in my case, the gateway I was running did, so I enabled that.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/UPS-Tower-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Ports on the UPS Tower are well-described, but the ports cannot individually be shut off. Many network-based PDUs offer this kind of support, so it would be a nice remote option, but not here. As is typical of these kinds of UPSes, there is a bank of battery backed outlets and a bank of non-battery supported outlets (or surge protected).&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/UPS-Tower-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;When something is plugged into any of these outlets, the controller does not expose any new information such as voltage used or even that something is drawing power from that outlet. The only real indications of a real power draw would come from the &amp;ldquo;Power Ultilization&amp;rdquo; progress bar which is common with similar UPS&#39;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/UPS-Tower-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;The UPS Tower does not sport a front LCD as most other comparable models do in this range of use.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/UPS-Tower-05.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;figcaption class=&#34;wp-element-caption&#34;&gt;The Unifi UPS Tower (left) next to a tower UPS from APC (right).&lt;/figcaption&gt;At a current price of &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/integrations-power-tech/collections/unifi-power-tech-ups/products/ups-tower-us&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;$229.00 CDN&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; plus taxes, this is incredibly competitive for these types of products that can exceed $500 or more. At the time of writing, the battery - an MS9-12 - is roughly $50.00 CDN to replace, which is also quite reasonable. It may also be available on Amazon or a similar large retailer.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Unifi Cloud Gateway Fiber - is This the Perfect Gateway?</title>
      <link>https://cwl.cc/2026/01/unifi-cloud-gateway-fiber-is-this-the-perfect-gateway.html/</link>
      <pubDate>Mon, 26 Jan 2026 08:02:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/unifi-cloud-gateway-fiber-is-this-the-perfect-gateway.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/cloud-gateway-fibre-05.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Ubiquiti Networks (or Unifi) have made a ton of different network gateway devices over the years, from the &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/all-cloud-gateways/products/udm-pro&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Dream Machine&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to the &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/all-cloud-gateways/products/udw&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Dream Wall&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;, to the original UCG. These have all made full use of the Unifi Network Controller&amp;rsquo;s abilities. In the cases where you have no gateway device, the controller is great software, but having a gateway device on the edge of your Internet connection really gives you the full Unifi experience. Today, I&amp;rsquo;ve procured a Unifi Cloud Gateway Fiber and put it on the edge of a very active connection.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/cloud-gateway-fibre-featured.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;With the advent of ever higher internet bandwidth, many connections are well beyond 1 Gbps. The vast majority of older gateway devices cap out at a standard 1 Gbps link, and are ever further limited by router chipsets or the internal switching capabilities. If one wants to get the full bandwidth past 1gbs, it&amp;rsquo;s likely multiple network devices will need to change to 2.5gb or 10gb Ethernet. The good news in that much of this is reasonably priced.&lt;/p&gt;
&lt;p&gt;Bell&amp;rsquo;s home hub router has been one of the bigger mysteries. Gone is the purple mode, for a menu driven bridge mode. For many though, Bells Home Hub and Gigahub routers can simply be connected to LAN and your PPOE login passes through. With each new gateway device Bell customers get, the cat and mouse in terms of bridge mode begins&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. On the Rogers side, it seems things aren&amp;rsquo;t much better.&lt;/p&gt;
&lt;p&gt;Why care about this? To get the most out of your Unifi gateway, it needs to be out on the Internet&amp;rsquo;s edge. This means removing the Bell or Rogers router entirely or bypassing it. It can work in other ways of course, but you&amp;rsquo;ll either sacrifice speed or functionally. For the investment in the Cloud Gateway Fiber, you want it at its best.&lt;/p&gt;
&lt;h4&gt;Form Factor&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;form-factor&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#form-factor&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;This thing is small. It&amp;rsquo;s about the size of a mini PC. It makes just about no noise. It will fit easily on the top of any rack or desktop. The ports on the back are incredibly configurable allowing you to make any one of them a WAN&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; or WAN2 (fail-over) port. The inclusion of four POE+ ports also means you can attach cameras or access points directly to this device. It&amp;rsquo;s just about the perfect size to be the central hub of your small branch office&amp;rsquo;s network and security system.&lt;/p&gt;
&lt;h4&gt;Protect NVR&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;protect-nvr&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#protect-nvr&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;The Cloud Gateway can also run Unifi&amp;rsquo;s proprietary surveillance software, Protect. This, in conjunction with a growing set of different cameras allows for a ton of different detections, A.I. options and even license plate recognition. To make use of the NVR feature, however, you have to purchase a drive tray to hold a single M.2 drive. The upside here is that the drive access is fast, but the downside is there are no drive redundancies available. For those that have not used Unifi&amp;rsquo;s NVR software on a solid state drive, you&amp;rsquo;re in for a nice speed improvement. At the time of writing, the above mentioned &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/accessories-installations/products/uacc-ssd-tray&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;SSD tray&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; is $25.00. Given stock has been an issue in the past, one would hope that Unifi keeps this tray in stock levels closer to those of Cloud Gateway Fiber devices so anyone can get one. To be frank, this tray should have been included with the product. This kind configuration for small offices is the perfect sizing for speed, power and number of cameras supported ((15) HD, (8) 2K, or (5) 4K cameras, though you can push those limits even though you&amp;rsquo;ll get warnings). For a small installation of six mixed cameras and a 1 TB M.2 drive, you&amp;rsquo;ll get about 4 days and 12 hours of recording history.&lt;/p&gt;
&lt;h4&gt;Cybersecure&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;cybersecure&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#cybersecure&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;Given the name, you&amp;rsquo;d think this feature might be hokey or cheesy. But, it&amp;rsquo;s actually a useful and practical tool within the network controller. It&amp;rsquo;s capable of 5gbs bandwidth with the unified threat management (UTM) and Intrusion Protection System (IPS) turned on. One of things I appreciate is the ability to block connections based on region, such as that of China and Russia, for example. If you know specific regions are threat actors, this feature is a great way to be proactive.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/cloud-gateway-fibre-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;This, coupled with an intrusion protection system (IPS) with a number of pre-made signatures, and the Gateway Fiber blocks different attacks before reaching your systems. This is especially useful, of course, when you&amp;rsquo;re hosting services.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/cloud-gateway-fibre-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Over time, blocking events start to add up. Your mileage may vary for what should or shouldn&amp;rsquo;t be blocked, but this is should be a significant security boost for most self-hosted or small branch offices that might not have the capital to buy into larger protection systems.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/cloud-gateway-fibre-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;There are a ton more settings within CyberSecure that I won&amp;rsquo;t get into, but this Unifi device sure does pack in features for such a small package. You can get a more advanced tool from Unifi called &amp;ldquo;UniFi CyberSecure by Proofpoint,&amp;rdquo; but this one works well.&lt;/p&gt;
&lt;p&gt;I just have to point out the beautiful work Unifi has done over the years to strike the right balance of readability and density of information in the mobile app. It works, and works well.&lt;/p&gt;
&lt;p&gt;This device supports the full suite of Unifi software including Access, Talk, Connect and Innerspace, though I did not test any of those in this review. Installation and updates are like any other Unifi device, so this process is very predictable.&lt;/p&gt;
&lt;p&gt;At an after-tax price of &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/all-cloud-gateways/collections/cloud-gateway-fiber/products/ucg-fiber&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;$473.47 CDN&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; for the Cloud Gateway Fiber and the M.2 SSD Tray accessory, it&amp;rsquo;s more expensive than a low-end router, but as far as a feature rich UTM/IPS, this is great. That includes a network video recorder and identity manager software with no licensing fees, this is a more than reasonable cost for what you get. I should also note that the UCG-Fiber does not come with an access point, so it cannot provide wireless connectivity. To provide that, buy one of &lt;a href=&#34;https://ca.store.ui.com/ca/en/category/all-wifi/products/u7-pro&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Unifi&amp;rsquo;s line&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; of access point and adopt it into the network controller&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;I&amp;rsquo;ve used most of them in some capacity.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;A Gigahub 2.0 is rolling out in some locations causing serious headaches for folks (and it has no bridge mode)&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;These are ports that point out towards the Internet.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:4&#34;&gt;
&lt;p&gt;Or, of course, use your own.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>NewMDB - CWL Software of the Past</title>
      <link>https://cwl.cc/2026/01/newmdb-cwl-software-of-the-past.html/</link>
      <pubDate>Fri, 23 Jan 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/newmdb-cwl-software-of-the-past.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/MDB-Creator-01.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The idea was quite simple: Create a program that made an empty &lt;a href=&#34;https://en.wikipedia.org/wiki/Microsoft_Access&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Microsoft Access&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; Database. This was the spring of 2003 and I was willing and ready to take on small things like this to, well, see if I could. The program would need to create a basic database structure resembling an address book that would be modified later. The programI wrote was so rudimentary that, if it found an Access database file with the same name in its running folder, it would delete it. That&amp;rsquo;s not great, but it was very specific in its purpose and the tool just worked. Today I take a look at this small application as I dive in to the weird history of software I&amp;rsquo;ve created.&lt;/p&gt;
&lt;p&gt;That problem I was trying to solve was to avoid the need to open Microsoft&amp;rsquo;s monster Access database application only to make a blank database. Even more importantly, for a computer that did not have Access or Microsoft Office installed, allow the user to create this kind file quickly. That was the ask and I imagine over a short period of time I hashed out this small utility.&lt;/p&gt;
&lt;p&gt;This could have been extended further, even though it did what it needed. of course, fixing the blunt deletion with a prompt to overwrite would be a start. I had intended to make it support command line parameters and, eventually allow for reading of a file to determine some kind of database structure. This would have allowed NewMDB to run as part of a script. The great thing about this program is that it still runs on the newest version of Windows 11 and still just creates empty Access Databases without the need for Access installed&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. If someone out there has a use for this, or thinks I should update it further, let me know and I may dig back in.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;At that point, to view the thing, you&amp;rsquo;&amp;rsquo;d need Access or an &lt;a href=&#34;https://www.mdb-viewer.com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;online viewer&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Revisiting John Candy</title>
      <link>https://cwl.cc/2026/01/revisiting-john-candy.html/</link>
      <pubDate>Mon, 19 Jan 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/revisiting-john-candy.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/01/john-candy-04.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
This dreary time of year in the the Northern Hemisphere so many are talking about &amp;ldquo;&lt;a href=&#34;https://en.wikipedia.org/wiki/Blue_Monday_%28date%29&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Blue Monday&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;,&amp;rdquo; but I&amp;rsquo;ve been taken by such happy things that this day isn&amp;rsquo;t even registering for me. I&amp;rsquo;ve been reading and watching recent projects that highlighted the man and actor John Candy. I read the outstanding hardcover &lt;a href=&#34;https://www.indigo.ca/en-ca/john-candy-a-life-in-comedy/9781487009526.html&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;John Candy: A Life In Comedy&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and it brought me back to many of his greatest projects. In the mornings, I would watch episodes of SCTV while perching my son next to me; him a little too young to know what he&amp;rsquo;s seeing, but laughing along with me as I almost involuntarily roared with chest-bouncing laughter. Somewhere in the middle of this, I managed to also catch the stellar documentary &lt;a href=&#34;https://www.imdb.com/title/tt26683420/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;John Candy: I Like Me&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.imdb.com/title/tt26683420/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;John Candy: I Like Me&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; was, in fact, my entry-point to this flush of John Candy Projects. Given that Ryan Reynolds and Colin Hanks were involved, I knew this movie was going to be good. Shit, you&amp;rsquo;re not ready for how moving this is. There are so many stories, interviews and details about the man, it&amp;rsquo;s touching. Here too, you&amp;rsquo;ll get a ton more details about John&amp;rsquo;s humanity and his love with with his wife, Rose. You&amp;rsquo;ll also see heartbreaking interviews where he&amp;rsquo;s asked about his weight and is visibly shaken. He hid his hurt and anxiety well and these interviews, which by today&amp;rsquo;s standards, seem so insensitive. It&amp;rsquo;s tough to watch.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/01/john-candy-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;You can catch this on &lt;a href=&#34;https://www.primevideo.com/detail/John-Candy-I-Like-Me/0KGBRKW6YFKEBVMG14ZNL9UXOC&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Prime Video&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, if you haven&amp;rsquo;t see it.&lt;/p&gt;
&lt;p&gt;In &lt;em&gt;John Candy: A Life In Comedy&lt;/em&gt; I had no idea that John hated working on his last movie Wagons East. It wasn&amp;rsquo;t one that I saw personally at the time. but it seemed to have been reviewed badly. It&amp;rsquo;s a shame that Candy&amp;rsquo;s final work was not so well-received. There was his company Frostback Productions, where Candy would keep his Plane, Trains, and Automobiles luggage trunk at the foot of his office table. New to me was the word frostback cleverly refers to a Canadian that makes their way to the U.S. for work. Indeed John did that in spades.&lt;/p&gt;
&lt;p&gt;There are so many interesting details about his work and life in this book. Thankfully too, Dan Aykroyd&amp;rsquo;s eulogy is printed here word-for-word. Aykroyd&amp;rsquo;s use of the word Donlands is wonderful and specific (I&amp;rsquo;m from the Donlands too, and never really thought of it that way). It&amp;rsquo;s no small thing that the last chapter of this books is simply entitled &amp;ldquo;The Legacy,&amp;rdquo; because Candy had such an expansive and impactful one.&lt;/p&gt;
&lt;p&gt;I have my own John Candy story of sorts too. My father had something of a kinship with this man. It&amp;rsquo;s a slight memory and perhaps one told too many times to actually be true. But, my father meet him in a bar in Newmarket (I was in tow, a child at the time). They&amp;rsquo;d sit down for a drink while I kept myself amused upstairs (could this have been a place called Copperfields?) . How well they knew each other, I would never know. That I&amp;rsquo;d even get that close to meeting this man astounds me, even today. My father was blessed to have shared a drink with him. John Candy&amp;rsquo;s work will live on forever and it&amp;rsquo;s such a shame we lost him so young.&lt;/p&gt;
&lt;p&gt;Why have all these projects converged on the year 2025? This is not clear, but it has been a welcome development. And Let me say, if you are among the handful of people on earth that has never seen John Candy perform, I suggest you immediately fix that and watch one of his projects. This is surely the cure for January, winter wherever you are, and quite possibly other problems of humanity. That&amp;rsquo;s some kind of legacy.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>The iodd ST300 Drive Enclosure - A Virtual Drive PowerTool</title>
      <link>https://cwl.cc/2026/01/the-iodd-st300-drive-enclosure-a-virtual-drive-powertool.html/</link>
      <pubDate>Fri, 16 Jan 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/the-iodd-st300-drive-enclosure-a-virtual-drive-powertool.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/ST300-011.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Iodd seems to be adept at making clones of other company&amp;rsquo;s products (see Zalman). This one may be a clone also, though it&amp;rsquo;s hard to know. The ST300 drive enclosure is something of a unique product. It&amp;rsquo;s an external drive, yes, but when you place CD image files in a folder named &lt;code&gt;_ISO&lt;/code&gt;, you can internally mount up to four virtual drives and boot from them. This is great for installing operating systems as it&amp;rsquo;s the standard format for these. Today, I take a look.&lt;/p&gt;
&lt;p&gt;Now, there are software ways to do this as many will point out. You could use the great &lt;a href=&#34;https://www.ventoy.net/en/index.html&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Ventoy&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to do something similar. The one thing that makes &amp;lsquo;hard&amp;rsquo; emulators like ST300 different is that, for more finicky bootable images, you want the target device to use it as natively as possible. Ventoy and their ilk can be a bit tricky for certain images. If you can get your hands on Bart&amp;rsquo;s PE Builder, you can create bootable ISO&amp;rsquo;s yourself and use them to great effect.&lt;/p&gt;
&lt;p&gt;And the ST300&amp;rsquo;s novel ability to lock in a mounted ISO file is nifty too, thus making that mounting a little faster on boot up, making it easier to catch the computer&amp;rsquo;s boot cycle. This drive also supports mounting &lt;a href=&#34;https://filext.com/file-extension/VHD&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;VHD&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and &lt;a href=&#34;https://filext.com/file-extension/IMA&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;IMA&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; files, making it seriously interesting for installing super old stuff, if that&amp;rsquo;s your bag. Couple this with the use of a good-size 2.5 solid state hard disk, and it starts to meet the real promise of such a unique device. Iodd also &lt;a href=&#34;https://leinss.com/blog/?p=3597&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;has a version&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; of this that takes an M.2 drive&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; in a much smaller package.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/st300-in-action.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The ST300 in action&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;There is one USB Key that remains un-virtualized. It&amp;rsquo;s the original version of Windows 10, Release to Manufacturing. Using this, it picks up the &lt;a href=&#34;https://en.wikipedia.org/wiki/BIOS#Identification&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;BIOS SLIC&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; OEM information and uses that (if there is one). This key is notable that it can boot natively using either legacy or UEFI. No matter what I&amp;rsquo;ve tried, I&amp;rsquo;ve been unable to rip this great installer into an ISO file and get it working on a device like ST300. Given that, this key stays in the same case as the iodd enclosure.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/well-used-windows-10-key.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;My well-worn Windows 10 installer key.&lt;/em&gt;
The ST300 has an easy-to-use keyboard that includes numbers in a phone configuration. Most often you&amp;rsquo;re going to use these to get to the built-in menu and mount your drives. The ST400, the next model up, also supports encrypting this data, so this keypad then doubles as a password entry to gain access.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/ST300-Firmware-Update.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;Firmware updates are a breeze.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re in I.T., this is the kind of thing that will be in your regular-use toolkit. More details on this drive enclosure can be &lt;a href=&#34;https://www.iodd.shop/IODD-ST300-USB-30-External-Write-Protected-Hard-Drive-Enclosure&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;found here&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; (while the site is up). The device supports firmware updates, much of that info can be found in their &lt;a href=&#34;https://dir.iodd.kr/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Webdav server&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. Iodd also has a ton of info in its &lt;a href=&#34;http://en.iodd.kr/wiki/index.php/Iodd-ST300&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Wiki&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;must be a slower SATA drive, though, so watch out for that.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Here&#39;s a Free RustDesk Address Book Tool You Might Not Have Tried</title>
      <link>https://cwl.cc/2026/01/heres-a-free-rustdesk-address-book-tool-you-might-not-have-tried.html/</link>
      <pubDate>Mon, 12 Jan 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/heres-a-free-rustdesk-address-book-tool-you-might-not-have-tried.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/RustDesk-RDM-e1764531622635.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
For those that run the free version of RustDesk&amp;rsquo;s open source &lt;a href=&#34;https://docs.linuxserver.io/images/docker-rustdesk/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;remote access server&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; one big missing good address book. The RustDesk client is good for one-off connections, but a paid license is needed to get the full-featured web address book&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. This may change in 2026, but for now, many are looking for a decent way to manage multiple connections. Here&amp;rsquo;s how.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/rustdesk-address-book-03-e1764531677863-1024x634.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;You&amp;rsquo;ll want to start by downloading and installing the free edition of &lt;a href=&#34;https://devolutions.net/remote-desktop-manager/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Remote Desktop Manager&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. Most of this application&amp;rsquo;s features are free, but its support for RustDesk is key to what we want. After installing the program and its requirements, you&amp;rsquo;ll also need the &lt;a href=&#34;https://github.com/rustdesk/rustdesk/releases&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;RustDesk client&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; installed and configured for your server (if you have one).&lt;/p&gt;
&lt;p&gt;The main reason Remote Desktop Manager (RDM) works as an address book is it&amp;rsquo;s support for directly launching connections, allowing you to create folders and notes for each machine, but RDM also supports One Time Keys&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;, and this is something you want turned on for every connection. This keeps your remote machine&amp;rsquo;s details all in one place.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/rustdesk-address-book-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Ideally you place RDM&amp;rsquo;s SQLite data source on file synchronization service such as Dropbox or Onedrive. This will sync your connections between multiple machines (if you have them). I suggest you don&amp;rsquo;t open the same database on two or more different computers, however. Configure backup and encryption as needed. Certainly, there are shared hosting options for this data source that you may want to look into if you need something more powerful. Remote Desktop Manager is a fantastic application in its own right.&lt;/p&gt;
&lt;p&gt;Extending this even further, you could even create multiple data sources and files and perhaps share them with someone who needs those connection details. RustDesk can also export and import single machine entries. If you&amp;rsquo;re running a free version of the RustDesk server, this tool should help you fill that gap of no address book.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;If you are in the market, support them. It&amp;rsquo;&amp;rsquo;s a great tool.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;Or two-factor keys for the rest of us.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>The Wrong Side of Facebook Marketplace and Kijiji</title>
      <link>https://cwl.cc/2026/01/the-wrong-side-of-facebook-marketplace-and-kijiji.html/</link>
      <pubDate>Fri, 09 Jan 2026 09:35:53 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/the-wrong-side-of-facebook-marketplace-and-kijiji.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/fb-laptop-header.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
On occasion I partake in online sales. These usually take the form of Kijiji or Facebook Marketplace listings and an in-person meeting to either buy or sell an item. The vast majority of the time, things go according to what&amp;rsquo;s agreed upon. But to say this environment is a cesspool is an understatement. It can bring out people intent on the shadiest of things. Today, I offer a bit of a different story.&lt;/p&gt;
&lt;p&gt;And I&amp;rsquo;ve spoken extensively about how to &lt;a href=&#34;https://cwl.cc/2019/10/how-to-watch-for-kijiji-scams-with-a-critical-eye.html&#34;&gt;spot these scams&lt;/a&gt; and even outlined in &lt;a href=&#34;https://cwl.cc/2021/09/confronting-an-apple-watch-counterfeit-ring-part-1.html&#34;&gt;two&lt;/a&gt; &lt;a href=&#34;https://cwl.cc/2021/09/confronting-an-apple-watch-counterfeit-ring-part-2.html&#34;&gt;parts&lt;/a&gt; the experience of confronting counterfeiters. Facing thieves and scammers in online marketplaces is as common today as a street intersection with a Tim Hortons. It&amp;rsquo;s important to protect yourself, but sometimes, I&amp;rsquo;ll go further and find them. Shame them.&lt;/p&gt;
&lt;p&gt;Previous to this, I&amp;rsquo;d sold a fellow two hard drives. They were supposed to be 500 GB and while the price for them was a meager $20 each, selling him something meant I needed to honour the deal. He contacted me later and explained that one of the drives was not the same size, that it was 320 GB. Through a few photos, it was easy to confirm that I&amp;rsquo;d made a mistake and given him the wrong drive. Through a little communication and a few apologies, an appropriate drive was shipped off to him and for his troubles, I let him keep the 320 GB drive. We&amp;rsquo;re going to make mistakes, and I think that&amp;rsquo;s how &lt;strong&gt;things&lt;/strong&gt; should go when we do.&lt;/p&gt;
&lt;p&gt;In today&amp;rsquo;s example however, let&amp;rsquo;s look at Dipshit (not his real name), he&amp;rsquo;s a seller in Oshawa and was selling a Lenovo laptop that was billed in his Facebook Marketplace advertisement as being in &amp;ldquo;Used - Good&amp;rdquo; condition with the ad copy looking like this:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;T470 intel i5, 8gb Ram &amp;amp; 256 gb ssd, windows 10 pro. A bit of cosmetic damage chip .. see picture but everything else works. Comes with 2 batteries installed and charger.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Notice that text indicates no major issues. In his photos and in the text, the &amp;ldquo;cosmetic damage&amp;rdquo; does indeed look minor. The two batteries he&amp;rsquo;s touting are the default for this model of computer, not some extra feature. We connected and made a deal and a place to meet. On arrival, he had me park in a place that away from his house and walk up to me. It&amp;rsquo;s a smart move to protect himself, but clearly he lives in the area. We meet, he hands off the laptop and it&amp;rsquo;s clear it looks worse than in the photo. By looking at the separation in the bottom part of the case, the thought of a swollen battery came to mind, but there were no tools handy to tear apart the laptop. Further, you shouldn&amp;rsquo;t have to dismantle something to check its fitness. After seeing the machine boot, I decided to take it.&lt;/p&gt;
&lt;p&gt;The next day, this was on my mind. So, the only thing to do was investigate. Taking off the back cover of the computer, it was clear as day that this battery had swelled and might have been stored in a poor location a long time. Add insult to injury, the drive he&amp;rsquo;d put in the computer was a cheap cut-rate, slow NVMe that he probably got for $20. Clearly this laptop was defective and he knew it.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/fb-laptop-swollenbattery.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The swollen battery.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;It was then important to contact Dipshit, let him know what I&amp;rsquo;d found immediately and let him either take the device back for a refund or make this right in some other way. I explained to him in the chat what I&amp;rsquo;d found and included two pictures of the misshapen battery. Further, I pointed out that the battery would cost $60 to replace&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. It was at this point he ended the conversation and blocked me on Facebook. His approach to selling a bad product was to run and hide, not to investigate and ultimately not make it right. That didn&amp;rsquo;t sit right with me.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/fb-laptop-two-batteries.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;The swollen battery (top), and its replacement (bottom).&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Naturally, I reported this to Facebook and deleted my previous positive review of him. Facebook and it&amp;rsquo;s &lt;a href=&#34;https://cwl.cc/2025/10/i-was-suspended-by-facebook.html&#34;&gt;unmanned&lt;/a&gt; A.I. were probably going to do nothing. Buying the battery and replacing it was a trivial process. This felt like a wholly inadequate resolution to being screwed over. Then I thought, why not create another account, connect with him long enough so I could leave him a poor rating (and a warning for others).&lt;/p&gt;
&lt;p&gt;So I did that. With the help of some AI tools, another Facebook account was ready. The important thing was to wait a few days before contacting him, hoping he wouldn&amp;rsquo;t think I was anything but another buyer. It would be important for him to think his hiding is working. Knowing a small amount about this guy made it easy to find a plethora more about him. There&amp;rsquo;s no need to share any of it here, but it was a trivial process.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/fb-laptop-ghosted-497x1024.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;em&gt;Ghosted.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I made a real effort to chose different words and sound like an entirely different person. This isn&amp;rsquo;t so easy, let me tell you. With some effort, I managed to arrange a meeting time at 9:30 PM. I was not going to repeat the &lt;a href=&#34;https://cwl.cc/2021/09/confronting-an-apple-watch-counterfeit-ring-part-2.html&#34;&gt;same mess that happened&lt;/a&gt; at College Park a couple years ago, so no in-person surprises. It&amp;rsquo;s just money after all.&lt;/p&gt;
&lt;p&gt;I finally managed to get to the point I could rate him. I was eager to buy his Gopro Hero 3+, but not too eager, negotiating $10 off his $70 price. If all went well, he won&amp;rsquo;t be able to remove that rating no matter what he does. Immediately I started to work on how I would write this. A bit of an added benefit would be that it was raining and he&amp;rsquo;d have to walk from his house to the meeting location and get wet. The true test was to try and keep him waiting outside as long as possible.&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;WARNING: Seller sold a defective product and did NOT take it back or fix it. Instead, he blocked me and probably thought I would go away. I suggest he unblocks me and does the honorable thing! Do not buy from this person, obviously. Message me for receipts.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Worse though was that while giving this idiot the runaround in the rain, Facebook wasn&amp;rsquo;t letting me leave a review. Try and try, I could not do it. Through chopping off the text above, I managed to get the review posted in a much briefer format. My primary mission was a success. I gave up talking to him while he chased some random car through a townhouse complex in the rain thinking it was me.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/fb-laptop-rating.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Is there a moral to this story? Perhaps there is, as always, honour your agreements. If you make a mistake and it&amp;rsquo;s clear, make it right. Don&amp;rsquo;t be like Mister Dipshit. The world doesn&amp;rsquo;t need to stop for a $60 battery replacement (or even the principal), but what causes that behaviour shift, I don&amp;rsquo;t know.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;A non-Lenovo branded battery, which works fine.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Fighting Through an Open Redirect Compromise</title>
      <link>https://cwl.cc/2026/01/fighting-through-an-open-redirect-compromise.html/</link>
      <pubDate>Mon, 05 Jan 2026 08:11:53 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/fighting-through-an-open-redirect-compromise.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/malware-warning.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
In mid November of 2025, a web property I manage had the distinction of being compromised. Locking this site down had been difficult because of how many had permission over the installation. Too many things change, too often. None of these things I could control, but when it broke, they came to me for the fix. In I.T., this is usually not a position we want to be in, but sometimes I relish this kind of challenge.&lt;/p&gt;
&lt;p&gt;In today&amp;rsquo;s case, a user sent in a notification with a screenshot of a Google search. It appeared as if this site had its code base modified with a call to the PHP $_SERVER[&amp;lsquo;HTTP_REFERER&amp;rsquo;] array and then an installed script tested for &lt;a href=&#34;https://www.google.com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://www.google.com&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. If a positive result returns, the script would push a meta redirection into the loading home page with the following:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2026/01/redirect.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;This then sends the user to a site selling pills for tooth products - nothing to do with my client&amp;rsquo;s website. Since the &amp;lsquo;bad.site&amp;rsquo; changes on reloading, it was clear it was a script at work. &lt;a href=&#34;http://www.axertion.com/tutorials/2013/08/wordpress-redirecting-to-malicious-url-when-referral-is-google-or-another-search-engine/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;This article&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; does a good job of pointing out the essence of this hack. The problem is, how to find out where this is on the file system or in the database. When searching from Google, it already reflected the tile and content of the redirection target:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/hack-web-redirect-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;I then quickly enabled a &amp;ldquo;coming soon&amp;rdquo; page, this is an under construction feature on the hosting side to test a theory. The redirect appears to still be there, mainly because coming soon page was still inside of the WordPress installation, loading all the base files and plugins still. That wasn&amp;rsquo;t going to work. Looking closer, I found and deleted a file in the web root named txejednn.php that contained a bunch of variable references and a huge eval() statement&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;eval($zxdoimwbb .$mriqpfgu . $utrkqy[&amp;#39;0&amp;#39;].$kkaedahm[&amp;#39;2&amp;#39;]. $mvtiknue[&amp;#39;4&amp;#39;]. $fgqzjdbd[&amp;#39;1&amp;#39;] .$fgqzjdbd[&amp;#39;1&amp;#39;]. $mvtiknue[&amp;#39;4&amp;#39;] .$jdgafnc[1].$mvtiknue[&amp;#39;3&amp;#39;] .$fgqzjdbd[&amp;#39;2&amp;#39;] .$sfoheynw[&amp;#39;5&amp;#39;] .$fgqzjdbd[&amp;#39;1&amp;#39;].$woyakwlzb[&amp;#39;1&amp;#39;] .$sfoheynw[&amp;#39;5&amp;#39;] .$kkwkpvxa[1])...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;When you start going through the stupid scavenger hunt of all these variables, the above stuff starts to take shape as a script&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;$i=@array_merge(....&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Next, it was important to rule out the database, so I went through some SQL statements to see anything referenced that PHP file:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;SELECT * FROM `wp_posts` WHERE `post_content` LIKE &amp;#39;%txejednn.php%&amp;#39;;
SELECT * FROM `wp_posts` WHERE `post_content` LIKE &amp;#39;%base64_decode%&amp;#39;;
SELECT * FROM `wp_options` WHERE `option_name` LIKE &amp;#39;%txejednn.php%&amp;#39;;
SELECT * FROM `wp_options` WHERE `option_value` LIKE &amp;#39;%txejednn.php%&amp;#39;;
SELECT * FROM `wp_postmeta` WHERE `meta_value` LIKE &amp;#39;%txejednn.php%&amp;#39;;
SELECT * FROM `wp_posts` WHERE `post_content` LIKE &amp;#39;%eval\\(%&amp;#39;; 
SELECT * FROM `wp_options` WHERE `option_value` LIKE &amp;#39;%eval\\(%&amp;#39;; 
SELECT * FROM `wp_postmeta` WHERE `meta_value` LIKE &amp;#39;%eval\\(%&amp;#39;; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;None of these yielded any real results.&lt;/p&gt;
&lt;p&gt;I had an older backup of the site, so it was something. I started looking at the obvious culprit, the .htaccess file. Replacing that risked compromising the site, but what was there seemed to be fine.&lt;/p&gt;
&lt;p&gt;Turning to plugins, I started to disable them and one by one, did not see a fix. Then there was one plugin I don&amp;rsquo;t recognize, &amp;ldquo;Creative Mail by Newfold Digital&amp;rdquo; - I removed that. Things then started to improve. This plugin must have been compromised or installed somehow. Afterwards, it was just a matter of continued testing to ensure this compromise had been removed. The curious thing to me is the point of compromise. It&amp;rsquo;s likely this happened because of a stale theme, but it&amp;rsquo;s hard to know. Did a plugin get attacked before it was updated? WordPress can be like wack-a-mole without tight controls over what plugins are installed&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;p&gt;The next step was to ensure that all updates were happening regularly and all unneeded services were off. Any themes that were of no use: disabled. Passwords: Changed. It was also important to remove any unusual accounts and double-check the database for users added there and change every password of existing ones. I took a quick look at the file system for any plugins that might have been placed there outside of the dashboard.&lt;/p&gt;
&lt;p&gt;Within a day, Google has returned its main search results to normal and the root redirect was gone. It would still take another few days for Google clean all these links up:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/hack-web-redirect-04.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;This could all be improved with security best practices, good and regular backups and a decent firewall or unified threat management device in front of it. It&amp;rsquo;s something I push for in the hopes of avoiding a complete meltdown at this web property.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;This is was the only known one, but there may have been more.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;Again, a small part of the larger file.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;Also just a very small part of the whole.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:4&#34;&gt;
&lt;p&gt;Sadly, this site is not under the kinds of controls I would prefer.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>The Strange Case of Keyboards Locking on Windows Boot (and a Fix)</title>
      <link>https://cwl.cc/2026/01/the-strange-case-of-keyboards-locking-on-windows-boot-and-a-fix.html/</link>
      <pubDate>Fri, 02 Jan 2026 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2026/01/the-strange-case-of-keyboards-locking-on-windows-boot-and-a-fix.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2016/02/Help-Keyboard.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Recently I was meeting a man in a coffee shop to buy a older, used computer. We&amp;rsquo;d met before so I knew he was a good guy.&lt;/p&gt;
&lt;p&gt;As this fellow was booting up the computer, an unusual thing started to happen: the keyboard wasn&amp;rsquo;t working or initializing on boot. Not only that, but also his built-in mouse was failing. Given this was a Lenovo T470 laptop, none of this was making sense. Now, if one were to connect the power, or perhaps an external USB-based mouse, the computer&amp;rsquo;s keyboard would then work. Disconnect all this, shut down the computer and reboot, again &lt;strong&gt;no keyboard&lt;/strong&gt;. This happens whether the computer auto-logs in (no password), or if it requires a password. This is the problem put him on the spot before he could sell me this computer.&lt;/p&gt;
&lt;p&gt;It would be the both of us, in this coffee shop working to understand this unexpected problem and how to work through it. In fact, he mentioned a few times, someone else had seen the problem and told him how to fix it; he just couldn&amp;rsquo;t find the dang text message.&lt;/p&gt;
&lt;p&gt;Needling around, I found the key setting on Windows 11 Pro:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Press Windows Key + R to get the run box&lt;/li&gt;
&lt;li&gt;Type the word &amp;ldquo;control&amp;rdquo; and then &amp;lt;enter&amp;gt;&lt;/li&gt;
&lt;li&gt;Click &amp;ldquo;Hardware and Sound&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Click &amp;ldquo;Power Options&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Click &amp;ldquo;Chose what the power buttons do&amp;rdquo; (this, in future releases may be hidden further)&lt;/li&gt;
&lt;li&gt;You then click the &amp;ldquo;Change Settings that are currently unavailable&amp;rdquo; (1 in the below image) and click to remove the check mark next to &amp;ldquo;Turn on fast startup&amp;rdquo; (2 in the below image) and then &amp;ldquo;Save Changes&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/fast-startup.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Turn off your computer (shut down), disconnect everything and do another clean boot and your keyboard should be good.&lt;/p&gt;
&lt;p&gt;What this is this &amp;ldquo;fast startup&amp;rdquo; option? It&amp;rsquo;s clearly a legacy thing&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; given the setting sits in the old style control panel. The basics of this feature have to do with a hybrid of hibernation and shutdown. This makes Windows create a special hibernation file for the sake of starting up faster. Now that computers have fast solid state drive memory and super fast RAM, this feature shouldn&amp;rsquo;t make a machine perform much differently.&lt;/p&gt;
&lt;p&gt;What&amp;rsquo;s noticeable are the problems that come with this feature beyond keyboard issues. There&amp;rsquo;s talk of dual boot issues and UEFI failures. It&amp;rsquo;s on by default in Windows 11, so there&amp;rsquo;s no reason to shut it off, but if you run into this specific issue, this may be your fix.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Per &lt;a href=&#34;https://en.wikipedia.org/wiki/Hibernation_%28computing%29&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Wikipedia&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, this feature was included way back in Windows 8&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>Publishing a book: Getting a Free ISBN Number in Canada</title>
      <link>https://cwl.cc/2025/12/publishing-a-book-getting-a-free-isbn-number-in-canada.html/</link>
      <pubDate>Mon, 29 Dec 2025 08:27:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/publishing-a-book-getting-a-free-isbn-number-in-canada.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/book-old-antique-pages.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
As you probably know, ISBN, the &lt;a href=&#34;https://en.wikipedia.org/wiki/International_Standard_Book_Number&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;International Standard Book Number&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; is one essential part of getting your book published. This unique number identifies each version (and edition) of your book to publishers and booksellers alike. Using this in conjunction with a bar code on the back cover of your physical book allows a retailer to categorize and determine a price. That price would be a &amp;ldquo;suggested&amp;rdquo; retail price that they might mark down further.&lt;/p&gt;
&lt;p&gt;To present your book as something more professional, you ought to have an ISBN and a barcode on your back cover. For those looking to get ISBN numbers, they’d contact an agency and buy one for each edition. But, if you’re a &lt;strong&gt;Canadian&lt;/strong&gt; book author, you can get this for free.&lt;/p&gt;
&lt;p&gt;To get this go to &lt;a href=&#34;https://www.collectionscanada.gc.ca/isbn-canada/app/index.php?&amp;amp;lang=eng&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ISBN Canada&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and read the basics. Ensure you qualify as a “Canadian Publisher”. Then the process involves creating an account, requesting an ISBN prefix and then defining each edition of your book. It’s free and simple. Then, with your new ISBN, use any one of the many &lt;a href=&#34;https://www.google.com/search?q=isbn&amp;#43;barcode&amp;#43;generator&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;online tools&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to create your book’s barcode.&lt;/p&gt;
&lt;p&gt;In my case, I started with two editions I planned on publishing first: Print and ebook versions of &lt;a href=&#34;https://cwl.cc/books/&#34;&gt;From Rent to Ruin&lt;/a&gt;. Happy writing.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>25-25-25</title>
      <link>https://cwl.cc/2025/12/25-25-25.html/</link>
      <pubDate>Thu, 25 Dec 2025 08:08:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/25-25-25.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/kevin-meme.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
This year was undoubtedly the one for the numbers freak in your life. Christmas day is said to fall on December 25, 2025 or 25/25/25. For the vast majority, this is just a mere coincidence that will never occur again, but for the meme creating numbers freak, this is nirvana. This all began last year close to Christmas-time when someone noticed the dates lined up to something weird. With that, they had to create a meme and, of course, get 2.1 million views on Tok Tok. But&amp;hellip;&lt;/p&gt;
&lt;blockquote class=&#34;tiktok-embed&#34; cite=&#34;https://www.tiktok.com/@ichoosemekellzzzz/video/7579243286347500814&#34; data-video-id=&#34;7579243286347500814&#34; style=&#34;max-width: 605px;min-width: 325px;&#34; &gt; &lt;section&gt; &lt;a target=&#34;_blank&#34; title=&#34;@ichoosemekellzzzz&#34; href=&#34;https://www.tiktok.com/@ichoosemekellzzzz?refer=embed&#34;&gt;@ichoosemekellzzzz&lt;/a&gt; I said what i said amennnn🤏🏽🤏🏽&lt;a title=&#34;christmas&#34; target=&#34;_blank&#34; href=&#34;https://www.tiktok.com/tag/christmas?refer=embed&#34;&gt;#christmas&lt;/a&gt; &lt;a title=&#34;year&#34; target=&#34;_blank&#34; href=&#34;https://www.tiktok.com/tag/year?refer=embed&#34;&gt;#year&lt;/a&gt; &lt;a title=&#34;first&#34; target=&#34;_blank&#34; href=&#34;https://www.tiktok.com/tag/first?refer=embed&#34;&gt;#first&lt;/a&gt; &lt;a title=&#34;🤣🤣🤣&#34; target=&#34;_blank&#34; href=&#34;https://www.tiktok.com/tag/%F0%9F%A4%A3%F0%9F%A4%A3%F0%9F%A4%A3?refer=embed&#34;&gt;#🤣🤣🤣&lt;/a&gt; &lt;a title=&#34;myyear&#34; target=&#34;_blank&#34; href=&#34;https://www.tiktok.com/tag/myyear?refer=embed&#34;&gt;#myyear&lt;/a&gt; &lt;a target=&#34;_blank&#34; title=&#34;♬ original sound - SelfMadeKellzzzzzz🇭🇹🤏🏽💙&#34; href=&#34;https://www.tiktok.com/music/original-sound-7579243535296137997?refer=embed&#34;&gt;♬ original sound - SelfMadeKellzzzzzz🇭🇹🤏🏽💙&lt;/a&gt; &lt;/section&gt; &lt;/blockquote&gt; &lt;script async src=&#34;https://www.tiktok.com/embed.js&#34;&gt;&lt;/script&gt;
&lt;p&gt;Those with an uncanny ability to use brain cells will notice that the first 25 (or any of the 25s) cannot be true because December is the 12th and last month of the year. One has to wonder if the genesis of this meme had something to do with hash oil muffins in an Amsterdam cafe. The things the Internet propels to infamy are a vast chasm of knowledge we will all be better for not knowing.&lt;/p&gt;
&lt;p&gt;But seriously, to all of you: Merry Christmas and Happy Holidays in whatever way you celebrate.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>WhatsApp for Windows Forces a Horrible Update on Users</title>
      <link>https://cwl.cc/2025/12/whatsapp-for-windows-forces-a-horrible-update-on-users.html/</link>
      <pubDate>Mon, 22 Dec 2025 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/whatsapp-for-windows-forces-a-horrible-update-on-users.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/WhatsApp_Logo_green.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
In a most unusual move, Meta has decided to update its flagship Windows desktop application as a web-based viewer, thereby making it slower, bigger, more memory intensive and worse in just about every way. And to top it off, Meta will just force you to use this new version.&lt;/p&gt;
&lt;p&gt;And this thing is a monster. Just running it (and by default it wants to run in the background), it uses 500 MB of RAM and can easily can grow over 1 GB. others &lt;a href=&#34;https://daringfireball.net/2025/11/meta_whatsapp_windows_shitty_web_app&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;have commented&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; on how bad this new version is from a memory standpoint. And, wow, I can confirm it. I don&amp;rsquo;t see any updates from Meta on their rationale for this stupid move, but it may be just about the money (just make one single web interface - less developers).&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/whatsapp-upg-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;The older WhatsApp, it uses a paltry 118 MB of RAM while running:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/whatsapp-upg-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;The old WhatsApp had its fair share of issues too. There were numerous problems with sending large video files, sending a YouTube link while also including an image would often crash the application. This program was not perfection, but damn it was no dog on the system. It was reasonable in terms of resource usage.&lt;/p&gt;
&lt;p&gt;Some of the most frustrating parts of this &lt;s&gt;upgrade&lt;/s&gt; downgrade are the small infuriating changes to menus. The individual chat right-click menu just rearranges all of the options. So now when I want to close a chat, my muscle memory takes me to deleting it. They didn&amp;rsquo;t need to make this a CAPTCHA-like process to see if I&amp;rsquo;m paying attention, only to piss me off.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/whatsapp-upg-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;You can delay this inevitable &lt;a href=&#34;https://cwl.cc/2025/11/book-enshittification.html&#34;&gt;enshittification&lt;/a&gt; of Whatsapp on Windows by pausing updates in the Windows Store&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. This will only last so long before you too are forced backwards. It may be better for all of us if we just use the Whatsapp &lt;a href=&#34;https://web.whatsapp.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;web interface&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and move on. It&amp;rsquo;s almost the end of 2025 and I have still managed to keep one computer from updating.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;One trick that works too: Unpause updates, let Store find what&amp;rsquo;&amp;rsquo;s new then immediately cancel the Whatsapp download. Update everything else to stay current and then pause everything again.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>RustDesk Has Its Certificate Revoked</title>
      <link>https://cwl.cc/2025/12/rustdesk-has-its-certificate-revoked.html/</link>
      <pubDate>Fri, 19 Dec 2025 13:04:31 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/rustdesk-has-its-certificate-revoked.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/RustDesk-Screenshot-e1658597096772.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
In a bizarre and damaging scenario, RustDesk (a popular open source remote access tool) saw its code-signing certificate &lt;a href=&#34;https://github.com/rustdesk/rustdesk/discussions/13771&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;revoked&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; by the company that provides it; Sectigo. This then led to a &lt;a href=&#34;https://github.com/rustdesk/rustdesk/discussions/13770&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;chain of events&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; where RustDesk clients couldn&amp;rsquo;t run or be configured because of Windows SmartScreen errors and virus scanner false positives; effectively making the software useless. In some cases, Google&amp;rsquo;s Chrome browser would mark the &lt;a href=&#34;https://github.com/rustdesk/rustdesk/releases&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;RustDesk client&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; as unsafe. This was an error on the certificate issuer Sectigo&amp;rsquo;s part, but given the power they&amp;rsquo;ve wielded over RustDesk, and no explanation for what happened (at the time), many were wondering how this could happen.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/rustdesk-error-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;So, who&amp;rsquo;s the bad guy here?&lt;/p&gt;
&lt;p&gt;Yes, RustDesk can be used by malicious hackers, as can really any useful tool. It&amp;rsquo;s always a double-edged sword for powerful utilities. Hammers are great for building as much as they are for violence. But this is what code-signing is supposed to help, right? It verifies the authenticity of the binary. But if a select group of gatekeepers decides your software is problematic, it can be marked for death.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/rustdesk-error-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;In Sectigo&amp;rsquo;s later response to this, it seemed to blame a one-off detection on &lt;a href=&#34;https://www.virustotal.com/gui/file/4a3185b9282dbc85070dea4857de49003a709531e71c6e1207290d23da793067/detection&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;VirusTotal&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/rustdesk-error-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Of interest is Sectigo&amp;rsquo;s phrase, &amp;ldquo;if the reported misuse is confirmed or unresolved, [Sectigo will] revoke the certificate within 24 hours.&amp;rdquo; This appears to indicate that if someone else uses the software in a bad way, it&amp;rsquo;s RuskDesk&amp;rsquo;s responsibility to stop it or face permanent revocation. This is an absolutely insane standard to put software vendors up to given more utility and portability might mean the bad guys misuse it more. If RustDesk&amp;rsquo;s fundamentals are secure and sound, this should not be on them to fix how people use it.&lt;/p&gt;
&lt;p&gt;After the dust settles, a ton of questions linger. Is it safe to centralize control for an entire swath of software, only to see it nullified so easily? Should there be additional safeguards when these vendors get overzealous? They clearly have no real incentive to check their work. If this point of failure is in the hands of one single company, is that too much power?&lt;/p&gt;
&lt;p&gt;For now, there are a few &lt;a href=&#34;https://github.com/rustdesk/rustdesk/discussions/13757&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;workarounds&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. Most of them involve running only the EXE installer/uninstaller as administrator in a command prompt:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;#34;C:\Program Files\RustDesk\RustDesk.exe&amp;#34; --uninstall&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Install again as administrator and start the service. Once that&amp;rsquo;s done, RustDesk should be fine on future reboots. This is until the certificate can be re-issued and a new version of RustDesk can be released.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Removing Archive and Tag Pages from Search Engines</title>
      <link>https://cwl.cc/2025/12/removing-archive-and-tag-pages-from-search-engines.html/</link>
      <pubDate>Mon, 15 Dec 2025 09:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/removing-archive-and-tag-pages-from-search-engines.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2015/12/wordpress-logo.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
As my WordPress journey continues, there are more frontiers of pressing this platform to work better internally, and play nicer with the outside. The problem I set to tackle today related to the glut of cwl.cc page references found on search engines that were of no value outside. How was I going to remove these in the most elegant way possible? In 2015, I actually &lt;a href=&#34;https://cwl.cc/2015/06/wordpress-tell-search-egines-not-to-index-archives.html&#34;&gt;covered this solution&lt;/a&gt;, but ten years later, I came at it again with a new theme and fresh eyes. Of course, the search engine did not surface my previous answer Turns out, I managed to improve on my solution, but it gives me a chance to peek into my process.&lt;/p&gt;
&lt;p&gt;One important thing for me to reckon with was that WordPress creates these pages at will. There are &lt;a href=&#34;https://cwl.cc/category/how-to&#34;&gt;category pages&lt;/a&gt;, &lt;a href=&#34;https://cwl.cc/tag/automation&#34;&gt;tag pages&lt;/a&gt;, and even pages that &lt;a href=&#34;https://cwl.cc/2004/&#34;&gt;reference years&lt;/a&gt;, and ones that reference &lt;a href=&#34;https://cwl.cc/2004/03&#34;&gt;months and years&lt;/a&gt;. Of course, then there are the &lt;a href=&#34;https://cwl.cc/page/3&#34;&gt;pagination pages&lt;/a&gt; (if you have that setting on). There are pages for taxonomy and even nested pagination. One just thinks that an elegant solution within WordPress would be to make all of these pages un-indexable to search engines by default. This is all functionality built into the software and platform to help users find or reference content easier. It&amp;rsquo;s built-in to WordPress. While they may be useful internally to the product and a user, they hold no value inside a search result. Search results like this on DuckDuckGo we&amp;rsquo;re driving me crazy:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Wordpress-Search-Engines-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Starting fresh again, one of the first crumbs I found was the &amp;lsquo;&lt;a href=&#34;https://developers.google.com/search/docs/crawling-indexing/block-indexing&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;noindex&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;&amp;rsquo; meta statement. As often is the case, I found it on &lt;a href=&#34;https://wordpress.stackexchange.com/questions/371563/how-can-i-noindex-my-archive-pages&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;StackExchange&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. I knew of this, and it seemed to be useful, so I copied it and placed in a text document to start with. I wasn&amp;rsquo;t yet sure how it fit:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;echo &amp;#39;&amp;lt;meta name=&amp;#34;robots&amp;#34; content=&amp;#34;noindex,follow&amp;#34; /&amp;gt;&amp;#39;;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Though this one solution presented itself as perhaps going 404 on those archive pages. Found on &lt;a href=&#34;https://www.barattalo.it/coding/wordpress-remove-archive-pages/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;barattalo.it&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, the solution was to place this in the index.php of my theme. This wasn&amp;rsquo;t working so great at the start because the code on that page incorrectly translated symbols, but it also felt like I was aping Wordpress and removing functionality. This wasn&amp;rsquo;t right.&lt;/p&gt;
&lt;p&gt;Ok, what about the .htaccess file and doing redirects? I&amp;rsquo;d done that in the past to help search engines understand new locations of content. This file, as you may know, sits in the root of your Apache web server. I started to add statements like this:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;RedirectMatch 301 ^/portfolio/.*$ /gallery/
RedirectMatch 301 ^/author/.*$ /
RedirectMatch 301 ^/category/.*$ /
RedirectMatch 301 ^/tag/.*$ /
RedirectMatch 301 ^/20.*$ /&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Again, I was taking away functionality, but, as I&amp;rsquo;d find out quickly, this site was running FastCGI and thus not reading the .htaccess file. No, this also wasn&amp;rsquo;t going to work, and it certainly wasn&amp;rsquo;t elegant.&lt;/p&gt;
&lt;p&gt;I went a little higher, into the reverse proxy, Nginx. Surely I could use a regex statement inside of a location reference, this would redirect pages that weren&amp;rsquo;t needed. The location statement looks something like this:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;       location = /2025 { 
          return 301 ;  }&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;That was working as intended, but it was again a blunt object smashing apart useful functionality. In one location statement, I when after the date pages and in effect started redirecting content like images also. The result mangled the blog and threw a bunch of errors. Nope, this was a non-starter.&lt;/p&gt;
&lt;h4&gt;Finally, It comes to me (even though it was always on my site)&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;finally-it-comes-to-me-even-though-it-was-always-on-my-site&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#finally-it-comes-to-me-even-though-it-was-always-on-my-site&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;Back to that meta tag, I thought about it. What if I just placed that tag on all the pages I don&amp;rsquo;t want indexed, and leave the pages I wanted searchable? WordPress didn&amp;rsquo;t have to break, this would be more elegant. How this is done is targeting the header in much the same manner you might target the open-graph. On this site, there&amp;rsquo;s a child theme and in that child theme (and main theme) is a &lt;code&gt;header.php&lt;/code&gt; file. You&amp;rsquo;re mileage may vary, but look for that file and make copy in your child theme.&lt;/p&gt;
&lt;p&gt;There, the magic of selecting pages and adding the meta tag has to happen. Here&amp;rsquo;s what I started with (place it just after the &amp;lt;head&amp;gt; tag):&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;lt;head&amp;gt;
  &amp;lt;?php 
   if( is_archive() ) {
     echo &amp;#39;&amp;lt;meta name=&amp;#34;robots&amp;#34; content=&amp;#34;noindex&amp;#34; /&amp;gt;&amp;#39;;   } 
    
   if ( is_paged() ) {
     echo &amp;#39;&amp;lt;meta name=&amp;#34;robots&amp;#34; content=&amp;#34;noindex&amp;#34; /&amp;gt;&amp;#39;;   }
  ?&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;After adding this, you&amp;rsquo;ll want to start testing your site. Load page references and &amp;ldquo;view source,&amp;rdquo; then load blog content and &amp;ldquo;view source.&amp;rdquo; You want to make sure the meta tag appears in the right locations and not on page or article content. If you view source here, you&amp;rsquo;ll notice here, I&amp;rsquo;ve also added &amp;ldquo;follow,&amp;rdquo; and that&amp;rsquo;s a trust reference, not absolutely necessary for you. The two boolean test there are &lt;a href=&#34;https://developer.wordpress.org/reference/functions/is_archive/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;is_archive()&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and &lt;a href=&#34;https://developer.wordpress.org/reference/functions/is_paged/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;is_paged()&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, they test for archive and paginated pages respectively. These two pick up just about everything that is not content including author pages.&lt;/p&gt;
&lt;p&gt;Taking it further, there&amp;rsquo;s one tricky situation with that, and it&amp;rsquo;s the paginated tag pages. Whoa this goes a little crazy, but in those cases, this code will add two meta tags to the output. We want to account for that. So, I nested an if statement and it looks like this - now leaving only one noindex tag on those special pages:&lt;/p&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;lt;head&amp;gt;

  &amp;lt;?php
    if( is_archive() ) {
      echo &amp;#39;&amp;lt;meta name=&amp;#34;robots&amp;#34; content=&amp;#34;noindex,follow&amp;#34; /&amp;gt;&amp;#39;;
    } 
    
    if ( is_paged() ) {
      if(is_archive()) {
       }  else { echo &amp;#39;&amp;lt;meta name=&amp;#34;robots&amp;#34; content=&amp;#34;noindex,follow&amp;#34; /&amp;gt;&amp;#39;; } 
    }
  ?&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If anything else comes to mind, and probably will, I&amp;rsquo;ll update this article. Suggestions are &lt;a href=&#34;https://cwl.cc/support/&#34;&gt;always welcome&lt;/a&gt;.&lt;/p&gt;
&lt;h4&gt;Search Engine Effects&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;search-engine-effects&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#search-engine-effects&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;Search engines don&amp;rsquo;t respond very quickly. So, I&amp;rsquo;ve had to let this article percolate until there were some results from this change. Starting Nov 12, 2025, it took until (date) before I noticed a change.&lt;/p&gt;
&lt;p&gt;By November 13, Google&amp;rsquo;s Search Console was showing signs of recognizing the noindex tag:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Wordpress-Search-Engines-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;If you&amp;rsquo;re into SEO, I&amp;rsquo;d love to hear more about how you solve this. Comments will be on for a short time.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Putting My Spin On the Windows 11 Local Account Bypass</title>
      <link>https://cwl.cc/2025/12/putting-my-spin-on-the-windows-11-local-account-bypass.html/</link>
      <pubDate>Fri, 12 Dec 2025 08:25:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/putting-my-spin-on-the-windows-11-local-account-bypass.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Windows-11-Logo.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Thanks to Microsoft&amp;rsquo;s relentless drive to enshittify Windows we&amp;rsquo;ve all been playing &amp;lsquo;cat and mouse&amp;rsquo; with their need to force logins to Microsoft accounts when Windows first boots. Microsoft&amp;rsquo;s push to force online logins is stupid and frustrating; and it won&amp;rsquo;t stop. Here&amp;rsquo;s a fix that I modified to improve so you have more options.&lt;/p&gt;
&lt;p&gt;As an I.T. person, just about the most common task is setup Windows 11, and in so doing, need to create a local account. You probably know many of the reasons this is important from the computer being completely offline, to wanting to do firmware updates or software changes. The alternative, of course, is wasting time logging into a Microsoft account I&amp;rsquo;ll never use.&lt;/p&gt;
&lt;p&gt;So far, here&amp;rsquo;s a list of bypasses that Microsoft has killed off. These are run from a command prompt you access on first boot with SHIFT+F10:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;OOBE/BYPASSNRO - a script that did all the heavy lifting but was probably the &lt;a href=&#34;https://www.theregister.com/2025/03/31/windows_11_insiders/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;first to go&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;start ms-cxh:localonly - another bypass also &lt;a href=&#34;https://www.theregister.com/2025/10/07/windows_11_local_account_loophole/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;killed off&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Thanks to Christitus&amp;rsquo; &lt;a href=&#34;https://www.youtube.com/watch?v=aEWb1otLVPo&amp;amp;feature=youtu.be&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;approach&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, I decided to take that and modify it slightly, changing the base account to &amp;ldquo;Owner&amp;rdquo; and hosting the two files needed on our own Webdav server. I will further tweak this if I can. If you want to host this on your own site, you just need the two files &lt;a href=&#34;https://live.cwl.cc/bypass&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;bypass&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and &lt;a href=&#34;https://live.cwl.cc/unattend.xml&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;unattend.xml&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s how to run this bypass:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Take a freshly installed Windows 11 computer, answer a few questions and connect to the Internet.&lt;/li&gt;
&lt;li&gt;Once connected, open the command prompt with the SHIFT+F10. Run the next two commands:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&#34;hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code&#34;&gt;

&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;gt; curl -L live.cwl.cc/bypass -o skip.cmd&amp;lt;br&amp;gt;&amp;lt;/br&amp;gt;
&amp;gt; skip.cmd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0&#34;&gt;
  &lt;button
    class=&#34;hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50&#34;
    title=&#34;Copy code&#34;
    aria-label=&#34;Copy code&#34;
    data-copied-label=&#34;Copied!&#34;
  &gt;
    &lt;div class=&#34;hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
&lt;div class=&#34;hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4&#34;&gt;&lt;/div&gt;
  &lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;You&amp;rsquo;ll see the computer reboot, ask one or two more questions and then you&amp;rsquo;re logged in locally. The Owner account has no password. Is there anything else you&amp;rsquo;d add to the unattend.xml?&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Choosing the Best Format for a Book Release</title>
      <link>https://cwl.cc/2025/12/choosing-the-best-format-for-a-book-release.html/</link>
      <pubDate>Mon, 08 Dec 2025 09:03:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/choosing-the-best-format-for-a-book-release.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/book-old-antique-pages.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
When thinking of how I&amp;rsquo;ll publish my book, there are three formats worthy of attention beyond any others. They are eBooks (and the formats contained within them), audio-books, and print releases. They all have their little differences and issues, and I considered that leading up to the release of my &lt;a href=&#34;https://cwl.cc/2023/10/i-wrote-a-book.html&#34;&gt;new book&lt;/a&gt;. I wanted to get this right, but it seemed overwhelming from the start.&lt;/p&gt;
&lt;p&gt;An eBook is the first and most logical format to begin with. The software I use has great support for both &lt;a href=&#34;https://en.wikipedia.org/wiki/EPUB&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ePub&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and &lt;a href=&#34;https://en.wikipedia.org/wiki/PDF&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;PDF&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; formats. Those would essentially be the two main ways I&amp;rsquo;d get my eBook out to the world. Of interest in both is how the software lays out pages with graphics and how the text flows from page to page with footnotes and end-notes. Each of these elements has to be attended to in each format (including the intended book size when creating the output). My goal was simply to stick to the standard 6 x 9 paperback format.&lt;/p&gt;
&lt;p&gt;Then, I started thinking of what it might take to create an audio-book. Who would dictate the book? I would expect that to be me. How would I make it? Where would it be done? In the initial release window, I had no plans to create an audio-book, but it does factor into the future of &lt;a href=&#34;https://cwl.cc/2023/10/i-wrote-a-book.html&#34;&gt;&lt;em&gt;From Rent to Ruin&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Ten years ago the print version would have been my primary interest. I&amp;rsquo;d be working out a deal with a typesetter to handle the lettering, I&amp;rsquo;d be working with a printer and buying a set print run of books (hoping to gain a discount by buying more). Today, however, this would be different with the advent of services like Ingram Spark and Amazon (who can print books on demand for a cut of each sale). My plans were to keep the process indie and print with a local printer, but this would be more costly. Amazon is off my Christmas card list.&lt;/p&gt;
&lt;p&gt;As is usually the case, the best way to support author when buying a book is to buy as directly as possible. &lt;em&gt;From Rent to Ruin&lt;/em&gt; is best purchased in DRM free e-formats, &lt;a href=&#34;https://cwl.cc/books/&#34;&gt;no middle-man&lt;/a&gt;, just click &amp;ldquo;buy eBook.&amp;rdquo;&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>TLS/SSL and the &#34;Unsafe&#34; Web</title>
      <link>https://cwl.cc/2025/12/tls-ssl-and-the-unsafe-web.html/</link>
      <pubDate>Fri, 05 Dec 2025 08:05:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/tls-ssl-and-the-unsafe-web.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2014/08/Site-SSL.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
It&amp;rsquo;s been about four years since I &lt;a href=&#34;https://cwl.cc/2021/07/lets-support-tls.html&#34;&gt;wrote an article&lt;/a&gt; about the state of encryption on the web. With news that Google is about to &lt;a href=&#34;https://security.googleblog.com/2025/10/https-by-default.html&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;step up its efforts&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; to warn users of &amp;ldquo;insecure&amp;rdquo; pages, I thought I&amp;rsquo;d revisit this topic that never ends.&lt;/p&gt;
&lt;p&gt;Encryption on the web is good. It&amp;rsquo;s good for everyone. I support it, this site includes it, as do millions of websites. Of course, the bad guys also use TLS encryption. So, in a sense, you&amp;rsquo;ll get your virus from the bad guys in the same secure manner you might get this very text. Encryption from client to the server in a browser is bad for those attacking communications in the middle, but otherwise it is just one tool that makes up the secure web.&lt;/p&gt;
&lt;p&gt;My main concern is the inverse. The other side, if you will. This branding of &amp;ldquo;Not Secure&amp;rdquo; will continue to imply to the unwashed masses that the site is bad, problematic, or even worse, malicious. This nomenclature is one of exclusion, just because Google is stupid. Okay Google, indicate the connection is not encrypted, but leave it at that. Soon, if you go to a non-TLS site your going get a ton of &amp;ldquo;Not Secure&amp;rdquo; visuals, and shortly Google&amp;rsquo;s new nag screen will pop up in Chrome:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXrS0w0j-B4TjCUWdtAUto_P-3BYetTEfuqTGuGkVli-e7O92UPFEjrIQuoGKGCyDZLkkfmr9PU1MAKbU9rEp8ZPoTTuG1jkoPSzSXx2QDPxNKkXUesNJfmY9HpN1AV5bUtTd27RiSafiDEGybf0M7cDIpi4XtlhXwiZizipeR2T2t77_r34JX8y-_s2ji/s1600/Screenshot%202025-10-28%20at%2011.11.00%E2%80%AFAM.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Need I remind you that the unencrypted web is &lt;strong&gt;also good&lt;/strong&gt; and important:&lt;/p&gt;
&lt;p&gt;Look at &lt;a href=&#34;http://scripting.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;http://scripting.com&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - It&amp;rsquo;s a developer&amp;rsquo;s blog. His site is generally static text. It doesn&amp;rsquo;t specifically need to be point to point encrypted, and, well Dave has decided he doesn&amp;rsquo;t want to, and that&amp;rsquo;s enough. Heck, not being encrypted might even make the site ever so slightly faster.&lt;/p&gt;
&lt;p&gt;Look at directory indexes. One such Webdav server is &lt;a href=&#34;http://live.sysinternals.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;http://live.sysinternals.com/&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - yes, they have a TLS enabled version you can hit, but maybe for compatibility or to avoid challenges with wget or an older operating system, you want to get a file from there on good old port 80. It&amp;rsquo;s not an encrypted connection, yes, but implying worse is not good. Unencrypted open directories are all over the Internet an have a ton of different content and uses. They don&amp;rsquo;t all have to be TLS encrypted.&lt;/p&gt;
&lt;p&gt;In fact, to get a certificate Lets Encrypt needs to be able to verify your site first. How? One way is with an unencrypted port 80 connection. If encryption is good, then the means of getting your site encrypted should also be good, right?&lt;/p&gt;
&lt;p&gt;Also, for better or worse, many of the manuals I encounter for small offshore companies are hosted on sites that are not TLS encrypted. Hey, that&amp;rsquo;s ok too.&lt;/p&gt;
&lt;p&gt;In some cases, getting a site up is challenge but with your provider, getting TLS certificate is a serious pain in the ass. Don&amp;rsquo;t let that discourage you. Test that stuff and make it work. If you&amp;rsquo;re just starting your learning journey in tech, you might think you screwed something up seeing all these &amp;ldquo;Not Secure.&amp;rdquo; messages.&lt;/p&gt;
&lt;p&gt;We also have to consider the coming challenges of facing &lt;a href=&#34;https://lwn.net/SubscriberLink/1048978/8efe916082e53bfe/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;quantum computing&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; technologies and how code signing (and the power to indiscriminately revoke) is &lt;a href=&#34;https://www.reddit.com/r/rustdesk/comments/1phdyov/rustdesk_cannot_run_as_admin_or_uninstall_this/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;messing up&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; perfectly good applications.&lt;/p&gt;
&lt;p&gt;We should never have an Internet constructed by monopolies that decided for us what is good and what is bad. The spirit of the open web must live on, encrypted our not.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Blowing a Death Whistle at Nuance: The Discourse Over Bill 60 in Ontario</title>
      <link>https://cwl.cc/2025/12/blowing-a-death-whistle-at-nuance-the-discourse-over-bill-60-in-ontario.html/</link>
      <pubDate>Mon, 01 Dec 2025 08:00:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/12/blowing-a-death-whistle-at-nuance-the-discourse-over-bill-60-in-ontario.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/Tribunals-Ontario-LTB-english-300ppi.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
With the passage of &lt;a href=&#34;https://www.ola.org/en/legislative-business/bills/parliament-44/session-1/bill-60/status&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Bill 60&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; in Ontario, there has been an intense focus on the Residential Tenancy Act (RTA) aspects of this bill. Rental groups protested this Bill right up to the last minute. The government passed it with no public consultation and even &lt;a href=&#34;https://x.com/robflackeml/status/1982527369878319160&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;backed down&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; on a portion that related to month-to-month leases (security of tenure). On November 24 2025, the bill passed the majority Conservative legislature with a 71 - 43 vote. The bill itself is on the &lt;a href=&#34;https://www.ola.org/en/legislative-business/bills/parliament-44/session-1/bill-60/status&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Ontario Government website&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, and I encourage you to go see it for yourself&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. Don&amp;rsquo;t let anyone tell you what it says or means&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;. But, of peak interest to me has been the activity and messaging surrounding these changes.&lt;/p&gt;
&lt;p&gt;ACORN was &lt;a href=&#34;https://acorncanada.org/resources/request-for-premier-ford-to-meet-with-acorn-and-tenants-on-bill-60/?fbclid=IwY2xjawOT7qxleHRuA2FlbQIxMABicmlkETFDUXp3SFcybWRnSHpGU0k1c3J0YwZhcHBfaWQQMjIyMDM5MTc4ODIwMDg5MgABHlPqs0Geq6jauXh_R7B2JEWTtqgWYuNP8-c8NuTmnB9N15ys_CoNUZWzn3Da_aem_rwS8yQXH47OCqNZSf7c1aw&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;leading this fight&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; of dueling rhetoric. The crux of ACORN&amp;rsquo;s argument against Bill 60 is the vague statement that &amp;ldquo;It will lead to more evictions which will lead to more homelessness.&amp;rdquo; On the surface this is nonsensical: If the &lt;a href=&#34;https://www.ombudsman.on.ca/en/our-work/investigations/administrative-justice-delayed-fairness-denied&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;moribund&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; Landlord and Tenant Board is made to do their jobs correctly (i.e. reduce the backlogs to a reasonable service standard for all matters), then yes, this will, on average, mean more evictions. I mean, &lt;em&gt;that&amp;rsquo;s the point of the vast majority of hearings&lt;/em&gt;: evict or don&amp;rsquo;t evict. And, by the nature of an eviction, the person is without that home they lived in. They may be homeless or they may have already found a place. Do they all stay homeless and go to encampments? No. Some will be housed immediately. If any of you have faced eviction&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;, this can be a difficult consequence of prior actions; especially when children are involved. So, in a sense, ACORN&amp;rsquo;s misgivings are boiled down to no nuance and a nonsense statement that essentially means &amp;ldquo;Keep a governmental body broken so people (no matter how bad) might never have to face consequences.&amp;rdquo; Also, remember the backlogs hurt tenants the most, given those matters are more complex they take the longest to get to hearings. It&amp;rsquo;s a self-own for ACORN.&lt;/p&gt;
&lt;p&gt;There could be a ton of subtext gained from this too, from the insinuation that private individuals should foot the cost for bad tenants (and not doing it means more taxpayer cost in shelters). There is a zero-sum implication in this rhetoric, assuming that there are only two ways to face this housing challenge. It&amp;rsquo;s impossible to know, but it may be true that ACORN&amp;rsquo;s ilk also perceive the nonpayment of rent as no crime, no foul, no biggie, no problem. Stick around long enough and the conversation might become about ending Capitalism and eschewing science to be one with nature or something like that. Hey, that&amp;rsquo;s okay. But Hamilton ACORN Co-chair &lt;a href=&#34;https://youtu.be/Gpiq0qDjbso&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Marc Davignon&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; was blowing a literal &lt;a href=&#34;https://en.wikipedia.org/wiki/Aztec_death_whistle&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;death whistle&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; in the Ontario legislature. Was this just for noise? Perhaps a death threat directed at Doug Ford? Some reports have said these folks were throwing things at MPPs, &lt;s&gt;but I can&amp;rsquo;t&lt;/s&gt; I can confirm&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;. Davignon was a previous tenant and paid his rent &lt;a href=&#34;https://canlii.ca/t/jt2dg&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;persistently late&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. In his case, he found a new place to live before the hearing (that might have evicted him). If it weren&amp;rsquo;t for Marc having to pay the landlord&amp;rsquo;s filing fee, this order, and his history, would have gone away. But, is this why Marc hates any change that could favour a landlord?&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://twitter.com/6ixbuzztv/status/1993312961725976577?s=20&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://twitter.com/6ixbuzztv/status/1993312961725976577?s=20&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; Politicians have gotten into the fray with their own sort of misinformation. Perhaps it&amp;rsquo;s to stoke fears or build political capital, but Chiara Padovani, a City Councillor, &lt;a href=&#34;https://www.facebook.com/reel/791977927136690&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;related a story of a tenant&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; who would have to pay &amp;ldquo;an extra $150 (50% of rent owed)&amp;rdquo; to &amp;ldquo;defend herself at the LTB.&amp;rdquo; This is absolutely false. Bill 60 will require a tenant to pay 50% of rent owed to bring &lt;strong&gt;new issues&lt;/strong&gt;&lt;sup id=&#34;fnref:5&#34;&gt;&lt;a href=&#34;#fn:5&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;5&lt;/a&gt;&lt;/sup&gt; to the table. Padovani&amp;rsquo;s example tenant would not be restricted from &amp;ldquo;defending herself.&amp;rdquo; Padovani describes a process where one needs &amp;ldquo;to pay what the landlord claims you owe without it even proven.&amp;rdquo; is also another insanely false statement. There is no such process. In the sense of the LTB, the landlord cannot prove a negative. The landlord has a chance claim arrears, yes. The tenant then has a chance then to establish proof they paid the rent. Too many are conflating &amp;ldquo;new issues&amp;rdquo; with &amp;ldquo;no defense.&amp;rdquo; Given this is early with the legislation, the process that limits the bringing of &lt;em&gt;new issues&lt;/em&gt; has not been established at the LTB, though without new issues to raise, Padovani&amp;rsquo;s tenant would not have had pay that $150. Padovani also, in the same press conference, called Bill 60 an &amp;ldquo;outrageous attack on tenants.&amp;rdquo; I can understand she feels this way given how wrong she is. Someone should have told her before the press conference started.&lt;/p&gt;
&lt;p&gt;There is the direct message of Bill 60 &amp;ldquo;driving up rents,&amp;rdquo; as Councillor &lt;a href=&#34;https://www.facebook.com/share/r/1Cij3URQzs/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Gord Perks&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; and others have said. The reality is that, by this logic, again, a correctly functioning LTB would evict more, and drive up rents. But, none of them have any proof of this, and if we&amp;rsquo;re being intellectually honest, the rental market is going to respond to a ton of factors, none of those in Bill 60 will be seen for years. But, in the now, this rhetoric is just more scare mongering. Jennifer French, my Oshawa MPP stood up to read &lt;a href=&#34;https://www.facebook.com/reel/861783809589206&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;missives&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; from people that without French mentioning the Bill, could have been about any topic.&lt;/p&gt;
&lt;p&gt;And the worst of these seems to be Kristyn Wong-Tam who has routinely called this an &amp;ldquo;attack on renters,&amp;rdquo; and used overblown language to give her ideas simplicity and outsized importance. On the &lt;a href=&#34;https://www.kristynwongtam.ca/stop-bill-60&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Stop Bill 60&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; site, Wong-Tam says &amp;ldquo;Late by a day? Evicted. That’s not housing policy — that’s cruelty.&amp;rdquo; - which is incorrect. Now, even if you don&amp;rsquo;t focus on the fact that Bill 60 changes nothing about the reasons people are evicted, Bill 60 also changes nothing about how a tenant could pay their rent arrears and avoid eviction. They could even pay those arrears very late into the many months long eviction process to nullify it. Mischaracterizing this slow-as-molasses process as easy and swift is dishonest; making it seem like Bill 60 is involved is even more so - but it&amp;rsquo;s been the hallmark of this larger resistance. And on another day, Wong-Tam said publicly that &lt;a href=&#34;https://www.facebook.com/share/r/1BYSE3dqoH/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;backlogs are bad&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;. They can&amp;rsquo;t have it both ways: reduce LTB backlogs and face &amp;ldquo;more&amp;rdquo; evictions, or keep the tribunal broken and backlogged. Which is it?&lt;/p&gt;
&lt;p&gt;I won&amp;rsquo;t even get into &lt;a href=&#34;https://ricochet.media/justice/housing/doug-fords-war-on-tenants/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;some other outlets&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; that are just so far off that saying Bill 60 is a &amp;ldquo;state response to tenant organizing.&amp;rdquo; It&amp;rsquo;s just too outlandish to merit attention. Or this &lt;a href=&#34;https://www.blogto.com/real-estate-toronto/2025/11/toronto-brothers-eviction-for-penny/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;irresponsible story&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; from BlogTO that suggests Bill 60 would have caused an eviction for one penny in arrears (it doesn&amp;rsquo;t change anything related to &lt;em&gt;ex parte&lt;/em&gt; evictions). The fear-mongering is at an all-time high in some corners of this fight.&lt;/p&gt;
&lt;p&gt;On the opposite side, small landlords consider this a positive step towards making the LTB more efficient and, finally, having the worst tenants (who scoff at rent) start to realize they can&amp;rsquo;t continue doing this. Some are using rhetoric in a similar way, like @josephbourne &lt;a href=&#34;https://www.instagram.com/reel/DRhaHG3DmJ8&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;who says&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; the disrupters at parliament were &amp;ldquo;protesting for the right to live in people&amp;rsquo;s homes for free.&amp;rdquo; This is just not the case. Tenant groups may want to abolish the entire rental market, but I don&amp;rsquo;t see any evidence that they want renters to live for free. His assertion that Bill 60 will lead to less people on the street is just as nonsensical as ACORN&amp;rsquo;s. His assertion is no more than a prediction based on what he knows of economics.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s really no wonder people have come to fear these changes when no one offers clear discourse. Rents are too damn high too. I think everyone recognizes that. Large corporate interests are building huge profits off the backs of renters. There is no limit to the hate, but much of this hate is directed in the wrong place. Large swaths of landlords are small, one or two property owners that don&amp;rsquo;t deserve this ire. That tenant groups can&amp;rsquo;t tell the difference, or even &lt;a href=&#34;https://solo.ca/book-spotlight-the-tenant-class-by-ricardo-tranjan/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;outright denies their&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; existence, is another story for another day. You don&amp;rsquo;t have to go far to find out &lt;a href=&#34;https://bayobserver.ca/tenant-protests-scheduled-against-bill-60-at-queens-park/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;where I stand on this issue&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There is so much more, but a recent ACORN online meeting on December 16, 2025 was a great example of controlling the narrative while leaving out the bits that don&amp;rsquo;t look so good for them. In this case it&amp;rsquo;s meant to whip up the member base while making Doug Ford look like the bad guy&lt;sup id=&#34;fnref:6&#34;&gt;&lt;a href=&#34;#fn:6&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;6&lt;/a&gt;&lt;/sup&gt;. Here&amp;rsquo;s one of the slides of the meeting and no mention of a &amp;ldquo;death whistle&amp;rdquo; or &amp;ldquo;throwing objects at MPPs&amp;rdquo;:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/12/acron-meeting-1024x538.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;I have think that ACORN would be standing behind me blowing a death whistle as the tenant savoured the sight of my house burning, owing $26,650.00 in unpaid rent by then. Almost none of that recoverable at a time when my family was growing. What I can say is that the new rules in Bill 60 &lt;strong&gt;may&lt;/strong&gt; have evicted this tenant in time to save our community the danger of a house fire. If you&amp;rsquo;re curious to learn more, this entire story is chronicled in my book &lt;a href=&#34;https://cwl.cc/books/&#34;&gt;From Rent to Ruin&lt;/a&gt;.&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Most of it will require that you refer back to the RTA to see what changes.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;No, not even me.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:3&#34;&gt;
&lt;p&gt;I have.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:4&#34;&gt;
&lt;p&gt;Someone is seen throwing an object from the gallery in &lt;a href=&#34;https://youtu.be/wgCRt3eoRkg&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;this CTV video&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:5&#34;&gt;
&lt;p&gt;This is related to &lt;a href=&#34;https://www.ontario.ca/laws/statute/06r17#BK112&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;section 82&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; of the RTA that will be amended to require 50% of rent is paid before raising new issues.&amp;#160;&lt;a href=&#34;#fnref:5&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:6&#34;&gt;
&lt;p&gt;Well, he may very well be the bad guy, but leaving out details is a great way to misinform people.&amp;#160;&lt;a href=&#34;#fnref:6&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
    <item>
      <title>A Look at Notepad 11.2510.6.0 and Tables</title>
      <link>https://cwl.cc/2025/11/a-look-at-notepad-11-2510-6-0-and-tables.html/</link>
      <pubDate>Fri, 28 Nov 2025 10:19:09 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/11/a-look-at-notepad-11-2510-6-0-and-tables.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/notepad-logo.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
There has been a &lt;a href=&#34;https://it.slashdot.org/story/25/11/24/1512259/the-slow-transformation-of-notepad-into-something-else-entirely-continues&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ton of talk&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; about the many changes of the (once) simple text editing tool in Windows called Notepad. A recent insider build of Windows 11 with &lt;a href=&#34;https://blogs.windows.com/windows-insider/2025/11/21/notepad-update-begins-rolling-out-to-windows-insiders/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;version 11.2510.6.0&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; of Notepad features some very interesting new features to this venerable tool. For purists who like to only edit text, they hate this and I get it. Some are thinking this simple app is moving much too close to a thing &lt;a href=&#34;https://gizmodo.com/microsoft-wordpad-gone-windows-11-1851144100&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Microsoft killed&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;One of my favorite additions to the tool is it&amp;rsquo;s ability to remember text in the application on subsequent closes, even if you&amp;rsquo;ve never saved the file. That stickiness is a feature of other &lt;a href=&#34;https://notepad-plus-plus.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;cool text editors&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; too. What are the super-new features? The big one is creating tables. Yes, a text file with tables and Notepad makes that possible. There is some other stuff related to A.I., but that&amp;rsquo;s the big one. How is the table stuff done? You create one with the grid icon on the toolbar and specify the number of rows and columns you want. This is all thanks to Notepad&amp;rsquo;s &lt;a href=&#34;https://www.markdownguide.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;markdown&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; support. When you click between View -&amp;gt; Formatted and View -&amp;gt; Markdown Support, you see how notepad is representing the table:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/notepad-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;In either view, the table data is directly editable. Notepad also let&amp;rsquo;s you manipulate the table much like you would in other apps, adding cells, rows and columns. In the version I tested, tables don&amp;rsquo;t dynamically resize when the window is resized, but it seems like something they&amp;rsquo;ll add later. Keep in mind too, Notepad doesn&amp;rsquo;t fully support Markdown, as shown the case of a simple checkbox below, but I imagine in the future, notepad will support it all.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/notepad-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Do I like it? Heck yea. This support is a welcome thing given that markdown is becoming something of a standard for marking, uhm, up, text. Text that has basic formatting should never have been stuck in the realm of binary files when often that formatting is just a simple matter. That&amp;rsquo;s why I love &lt;a href=&#34;https://cwl.cc/2025/09/in-praise-of-obsidian.html&#34;&gt;Obsidian&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/notepad-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Now, maybe you still just want a simple text editor. You could go super-retro and install &lt;a href=&#34;https://github.com/microsoft/edit&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Microsoft Edit&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, which as Notepad is moving on one direction, Microsoft is meeting the needs of those that want a quick, easy, console editor in the other direction.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/edit_hero_image-1024x615.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;This new version of Notepad is rolling out for testers in Windows 11 Dev and Canary builds. There is never a guarantee this or any feature ends up in the final release of Windows, but it&amp;rsquo;s a peek at what Microsoft is working on. Notepad 11.2508.38.0 still has limited Markdown support if you want to try it now (without the tables).&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Book - Enshittification</title>
      <link>https://cwl.cc/2025/11/book-enshittification.html/</link>
      <pubDate>Mon, 24 Nov 2025 08:20:02 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/11/book-enshittification.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/enshittification-e1761939509957.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
I love this book. It&amp;rsquo;s so perfect for the times we live in.&lt;/p&gt;
&lt;p&gt;Cory Doctorow &lt;a href=&#34;https://lwn.net/Articles/1021871/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;came up&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; with the word, in 2022, to describe how all the digital services that increasingly dominated our daily lives seemed to be getting worse at the same time.&lt;/p&gt;
&lt;p&gt;Cory&amp;rsquo;s writing is so clearly laid out, so wonderfully descriptive, that it feels like sufficiently complex ideas are ingested better. It&amp;rsquo;s a good thing, because when talking about monopolies and labour markets, one needs a high degree of simplification.&lt;/p&gt;
&lt;p&gt;How crazy is it when the President of the United States posts an A.I. generated video of himself flying a jet, wearing a crown (read: the King) while dumping literal shit on his own people who are protesting the rise of a King. Shit and slop go hand in hand with this &amp;lsquo;jokey&amp;rsquo; President.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://youtu.be/rHHYql5Vsmk&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://youtu.be/rHHYql5Vsmk&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; Some will surely have issues with accuracy in this book. Perhaps many will take issue with some characterizations of companies. But absolutely everyone will know the truth of the message because we all see enshittificaton happening. From the lack of a good remote access too to the removal of seats that can recline in an airplane. Enshittification is ever present.&lt;/p&gt;
&lt;p&gt;Just as monopolies are legally attacked (in ever weaker ways), there needs to be a regulatory framework for holding companies accountable for enshittificaton. Maybe call it &amp;lsquo;The Plunger Department.&amp;quot; They come in and keep things flowing when we&amp;rsquo;re stuck. To that end, there&amp;rsquo;s &lt;a href=&#34;https://consumerrights.wiki&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;consumerrights.wiki&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - as site that chronicles many of these transgressions. Be a part of holding companies accountable and join that site.&lt;/p&gt;
&lt;p&gt;One thing that continually pops up for me is when reading the hardcover, and the lights go down (for reasons of the infant kind), switching to reading with my phone is possible. I bought the physical book, so why doesn&amp;rsquo;t every hard copy of a book come with access to its EPUB or MOBI counterpart? It should. In fact, if you buy &lt;a href=&#34;https://cwl.cc/books/&#34;&gt;my book&lt;/a&gt;, I will give you the DRM-Free EPUB at no cost, just ask.&lt;/p&gt;
&lt;p&gt;This is the book to read in 2025. In fact, this should probably be required reading for all university undergraduates. Go get a copy of Enshittificaton for yourself. Buy it online &lt;a href=&#34;https://craphound.com/shop/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;directly from Cory&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; or at Bakka-Phoenix books in Toronto.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>In Search of the Perfect Screenshot Tool on Windows</title>
      <link>https://cwl.cc/2025/11/in-search-of-the-perfect-screenshot-tool-on-windows.html/</link>
      <pubDate>Fri, 21 Nov 2025 14:33:01 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/11/in-search-of-the-perfect-screenshot-tool-on-windows.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/screenshot-logo.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The absolute most common thing I do with my daily-use computer is &lt;a href=&#34;https://cwl.cc/2012/02/that-great-tool-total-commander.html&#34;&gt;file management&lt;/a&gt;, but a close second is taking screenshots of just about anything. This is such a common occurrence that the demand for a great screen grab tool has led me to expect a great deal from whatever tool I use. Previously, I&amp;rsquo;ve mentioned how to &lt;a href=&#34;https://cwl.cc/2011/12/how-to-get-screenshot-with-same-hotkey.html&#34;&gt;work with Mac and Windows&lt;/a&gt;, and there were the &lt;a href=&#34;https://cwl.cc/2015/04/taking-a-screenshot-with-your-computer.html&#34;&gt;basics&lt;/a&gt; of screenshots themselves. Of course, you could just use Snipping Tool or whatever else Microsoft pushes to your computer this week, or you could move up to a power user level on this task.&lt;/p&gt;
&lt;p&gt;This kind of tool needs the following features to be a candidate for me:&lt;/p&gt;
&lt;p&gt;1. Customizable hotkeys. I need to set the most important tool, the rectangular screenshot hotkey as I see fit&lt;sup class=&#34;fn&#34; data-fn=&#34;aa235bb7-b031-4f4c-9705-04b520d13c6a&#34;&gt;&lt;a href=&#34;#aa235bb7-b031-4f4c-9705-04b520d13c6a&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;.&lt;br&gt;
2. It runs in the background and has a tray icon so I can get to it in a pinch.&lt;br&gt;
3. It has a reasonably featured and fast editor that can mark-up and save the screenshots you create directly. Bonus points if the editor can become your default editor in Windows and even call on a more beefy application like Photoshop when needed.&lt;br&gt;
4. Screenshots can be set to auto-save with a specific format and file naming scheme.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.faststone.org/FSCaptureDetail.htm&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;FastStone Capture&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - This program is something of a throwback being &lt;em&gt;shareware&lt;/em&gt;, but its tools and features are deep. The application is like most screenshot tools, it runs in the background, has a tray icon and let&amp;rsquo;s you control the hotkeys it uses for a capture . One of the nicer things about is that screenshots can open in a basic editor for many of the most common tools, and a more advanced editor for more complex stuff. The ability to edit and save .webp files and quickly add border and watermark effects make this tool one of the batter candidates for your screenshot tool.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/screenshots-02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt; &lt;a href=&#34;https://getgreenshot.org/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Greenshot&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - This free-to-use utility is great because it gets you running fast, and on a screen grab, gives you the output menu right away. The editor is quick and gives you a ton of the most common things that you&amp;rsquo;ll ever need. The biggest downside with Greenshot is it&amp;rsquo;s lack of native .webp support, but that may be minor to you&lt;sup class=&#34;fn&#34; data-fn=&#34;2b0a35b8-0413-485a-9aae-84af70fe00cf&#34;&gt;&lt;a href=&#34;#2b0a35b8-0413-485a-9aae-84af70fe00cf&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/screenshots-01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt; &lt;a href=&#34;https://picpick.app/en/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;PicPick&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - Free for personal use, this is a tool I&amp;rsquo;ve recommended to a ton of people. The interface here is very Microsoft Office-esque, so many will feel at home. The editor is slower than most tools, but the features are all there. Blur, Watermark, etc. There are also a large list of shapes&lt;sup class=&#34;fn&#34; data-fn=&#34;d34fec5d-54a1-4bf4-a783-9d1111a96b14&#34;&gt;&lt;a href=&#34;#d34fec5d-54a1-4bf4-a783-9d1111a96b14&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; you can add to your screen grabs that really enhance the message. Native .webp support is nice to have. The biggest missing piece for me was the free-form arrows that I could get with tools like Skitch on Mac.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/screenshots-03.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt; &lt;a href=&#34;https://getsharex.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ShareX&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; - This free tool is the bonkers option. Its features include things you might have never thought of like &lt;a href=&#34;https://imgur.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Imgur&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; uploaders or auto uploading to your Seafile installation. The image editor has all the fantastic features you need including pixelate &lt;em&gt;and&lt;/em&gt; blur. There&amp;rsquo;s really not much missing here, even browser extensions. In fact, ShareX may be a victim if it&amp;rsquo;s own comprehensiveness, if that&amp;rsquo;s possible.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/screenshots-04.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Given that it&amp;rsquo;s impossible to keep track of all the tools out there, I throw it to you. Is there a screenshot utility you love and use every day? It doesn&amp;rsquo;t have to be free, nor does it have to be specific to taking screen images. Think of Sysinternals &lt;a href=&#34;https://learn.microsoft.com/en-ca/sysinternals/downloads/zoomit&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Zoomit&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, that looks like it could be a great tool, but I haven&amp;rsquo;t tried it.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Speed Cameras Shut Off in Ontario</title>
      <link>https://cwl.cc/2025/11/speed-cameras-shut-off-in-ontario.html/</link>
      <pubDate>Mon, 17 Nov 2025 08:04:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/11/speed-cameras-shut-off-in-ontario.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/ford-tweet-cameras.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
With the passing of &lt;a href=&#34;https://www.ola.org/en/legislative-business/bills/parliament-44/session-1/bill-56&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Bill 56&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt;, The Government of Ontario has removed authorization for the use of automated speed enforcement cameras from the Highway Traffic Act.&lt;/p&gt;
&lt;p&gt;There is an approach that I often attribute to progressives that is punitive. This assumes that people do wrong by default and the established structure should be setup to punish the people. If all goes well, the proceeds of this punishment are used to pay for the high-priced cameras and other stuff. Couple this with, at times, ridiculously low speed limits on some roads, and this punish-at-all costs approach becomes, well, a cost centre for apparently 1,000 jobs in Toronto&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. And look at how many speeders are caught, it&amp;rsquo;s a such minor fraction of all the drivers on the road.&lt;/p&gt;
&lt;p&gt;The point I make is that our western society ought to be based on leniency first. You&amp;rsquo;re innocent until proven guilty. There are no extenuating circumstances with a robot auto-catching your speed and treating it like an expensive parking ticket. Let&amp;rsquo;s just automate every error a driver could make, and turn it into a tax, right? Do you know any drivers that have never once made an error on the road?&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/speed-camera-chopped-parkside.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Which then brings me to an underlying fear for so many. I think of the movie &lt;em&gt;Demolition Man&lt;/em&gt; and the government&amp;rsquo;s Verbal Morality Statute. In that future world, machines are everywhere, listening to everything we say. If someone says a &amp;lsquo;bad&amp;rsquo; word, boom, a fine is spit out for some amount of in-world credits. Doubtless, few would accept a world where all crime is robotically caught and perhaps some A.I. judge presides over your conviction and sentencing. It is the human element that undergirds all of what we consider crimes, laws, and how we enforce them&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;p&gt;Too often municipalities are instituting these programs with zero buy-in and even more secrecy. The town of Oshawa, for example, publishes no details about how many speeders they catch, what revenue they earn, and what speed differentials. Some data did trickle out thanks to a freedom of information request, but one can be certain that the Oshawa city council knows its all a bad look.&lt;/p&gt;
&lt;p&gt;The value proposition is always &amp;ldquo;Speed cameras work,&amp;rdquo; but with that kind of absolute statement speed cameras should have stopped speeding altogether. The fact that people are speeding and still get caught says that the cameras only punish, not &lt;em&gt;stop&lt;/em&gt; speeding. What they do is reduce speeding, which is good. This is a worthy goal, but not the only way to approach the problem. Just like a drug, governments get a high when they see the money rolling in. They never want it to stop.&lt;/p&gt;
&lt;p&gt;It is the responsibility of the government to work for their constituents, and, gosh, could they once actually only do something if they can get buy-in? Too much of local government is &amp;ldquo;Hey, we&amp;rsquo;re doing a bad thing for you, is anyone out there that disagrees?&amp;rdquo; Of course, when no one engages, they just go ahead. It really would be an inspired approach if they took it as a responsibility to connect with the people. Running cities in apathy is how we got to so many bad places.&lt;/p&gt;
&lt;p&gt;But, in all this, speed cameras are deeply, deeply &lt;a href=&#34;https://abacusdata.ca/ontarians-open-to-replacing-speed-cameras-if-safety-investments-follow-new-poll/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;unpopular&lt;svg class=&#34;hx:inline hx:rtl:rotate-270 hx:align-baseline&#34; height=&#34;1em&#34; aria-hidden=&#34;true&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; viewBox=&#34;0 0 24 24&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;
 &lt;path d=&#34;m9.1716 7.7574h7.0711m0 0v7.0711m0-7.0711-8.4853 8.4853&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;/&gt;
&lt;/svg&gt;&lt;/a&gt; with Ontarians. Many of these shrouded-in-secrecy &lt;a href=&#34;https://cwl.cc/2013/12/opp-expands-tracking-program.html?amp&#34;&gt;automated systems&lt;/a&gt; are running afoul with the public for good reason. We are in a democracy, should that not be our guiding star? Also, what could be done with all that unused camera tech?&lt;/p&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;Olivia Chow mentioned this in a speech, and you can be sure the City of Toronto wasn&amp;rsquo;t providing these details beforehand.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&#34;fn:2&#34;&gt;
&lt;p&gt;There are tons of laws that never get updated too. It&amp;rsquo;s apparently illegal to whistle in Petrolia, Ontario.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;

      </description>
    </item>
    
  </channel>
</rss>
