<!DOCTYPE html>
<html lang="en">

  <!-- Head -->
  <head>        
    <!-- Metadata, OpenGraph and Schema.org -->
    

    <!-- Standard metadata -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>Garrett Grimm</title>
    <meta name="author" content="Garrett  Grimm" />
    <meta name="description" content="Garrett Grimm, Web Developer and Musician.
" />

    <!-- OpenGraph -->
    <meta property="og:site_name" content="Garrett Grimm" />
    <meta property="og:type" content="website" />
    <meta property="og:title" content="about | Garrett Grimm" />
    <meta property="og:url" content="https://grimmdude.com/" />
    <meta property="og:description" content="Garrett Grimm, Web Developer and Musician.
" />
    <meta property="og:image" content="/assets/img/garrett_grimm.png" />
    <meta property="og:locale" content="en" />

    <!-- Twitter card -->
    <meta name="twitter:card" content="summary" />
    <meta name="twitter:title" content="about" />
    <meta name="twitter:description" content="Garrett Grimm, Web Developer and Musician.
" />
    <meta name="twitter:image" content="/assets/img/garrett_grimm.png" />
    

    <!-- Schema.org -->
    <script type="application/ld+json">
      {
        "@context": "https://schema.org",
        "@type": "Person",
        "name": "Garrett  Grimm",
        "url": "https://grimmdude.com",
        "jobTitle": "Principal Software Engineer",
        "worksFor": {
          "@type": "Organization",
          "name": "AppSumo",
          "url": "https://appsumo.com"
        },
        "knowsAbout": ["Web Development", "Software Engineering", "PHP", "Laravel", "JavaScript", "Music"],
        "affiliation": {
          "@type": "Organization",
          "name": "AppSumo Originals",
          "url": "https://appsumo.com/collections/appsumo-originals/",
          "makesOffer": [
            {
              "@type": "SoftwareApplication",
              "name": "TidyCal",
              "url": "https://tidycal.com",
              "applicationCategory": "BusinessApplication"
            },
            {
              "@type": "SoftwareApplication",
              "name": "SendFox",
              "url": "https://sendfox.com",
              "applicationCategory": "BusinessApplication"
            }
          ]
        },
        "address": {
          "@type": "PostalAddress",
          "addressLocality": "San Francisco",
          "addressRegion": "CA",
          "addressCountry": "US"
        },
        "description": "Garrett Grimm, Web Developer and Musician.
"
        ,"sameAs": ["https://github.com/grimmdude", "https://www.linkedin.com/in/ggrimm"]
      }
    </script>


    <!-- Bootstrap & MDB -->
    <link rel="stylesheet" href="/assets/css/vendor/bootstrap.min.css">
    

    <!-- Icons -->
    
    
    <link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Roboto+Slab:100,300,400,500,700|Material+Icons">

    

    <!-- Styles -->
    <link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><text y=%22.9em%22 font-size=%2290%22>🪴</text></svg>">
    <link rel="stylesheet" href="/assets/css/main.css">
    <link rel="canonical" href="https://grimmdude.com/">

    <!-- Turbo -->
    <script type="module" src="/assets/js/vendor/turbo.min.js"></script>
  </head>

  <!-- Body -->
  <body class="fixed-top-nav">

    <!-- Header -->
    <header>

      <!-- Nav Bar -->
      <nav id="navbar" class="navbar navbar-light navbar-expand-sm fixed-top">
        <div class="container">
            <a class="navbar-brand title font-weight-lighter" href="https://grimmdude.com/"><span class="fw-bold">Garrett</span>   Grimm</a>
          <!-- Navbar Toggle -->
          <button class="navbar-toggler collapsed ms-auto border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
            <span class="visually-hidden">Toggle navigation</span>
            <span class="icon-bar top-bar"></span>
            <span class="icon-bar middle-bar"></span>
            <span class="icon-bar bottom-bar"></span>
          </button>

          <div class="collapse navbar-collapse text-right" id="navbarNav">
            <ul class="navbar-nav ms-auto flex-nowrap">

              <!-- About -->
              <!-- <li class="nav-item active">
                <a class="nav-link" href="/">about<span class="visually-hidden">(current)</span></a>
              </li> -->
              
              <!-- Blog -->
              <li class="nav-item ">
                <a class="nav-link" href="/blog/">blog</a>
              </li>

              <!-- Projects -->
              <li class="nav-item ">
                <a class="nav-link" href="/projects/">projects</a>
              </li>

              <!-- Services -->
              <!-- <li class="nav-item ">
                <a class="nav-link" href="/services/">services</a>
              </li> -->

              <!-- Other pages -->
              <!--
              <li class="nav-item ">
                <a class="nav-link" href="/services/">WordPress Maintenance Service</a>
              </li>
              <li class="nav-item ">
                <a class="nav-link" href="/projects/">projects</a>
              </li>-->
            </ul>
          </div>
        </div>
      </nav>
    </header>

    <!-- Content -->
    <div class="container mt-5">
      <!-- about.html -->
      <div class="post">
        <main>
        <article>
          <div class="profile float-end">
<figure>

  <picture>
    <source media="(max-width: 480px)" srcset="/assets/img/garrett_grimm-480.webp"></source>
    <source media="(max-width: 800px)" srcset="/assets/img/garrett_grimm-800.webp"></source>
    <source media="(max-width: 1400px)" srcset="/assets/img/garrett_grimm-1400.webp"></source>
    <!-- Fallback to the original file -->
    <img class="img-fluid z-dept-1 rounded" src="/assets/img/garrett_grimm.png" alt="garrett_grimm.png">

  </picture>

</figure>

          </div>

          <div class="clearfix">
            <p>Hello!  My name’s Garrett and I’m a web developer and musician from San Francisco, California.</p>

<p>I’m currently the lead software developer for <a href="https://appsumo.com/collections/appsumo-originals/" target="_blank" rel="noopener noreferrer">AppSumo Originals</a>, working on projects like <a href="https://tidycal.com" target="_blank" rel="noopener noreferrer">TidyCal</a>, <a href="https://sendfox.com" target="_blank" rel="noopener noreferrer">SendFox</a>, and others.  Here you’ll find some information about my personal projects, interests, and other goings-on.</p>

<!-- I also offer services for anyone who needs professional help maintaining and updating their website.  You can learn more on the [services](/services) page. -->

<p>I’d love to hear from you, feel free to email me below.  I’m always happy to chat about programming, music, and anything in between.</p>

          </div>

          <!-- News --><div class="news">
  <h2>news</h2>
  <ul class="news-list">
    <li class="news-item">
      <span class="news-date">Jan 29, 2022</span>
      <span class="news-content">
        <a href="https://addons.mozilla.org/en-US/firefox/addon/tab-reminder/" target="_blank" rel="noopener noreferrer">Tab Reminder</a> now available for FireFox! 🔔


      </span>
    </li>
    <li class="news-item">
      <span class="news-date">Jan 26, 2022</span>
      <span class="news-content">
        Updated <a href="https://chrome.google.com/webstore/detail/tab-reminder/emjkjhniepjnianimdjmjndnjdanjmmk" target="_blank" rel="noopener noreferrer">Tab Reminder</a> Chrome extension to 1.1.2 🔔

      </span>
    </li>
    <li class="news-item">
      <span class="news-date">Oct 5, 2021</span>
      <span class="news-content">
        Launched <a href="https://chrome.google.com/webstore/detail/tab-reminder/emjkjhniepjnianimdjmjndnjdanjmmk" target="_blank" rel="noopener noreferrer">Tab Reminder</a> Chrome extension 🔔

      </span>
    </li>
    <li class="news-item">
      <span class="news-date">Jan 30, 2020</span>
      <span class="news-content">
        Passed my amateur radio technician license test, call sign <code class="language-plaintext highlighter-rouge">KN6HBU</code> 📻

      </span>
    </li>
  </ul>
</div>

          

          <hr>
          <div class="text-center mb-3">Join my mailing list to receive occasional project updates and other light correspondence from me. 📧</div>
          <form action="https://sendfox.com/form/g1we1k/3ee920" method="post" class="col-md-8 offset-md-2 mb-3">
            <div class="input-group">
              <input type="email" name="email" class="form-control" placeholder="Your email" aria-label="Your email" autocomplete="email" required>
              <button class="btn btn-outline-primary" type="submit">Send me updates!</button>
            </div>
          </form>
        </article>
        </main>

</div>

    </div>

    <!-- Footer -->    
    <footer class="fixed-bottom">
      <div class="container mt-0">
        <span class="footer-copy">
          © Copyright 2026 Garrett  Grimm. 
        </span>
        <span class="footer-social"><a href="mailto:%67%61%72%72%65%74%74@%67%72%69%6D%6D%64%75%64%65.%63%6F%6D" title="email"><i data-lucide="mail"></i></a>
            <a href="https://github.com/grimmdude" title="GitHub" target="_blank" rel="noopener noreferrer"><i data-lucide="github"></i></a>
            <a href="https://www.linkedin.com/in/ggrimm" title="LinkedIn" target="_blank" rel="noopener noreferrer"><i data-lucide="linkedin"></i></a>
            <a href="https://instagram.com/grimmdude" title="Instagram" target="_blank" rel="noopener noreferrer"><i data-lucide="instagram"></i></a>
            </span>
      </div>
    </footer>

    <!-- JavaScripts -->
    <!-- jQuery -->
  <script src="/assets/js/vendor/jquery.min.js"></script>

    <!-- Bootsrap & MDB scripts -->
  <script src="/assets/js/vendor/bootstrap.bundle.min.js"></script>

  

    
    

    

    <!-- Lucide Icons -->
<script src="/assets/js/vendor/lucide.min.js"></script>
<script>
  // Initialize Lucide icons on page load
  function initLucide() {
    if (typeof lucide !== 'undefined') {
      lucide.createIcons();
    }
  }

  // Initial load
  initLucide();

  // Re-initialize on Turbo navigation
  document.addEventListener('turbo:load', initLucide);
  document.addEventListener('turbo:render', initLucide);
</script>

    <!-- Google tag (gtag.js) -->
  <script async src="https://www.googletagmanager.com/gtag/js?id=G-R2CRKS3K8J"></script>
  <script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'G-R2CRKS3K8J');
  </script>
  </body>
</html>

