<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>(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>
    
    <item>
      <title>Testing Journelly - Notes on Your iPhone</title>
      <link>https://cwl.cc/2025/11/testing-journelly-notes-on-your-iphone.html/</link>
      <pubDate>Fri, 14 Nov 2025 09:06:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/11/testing-journelly-notes-on-your-iphone.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Journelly.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
&lt;strong&gt;App Name:&lt;/strong&gt; Journelly&lt;br&gt;
&lt;strong&gt;Tested:&lt;/strong&gt; Various versions through v1.3(11) on iOS 18.4.1 on an iPhone 17 Pro Max&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s not a regular occurrence for me to test applications in an organized way. Things are far too chaotic and the time isn&amp;rsquo;t always there to try out things&lt;sup class=&#34;fn&#34; data-fn=&#34;4203d47b-a287-4e05-8ab7-650abd0ace04&#34;&gt;&lt;a href=&#34;#4203d47b-a287-4e05-8ab7-650abd0ace04&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;. Journelly itself is quite simple and easy; this is what appealed to me about it. All of the text-based features you expect are there including spell-check and whatever else you invoke from the keyboard interface. Yes, even the Apple A.I. stuff is available too.&lt;/p&gt;
&lt;p&gt;But, how does this stack up to Apple&amp;rsquo;s Notes app? Some of this is better. Journelly keeps the edit window in a finite space, so whether in landscape or portrait mode, the text you edit isn&amp;rsquo;t jumping all over the place. I&amp;rsquo;ve found (at times) that the text I edit can eventually ride under the keyboard overlay. This makes things harder and Journelly doesn&amp;rsquo;t seem to do this. So, as the text gets a little larger than your screen, you&amp;rsquo;re okay. And the editing font is nicer than what you can use in Note.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/11/Journelly-Screen.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;I like the right and left swipe features - swiping right gives you access to edit and , swiping left gives you access to the delete option. Much easier to get to than tiny menu spots on a small screen. Having crucial elements like &amp;ldquo;Save&amp;rdquo; at the bottom-right is a break with convention, but when your editing on an iPhone Pro Max, this small touch is super appreciated. It would be nice to have word count somewhere, or the option to turn such a feature on.&lt;/p&gt;
&lt;p&gt;Coupled with a Bluetooth keyboard, say the &lt;a href=&#34;https://www.logitech.com/en-ca/shop/p/keys-to-go2-universal.920-012867&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Logitech Keys to Go 2&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 you have a fantastic mobile writing environment. I&amp;rsquo;m a fan of carrying around the minimal gear possible and having the screen not jump all over the place when I type is welcome. The editing experience is actually sane, with the cursor going where you want.&lt;/p&gt;
&lt;p&gt;The sharing interface is lacking a bit. Sharing to any app only provides the text, leaving images out. This means you could share an entry into Apple&amp;rsquo;s Files app or into, say, Whatsapp to get a post out. This might not be a problem for you, but if you were using this to eventually transfer it to some other place, it would be nice to have a &amp;ldquo;Print&amp;rdquo; option or share to a Word Document so the images could be in the mix. I see myself using the tool to blog in remote places, so making it a little easier to get at the content as it is later would be helpful.&lt;/p&gt;
&lt;p&gt;By default the data is stored locally on the phone and that can be directed into iCloud if you wish. The app currently also provides access to the lower level markup language, which is a nice touch. It would be better if there was a help document or something that explained how to better use that. When I started testing, the setup page explained that I could get quick access to a new document by creating a url shortcut on the iOS desktop to journelly://new - more of that is welcome. Placing all this on iCloud is great too. Once could even make the markdown files in Journelly and then sync them into &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;Now, there is a matter of the not-insignificant price of this app. At $19.99, it is ludicrously high for an Apple App Store title like this. Can I convince you to justify this high cost with some clever reasoning? No, unlikely. Ultimately, I think the choice has to be whether you wish support the maker (and you should).&lt;/p&gt;
&lt;p&gt;At this point, the app is more polished than I&amp;rsquo;d expected. This is a good thing. The author is regularly improving the application. You can get your hands on this one of two ways: Install it and, after a short period if you don&amp;rsquo;t like it, request a refund from apple. You can also send an email to the &lt;a href=&#34;https://xenodium.com/journelly-for-ios&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;author&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 request Testflight access to take it for a longer spin.&lt;/p&gt;
&lt;p&gt;Journelly is available for iOS in the &lt;a href=&#34;https://apps.apple.com/ca/app/journelly/id6470714669&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Apple 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;/p&gt;

      </description>
    </item>
    
    <item>
      <title>AI is Already Stealing Away My Posts and Traffic</title>
      <link>https://cwl.cc/2025/11/ai-is-already-stealing-my-posts-and-traffic.html/</link>
      <pubDate>Wed, 05 Nov 2025 09:07:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/11/ai-is-already-stealing-my-posts-and-traffic.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/512px-AI_Artificial_Intelligence_concept_52917075159.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Previously, &lt;a href=&#34;https://cwl.cc/2025/02/is-a-i-killing-blogs.html&#34;&gt;I wrote&lt;/a&gt; about the prevalence of artificial intelligence (A.I. or the more common AI) and whether we should be worried. Months later, I came across a very real reason bloggers are getting worried about AI. Google appears to have taken a post of mine and used it to train its Gemini model an inject the results in to its search. This means no one needs to click on my site for the content. If I were earning ad revenue (this site &lt;a href=&#34;https://cwl.cc/2018/07/time-for-a-change-moving-away-from-amazons-aws.html&#34;&gt;moved away from that&lt;/a&gt; a long time ago).&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s start from the beginning. Through the decades of writing 750 or more blog posts on this site, I have written a ton of how-tos or instructional posts. One of them explained how to &lt;a href=&#34;https://cwl.cc/2022/06/dynamically-disable-shared-folders-in-vmware-workstation.html&#34;&gt;dynamically disable shared folders in VMware Workstation&lt;/a&gt;. The bizarre thing was that I&amp;rsquo;d forgotten how to do this thing I wrote about, but knew it was possible. So, I took to Google (as one does) to find the answer. Here&amp;rsquo;s what Google returned:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/AI-Google-Result.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;At the top of the results, even before the sponsored posts, there was an AI summary that answered my question inline. You&amp;rsquo;ll notice several indicators that Google got this information from different places, and this site was one of them. Certainly, anyone could click anywhere CWL is visible in the result and get here for the full details, but if you&amp;rsquo;ve already gotten your answer, there&amp;rsquo;s no need.&lt;/p&gt;
&lt;p&gt;Over the years I&amp;rsquo;ve moved away from any sort of analytics, but recently it&amp;rsquo;s made sense to just throw Google&amp;rsquo;s tracking code in to have a basic level of measurement (sorry folks). Over time I&amp;rsquo;ll see how this site&amp;rsquo;s audience is changed, more as a curiosity.&lt;/p&gt;
&lt;p&gt;But the big question is: Should we be doing something to stop this? Additionally, is there even a solution (such as changing this site&amp;rsquo;s robots.txt)? May the best way to deal with how my content is used is to relax, let the AI models index everything. Just lean into it.&lt;/p&gt;
&lt;p&gt;For now, there are no restrictions on what AI bots/crawlers can index here. Some may respect if an opt-out mechanism is used, others may not. What say you reader? More than anything, thanks for reading over the years. I really do appreciate it.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Choosing How and Where to Publish a Book</title>
      <link>https://cwl.cc/2025/11/choosing-how-and-where-to-publish-a-book.html/</link>
      <pubDate>Sat, 01 Nov 2025 17:00:58 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/11/choosing-how-and-where-to-publish-a-book.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2023/10/renttoruin-banner.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Last year I self-published &lt;a href=&#34;https://cwl.cc/2023/10/i-wrote-a-book.html&#34;&gt;From Rent to Ruin&lt;/a&gt;. Part of this process required me to find the right way to make this book available to as many people as possible. Of course, like most authors, I wanted to be with a traditional publisher that believed in my work. I wanted to give my book the largest possible exposure in the hopes that, if it struck a nerve, it might sell the maximum number of copies.&lt;/p&gt;
&lt;p&gt;Selling a book in such a crowded marketplace was always going to require the capture of attention and the ability to meet the demands of this attention. As a self-published &amp;lsquo;Joe-Shmoe,&amp;rsquo; a sort of mass appeal in book publishing is not only unlikely, but it&amp;rsquo;s absurd to think about.&lt;/p&gt;
&lt;p&gt;&amp;ldquo;Can you imagine this being a 12-episode TV show?&amp;rdquo; a friend asked matter-of-factly as if this was a given.&lt;br&gt;
&amp;ldquo;Hahaha!&amp;rdquo;&lt;/p&gt;
&lt;p&gt;I was at a loss for words over my deep need to laugh at that statement. I admit it did have me thinking wistfully about the three-season HBO Max show starring Rami Malek in a return to his &lt;em&gt;Mr. Robot&lt;/em&gt; roots. The limited number of seasons would only increase the show&amp;rsquo;s allure much like &lt;em&gt;Halt and Catch Fire&lt;/em&gt;. Ok, I&amp;rsquo;ll stop. There aren&amp;rsquo;t going to be any adaptations of &lt;em&gt;Rent to Ruin&lt;/em&gt;; that I&amp;rsquo;m reasonably sure of. But, the choice of how to publish this book, my very first book, was not as clear as I&amp;rsquo;d like it to be.&lt;/p&gt;
&lt;p&gt;I knew I had to entertain the idea of going to a large publisher and making a proposal. Given that I have the entire non-fiction work done; couple that with some kind of small &amp;ldquo;Audience&amp;rdquo; (that&amp;rsquo;s you), it seemed that I&amp;rsquo;d have a reasonably good chance of publishing this way. I tended to waver on this idea because I&amp;rsquo;d have to go in cold. Unsolicited. Spammy. As I understood it, authors were supposed to find books in their genre, find the publisher - such as &lt;a href=&#34;https://gooselane.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Goose Lane Editions&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 &lt;a href=&#34;https://www.penguinrandomhouse.ca/imprints/NZ/viking&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Viking 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 send them some sort of proposal.&lt;/p&gt;
&lt;p&gt;Self-publishing seemed like the smarted move. There was &lt;a href=&#34;https://gumroad.com&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Gumroad&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;, a kind of self-publishing Patreon that holds a ton of different books. This site seemed compelling, but not for me. Another way was to fall into the deep despairing well of Amazon and its evil counterpart Ingram Spark. Stories of those who get locked up in the clutches of Amazon&amp;rsquo;s juggernaut seem to fall into two categories. First, it&amp;rsquo;s authors that maintain extreme obscurity but publish to Amazon because they&amp;rsquo;re Amazon (exposure, right?). Or, it&amp;rsquo;s the author who seems to profit from the all-encompassing environment (write big, fast, trashy and keep &amp;rsquo;em coming). Having already had some experience with the Amazon marketplace, I knew they would wield extreme power, often without reason or common sense. I think of Amazon as a place as just another store to put my book in. Not the first, but perhaps in the future.&lt;/p&gt;
&lt;p&gt;After these considerations, From Rent to Ruin was listed on &lt;a href=&#34;https://amzn.to/49TWv6n&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Amazon&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 both a paperback book and Kindle e-book. As a means of selling the book directly, I made it &lt;a href=&#34;https://buy.stripe.com/eVa9EseHw4GOdxe5kk&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;available directly&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 a DRM free e-book by way of a Stripe transaction. The sales there are meager, but I appreciate those that have shown direct support. The distribution part of this equation is endlessly complex too. At Chapters / Indigo, a book not carried by a Canadian distributor must enter into consignment deals with each individual store. For those that do, 2024 pricing looked like 45% discount off the retail price, and stores get to return all unsold product in any condition and you, the author have to foot the bill to deliver and pick up the books. In other words, to get you book in a store, you do all the legwork and take all the risk.&lt;/p&gt;
&lt;p&gt;Book publishing is under attack from just about everything today. It&amp;rsquo;s not easy to imagine anyone could earn a living doing this, but I know it&amp;rsquo;s possible. This is where I am for now with one book published. One step at a time.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Automating Installers With Administrator Privileges</title>
      <link>https://cwl.cc/2025/10/automating-installers-with-administrator-privileges.html/</link>
      <pubDate>Fri, 31 Oct 2025 09:11:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/10/automating-installers-with-administrator-privileges.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/it-head-digital-1.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The directive was simple: Build some sort of tool that could perform an installation similar to what &amp;lsquo;sudo&amp;rsquo; does on Linux in a limited user session. There is literally nothing like this for Windows that performs in any sort of automated fashion. also, given I know the administrative password of the local machine, there should be a way to give a user an installer that perform an installation I need?&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s a simple example:&lt;/p&gt;
&lt;p&gt;I want to automate the installation of the latest ConnectWise Control / Screenconnect tool in a limited user context. For this I use two tools primarily. You&amp;rsquo;ll need to download the great Sysinternals tool &lt;a href=&#34;https://live.sysinterals.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;pesexec64&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 the &lt;a href=&#34;https://sourceforge.net/projects/nsis/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Nullsoft Install System&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 64bit. In my case, I want to stay native 64bit, but you could do all this with 32bit tools too. I use psexec to launch with admin credentials and I use NSIS to wrap the process and potentially include installer files if needed. Naturally, create an installer for ConnectWise Control and save that too.&lt;/p&gt;
&lt;p&gt;I then setup a basic folder structure:&lt;br&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;Work&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;Runadmin&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;Root&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;/div&gt;
&lt;/div&gt;
&lt;/p&gt;
&lt;p&gt;In the &amp;lsquo;Work&amp;rsquo; folder, I&amp;rsquo;ll place my NSIS script. Just create a basic text file and set its extension to .nsi. In my example I&amp;rsquo;ll call it runadmin.nsi. Next, place the psexec64.exe and Connectwise.Control.exe (which I&amp;rsquo;ve renamed to rds.exe for ease of use). files in the &amp;lsquo;Root&amp;rsquo; folder. Great, that&amp;rsquo;s the basic structure.&lt;/p&gt;
&lt;p&gt;The following is my .nsi script. Change the adminuser and adminpassword to suit your needs:&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;!include &amp;#34;MUI2.nsh&amp;#34;

!define OutFileName &amp;#34;example.exe&amp;#34;
!define ProgramName &amp;#34;Runadmin&amp;#34;

Name &amp;#34;Runadmin x64&amp;#34;
OutFile example.exe
CRCCheck off

!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE &amp;#34;English&amp;#34;

!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES

ComponentText &amp;#34;This will install the Application on your computer.&amp;#34;
DirText &amp;#34;Please select a location to install Runadmin (or use the default). The install directly will be deleted so backup important files or scripts!&amp;#34;
AutoCloseWindow True 

InstallDir C:\runadmin
RequestExecutionLevel user

Section &amp;#34;Program Files (required)&amp;#34;
SectionIn 1
SetOutPath $INSTDIR

File /r root\*.*  

Exec &amp;#34;reg.exe ADD HKCU\Software\Sysinternals /v EulaAccepted /t REG_DWORD /d 1 /f&amp;#34;
Exec &amp;#34;reg.exe ADD HKU\.DEFAULT\Software\Sysinternals /v EulaAccepted /t REG_DWORD /d 1 /f&amp;#34;
Exec &amp;#34;$INSTDIR\psexec64 -accepteula -d -u AdminUser -p AdminPassword $INSTDIR\rds.exe&amp;#34;
sleep &amp;#34;500&amp;#34;
SectionEnd

Section Uninstall

SectionEnd&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;Most of those directives are what&amp;rsquo;s needed to build a basic installer, but there are a few important statements to note.&lt;/p&gt;
&lt;p&gt;InstallDir C:\runadmin is a result of compromising on file access issues (I&amp;rsquo;ll get into that more later)&lt;/p&gt;
&lt;p&gt;RequestExecutionLevel user is crucial for making the installer run int he context of a cureent lmitded user. Without this, NSIS will expect to be elevated and fail.&lt;/p&gt;
&lt;p&gt;Exec &amp;ldquo;$INSTDIR\psexec64 -accepteula -d -u AdminUser -p AdminPassword $INSTDIR\rds.exe&amp;rdquo;&lt;/p&gt;
&lt;p&gt;This is where everything happens. Psexec will launch the rds.exe process in the context of your provided administrator user. You&amp;rsquo;ll notice also that a pause is added (&lt;strong&gt;sleep &amp;ldquo;500&amp;rdquo;&lt;/strong&gt;). You might think it&amp;rsquo;s possible to add multiple of these statements if you&amp;rsquo;re unsure of the exact admin password combination and you&amp;rsquo;d be right. I&amp;rsquo;ve used up to four Exec statements and when the right password hits, the command runs.&lt;/p&gt;
&lt;p&gt;File Access&lt;/p&gt;
&lt;p&gt;So psexec64 is working for me with the built-in administrator account, but for some reason when I&amp;rsquo;ve created a second administrative account, running psexec64 yields an &amp;ldquo;Access is denied&amp;rdquo; error. This stumped me for some time. I started thinking, this might be some sort of user right assignment? There&amp;rsquo;s somethin special in that administrator account? Well, it turns out this was far simpler. When the limited user downloads to her &amp;ldquo;Downloads&amp;rdquo; folder, that folder is not accessible to newly created administrator accounts by default. My solution to this? Create a folder in the context both accounts can access. Thus, I run the install and drop the files needed to c:\runadmin&lt;/p&gt;
&lt;p&gt;What could you do with this?&lt;/p&gt;
&lt;p&gt;Of course, the intention of this is not for hacking. Yes, you do need a domain or local administrator password. This isn&amp;rsquo;t going to circumvent that. But in environments were prepackaged machines need to have software installed, yet you as the admin cannot provide the administrative password; this tool can be provided to the user and that software installed in an automated manner.&lt;/p&gt;
&lt;p&gt;Security, Security.&lt;/p&gt;
&lt;p&gt;So, if you&amp;rsquo;ve read this far, your eyeballs are probably burning. You&amp;rsquo;re thinking &amp;ldquo;Hardcode the administrative password, are you nuts? Talk about giving it all away?!&amp;rdquo; In all these respects, you are correct. While this is nothing more than a proof of concept and the NSIS-complied installer does not have the password stored in plain-text, &lt;strong&gt;this does not mean it is safe for production use&lt;/strong&gt;. To use this in your environment, I&amp;rsquo;d suggest further encrypting the password in the script while also self-signing the installer itself.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Migrating Profiles from Local AD to Azure/Entra AD with Profwiz</title>
      <link>https://cwl.cc/2025/10/migrating-profiles-from-local-ad-to-azure-ad-with-profwiz.html/</link>
      <pubDate>Tue, 28 Oct 2025 09:11:00 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/10/migrating-profiles-from-local-ad-to-azure-ad-with-profwiz.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2022/07/profwiz.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Moving user profiles from domain to domain has often been the topic of conversation. I&amp;rsquo;ve even written &lt;a href=&#34;https://cwl.cc/2011/10/be-it-guy-movingcopying-user-profiles.html&#34;&gt;an article&lt;/a&gt; that took me more than a year to compile about the very act of copying or moving profiles. Now, we have Active Directory in Office 365 and Azure (Or Entra ID or whatever they&amp;rsquo;re calling it) to contend with. Many small businesses are going to want to move users from an on-premises directory to Azure AD, and that&amp;rsquo;s what I&amp;rsquo;ll be talking about today.&lt;/p&gt;
&lt;p&gt;I should note that this process was adapted from moving a group of six users from a local Active Directory setup (on-premise) to remote workers, and then eventually permanently remote in Azure AD. These users are currently licensed on 365 as &amp;ldquo;Microsoft 365 Business Premium.&amp;rdquo; I expect these to change as well as the licensing requirements for access to these features. Profwiz is a free tool available from &lt;a href=&#34;https://www.forensit.com/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ForensIT&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 is used in the examples I describe.&lt;/p&gt;
&lt;p&gt;Before you start this process, make sure you have a solid backup, whatever format that takes. Backup everything. These changes will be fairly drastic, so backup, backup. Let&amp;rsquo;s go.&lt;/p&gt;
&lt;p&gt;I do all of the following on the same network as the AD domain controller; it’s best to remove the machine from the AD domain cleanly. All of this, of course, is dependent on the Professional or Enterprise version of Windows 10 and higher. If you’re using the “Home” version, you’re doing something else entirely (because it can’t join to an AD domain).&lt;/p&gt;
&lt;p&gt;Also some important caveats. You probably know many of these or you wouldn’t have planned to move to Azure AD in the first place, but they’re worth mentioning. The first is lack of GPO support, so if you’re managed machines, mapping local files shares, etc etc, you’ll be disappointed. Make sure that local file share access is not a requirement. In some cases I’ve managed to get business apps working with Sharepoint Online, others might not. A local SQL server may be a challenge too. I generally do this migration for users that are permanently leaving behind ties to a local AD server. All of these considerations are, of course, beyond the full scope of this how-to.&lt;/p&gt;
&lt;p&gt;These are the steps I follow to migrate machines:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Create / Correct / Enable / Admin Local user (Owner) account&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In this step, I’m mindful of having an account I can use as a backup. Create that account, leave it passwordless and make it a local admin.&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;Run Profwiz to migrate Domain account to local account (Restart. Log in as this user on boot)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This requires the use of the local machine name and manually typing in the account name. I keep it to “Owner” for ease of use and to avoid the default administrator account. When logging in, disregard any errors, etc. These will be corrected later.&lt;/p&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;Detach from the domain in “sysdm.cpl” (Restart the computer)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This one’s best when you’re able to connect to the domain controller. For the workgroup, it’s an empty field. Just use the historical default of “WORKGROUP.”&lt;/p&gt;
&lt;ol start=&#34;4&#34;&gt;
&lt;li&gt;Join the machine to Azure AD&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Find this on Windows 10+ in Settings -&amp;gt; Accounts -&amp;gt; Access Work or School -&amp;gt; Connect -&amp;gt; Join This Device to Azure AD. You might get an enrollment error “code 8018000a” here – if that’s the case, use this Powershell script to remove accounts in the settings. This became so common, that I started just doing this before getting the error. I also remove personal accounts from the accounts.live.com, devices tab. Also, if you need to, run Credential Manager “rundll32.exe keymgr.dll, KRShowKeyMgr” to remove any links to personal or unneeded logins there. If there are any removals here, I suggest rebooting again.&lt;/p&gt;
&lt;ol start=&#34;5&#34;&gt;
&lt;li&gt;Log out, Log in as ‘Other User’, and use the target user’s email address as the username&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;There were cases where the login screen didn’t have an “Other User” option and I recall enabling that with a group policy. Generally, this option will be visible as long as Windows has multiple account options. Even though you’ve joined the Azure AD domain, you’ll have to type the user’s full email address manually. Also, this will load a blank profile. Don’t panic. You might also go through a verification two-factor process, so be prepared with a phone or some means of undertaking that.&lt;/p&gt;
&lt;ol start=&#34;6&#34;&gt;
&lt;li&gt;Then, use Profwiz to migrate the local account (Owner in my above example) to your @domain.com 365 account (Restart the computer)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Yes, this feels like the most awkward part of the process – but you’re almost there. Write out the user’s domain ‘domain.com’ and select “AzureAD. Disable “Join Domain. Then, enter the account name as the full email address. After the restart, log in as the 365 User again and the original profile will load. When it finishes, you can update and correct any small issues before handing the device to the user. Several services may need to be logged in or reinstalled.&lt;/p&gt;
&lt;p&gt;Finally&lt;/p&gt;
&lt;p&gt;Depending on the number of computers you’re working through, the most immediate step should be to check on whether this new device is fully attached to Azure AD. I do this by logging into the Entra ID Admin Portal and looking for Azure Active Directory -&amp;gt; Devices -&amp;gt; All Devices (no doubt Microsoft will screw with this menu progression). Here, find the computer name and under “Join Type” you should see “Azure AD joined.” Thinking of this process, I sense it could also be applicable to 365 tenant to 365 tenant migrations that will no doubt be needed in the future. There’s also a process to save accounts with ForensIT’s script – it’s a one-time process and re-usable on further machines, but I find it isn’t required unless you’re using a non-free version of Profwiz to actually add Windows machines to Azure AD (you do this in Windows in step 4).&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>To Write a Book Outline or Not</title>
      <link>https://cwl.cc/2025/10/to-write-a-book-outline-or-not.html/</link>
      <pubDate>Thu, 23 Oct 2025 08:07:10 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/10/to-write-a-book-outline-or-not.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/Books.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
The most important advice I&amp;rsquo;ve ever ignored is that of book outlining. The idea is, before writing that book, build a solid outline of each chapter and the ultimate flow of your book. It&amp;rsquo;s great idea in practice. But, in reality, my ideas for a book tend to percolate into raw writing and not macro overview material. With two of the four books I&amp;rsquo;m working on, I eschewed the outline completely, leaving me to write as a &amp;ldquo;pantser&amp;rdquo; or by &amp;ldquo;the seat of my pants.&amp;rdquo; Writing on-the-fly like that has it&amp;rsquo;s benefits, but it can kill your book&amp;rsquo;s flow if it&amp;rsquo;s not all in one session. The question, then, is should you make an outline for your book?&lt;/p&gt;
&lt;p&gt;Yes, and yes. Even if you&amp;rsquo;re writing chapters and can&amp;rsquo;t help yourself, still keep building up an outline. It&amp;rsquo;s going to help you understand the overall plan of your book, while giving you prompts later (when the words aren&amp;rsquo;t flowing). The outline serves as the bones of your work (when it really does need bones). Without this skeleton, the writing tends to lack a cohesive narrative and structure. And, trust me, if you&amp;rsquo;re having to rearrange chapters after writing them, you make want to give up or you&amp;rsquo;ll be in the edit stage forever.&lt;/p&gt;
&lt;p&gt;What does an outline look like? Here&amp;rsquo;s a very basic template you might use:&lt;/p&gt;
&lt;blockquote&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;Title Ideas
Title 1
Title 2

a) Introduction
-&amp;gt; My authority
-&amp;gt; Why this book is important

1) Chapter 1
-&amp;gt; Guts

2) Chapter 2
-&amp;gt; More guts

b) Conclusion
-&amp;gt; In summary, this is what I&amp;#39;ve been talking about&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;/blockquote&gt;
&lt;p&gt;Just put that into a text file and start building your book. There are better ways and better tools to do this, but that is enough. it doesn&amp;rsquo;t have to have fancy lines and 3D graphics. You&amp;rsquo;ll write more than two chapters, of course. The conclusion won&amp;rsquo;t be so dry and hokey (I hope). And, the title names will build on themselves. For one book idea I worked on, I had more than 10 titles by the time an outline took the shape of a book. So far, my book output looks like this.&lt;/p&gt;
&lt;p&gt;So, please make an online. Try to make one at least. You&amp;rsquo;ll find that it helps.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>I was Suspended by Facebook</title>
      <link>https://cwl.cc/2025/10/i-was-suspended-by-facebook.html/</link>
      <pubDate>Mon, 20 Oct 2025 08:50:29 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/10/i-was-suspended-by-facebook.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2013/08/Facebook-Logo.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
As I was merrily Facebook&amp;rsquo;ing, the site redirected me to a big, awful, center-page modal that loudly proclaimed &lt;strong&gt;WE HAVE SUSPENDED YOUR ACCOUNT&lt;/strong&gt;. The abruptness of this immediately had me thinking it was some sort of redirect injection or at least a kind of malware. Like, it had to be. There&amp;rsquo;s no way Facebook just chops off longtime accounts like this, right? Wrong.
&lt;img src=&#34;https://cwl.cc/2025/10/FBSuspended2.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;This happened just about two seconds after posting a link to a &lt;a href=&#34;https://bayobserver.ca/small-landlords-organization-joins-discussion-on-ontario-works-fraud-in-hamilton/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;news 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; at Bay Observer. It was using a redirector that I&amp;rsquo;ve used &lt;a href=&#34;solo.ca/share&#34;&gt;before&lt;/a&gt;. I could sense that Facebook considers this a news site, and the timing being what it was, that&amp;rsquo;s why this suspension. Consider where we are as a web community: The mere act of linking to a news story (for political reasons or whatever) is enough to be forcefully removed from someone site; automagically. This basically breaks just about everything the web was created to do, namely web linking in the Hypertext Transfer Protocol &lt;a href=&#34;https://www.w3.org/Protocols/HTTP/AsImplemented.html&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;HTTP/0.9&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;. We need to bring &lt;a href=&#34;https://home.cern/science/computing/birth-web/short-history-web&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;back open standards&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 automagically cancel Facebook.&lt;/p&gt;
&lt;p&gt;However, as &lt;a href=&#34;https://craphound.com/shop/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;enshittified&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 Facebook has become, the page that shows my account being suspended explains nothing about why. This is likely due to some stupid algorithm that, instead of saying &amp;ldquo;please don&amp;rsquo;t share news stories,&amp;rdquo; has been programmed to instead seek and destroy. Sure, I&amp;rsquo;ve been on Facebook for decades, sure it&amp;rsquo;s an account that manages several pages of importance. But, gosh, Facebook, the account and, well, you aren&amp;rsquo;t &lt;em&gt;that&lt;/em&gt; important. To imagine someone&amp;rsquo;s livelihood had now just been ripped away because of a news link (or whatever else the garbage Facebook thinks is not following their utterly vague &amp;ldquo;community standards&amp;rdquo;).&lt;/p&gt;
&lt;p&gt;So, I appealed. Why not.&lt;/p&gt;
&lt;p&gt;First, they ask you to verify a phone number, so I did that. Then, they ask for a selfie. Since I&amp;rsquo;m at my computer, that was not possible, so I took a photo from my phone, moved it over to the computer and gave it to Facebook. It was time to launch an &amp;ldquo;appeal.&amp;rdquo;
&lt;img src=&#34;https://cwl.cc/2025/10/FBSuspended.jpg&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;What&amp;rsquo;s interesting here is that if who or whatever nimrod over there decides I&amp;rsquo;ve failed some test, I will not get my account back, never know why it was taken away, and this will be permanent. For once, I&amp;rsquo;m rooting for Facebook make the right call on this one. Make me a happy camper and take your shitty site out of my life, nonconsensually of course.
&lt;img src=&#34;https://cwl.cc/2025/10/FBSuspended3.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ll let you know how it goes.&lt;/p&gt;
&lt;p&gt;Update: I am sad to report that Facebook has restored my account. Lord only knows what the f*uck they&amp;rsquo;re doing over there.
&lt;img src=&#34;https://cwl.cc/2025/10/FBRestored.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;After the restoration, I was asked if I had any comments. Okay stupid Facebook, you don&amp;rsquo;t have to tell me what&amp;rsquo;s going on, but somehow you want to know &lt;strong&gt;my brain droppings?&lt;/strong&gt; Sure.
&lt;img src=&#34;https://cwl.cc/2025/10/FBComment.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s get back to doomscrolling!&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>The Remote Access Tool Problem (Starring ScreenConnect)</title>
      <link>https://cwl.cc/2025/10/the-remote-access-tool-problem-starring-screenconnect.html/</link>
      <pubDate>Sat, 18 Oct 2025 10:32:13 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/10/the-remote-access-tool-problem-starring-screenconnect.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2014/08/ScreenConnect_logo.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
Remote access is something of an occasional tool for most people. They might use it to help mom find that website, but for us in I.T., this is a fundamental tool, nearly as important as a web browser or a file manager. I&amp;rsquo;ve written about other tools, such as Logmein, that &lt;a href=&#34;https://cwl.cc/2014/01/logmein-abandons-its-free-product-users.html&#34;&gt;abandoned it&amp;rsquo;s free users&lt;/a&gt;, only to jack up the price of its flagship product; for some by more than $6,000 a year. But, here&amp;rsquo;s the thing, spit on your users, turn your back on them if you want, but if gouging is your thing while outfitting a &lt;a href=&#34;https://commodorebuilders.com/portfolio/corporate-interior/logmein/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;swanky headquarters&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 all the bells and whistles. Come on.&lt;/p&gt;
&lt;p&gt;And this is an overall trend of super-expensive remote access software has intensified. For Teamviewer, you&amp;rsquo;ll pay $123 a month or more for a reasonably allotted license. Most major remote access tools are very expensive while, thankfully some of the open source tools have been maturing. Why this is not fundamentally a feature inside of the Windows operating system (outside of the 1990s era RDP admin crap), is beyond me. This should be a teamviewer-esque utility that we can enable with two-factor on every Windows box.&lt;/p&gt;
&lt;p&gt;Enter ScreenConnect, something we&amp;rsquo;ve utilized for many years. It&amp;rsquo;s a tight package of tools and it gets the job done. If I recall, we&amp;rsquo;d used the tool when it was reasonably priced. I&amp;rsquo;ve written about how to &lt;a href=&#34;https://cwl.cc/2014/08/installing-screenconnect-on-an-amazon-ami-micro-instance.html&#34;&gt;install and use Screenconnect&lt;/a&gt; too. It&amp;rsquo;s something that has preformed solidly, even though hosting was forced onto the Windows platform, away from Linux, but that was a minor bump in the road.&lt;/p&gt;
&lt;p&gt;For ScreenConnect, CWL has paid almost $5,000 over the last five for the pleasure of using the software. This, keeping in mind, is self-hosted. So Connectwise, the company that makes ScreenConnect, does not need to provide any hosting servers, no CPU cycles, no bandwidth, nothing but the software. Okay, maybe this software is &amp;ldquo;worth it,&amp;rdquo; but what you should know also is security updates are wrapped into the update model. So, your safety while hosting the software is pay-to-play; and &lt;strong&gt;wow is this unsafe&lt;/strong&gt;. We learned this lesson back in early 2024 when a major &lt;a href=&#34;https://censys.com/connectwise-screenconnect-cve-2024-1709-cve-2024-1708/&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;authentication bypass vulnerability&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; popped up. If you were not paying the many thousands asked to keep the product current, you would not get an on-premise security update. Well, the backlash was intense and Connectwise relented, offering an update at the time for free (It didn&amp;rsquo;t matter for us because we&amp;rsquo;d already paid).&lt;/p&gt;
&lt;p&gt;When I think about this tool that makes many thousands off incremental updates but offers no Linux version, no docker version, limited support for anything other than what is packaged in ConnectWise&amp;rsquo;s suit of tools. These folks don&amp;rsquo;t seem to innovate much because they don&amp;rsquo;t have to.&lt;/p&gt;
&lt;p&gt;Recently, we found ourselves in a tricky spot. Our server was eligible for an update to 25.1.7.9171, but ScreenConnect had released versions that blew past that, sitting at a latest version of 25.1.10.9197. Our current version was 24.4.4.9118, so while in the process of migrating to something new, we wanted to keep this as updated as possible. However, on the &lt;a href=&#34;https://www.screenconnect.com/download&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;download 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;, the only version they provided was 25.1.10.9197, something we&amp;rsquo;d have to pay $1,624.18 USD to get as a stop-gap. All we needed was the newest version possible (for now). ScreenConnect used to always provide &lt;a href=&#34;https://screenconnect.connectwise.com/download/archive&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;recent installer releases&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 another page - but that was ripped off their site leaving a 404 error.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/03/sc-archives.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;I emailed the company to get the most recent release possible (before the current one). The request was simple,&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;Can you please provide a link for build 25.1.7.9171 (or the most recent release that was no higher than build 25.1.7.9171) of ScreenConnect? I don&amp;rsquo;t see it on your site anywhere. I would like to update my server to the latest possible for now.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Gosh, not simple at all though. Throughout he many replies, there was not one straight answer. The first one being an inane regurgitation of &amp;ldquo;Download it here,&amp;rdquo; even though I had explicitly said it wasn&amp;rsquo;t available on their site:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/03/sc-reply1-1024x366.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;I replied again trying to further clarify that this didn&amp;rsquo;t answer my question and that I simply needed the version I was requesting. That it&amp;rsquo;s always been the practice of the company to make available recent releases. The next reply was somehow worse than the first:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/03/sc-reply2x-1024x371.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;So, no answer to my my request after several replies. Worse than that, I had no idea if they were even clear about what I wanted or were willing to fulfill the &lt;strong&gt;simple request&lt;/strong&gt; of obtaining the newest version of the software we paid for. After several messages and a new support ticket, my request was finally fielded by someone who apparently had the answer:&lt;/p&gt;
&lt;p&gt;It did turn out I had the newest possible release. The newest version had simply leapfrogged past my eligibility, which itself seems questionable, but there were no releases in the middle I could use. This, of course, could have been the first response from them, but it wasn&amp;rsquo;t. It was an auspicious end for us and hosting this company&amp;rsquo;s software. The net-effect here is that we&amp;rsquo;ve had enough with ScreenConnect. We&amp;rsquo;re moving away from the platform.&lt;/p&gt;
&lt;h3&gt;Another Security Hack&lt;span class=&#34;hx:absolute hx:-mt-20&#34; id=&#34;another-security-hack&#34;&gt;&lt;/span&gt;
    &lt;a href=&#34;#another-security-hack&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;By late April, I&amp;rsquo;d understood that my instance was getting older by the day. While moving devices off the platform, a noted arrived from Connectwise about a security issue.&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;ConnectWise has issued a new security bulletin on our Trust Center concerning a security fix to ScreenConnect versions 25.2.3 and earlier. ScreenConnect versions 25.2.3 and earlier versions can potentially be subject to ViewState code injection attacks. This notice contained a somewhat vague reference to an out-of-band update from the group. This mention looked like this:&lt;/p&gt;

&lt;/blockquote&gt;
&lt;blockquote&gt;
  &lt;p&gt;If you elect not to renew maintenance, we have released free security patches for select older versions dating back to release 23.9. Versions of ScreenConnect can be downloaded from the &lt;a href=&#34;https://screenconnect.com/download/archive&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ConnectWise 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;. The updated releases will have a publish date of April 22nd, 2025, or later. Partners on a version older than 23.9 will be able to upgrade to 23.9 at no additional charge.&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;I wasn&amp;rsquo;t the only one unsure whether there might be an update for those of us not without maintenance. Looking at the referenced website, there was download for 24.4.10.9243, which would upgrade me past the current 24.4.4.9118. I downloaded this and started the upgrade process and was presented with this message from the installer:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/04/sc-update-license.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;At this point, it wasn&amp;rsquo;t clear if running this update would kill my active license. I wasn&amp;rsquo;t the only one, as other&amp;rsquo;s on Reddit were unsure too. Few were willing to take the chance. Since I could create a backup in case something went wrong, I just did the update. Thankfully, it didn&amp;rsquo;t mess up the current license and the update went through:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/04/sc-version-1024x608.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;Our migration off Screenconnect continues. The landscape of these tools seems to narrow more and more. Is there a Canadian company that can build a remote access tool? Be sure to let me know if you&amp;rsquo;re running an instance of the software.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Installing ZimaOS on Vmware Workstation</title>
      <link>https://cwl.cc/2025/10/installing-zimaos-on-vmware-workstation.html/</link>
      <pubDate>Sat, 04 Oct 2025 15:07:19 -0400</pubDate>
      
      <guid>https://cwl.cc/2025/10/installing-zimaos-on-vmware-workstation.html/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/zimalogo.png&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;
You want to install &lt;a href=&#34;https://www.zimaspace.com/zimaos&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Zima OS&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 want to try it in a virtual machine first. More specifically, in a &lt;a href=&#34;https://support.broadcom.com/group/ecx/free-downloads&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Vmware Workstation&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; virtual machine. I looked for more out there, and couldn&amp;rsquo;t find much in a Google search - I think some of that has to do with prior versions of ZimaOS (at least 1.0) released with a pre-made drive image for Workstation. But not for a long time. Its just a drive image intended for a USB drive and not an .iso file.&lt;/p&gt;
&lt;p&gt;The base of these instructions are for Vmware Workstation&lt;br&gt;
17.6.3 build-24583834 and the ZimaOS 1.5.0 installer. New versions will exist and these details may vary.&lt;/p&gt;
&lt;p&gt;Some of this may be universal to other platforms, but I really wanted to get this working on Vmware Workstation (this time around). Here&amp;rsquo;s what you do:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Download the &lt;a href=&#34;https://www.zimaspace.com/zimaos&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;ZimaOS installation image&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 going to come at an .img file - in my case zimaos-x86_64-1.5.0_installer.img. You aren&amp;rsquo;t going to place this on a USB disk, instead&amp;hellip;&lt;/li&gt;
&lt;li&gt;Grab the free &lt;a href=&#34;https://www.starwindsoftware.com/starwind-v2v-converter&#34;target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;StartWind V2V Converter&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&amp;rsquo;m using 9.0.1.722) and convert (local file) with the above .img file to (local file) and chose VDMK. I would suggest the pre-allocated ESXi image in case you want to take this elsewhere.&lt;/li&gt;
&lt;li&gt;Create a new virtual machine and pay close attention to these settings:&lt;br&gt;
- In the VM Settings, Advanced and make sure the Firmware Type is set to UEFI.&lt;br&gt;
- Add the first drive, the VDMK you created in step 2 and chose to convert it (if asked). Add this as IDE 0:0. This will boot first by default.&lt;br&gt;
- Add a second drive with more than 8GB space - I would suggest 40GB, but if set to 8GB or less, the install will fail. Also, the drive won&amp;rsquo;t be recognized if it&amp;rsquo;s a type SCSI, so perhaps use NVME or SATA.&lt;/li&gt;
&lt;li&gt;Boot into the installer, select the data drive and start the installation.&lt;/li&gt;
&lt;li&gt;Once installed, look to the console for the IP your OS and load that in a web browser.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Some notes:&lt;br&gt;
- The installer creates the data space for CasaOS, and if it cannot do so, your VM will not boot. You&amp;rsquo;ll get various error messages including a timeout waiting for casaos_data.&lt;br&gt;
- After installation, set the boot order to prefer the non installer or remove that drive altogether&lt;/p&gt;
&lt;p&gt;Now, with it running, if you have an ESXi server and want to move it there, you can do that pretty easily with the Vmware Vsphere Converter Tool. If you run into issues, there is a grub boot loader you can get and a rescue shell (just keep pressing down arrow while in focus). With this shell, use the &lt;code&gt;lsblk -f &lt;/code&gt;command to check and see if the data mount point has been created.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/zima02.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;All goes well, you&amp;rsquo;ll have this great OS running in your VMWare space that you can test as you need. I have cloned it to ESXi also, and it works fine too. I would love to hear from others who might try this process. Your feedback will help me refine this post.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cwl.cc/2025/10/zima01.webp&#34; alt=&#34;&#34;  loading=&#34;lazy&#34; /&gt;&lt;/p&gt;

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