<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
    <title>N7KJL</title>
    <link href="https://n7kjl.net/feed.xml" rel="self" />
    <link href="https://n7kjl.net" />
    <updated>2025-07-15T21:28:22-07:00</updated>
    <author>
        <name>Kristopher Large</name>
    </author>
    <id>https://n7kjl.net</id>

    <entry>
        <title>GardenIO</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/gardenio/"/>
        <id>https://n7kjl.net/gardenio/</id>
            <category term="web"/>

        <updated>2025-07-15T21:27:58-07:00</updated>
            <summary>
                <![CDATA[
                    GardenIO: A Casual Garden Management Platform Announcing the release of GardenIO, a partially thought through web and mobile application designed to help gardeners track their&hellip;
                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <h3>GardenIO: A Casual Garden Management Platform</h3>
<p>Announcing the release of GardenIO, a partially thought through web and mobile application designed to help gardeners track their plants, manage plantings, and optimize their garden planning. It's not feature complete or even fully validated...but feel free to play with it.</p>
<h3>Key Features</h3>
<p><strong>Plant Library Management: </strong>Build and maintain a comprehensive database of plant varieties with detailed growing information, images, and seasonal planting guides.</p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/45//gallery/Screenshot-from-2025-07-15-21-25-52.png" data-size="1123x796"><img loading="lazy" src="https://n7kjl.net/media/posts/45//gallery/Screenshot-from-2025-07-15-21-25-52-thumbnail.webp" alt="" width="768" height="544"></a></figure>
</div></div>
<p><strong>Planting Tracking: </strong>Record and monitor individual plantings with location-based organization, growth stage tracking, and harvest recording.<br><br><strong>Multi-Garden Support: </strong>Create and manage multiple gardens with role-based collaboration features for shared gardening projects.<br><br><strong>Cross-Platform Access:</strong> Use the web application on any device or install the native Android app for mobile access with offline capabilities.<br><br><strong>Smart Dashboard:</strong> Get an overview of active plantings, upcoming harvests, and sprouting schedules in one centralized view.</p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/45//gallery/Screenshot-from-2025-07-15-21-25-16.png" data-size="1128x825"><img loading="lazy" src="https://n7kjl.net/media/posts/45//gallery/Screenshot-from-2025-07-15-21-25-16-thumbnail.webp" alt="" width="768" height="562"></a></figure>
</div></div>
<h3>Technical Architecture</h3>
<p>GardenIO is built with modern web technologies:</p>
<ul>
<li>Frontend: React with TypeScript, Tailwind CSS, and shadcn/ui components</li>
<li>Backend: Node.js with Express and PostgreSQL database</li>
<li>Mobile: Capacitor for cross-platform mobile deployment</li>
<li>Deployment: Docker containerization with GitHub Actions CI/CD</li>
</ul>
<p>The application supports both self-hosted deployments and cloud instances.</p>
<h3>Getting Started</h3>
<p>GardenIO is open source and available on GitHub. You can deploy your own instance using Docker Compose and download/install the Android app from GitHub releases.</p>
<h3>Why I Built This</h3>
<p><br>Mostly just to play around with the idea. Where possible I prefer to self-host applications and I wasn't finding existing options that met my needs. </p>
<h3>Open Source</h3>
<p><br>GardenIO is released under the MIT license and welcomes contributions from the gardening and developer communities. Whether you're interested in adding features, reporting bugs, or improving documentation, feel free.<br><br>Visit the <a href="https://github.com/klarge/GardenIO">Github Repo</a> to get started, download the latest release, or contribute to the project.</p>
            ]]>
        </content>
    </entry>
    <entry>
        <title>2025 RAV4 Ham Radio Install</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/2025-rav4-ham-radio-install/"/>
        <id>https://n7kjl.net/2025-rav4-ham-radio-install/</id>
        <media:content url="https://n7kjl.net/media/posts/41/PXL_20250113_000239184.jpg" medium="image" />
            <category term="radio"/>
            <category term="interests"/>

        <updated>2025-01-13T20:49:50-08:00</updated>
            <summary>
                <![CDATA[
                        <img src="https://n7kjl.net/media/posts/41/PXL_20250113_000239184.jpg" alt="" />
                    <p>I recently installed my Yaesu FTM-500D in my 2025 Toyota Rav4 Hybrid Woodland Edition. </p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                    <p><img src="https://n7kjl.net/media/posts/41/PXL_20250113_000239184.jpg" class="type:primaryImage" alt="" /></p>
                <p>I recently installed my Yaesu FTM-500D in my 2025 Toyota Rav4 Hybrid Woodland Edition. </p>

<h2>Radio Head</h2>
<p>I was able to mount the radio head into an open storage space on the dashboard. I created and printed a <a href="https://n7kjl.net/rav4-bracket-clip.stl">3D bracket </a>that screws onto the back of the radio head and the whole unit firmly clicks into place. </p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_193920057.jpg" data-size="6144x8160"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_193920057-thumbnail.webp" alt="Yaesu mounted" width="768" height="1020"></a>
<figcaption>Yaesu mounted</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/mic-mount.png" data-size="1048x923"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/mic-mount-thumbnail.webp" alt="Mic mount" width="768" height="676"></a>
<figcaption>Mic Mount</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/rav4-radio-bracket.png" data-size="623x638"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/rav4-radio-bracket-thumbnail.webp" alt="3D Model of the bracket" width="623" height="638"></a>
<figcaption>3D Model of the bracket</figcaption>
</figure>
</div></div>
<h2>Radio Body</h2>
<p>I mounted the radio body in the trunk with command strips. In the future, I'm considering moving it inside of the plastic molding to better conceal and protect the radio.</p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="1">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/radio-body-mount-2.png" data-size="1299x1019"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/radio-body-mount-2-thumbnail.webp" alt="Yaesu Radio Body Mounted" width="768" height="602"></a>
<figcaption>Yaesu Radio Body Mounted</figcaption>
</figure>
</div></div>
<h2>Cabling</h2>
<p>The radio head connects to the body with standard (thin-run) CAT-6 cable, which I was able to run under the cargo floor mat, then through the driver-side cable runs. </p>
<p>The 12v battery in the Rav4 is located in the rear cargo area, so I connected the radio directly to the battery with 10AWG wire including an inline 30A fuse. </p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="2">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_205042834-2.jpg" data-size="6144x8160"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_205042834-2-thumbnail.webp" alt="" width="768" height="1020"></a></figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/PXL_20250113_000239184-2.jpg" data-size="8160x6144"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/PXL_20250113_000239184-2-thumbnail.webp" alt="" width="768" height="578"></a></figure>
</div></div>
<h2>Antenna</h2>
<p>Modified <a href="https://www.hamradio.com/detail.cfm?pid=H0-000037" target="_blank" rel="noopener noreferrer">Diamond NMO lip mount </a>attached to an existing gap on the roof rails. I've since added a grounding wire.</p>
<p>Using a <a href="https://compactenna.com/#2M220440" target="_blank" rel="noopener noreferrer">7.5" 2M/220/440 CompacTenna</a>. I'll be bonding additional surfaces with tinned copper mesh to further improve SWR. </p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_021037970.jpg" data-size="8160x6144"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_021037970-thumbnail.webp" alt="" width="768" height="578"></a></figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_201149586.jpg" data-size="6144x8160"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_201149586-thumbnail.webp" alt="" width="768" height="1020"></a></figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_205031349.jpg" data-size="6144x8160"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_205031349-thumbnail.webp" alt="" width="768" height="1020"></a></figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_205505860.jpg" data-size="8160x6144"><img loading="lazy" src="https://n7kjl.net/media/posts/41/gallery/PXL_20250111_205505860-thumbnail.webp" alt="" width="768" height="578"></a></figure>
</div></div>
<h2> </h2>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Batch Rename on Linux Mint</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/batch-rename-on-linux-mint/"/>
        <id>https://n7kjl.net/batch-rename-on-linux-mint/</id>

        <updated>2024-09-07T16:26:15-07:00</updated>
            <summary>
                <![CDATA[
                    I recently discovered an easy-to-overlook feature of Linux Mint, which facilitates batch file/directory renaming. Highlight the files / directories you would like to rename: Right&hellip;
                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p>I recently discovered an easy-to-overlook feature of Linux Mint, which facilitates batch file/directory renaming. </p>
<ol>
<li>Highlight the files / directories you would like to rename:<br><figure class="post__image"><img loading="lazy"  src="https://n7kjl.net/media/posts/36/rename-1.jpg" alt="" width="593" height="263" sizes="(min-width: 920px) 703px, (min-width: 700px) calc(82vw - 35px), calc(100vw - 81px)" srcset="https://n7kjl.net/media/posts/36/responsive/rename-1-xs.webp 300w ,https://n7kjl.net/media/posts/36/responsive/rename-1-sm.webp 480w ,https://n7kjl.net/media/posts/36/responsive/rename-1-md.webp 768w ,https://n7kjl.net/media/posts/36/responsive/rename-1-lg.webp 1024w"></figure></li>
<li>Right click and select "Rename":<br><figure class="post__image"><img loading="lazy"  src="https://n7kjl.net/media/posts/36/rename-2.jpg" alt="" width="593" height="373" sizes="(min-width: 920px) 703px, (min-width: 700px) calc(82vw - 35px), calc(100vw - 81px)" srcset="https://n7kjl.net/media/posts/36/responsive/rename-2-xs.webp 300w ,https://n7kjl.net/media/posts/36/responsive/rename-2-sm.webp 480w ,https://n7kjl.net/media/posts/36/responsive/rename-2-md.webp 768w ,https://n7kjl.net/media/posts/36/responsive/rename-2-lg.webp 1024w"></figure></li>
<li>Set filters / changes (here I'm removing the last 6 digits of the name):<br><figure class="post__image"><img loading="lazy"  src="https://n7kjl.net/media/posts/36/rename-3.jpg" alt="" width="592" height="443" sizes="(min-width: 920px) 703px, (min-width: 700px) calc(82vw - 35px), calc(100vw - 81px)" srcset="https://n7kjl.net/media/posts/36/responsive/rename-3-xs.webp 300w ,https://n7kjl.net/media/posts/36/responsive/rename-3-sm.webp 480w ,https://n7kjl.net/media/posts/36/responsive/rename-3-md.webp 768w ,https://n7kjl.net/media/posts/36/responsive/rename-3-lg.webp 1024w"></figure></li>
<li>Profit:<br><figure class="post__image"><img loading="lazy"  src="https://n7kjl.net/media/posts/36/rename-4.jpg" alt="" width="593" height="246" sizes="(min-width: 920px) 703px, (min-width: 700px) calc(82vw - 35px), calc(100vw - 81px)" srcset="https://n7kjl.net/media/posts/36/responsive/rename-4-xs.webp 300w ,https://n7kjl.net/media/posts/36/responsive/rename-4-sm.webp 480w ,https://n7kjl.net/media/posts/36/responsive/rename-4-md.webp 768w ,https://n7kjl.net/media/posts/36/responsive/rename-4-lg.webp 1024w"></figure></li>
</ol>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Gaming on Linux 2024</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/gaming-on-linux/"/>
        <id>https://n7kjl.net/gaming-on-linux/</id>
            <category term="technology"/>
            <category term="interests"/>

        <updated>2024-08-11T07:25:52-07:00</updated>
            <summary>
                <![CDATA[
                    <p>For years I've dual-booted Windows and some form of Linux, relying on Microsoft for gaming, but I'm pleased to say things are finally at a point where I can fully commit. With all of the work Valve has done to Steam and Proton, most games from my library are easy to install and perform well. Additionally, Valve's use of Proton on the Steam Deck seems to provide enough motivation for them to continue maintaining it. </p>
<p>The last two titles I wanted to ensure ran properly were Flight Simulator and Age of Empires IV (ironically, both Microsoft games):</p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p>For years I've dual-booted Windows and some form of Linux, relying on Microsoft for gaming, but I'm pleased to say things are finally at a point where I can fully commit. With all of the work Valve has done to Steam and Proton, most games from my library are easy to install and perform well. Additionally, Valve's use of Proton on the Steam Deck seems to provide enough motivation for them to continue maintaining it. </p>
<p>The last two titles I wanted to ensure ran properly were Flight Simulator and Age of Empires IV (ironically, both Microsoft games):</p>

<h3>AoE IV</h3>
<p>Install was simple and game launched successfully. I did run into a few issues described below, but is otherwise running smoothly. </p>
<p><a href="https://www.protondb.com/app/1466860" target="_blank" rel="noopener noreferrer">ProtonDB article for AoE IV</a></p>
<ul>
<li>Mouse cursor didn't line up with what was selected 
<ul>
<li>Resolved by changing to Full Screen mode</li>
</ul>
</li>
<li>There's a warning that my GPU may not be able to handle high settings
<ul>
<li>My RTX3090 is otherwise being detected, used and performing, so just ignore it</li>
</ul>
</li>
<li>Changing resolution worked in menus, but games looked to be low resolution
<ul>
<li>Had to change the "Game Resolution Scale" slider from 50% to 100%</li>
</ul>
</li>
<li>Didn't use any custom Launch Options</li>
</ul>
<h3>MS Flight Simulator</h3>
<p><a href="https://www.protondb.com/app/1250410" target="_blank" rel="noopener noreferrer">ProtonDB article for Flight Simulator</a></p>
<ul>
<li>Simple install, ran and performed well</li>
<li>Logitech joystick was automatically detected and worked as expected</li>
<li>Didn't use any custom Launch Options</li>
</ul>
<p> </p>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Half-Globe with Meridians</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/half-globe-with-meridians/"/>
        <id>https://n7kjl.net/half-globe-with-meridians/</id>
            <category term="interests"/>
            <category term="design"/>

        <updated>2024-04-13T21:50:49-07:00</updated>
            <summary>
                <![CDATA[
                    <p>From time to time I enjoy designing logos, or trying to anyways. It's an interesting challenge to come up with something recognizable, simple and meaningful. Recently I kept thinking of a logo that I knew I had seen but couldn't remember where. </p>
<p>I knew it was a regular globe symbol with half of the meridians blacked out and that it was in some archival-type photo. Finally tracked it down...</p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p>From time to time I enjoy designing logos, or trying to anyways. It's an interesting challenge to come up with something recognizable, simple and meaningful. Recently I kept thinking of a logo that I knew I had seen but couldn't remember where. </p>
<p>I knew it was a regular globe symbol with half of the meridians blacked out and that it was in some archival-type photo. Finally tracked it down...</p>

<p>I eventually remembered that the logo was from a rather interesting YouTube video I watched called <span style="text-decoration: underline;"><a href="https://youtu.be/gwqzl8BNO4g?t=1073" target="_blank" rel="noopener noreferrer">Oregon's Failed Attempt at a 200-Mile Riverfront Park</a></span> by Peter Dibble, which is about the once ambitious plans for the <span style="text-decoration: underline;"><a href="https://en.wikipedia.org/wiki/Willamette_Greenway" target="_blank" rel="noopener noreferrer">Willamette Greenway</a></span>. </p>
<p>It appears to be the logo for the <span style="text-decoration: underline;"><a href="https://bensonhotel.com/" target="_blank" rel="noopener noreferrer">Benson Hotel</a></span>, where a meeting was being held to discuss the project. </p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="1">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/28/gallery/Benson-Hotel-Greenway-Screenshot-2.png" data-size="1188x760"><img loading="lazy" src="https://n7kjl.net/media/posts/28/gallery/Benson-Hotel-Greenway-Screenshot-2-thumbnail.webp" alt="Screenshot from Oregon's Failed Attempt at a 200-Mile Riverfront Park by Peter Dibble" width="768" height="491"></a>
<figcaption>Screenshot of the video with the logo</figcaption>
</figure>
</div></div>
<p>Benson Hotel doesn't seem to use the logo any longer. If I had to guess as to it's meaning, I suspect they were going for "a world-class company operating on the west coast". Made some rough mock ups of it below:</p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="2">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/28/gallery/half-globe-white.png" data-size="1024x1024"><img loading="lazy" src="https://n7kjl.net/media/posts/28/gallery/half-globe-white-thumbnail.webp" alt="Half Globe with Meridians - White" width="768" height="768"></a>
<figcaption>Half Globe with Meridians - White</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/28//gallery/half-globe.png" data-size="1024x1024"><img loading="lazy" src="https://n7kjl.net/media/posts/28//gallery/half-globe-thumbnail.webp" alt="Half Globe with Meridians - Black" width="768" height="768"></a>
<figcaption>Half Globe with Meridians - Black</figcaption>
</figure>
</div></div>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Cleaning Watch Crystal Interior</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/cleaning-watch-face/"/>
        <id>https://n7kjl.net/cleaning-watch-face/</id>
            <category term="watches"/>
            <category term="interests"/>

        <updated>2024-03-11T19:26:56-07:00</updated>
            <summary>
                <![CDATA[
                    <p>Out of my various watches, more often than not I end up wearing my Seiko SKX007. However I recently noticed a speck of dust on the inside of the Hardlex crystal, just above the 2 index. I suspect it worked it's way in there the last time fiddled with the 7S26C movement.</p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p>Out of my various watches, more often than not I end up wearing my Seiko SKX007. However I recently noticed a speck of dust on the inside of the Hardlex crystal, just above the 2 index. I suspect it worked it's way in there the last time fiddled with the 7S26C movement.</p>

<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="1">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/skx007-speck.png" data-size="701x706"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/skx007-speck-thumbnail.webp" alt="" width="701" height="706"></a></figure>
</div></div>
<p>I'm an absolute amateur when it comes to working on watches, so none of this should be taken as a tutorial, but it's always fun taking things apart...and try to put them back together again. </p>
<p>Plan of attack:</p>
<ol>
<li>Remove bracelet</li>
<li>Remove case back</li>
<li>Remove crown</li>
<li>Remove movement</li>
<li>Dust off the crystal with compressed air</li>
<li>Reassemble </li>
</ol>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/PXL_20240331_201558235-Copy.jpg" data-size="1080x1080"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/PXL_20240331_201558235-Copy-thumbnail.webp" alt="Remove bracelet" width="768" height="768"></a>
<figcaption>Remove bracelet</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035518535-Copy.jpg" data-size="1080x1080"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035518535-Copy-thumbnail.webp" alt="Remove case back" width="768" height="768"></a>
<figcaption>Remove case back</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035616864-Copy.jpg" data-size="1080x1080"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035616864-Copy-thumbnail.webp" alt="Remove case back...needs a thorough cleaning" width="768" height="768"></a>
<figcaption>Remove case back...needs a thorough cleaning</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035756257-Copy.jpg" data-size="1080x1080"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035756257-Copy-thumbnail.webp" alt="Press down on this lever to remove the crown" width="768" height="768"></a>
<figcaption>Press down on this lever to remove the crown</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035912784-Copy.jpg" data-size="1080x1080"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_035912784-Copy-thumbnail.webp" alt="Carefully remove the movement" width="768" height="768"></a>
<figcaption>Carefully remove the movement</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_040114169-Copy.jpg" data-size="1080x1080"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_040114169-Copy-thumbnail.webp" alt="Dust the crystal with compressed air" width="768" height="768"></a>
<figcaption>Dust the crystal with compressed air</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_041745679-Copy.jpg" data-size="1080x1080"><img loading="lazy" src="https://n7kjl.net/media/posts/23/gallery/PXL_20240403_041745679-Copy-thumbnail.webp" alt="Reassemble" width="768" height="768"></a>
<figcaption>Reassemble</figcaption>
</figure>
</div></div>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Introduction to Meshtastic</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/meshtastic/"/>
        <id>https://n7kjl.net/meshtastic/</id>
            <category term="radio"/>

        <updated>2024-03-10T19:00:00-07:00</updated>
            <summary>
                <![CDATA[
                    <p><a href="https://meshtastic.org/" target="_blank" rel="noopener noreferrer">Meshtastic</a> is an open-source project that facilitates encrypted off-grid text communication between individuals and groups using low-cost radios. </p>
<p>I've played with it intermittently for a few years but recently have gotten more involved. Thanks to talented devs and a passionate user-base, the community has grown significantly and the project matured.</p>
<p>I think it's a great way to learn about radio technologies, open-source projects and deploy a fairly inexpensive backup communication system across communities.</p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p><a href="https://meshtastic.org/" target="_blank" rel="noopener noreferrer">Meshtastic</a> is an open-source project that facilitates encrypted off-grid text communication between individuals and groups using low-cost radios. </p>
<p>I've played with it intermittently for a few years but recently have gotten more involved. Thanks to talented devs and a passionate user-base, the community has grown significantly and the project matured.</p>
<p>I think it's a great way to learn about radio technologies, open-source projects and deploy a fairly inexpensive backup communication system across communities.</p>

<h2>How Does It Work?</h2>
<p>Meshtastic is a software project creating firmware that can be installed on off-the-shelf <a href="https://en.wikipedia.org/wiki/LoRa" target="_blank" rel="noopener noreferrer">LoRa </a>radios and apps to interface with the radios. These radios are inexpensive, easily programmed and readily available online. Conveniently, since LoRa is within the <a href="https://en.wikipedia.org/wiki/ISM_radio_band" target="_blank" rel="noopener noreferrer">ISM Bands</a>, no license is required (at least in the US). </p>
<p>Once the firmware is installed, two radios can communicate with each other using the public channel or private encrypted channels. However, the "Mesh" part of the name is where things get interesting. Each radio also acts as a repeater, relaying messages that it receives (even if it can't decrypt them). These messages typically have a hop limit of three and upon relaying a signal, the radio will decrement the hop counter by one. This allows a distributed group of unaffiliated users to potentially cover a city with a relatively small amount of devices. </p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/Meshtastic-diagram.png" data-size="988x711"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/Meshtastic-diagram-thumbnail.webp" alt="" width="768" height="553"></a></figure>
</div></div>
<p>As with everything in radio, the height and quality of your antenna is what primarily dictates range. The LoRa radios transmit with less than 1 watt, however the <a href="https://meshtastic.org/docs/overview/range-tests/" target="_blank" rel="noopener noreferrer">current range record</a> between two Meshtastic devices is 254km! Of course, there are many additional factors that come into play and realistically you can expect a few kilometers. </p>
<h2>Use Cases</h2>
<p>As with most open-source projects, people have different reasons for getting involved. The obvious use for Meshtastic is establishing an off-grid communications system between friends/family, <a href="https://en.wikipedia.org/wiki/Community_emergency_response_team" target="_blank" rel="noopener noreferrer">CERT</a> or groups operating in areas without infrastructure. In that capacity it can provide provide redundancy in the event that cell towers or satellites are unavailable. However the project is also an opportunity to learn about radio, 3D modeling/printing, software development, community organization and more. </p>
<h2>...Speaking of Cases</h2>
<p>The radios typically don't come with a case of any sort so users often times 3D print their own or buy printed cases from the community. I'm currently using cases I printed designed by <a href="https://www.printables.com/@TonyG/models" target="_blank" rel="noopener noreferrer">TonyG, available on Printables</a> </p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="5">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/PXL_20240311_011450847.jpg" data-size="3072x4080"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/PXL_20240311_011450847-thumbnail.webp" alt="RAK19007 in case by TonyG" width="768" height="1020"></a>
<figcaption>RAK19007 in case by TonyG</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_031057976-2.jpg" data-size="3072x4080"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_031057976-2-thumbnail.webp" alt="RAK19007 in case by TonyG" width="768" height="1020"></a>
<figcaption>RAK19007 in case by TonyG</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_031307706-2.jpg" data-size="3072x4080"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_031307706-2-thumbnail.webp" alt="RAK19007 internals" width="768" height="1020"></a>
<figcaption>RAK19007 internals</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_031318111.jpg" data-size="4080x3072"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_031318111-thumbnail.webp" alt="RAK19007 internals" width="768" height="578"></a>
<figcaption>RAK19007 internals</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_030831925-2.jpg" data-size="4080x3072"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/PXL_20240217_030831925-2-thumbnail.webp" alt="My original T-Beams" width="768" height="578"></a>
<figcaption>My original T-Beams</figcaption>
</figure>
</div></div>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="1">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/RAK19007-Case-Printing.webp" data-size="1280x720"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/RAK19007-Case-Printing-thumbnail.webp" alt="Printing a case, designed by TonyG (on my trusty, old, cheap, MP Mini Select)" width="768" height="432"></a>
<figcaption>Printing a case, designed by TonyG (on my trusty, old, cheap, MP Mini Select)</figcaption>
</figure>
</div></div>
<h2>Adoption and Community</h2>
<p>As I mentioned, the community has grown significantly from when I first heard about it three years ago. Here in Portland Oregon there are over 100 active nodes, and there's an ongoing thread in the community's <a href="https://discord.com/invite/ktMAKGBnBs" target="_blank" rel="noopener noreferrer">Discord server</a> specifically for Oregon. </p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="1">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/4/gallery/meshtastic-map-2.png" data-size="1092x656"><img loading="lazy" src="https://n7kjl.net/media/posts/4/gallery/meshtastic-map-2-thumbnail.webp" alt="" width="768" height="461"></a></figure>
</div></div>
<p>Elsewhere on the Discord server, you'll find global conversations for support, enclosures and development. I've found everyone to be friendly and happy to help users get started or troubleshoot issues.</p>
<h2>Recommended Hardware</h2>
<p>There are a lot of radios to choose from, but they mostly break down into two main types as determined by their processor: </p>
<p>ESP32</p>
<ul>
<li><span style="color: var(--text-primary-color); font-family: var(--editor-font-family); font-size: inherit; font-weight: var(--font-weight-normal);">Cheap and readily available on Amazon</span></li>
<li><span style="color: var(--text-primary-color); font-family: var(--editor-font-family); font-size: inherit; font-weight: var(--font-weight-normal);">Tend to consume more power</span></li>
<li><span style="color: var(--text-primary-color); font-family: var(--editor-font-family); font-size: inherit; font-weight: var(--font-weight-normal);">Good for situations where they can be plugged in or recharged daily. </span></li>
</ul>
<p>nRF52</p>
<ul>
<li>In higher demand, so are sometimes out of stock</li>
<li>Far more power efficient</li>
<li>Better for solar-powered repeaters or mobile applications</li>
</ul>
<p>I'd recommend starting with the <a href="https://store.rokland.com/collections/rakwireless-products/products/rak-wireless-wisblock-meshtastic-starter-kit" target="_blank" rel="noopener noreferrer">Meshtastic Starter kit</a>, which includes a WisBlock Core RAK4631 and RAK19007 baseboard. When buying a radio, pay attention to the <a href="https://www.thethingsnetwork.org/docs/lorawan/frequencies-by-country/" target="_blank" rel="noopener noreferrer">frequency corresponding to your country</a>. In the USA, we're on 915MHz. </p>
<p><a href="https://store.rokland.com/" target="_blank" rel="noopener noreferrer">Rokland</a> is the official RAK distributer in the USA and has fast ship times however, they can sometimes have low inventory. Alternatively, you can buy from the <a href="https://www.aliexpress.com/store/1101236139?spm=a2g0o.detail.0.0.21de329dyZqNDQ" target="_blank" rel="noopener noreferrer">RAK store on AliExpress</a> though expect longer ship times. </p>
<p>Regardless of what you pick up, you'll likely want to <a href="https://meshtastic.org/docs/hardware/antennas/" target="_blank" rel="noopener noreferrer">upgrade the antenna</a>.</p>
<p> </p>
<p> </p>
<p> </p>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Missing Astronomy</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/astrophotography/"/>
        <id>https://n7kjl.net/astrophotography/</id>
            <category term="interests"/>
            <category term="astronomy"/>

        <updated>2024-02-24T14:18:00-08:00</updated>
            <summary>
                <![CDATA[
                    <p>Having grown up in Eastern Oregon I took the clear nights and dark skies for granted. Now that I'm nearing a decade of living in Portland, with its clouds and light pollution, I find myself missing the ability to step out the back door and see the universe. </p>
<p>That got me reminiscing about my beginner-level attempts at astrophotography and had a fun time going through old photos. Here are some of my favorites from EO and a few from recent years.</p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p>Having grown up in Eastern Oregon I took the clear nights and dark skies for granted. Now that I'm nearing a decade of living in Portland, with its clouds and light pollution, I find myself missing the ability to step out the back door and see the universe. </p>
<p>That got me reminiscing about my beginner-level attempts at astrophotography and had a fun time going through old photos. Here are some of my favorites from EO and a few from recent years.</p>

<p class="align-center"><strong>Equipment</strong></p>
<figure class="post__image">                <img  src="https://n7kjl.net/media/posts/15/2012-03-25-15.30.08-2.jpg" alt="Orion SkyQuest XT8 &amp; Canon 70D" width="300" height="225" sizes="(min-width: 920px) 703px, (min-width: 700px) calc(82vw - 35px), calc(100vw - 81px)" srcset="https://n7kjl.net/media/posts/15/responsive/2012-03-25-15.30.08-2-xs.webp 300w ,https://n7kjl.net/media/posts/15/responsive/2012-03-25-15.30.08-2-sm.webp 480w ,https://n7kjl.net/media/posts/15/responsive/2012-03-25-15.30.08-2-md.webp 768w ,https://n7kjl.net/media/posts/15/responsive/2012-03-25-15.30.08-2-lg.webp 1024w"></figure>     <figure class="post__image"><img loading="lazy"  src="https://n7kjl.net/media/posts/15/AT65EDQ-AtlasMount-2-2.jpg" alt="AT65EDQ and Canon 70D on Atlas mount" width="127" height="225" sizes="(min-width: 920px) 703px, (min-width: 700px) calc(82vw - 35px), calc(100vw - 81px)" srcset="https://n7kjl.net/media/posts/15/responsive/AT65EDQ-AtlasMount-2-2-xs.webp 300w ,https://n7kjl.net/media/posts/15/responsive/AT65EDQ-AtlasMount-2-2-sm.webp 480w ,https://n7kjl.net/media/posts/15/responsive/AT65EDQ-AtlasMount-2-2-md.webp 768w ,https://n7kjl.net/media/posts/15/responsive/AT65EDQ-AtlasMount-2-2-lg.webp 1024w"></figure>
<p class="align-center"><strong>Solar System</strong></p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="4">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/2012-Transit-of-Venus.png" data-size="950x887"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/2012-Transit-of-Venus-thumbnail.webp" alt="" width="768" height="717"></a>
<figcaption>2012 Transit of Venus</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/2017-Total-Solar-Eclipse.JPG" data-size="5472x3648"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/2017-Total-Solar-Eclipse-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>2017 Total Solar Eclipse</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/2017-Total-Solar-Eclipse-edge.JPG" data-size="5472x3648"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/2017-Total-Solar-Eclipse-edge-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>2017 Total Solar Eclipse Edge</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Jupiter-Moons-12-10-2012.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Jupiter-Moons-12-10-2012-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>Jupiter Moons 12-10-2012</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Moon-10mm-08-03-2012.jpg" data-size="1840x3264"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Moon-10mm-08-03-2012-thumbnail.webp" alt="" width="768" height="1362"></a>
<figcaption>Moon 10mm 08-03-2012</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Moon-09-26-12.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Moon-09-26-12-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>Moon-09-26-12</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Saturn-Crop-5-17-2012.jpg" data-size="1388x1260"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Saturn-Crop-5-17-2012-thumbnail.webp" alt="" width="768" height="697"></a>
<figcaption>Saturn 5-17-2012</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Solar-Eclipse-May-2012.png" data-size="1280x720"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Solar-Eclipse-May-2012-thumbnail.webp" alt="" width="768" height="432"></a>
<figcaption>Solar Eclipse 05-20-2012</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Sun-July-1st-15th-2012.gif" data-size="600x600"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Sun-July-1st-15th-2012.gif" alt=""></a>
<figcaption>Sun - July 1st through 15th 2012</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Saturn-Rhea-4-14-2012.jpg" data-size="1920x2560"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Saturn-Rhea-4-14-2012-thumbnail.webp" alt="" width="768" height="1024"></a>
<figcaption>Saturn and it's moon Rhea 4-14-2012</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Venus-Regulus-10-02-12.jpg" data-size="2421x1575"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Venus-Regulus-10-02-12-thumbnail.webp" alt="" width="768" height="500"></a>
<figcaption>Venus and Regulus 10-02-12</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Sun-4-21-12-Moon-05-05-12-Composite.jpg" data-size="2560x1920"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Sun-4-21-12-Moon-05-05-12-Composite-thumbnail.webp" alt="" width="768" height="576"></a>
<figcaption>Sun 4-21-12 Moon 05-05-12 Composite</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Moon-7-3-12.jpg" data-size="3264x1840"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Moon-7-3-12-thumbnail.webp" alt="" width="768" height="433"></a>
<figcaption>Moon 7-3-12</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Eclipse-10-14-2023.gif" data-size="1280x720"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Eclipse-10-14-2023.gif" alt=""></a>
<figcaption>Eclipse 10-14-2023</figcaption>
</figure>
</div></div>
<p> </p>
<p class="align-center"><strong>Deep Space</strong></p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="4">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M1-03-08-2013.JPG" data-size="5184x3456"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M1-03-08-2013-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M1 03-08-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M3-05-04-2013.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M3-05-04-2013-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M3 05-04-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M5-05-04-2013.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M5-05-04-2013-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M5 05-04-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M13-05-04-2013.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M13-05-04-2013-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M13 05-04-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M31-03-08-2013.jpg" data-size="3640x2283"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M31-03-08-2013-thumbnail.webp" alt="" width="768" height="481"></a>
<figcaption>M31 03-08-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M42-Stacked-Edit-02-15-2013.jpg" data-size="2596x1594"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M42-Stacked-Edit-02-15-2013-thumbnail.webp" alt="" width="768" height="472"></a>
<figcaption>M42 Stacked 02-15-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M45-Stacked-12-10-2012.jpg" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M45-Stacked-12-10-2012-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M45 12-10-2012</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M51-05-04-2013.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M51-05-04-2013-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M51 05-04-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M57-05-04-2013.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M57-05-04-2013-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M57 05-04-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M65-M66-NGC3628-Stacked-Edit.jpg" data-size="2907x1861"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M65-M66-NGC3628-Stacked-Edit-thumbnail.webp" alt="" width="768" height="492"></a>
<figcaption>M65, M66, NGC3628</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/M92-05-04-2013.JPG" data-size="3888x2592"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/M92-05-04-2013-thumbnail.webp" alt="" width="768" height="512"></a>
<figcaption>M92 05-04-2013</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/15/gallery/Albireo-Beta-Cygni.JPG" data-size="1676x1484"><img loading="lazy" src="https://n7kjl.net/media/posts/15/gallery/Albireo-Beta-Cygni-thumbnail.webp" alt="" width="768" height="680"></a>
<figcaption>Albireo-Beta Cygni</figcaption>
</figure>
</div></div>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Flag of Hermiston</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/flag-of-hermiston/"/>
        <id>https://n7kjl.net/flag-of-hermiston/</id>
            <category term="interests"/>
            <category term="design"/>

        <updated>2024-02-24T14:08:58-08:00</updated>
            <summary>
                <![CDATA[
                    <p>I was born and raised in a small town in north east Oregon called Hermiston, which among few other things is know for it's watermelons. Though I don't actually believe this town needs a flag of it's own I thought it interesting to give it a try:</p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p>I was born and raised in a small town in north east Oregon called Hermiston, which among few other things is know for it's watermelons. Though I don't actually believe this town needs a flag of it's own I thought it interesting to give it a try:</p>

<blockquote>
<p>A tricolour with two stripes shifted under the left third.<br>The colors represent a watermelon slice and are reminiscent of the <a href="https://en.wikipedia.org/wiki/Flag_of_Mexico" target="_blank" rel="noopener noreferrer">Flag of Mexico</a>, a nod to the significant Mexican population in the area. </p>
<p>3x5 Aspect Ratio<br>#386640 1/6th, #f2e8cf 1/6th, #bb4748 2/3rd</p>
</blockquote>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="1">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/17/gallery/FlagOfHermiston_MockUp.png" data-size="5000x3000"><img loading="lazy" src="https://n7kjl.net/media/posts/17/gallery/FlagOfHermiston_MockUp-thumbnail.webp" alt="" width="768" height="461"></a>
<figcaption>Flag of Hermiston, Oregon - Mock Up</figcaption>
</figure>
</div></div>
<figure class="post__image post__image--center"><img loading="lazy"  src="https://n7kjl.net/media/posts/17/Flag-of-Hermiston-simulation.gif" alt="" width="320" height="240"></figure>
<p class="align-left">Simulated flag made with: https://krikienoid.github.io/fla<a href="https://krikienoid.github.io/flagwaver/" target="_blank" rel="noopener noreferrer"></a>gwaver/</p>
<p>Alternative color options:</p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/17/gallery/FlagOfHermiston_MockUp-OffcialColors.png" data-size="5000x3000"><img loading="lazy" src="https://n7kjl.net/media/posts/17/gallery/FlagOfHermiston_MockUp-OffcialColors-thumbnail.webp" alt="" width="768" height="461"></a>
<figcaption>City Logo Colors: #009f4e, #ffffff, #f15d3f</figcaption>
</figure>
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/17/gallery/FlagOfHermiston_MockUp-TraditionalColors.png" data-size="5000x3000"><img loading="lazy" src="https://n7kjl.net/media/posts/17/gallery/FlagOfHermiston_MockUp-TraditionalColors-thumbnail.webp" alt="" width="768" height="461"></a>
<figcaption>More Traditional: #006847, #ffffff, #ce1126</figcaption>
</figure>
</div></div>
<p> </p>
<p> </p>
            ]]>
        </content>
    </entry>
    <entry>
        <title>Building Static Websites</title>
        <author>
            <name>Kristopher Large</name>
        </author>
        <link href="https://n7kjl.net/static-websites/"/>
        <id>https://n7kjl.net/static-websites/</id>
            <category term="web"/>
            <category term="interests"/>

        <updated>2024-02-14T19:44:00-08:00</updated>
            <summary>
                <![CDATA[
                    <p>I was wanting to create a website (this site) but have been out of the web-dev game for a long time. Though I've never done any significant web work, I look back fondly at my early days of learning HTML / JavaScript and how simply anyone could get started. The pages were simple and the dependencies straight forward.</p>
<p>However, that quickly gave way to using Dreamweaver, Wordpress and Drupal paired with ever increasing amount of libraries, plugins and databases. Each of these added functionality and convenience but at the expense of complexity. I found myself constantly worrying about security vulnerabilities, updates and managing servers rather than working on projects and writing posts. </p>
<p>In the end, I scrapped the sites and forgot about the whole thing, which brings us to today. There has been a resurgence of static websites and tools to build them, enough so to spark my interest and start this site. I'll recap my experiences so far and intend to keep posting as part of the experiment. </p>

                ]]>
            </summary>
        <content type="html">
            <![CDATA[
                <p>I was wanting to create a website (this site) but have been out of the web-dev game for a long time. Though I've never done any significant web work, I look back fondly at my early days of learning HTML / JavaScript and how simply anyone could get started. The pages were simple and the dependencies straight forward.</p>
<p>However, that quickly gave way to using Dreamweaver, Wordpress and Drupal paired with ever increasing amount of libraries, plugins and databases. Each of these added functionality and convenience but at the expense of complexity. I found myself constantly worrying about security vulnerabilities, updates and managing servers rather than working on projects and writing posts. </p>
<p>In the end, I scrapped the sites and forgot about the whole thing, which brings us to today. There has been a resurgence of static websites and tools to build them, enough so to spark my interest and start this site. I'll recap my experiences so far and intend to keep posting as part of the experiment. </p>

<h2>What Are Static Websites?</h2>
<p>A static website is a site like any other, but it doesn't rely on databases or server-side scripting like PHP. As a result, it can not<strong> </strong>provide interactivity, comments, logins, etc. Instead, it merely serves up HTML and JavaScript hosted by any basic web server like Apache or NGINX. </p>
<p>This is likely similar to how many of us started: creating an index.html file and opening it with Notepad. This approach still works of course, however it becomes difficult to manage as the site grows larger. Additionally you're missing out on useful features like tagging, prebuilt themes, WYSIWYG editors, etc. </p>
<p>In order to bridge the gap between simplicity and functionality, there are numerous Content Management Systems (CMS) that you can install locally which help to build and structure a website. When you're ready to publish, it renders the content into static source files and uploads them to the server of your choice. </p>
<p>Like any website, you have the option of loading external resources such as fonts and libraries. However, in an effort to simplify and secure these sites, many of the CMSs bundle all dependencies within the compiled files. </p>
<h2>Are they worth it?</h2>
<p>So if a static website is defined by what it can't do, why would you bother? I would argue that the benefits fall into three main categories:</p>
<p><strong>Simplicity: </strong>In order to get started with a static website, all that is needed is a web server like Apache or NGINX. In order to setup your build environment, it's as simple as installing a local CMS. If you have multiple editors, they can sync files via Google Drive, DropBox, etc (I use a self-hosted Nextcloud instance). Source control can all be managed via the Git service of your choice. </p>
<p><strong>Security: </strong>Since the pages lack any form of input and there is no server-side code to run, the attack surface is drastically reduced. There are no updates to manage and no third party libraries to be compromised. Additionally, the lack of server-side scripting or cookies makes GDPR compliance easy.</p>
<p><strong>Speed: </strong>Without server-side code, DB lookups or third party dependencies to load, pages load significantly faster. That speed and reduced size translates to reduced costs and better user-engagement. </p>
<h2>What I'm using</h2>
<p>As I mentioned, there are many CMS tools to choose from, including <a href="https://gohugo.io/" title="Hugo" target="_blank" rel="noopener noreferrer">HUGO</a> and <a href="http://jekyllrb.com/" title="Jekyll" target="_blank" rel="noopener noreferrer">Jekyll</a>. However, I landed on <a href="https://getpublii.com/" title="Publii" target="_blank" rel="noopener noreferrer">Publii</a>.</p>
<div class="gallery-wrapper"><div class="gallery"  data-is-empty="false" data-translation="Add images" data-columns="3">
<figure class="gallery__item"><a href="https://n7kjl.net/media/posts/3/gallery/publii-screenshot.png" data-size="1194x683"><img loading="lazy" src="https://n7kjl.net/media/posts/3/gallery/publii-screenshot-thumbnail.webp" alt="" width="768" height="439"></a></figure>
</div></div>
<p>Publii strike a wonderful balance between simplicity and functionality. Additionally it's fully open source and committed to security:</p>
<blockquote>
<p>"All official Publii themes that our team creates, both free and premium, do not use any CDN or third-party providers to deliver files. Instead, all files; fonts, scripts, icons, and CSS files, as well as any images Publii generates, are stored locally.<br><br>Basically, if you're running a base Publii website without any third-party extensions, then you're site should be fully GDPR compliant; no mess, no fear, no fuss."<br><a href="https://getpublii.com/privacy-focused/" target="_blank" rel="noopener noreferrer">https://getpublii.com/privacy-focused/</a></p>
</blockquote>
<p>You simply download the installer and connect to the hosting solution of your choice. In my case, I'm going to GitHub Pages and use Cloudflare for DNS/WAF/Analytics.</p>
<p>So far, the simplicity of Publii was reason enough to get me interested in posting again. We'll see how it goes over the coming year. </p>
<p> </p>
            ]]>
        </content>
    </entry>
</feed>
