{
  "path": "/3m65xmhp3vk2n",
  "site": "at://did:plc:xg2vq45muivyy3xwatcehspu/site.standard.publication/3m3zpxhfl3c2s",
  "$type": "site.standard.document",
  "title": "Dev Log 22: 2025-11-21",
  "content": {
    "$type": "pub.leaflet.content",
    "pages": [
      {
        "$type": "pub.leaflet.pages.linearDocument",
        "blocks": [
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [
                {
                  "index": {
                    "byteEnd": 14,
                    "byteStart": 10
                  },
                  "features": [
                    {
                      "uri": "https://tangled.org/@desertthunder.dev/noteleaf",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "Noteleaf (code)"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 97,
                    "byteStart": 88
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#code"
                    }
                  ]
                }
              ],
              "plaintext": "I implemented TF-IDF based search engine for notes using a simple JSON blob stored in a documents table in the sqlite that noteleaf uses to query data."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "Today I'd like to deploy the documentation (its a docusaurus site) for this, likely on github pages."
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.header",
              "level": 2,
              "facets": [],
              "plaintext": "Beacon"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 146,
                    "byteStart": 143
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#code"
                    }
                  ]
                }
              ],
              "plaintext": "I've renamed loose mode to relaxed: I couldn't quite put my finger on it but loose didn't feel right. This gave me the opportunity to use some sed commands across the codebase! I learned this observing Claude code do some renaming in a project a while back"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.code",
              "language": "shellscript",
              "plaintext": "find [path] [criteria] -exec ... {} + ",
              "syntaxHighlightingTheme": "tokyo-night"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.blockquote",
              "facets": [
                {
                  "index": {
                    "byteEnd": 4,
                    "byteStart": 0
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#code"
                    }
                  ]
                }
              ],
              "plaintext": "{} + appends found files to the end of the command rather than invoking it once per file (so that the command is run only once, if possible)"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.unorderedList",
              "children": [
                {
                  "$type": "pub.leaflet.blocks.unorderedList#listItem",
                  "content": {
                    "$type": "pub.leaflet.blocks.text",
                    "facets": [
                      {
                        "index": {
                          "byteEnd": 25,
                          "byteStart": 16
                        },
                        "features": [
                          {
                            "uri": "https://askubuntu.com/questions/339015/what-does-mean-in-the-find-command",
                            "$type": "pub.leaflet.richtext.facet#link"
                          }
                        ]
                      }
                    ],
                    "plaintext": "from an awesome askubuntu post"
                  },
                  "children": []
                }
              ]
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 15,
                    "byteStart": 12
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#code"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 32,
                    "byteStart": 29
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#code"
                    }
                  ]
                }
              ],
              "plaintext": "Then in the ... this call to sed is executed:"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.code",
              "language": "shellscript",
              "plaintext": "sed -i '' 's/pattern/replacement/g'",
              "syntaxHighlightingTheme": "tokyo-night"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 77,
                    "byteStart": 76
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#code"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 91,
                    "byteStart": 89
                  },
                  "features": [
                    {
                      "$type": "pub.leaflet.richtext.facet#code"
                    }
                  ]
                },
                {
                  "index": {
                    "byteEnd": 109,
                    "byteStart": 105
                  },
                  "features": [
                    {
                      "uri": "https://desertthunder.github.io/garden/unix/find-sed/",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "The patterns were variations of loose & loose mode to edit all occurrences (g) in place (-i). More notes here!"
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [],
              "plaintext": "What is it about releases that make me averse to doing them? I \"procrastinate productively\" when I have to release stuff. "
            }
          },
          {
            "$type": "pub.leaflet.pages.linearDocument#block",
            "block": {
              "$type": "pub.leaflet.blocks.text",
              "facets": [
                {
                  "index": {
                    "byteEnd": 73,
                    "byteStart": 69
                  },
                  "features": [
                    {
                      "uri": "https://github.com/stormlightlabs/beacon/releases/tag/v0.4.0",
                      "$type": "pub.leaflet.richtext.facet#link"
                    }
                  ]
                }
              ],
              "plaintext": "Anyways, I've cut v0.4.0 of Beacon! Checkout the release notes right here "
            }
          }
        ]
      }
    ]
  },
  "bskyPostRef": {
    "cid": "bafyreidqkf3gue47gagi2uqjsslfje726wk6rds4aylohkmagk3ebsdmw4",
    "uri": "at://did:plc:xg2vq45muivyy3xwatcehspu/app.bsky.feed.post/3m65xmo43hs2n",
    "commit": {
      "cid": "bafyreibcc6t733wtyjxwnhfwoxahzbdxph4hlvcwkqdigbrqxa7zq5bdwm",
      "rev": "3m65xmo7b432a"
    },
    "validationStatus": "valid"
  },
  "description": "procrastinating productively & v0.4.0 of beacon!",
  "publishedAt": "2025-11-21T18:58:06.982Z"
}