<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Migrations on BradCypert.com</title>
    <link>https://www.bradcypert.com/tags/migrations/</link>
    <description>Recent content in Migrations on BradCypert.com</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 09 Nov 2022 15:36:37 -0500</lastBuildDate>
    <atom:link href="https://www.bradcypert.com/tags/migrations/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Your application should not be responsible for Database Migrations.</title>
      <link>https://www.bradcypert.com/your-application-should-not-be-responsible-for-database-migrations/</link>
      <pubDate>Sun, 09 Jun 2019 00:00:00 +0000</pubDate>
      <guid>https://www.bradcypert.com/your-application-should-not-be-responsible-for-database-migrations/</guid>
      <description>&lt;p&gt;Classic database/schema migration patterns are a nightmare for modern systems. As Software Engineers push for a more distributed ecosystem, one is tempted to ask: “Why should the code that manages one system, live with the application code of another system?”&lt;/p&gt;&#xA;&lt;HeadsUp title=&#34;What pattern is this?&#34;&gt;&#xA;  My first exposure to this pattern was with Rails in 2013. With&#xA;  Rails/ActiveRecord, when your application boots up it checks the database&#xA;  schema against a list of schema changes you’ve defined and ensures the&#xA;  database meets those requirements.&#xA;&lt;/HeadsUp&gt;&#xA;&lt;p&gt;“But Brad, this is really convenient”. I agree that it is really convenient when&#xA;you’re working with a monolithic system that runs on one server. However, you start&#xA;to run into issues regarding responsibility when you encounter scalability.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Adding Trigram Searching to a Clojure Webapp with YeSQL, Migratus, and Postgres</title>
      <link>https://www.bradcypert.com/adding-trigram-searching-to-a-clojure-webapp/</link>
      <pubDate>Sun, 29 Oct 2017 00:00:00 +0000</pubDate>
      <guid>https://www.bradcypert.com/adding-trigram-searching-to-a-clojure-webapp/</guid>
      <description>&lt;p&gt;Recently on Porios, I added the ability to do fuzzy text searches with Trigrams. Porios is powered by a Clojure API (a dated Luminus template, actually) which uses YeSQL, Postgres, Compojure and several other libraries. Let’s talk about implementing a trigram search for this application components.&lt;/p&gt;&#xA;&lt;h4 id=&#34;what-is-a-trigram&#34;&gt;What is a Trigram?&lt;/h4&gt;&#xA;&lt;p&gt;A Trigram is a three character subsection of a string of text. This allows you to match text if you’re close to the actual text you’re looking for. For example, the string &lt;code&gt;foobar&lt;/code&gt; can be represented as the following trigrams: &lt;code&gt;foo&lt;/code&gt;, &lt;code&gt;oob&lt;/code&gt;, &lt;code&gt;oba&lt;/code&gt;, &lt;code&gt;bar&lt;/code&gt;. With trigram searching, “Grammy” could match one of the popular podcasts we have on the site called “Grammar Girl.” This will help users find content when they don’t exactly know what they’re looking for.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
