このサイトができるまで

目的

  • 作ったものを自分のドメインに置いておく
  • Zettelkasten的なものを自分なりにつくる
  • クリエイティブコーディングの習慣を崩さずに上記を実現する

つまり?

  • 作ったものを自分のドメインに置いておく
    • プラットフォームも良いけれど自分の場所が欲しい
      • p5.jsのコードをそのまま見せる、かつ、canvasを動かしていることを明示したい
  • Zettelkasten的なものを自分なりにつくる
    • スケッチを単一のアイデアとして管理
    • 自然言語だけに頼らなくても良いのでは?という仮説
      • 視覚とプログラミング言語のデジタルガーデン的な?
        • 常に庭でいろんな花を育てておき、作品としてまとめる時は、花を摘んで花束を作るイメージ(ポエムすぎ)
        • 実際は地味なのでむしろ盆栽
  • クリエイティブコーディングの習慣を崩さずに上記を実現する
    • 1年かけてようやく習慣化できたし、メンタル的にもよい、ので崩したくない

構成

Obsidian → Astro → Github → Vercel

実装前に考えたこと

  • サイトを作っては使わなくなりを繰り返していたので、更新作業が習慣の邪魔をしないという絶対のルールを決めた
  • 習慣の洗い出し
    • アイデア→コーディング→Obsidianにメモ→プッシュ→キャプチャ→OpenProcessingとXにポスト
  • フローの整理、習慣以外のことは全て自動化
    • スケッチ作成:コーディングを行う
    • キャプチャ:p5.captureでjpgを書き出す
    • メディア作成の自動化:以下の公開に必要なメディアファイルを自動で生成・配置
      • FFmpegでスケッチの動画(mp4)と圧縮版を作成
      • 動画のポスター画像(jpg)をキャプチャして保存
    • mdファイル作成とObsidian起動の自動化:Obsidianの公開フォルダ内に新規mdファイルを作成し、フロントマターを自動反映した状態でObsidianを開く
    • メモの記録:コーディングと並行して、Obsidianでその日のスケッチに関するメモを書き留める
      • 関連付け:メモと同時に、バックリンクやタグを用いて既存のスケッチとの関連を整理
    • Gitプッシュ:メモと関連付けが完了した時点で、Obsidianのプラグイン経由でGitリポジトリへプッシュし、公開
    • デプロイ:GitプッシュをトリガーにVercelでAstroのビルド実行
    • OpenProcessingとXにポスト
    • インスタはGASで自動投稿
      • スプレッドシートで予約投稿一覧を作っておいてその日になったらアップされる
  • 色々なナレッジ管理を試したが、Obsidianにプラグインで「2Hop Links Plus」を使うのが1番心地よく管理できる
    • 同じような体験でサイトを管理したい
      • そのままObsidian 使えば良いのでは
        • Obsidianの中にサイト公開用のフォルダを作る
        • このフォルダの中にある記事だけが公開されるようにする
  • Astroでの実装
    • ObsidianからmdファイルをプッシュできるようにしてCMS化
    • ObsidianのmdファイルをAstroのcontentの中に入れておけばそのままビルドできる、相性抜群!
  • フォルダ管理とパス
    • ローカルではフォルダとして管理しているが、閲覧時は全ページ並列でフラットな構成
      • 記事管理はフォルダ階層の概念を残す
      • 関連記事の紐付けはバックリンク、タグで行う
      • 閲覧はフラットにしてシンプルに
    • フォルダ構造が変わっても同じ名前のmdが存在する限りそのURLはずっと変わらないので、いつでも整理し直せるのは気が楽

実装後に考えたこと

  • 自分の興味が、コンセプトに従って抽象的な作品を作りたい、ではないのかもしれない
    • コンセプトありきでもアルゴリズムありきでもない、他の場所を探す感じ
      • 視覚的なアイデアやアルゴリズムを蓄えておいて、組み合わせながら作っていく
  • 永遠の未完成という考え方はクリエイティブコーディングと相性がいい
    • 完全を求めて止まってしまうより、未完成でも進み続ける
    • いつでもやり直せるし、いつやめてもいい
  • 承認欲求と創作意欲のバランスが取れる
    • 承認欲求を最低限で満たしつつ、ワクワクを優先できる仕組みづくりができたのではないか
  • 前にクリエイティブコーディングの素材的なまとめを作ったことを思い出した
  • 検索機能をつけておきたい
  • 例外で電子名刺からの導線を作っておく

Last Update :