<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Jeremy Gibson</title>
    <description>The latest articles on DEV Community by Jeremy Gibson (@jeremygibson).</description>
    <link>https://dev.to/jeremygibson</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F999342%2F8a3ec0cc-e959-4e44-b6c6-6b49e57b3f3f.png</url>
      <title>DEV Community: Jeremy Gibson</title>
      <link>https://dev.to/jeremygibson</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jeremygibson"/>
    <language>en</language>
    <item>
      <title>Refactoring RATOM: Day ...604</title>
      <dc:creator>Jeremy Gibson</dc:creator>
      <pubDate>Sat, 21 Sep 2024 08:52:05 +0000</pubDate>
      <link>https://dev.to/jeremygibson/refactoring-ratom-day-604-26ci</link>
      <guid>https://dev.to/jeremygibson/refactoring-ratom-day-604-26ci</guid>
      <description>&lt;p&gt;&lt;a href="https://dev.to/jeremygibson/refactoring-ratom-day-3-5gm1"&gt;Refactoring RATOM: Day 3&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;YAAAWWWNNNN! Okay let's get back to work: day fou...rrrrr.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuzxe2cgjxe17msxtk1xi.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuzxe2cgjxe17msxtk1xi.gif" alt="James Earl Jones shocked reaction" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Okay. Okay. All right. &lt;/p&gt;

&lt;p&gt;So, after almost 2 years away -- one and a half leading a great team of devs at NC State -- and then deciding my family would be happier living somewhere besides the United States, which led to us moving to Spain 30 days ago: things are starting to calm down slightly so I can try getting back to this. I apologize for the long delay to the (maybe one) person/people who had read my first couple of posts &lt;/p&gt;

&lt;p&gt;As soon as I get things a little more buttoned up here, I will restart this process and try to be a little more proactive.&lt;/p&gt;

&lt;p&gt;RATOM here I come.&lt;/p&gt;

</description>
      <category>htmx</category>
      <category>django</category>
      <category>archive</category>
    </item>
    <item>
      <title>Refactoring RATOM: Day 3</title>
      <dc:creator>Jeremy Gibson</dc:creator>
      <pubDate>Wed, 25 Jan 2023 19:14:49 +0000</pubDate>
      <link>https://dev.to/jeremygibson/refactoring-ratom-day-3-5gm1</link>
      <guid>https://dev.to/jeremygibson/refactoring-ratom-day-3-5gm1</guid>
      <description>&lt;h1&gt;
  
  
  &lt;del&gt;Day 2&lt;/del&gt; Day 3
&lt;/h1&gt;

&lt;p&gt;Whoops, already starting to fall behind. I missed Day 2; because, life... so here is Day 3.&lt;/p&gt;

&lt;p&gt;Reminder on my current objective:&lt;/p&gt;

&lt;p&gt;Step 1. Get the original app up and running.&lt;br&gt;
Step 2. Browse around and get a feel for the UI and UX again.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Get the original app running
&lt;/h3&gt;

&lt;p&gt;This was an exercise in nudging and tweaking requirements, settings, configuration files, etc. But I finally got it done.&lt;br&gt;
YAAAY!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgkuxxlc1coxmyfia5iyo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgkuxxlc1coxmyfia5iyo.png" alt="Screen shot of the RATOM app header" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Browse around.
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn5ku8yucka9zocd7crlf.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn5ku8yucka9zocd7crlf.gif" alt="Gif of a person running full speed into a cinder block wall" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Blocker: In order to browse around, the application needs to have data, and the application was specifically designed to ingest PST files, which, as it happens, are very, very hard to find now that the Enron PSTs have been purged from the internet 😠&lt;/p&gt;

&lt;p&gt;Okay, now I need to add functionality to ingest all the readily available &lt;code&gt;.eml&lt;/code&gt;s out there.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;yippeee&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;This is starting to feel like a long process, but I'm committed now.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/jeremygibson/refactoring-ratom-day-1-1nf"&gt;Previous Post&lt;/a&gt;&lt;/p&gt;

</description>
      <category>django</category>
      <category>htmx</category>
      <category>react</category>
    </item>
    <item>
      <title>Refactoring RATOM: Day 1</title>
      <dc:creator>Jeremy Gibson</dc:creator>
      <pubDate>Mon, 23 Jan 2023 20:55:00 +0000</pubDate>
      <link>https://dev.to/jeremygibson/refactoring-ratom-day-1-1nf</link>
      <guid>https://dev.to/jeremygibson/refactoring-ratom-day-1-1nf</guid>
      <description>&lt;h3&gt;
  
  
  Where to start?
&lt;/h3&gt;

&lt;p&gt;Whelp, as it often is... the best laid plans. &lt;/p&gt;

&lt;p&gt;I thought I would spend the day spinning up the system, so I could refresh myself as to the site structure from a UI/UX perspective, but instead I got caught up in getting testing and CI to work.&lt;/p&gt;

&lt;p&gt;The moral of this story...&lt;/p&gt;

&lt;h3&gt;
  
  
  Tech Debt Is Everywhere
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/JeremyGibson/jade-truffle" rel="noopener noreferrer"&gt;Jade-truffle&lt;/a&gt; the cookiecutter template that I used to bring up the skeleton of the application, has been pretty well maintained, and I took some pains when designing it, to create the most up to date site possible. No versions of anything are pinned in the pip-tools &lt;code&gt;.in&lt;/code&gt; files, and the requirements are resolved at the time the cookiecutter is run.&lt;/p&gt;

&lt;p&gt;Even so, other places that I hadn't thought to look had rotted away:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;pre-commit.config.yml was out of date with many of its revs.&lt;/li&gt;
&lt;li&gt;flake8 started failing because of changes in a major version&lt;/li&gt;
&lt;li&gt;An initiative to add accessibility testing into jade-truffle had some quirks that I missed on the initial PR.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I had to fix all of those to go from angry red x's on my repo to happy green ticks.&lt;/p&gt;

&lt;p&gt;On to tomorrow.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/jeremygibson/refactoring-ratom-with-htmx-586g"&gt;Previous Post&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/jeremygibson/refactoring-ratom-day-3-5gm1"&gt;Next Post&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Refactoring RATOM with HTMX</title>
      <dc:creator>Jeremy Gibson</dc:creator>
      <pubDate>Sun, 22 Jan 2023 13:39:53 +0000</pubDate>
      <link>https://dev.to/jeremygibson/refactoring-ratom-with-htmx-586g</link>
      <guid>https://dev.to/jeremygibson/refactoring-ratom-with-htmx-586g</guid>
      <description>&lt;h3&gt;
  
  
  What am I doing?
&lt;/h3&gt;

&lt;p&gt;I am going to refactor the &lt;a href="https://github.com/StateArchivesOfNorthCarolina/ratom-server" rel="noopener noreferrer"&gt;RATOM server application&lt;/a&gt; into an &lt;a href="https://github.com/JeremyGibson/ratom_htmx" rel="noopener noreferrer"&gt;SSR app using HTMX&lt;/a&gt;. The &lt;code&gt;ratom-server&lt;/code&gt; application was developed a few years ago, before HTMX really hit the scene.&lt;/p&gt;

&lt;p&gt;My idea here is to have a series of posts where I track the progress of my efforts to both really dig in and understand how to fully leverage HTMX, but also to refactor &lt;code&gt;ratom-server&lt;/code&gt; so it no longer depends on &lt;a href="https://github.com/StateArchivesOfNorthCarolina/ratom-web" rel="noopener noreferrer"&gt;react-web&lt;/a&gt; and is: simpler, easier to maintain, easier to deploy, easier to use, and has testing that ensures confidence in changes made in the future.&lt;/p&gt;

&lt;p&gt;Don't get me wrong the app that my colleagues and I developed was and is a very cool and useful product. But like all react apps it requires a thousand hoops and tons of tooling to link the front end to the back end.&lt;/p&gt;

&lt;p&gt;I don't know if I will succeed, but I am certain that I will learn a little more about how to create a modern, powerful app that applies the principles of HATEOS.&lt;/p&gt;

&lt;p&gt;Wish me luck!&lt;/p&gt;

</description>
      <category>dsa</category>
      <category>algorithms</category>
      <category>computerscience</category>
    </item>
  </channel>
</rss>
