<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss.xsl" type="text/xsl"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>satbunch.com</title><description>A coder-ready Astro blog theme with 59 of your favorite color schemes to choose from</description><link>https://satbunch.com</link><item><title>systemctlについて</title><link>https://satbunch.com/posts/about-systemctl</link><guid isPermaLink="true">https://satbunch.com/posts/about-systemctl</guid><pubDate>Fri, 02 May 2025 00:00:00 GMT</pubDate><content:encoded>&lt;h1&gt;systemctlコマンド&lt;/h1&gt;
&lt;p&gt;systemctlコマンドはLinuxで使われるsystemdの管理ツール。実行中のサービスの起動や停止、再起動、ブート時に起動するサービスの有効化と無効化、利用可能なサービスのリスト表示、システムのステータス確認など、多くの管理タスクに使用する。&lt;/p&gt;
&lt;p&gt;systemdとは
systemdはLinuxで利用されているデファクトスタンダードな初期化システムで、システムの起動時に各種サービスを立ち上げる役割を担う。&lt;/p&gt;
&lt;h2&gt;サービス管理&lt;/h2&gt;
&lt;h3&gt;サービスの起動と停止&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;systemctl start &amp;lt;サービス名&amp;gt;：サービスを起動する&lt;/li&gt;
&lt;li&gt;systemctl stop &amp;lt;サービス名&amp;gt;：サービスを停止する&lt;/li&gt;
&lt;li&gt;systemctl restart &amp;lt;サービス名&amp;gt;：サービスを再起動する&lt;/li&gt;
&lt;li&gt;systemctl reload &amp;lt;サービス名&amp;gt;：サービスの設定を再読込する（サービスを停止させずに）。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;サービスの状態確認&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;systemctl status &amp;lt;サービス&amp;gt;：サービスの現在の状態を表示する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;サービスの有効化と無効化&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;systemctl enable &amp;lt;サービス&amp;gt;：システム起動時にサービスを自動的に起動するように設定する。&lt;/li&gt;
&lt;li&gt;systemctl disable &amp;lt;サービス&amp;gt;：システム起動時にサービスを自動的に起動しないように設定する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;サービスの一覧表示&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;systemctl list-units --type=service：現在のサービスの一覧を表示する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;システム管理&lt;/h2&gt;
&lt;h3&gt;システムの停止と再起動&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;systemctl halt：システムを停止しhalt状態にする。&lt;/li&gt;
&lt;li&gt;systemctl poweroff：システムを停止し電源を切断する。&lt;/li&gt;
&lt;li&gt;systemctl reboot：システムを再起動する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;システムの状況確認&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;systemctl list-units：現在のすべてのユニット（サービス、マウントポイント、スワップ領域など）の一覧を表示する。&lt;/li&gt;
&lt;li&gt;systemctl get-default：システムのデフォルトのターゲット（起動時のシステム状態）を表示する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;ターゲット管理&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;systemctl isolote &amp;lt;ターゲット名&amp;gt;：指定したターゲットに切り替える。&lt;/li&gt;
&lt;li&gt;systemctl set-default &amp;lt;ターゲット名&amp;gt;：システム起動時のデフォルトのターゲットを設定する。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;ターゲットについて&lt;/h3&gt;
&lt;p&gt;複数のユニット（サービスやマウントポイント、デバイスなど）をグループ化し、システムの特定の状態や実行モードを表現する役割を持つ。
下記表が主なターゲット&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;ターゲット&lt;/th&gt;
&lt;th&gt;説明&lt;/th&gt;
&lt;th&gt;ランレベル&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;poweroff.target&lt;/td&gt;
&lt;td&gt;システム終了&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;rescue.target&lt;/td&gt;
&lt;td&gt;レスキュー（シングルモード）&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;multi-user.target&lt;/td&gt;
&lt;td&gt;CUIログイン&lt;/td&gt;
&lt;td&gt;2,3,4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;graphical.target&lt;/td&gt;
&lt;td&gt;グラフィカルログイン&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;reboot.target&lt;/td&gt;
&lt;td&gt;システム再起動&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2&gt;参考サイト&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;https://itc.tokyo/linux/systemctl/&quot;&gt;【完全版】systemctlのコマンド一覧｜実例付きで徹底解説&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://job-info.hateblo.jp/entry/2024/08/16/230855&quot;&gt;Linuxのsystemctlとは - Web開発における知見共有系ページ&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://koanacademy.jp/systemd_target&quot;&gt;systemdのターゲット(target) - KoANアカデミー&lt;/a&gt;&lt;/p&gt;
</content:encoded><author>satbunch</author></item><item><title>Obsidianで新規ノートに自動でフロントマターを挿入する方法</title><link>https://satbunch.com/posts/obsidian_templater_frontmatter</link><guid isPermaLink="true">https://satbunch.com/posts/obsidian_templater_frontmatter</guid><pubDate>Fri, 16 May 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Obsidianでノートを取っていると、「毎回フロントマターを書くのがちょっと面倒」と思ったことはありませんか？
特にメモを整理したり、後で検索しやすくするために、&lt;code&gt;type&lt;/code&gt; や &lt;code&gt;tags&lt;/code&gt; を入れておきたいけど、毎回手動で書くのは意外と手間ですよね。&lt;/p&gt;
&lt;p&gt;そんなときに便利なのが、&lt;strong&gt;Templater&lt;/strong&gt; というプラグインです。
これを使えば、&lt;code&gt;Ctrl + N&lt;/code&gt; でノートを新規作成したときに、自動で決まった内容（テンプレート）を差し込むことができます。&lt;/p&gt;
&lt;h2&gt;前提条件&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Obsidian がインストール済みであること&lt;/li&gt;
&lt;li&gt;コミュニティプラグインを有効化していること&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;手順&lt;/h2&gt;
&lt;h3&gt;1. Templater プラグインをインストールする&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;左下の「設定（歯車アイコン）」をクリック&lt;/li&gt;
&lt;li&gt;「コミュニティプラグイン」 &amp;gt; 「コミュニティプラグインを有効化」&lt;/li&gt;
&lt;li&gt;「プラグインを閲覧」で &lt;code&gt;Templater&lt;/code&gt; を検索&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Templater&lt;/code&gt; をインストールして有効化&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;2. テンプレート保存用フォルダを作る&lt;/h3&gt;
&lt;p&gt;任意の場所にテンプレート保存用のフォルダを作成します。
ここでは例として &lt;code&gt;99_Template&lt;/code&gt; フォルダを使いますが、名前や場所は自由です。&lt;/p&gt;
&lt;h3&gt;3. テンプレートファイルを作成する&lt;/h3&gt;
&lt;p&gt;テンプレートフォルダ内に &lt;code&gt;default.md&lt;/code&gt; というファイルを作成し、以下のように記述します：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;---
type: note
status: new
tags: []
date: &amp;lt;% tp.date.now(&quot;YYYY-MM-DD&quot;) %&amp;gt;
title: &amp;lt;% tp.file.title %&amp;gt;
---

# &amp;lt;% tp.file.title %&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;このテンプレートでは、以下の情報を自動で挿入するようにしています：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt;: ノートの種類（固定）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;status&lt;/code&gt;: ノートの状態（初期値として &lt;code&gt;new&lt;/code&gt; を指定）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tags&lt;/code&gt;: タグ（空配列）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;date&lt;/code&gt;: 作成日（現在の日付）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;title&lt;/code&gt;: ファイル名（ノートタイトルを見出しにも使用）&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;4. Templater の設定を変更する&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;設定 &amp;gt; 「Templater」のセクションを開く&lt;/li&gt;
&lt;li&gt;「Template folder location」：先ほど作成したフォルダを指定（例：&lt;code&gt;99_Template&lt;/code&gt;）&lt;/li&gt;
&lt;li&gt;「Trigger Templater on new file creation」：✅ 有効化&lt;/li&gt;
&lt;li&gt;「Template to apply on new file creation」：&lt;code&gt;default.md&lt;/code&gt; を指定&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;5. 動作確認する&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;Ctrl + N&lt;/code&gt; で新規ノートを作成してみましょう。
以下のような内容が、自動でノートに入力されていれば成功です：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;---
type: note
status: new
tags: []
date: 2025-05-16
title: 新規ノートのファイル名
---

# 新規ノートのファイル名
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;おわりに&lt;/h2&gt;
&lt;p&gt;Templater を使えば、ノート作成のたびに同じフロントマターを繰り返し入力する手間を省けます。
これだけで、日々のノート整理やメタ情報の管理がずっとラクになります。&lt;/p&gt;
&lt;p&gt;今回は基本的な使い方に絞りましたが、Templater ではさらに条件分岐や入力フォームのようなことも可能です。
今後はその応用例や、Dataviewと連携させる活用方法についても紹介していきますので、そちらもお楽しみに。&lt;/p&gt;
&lt;h2&gt;本記事について&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;※本記事は、Obsidian初心者の著者が自身の学習と実践を元に、OpenAIのAIアシスタント（ChatGPT）と対話しながら共同で執筆した内容です。
内容の正確性には十分配慮しておりますが、環境やバージョンによって挙動が異なる場合があります。ご利用の際はご自身の環境に応じてご確認ください。&lt;/p&gt;
&lt;/blockquote&gt;
</content:encoded><author>satbunch</author></item><item><title>Ubuntu 24.04でEmacs最新版をソースからインストールする（ネイティブコンパイル対応）</title><link>https://satbunch.com/posts/emacs_install_for_ubuntu2402</link><guid isPermaLink="true">https://satbunch.com/posts/emacs_install_for_ubuntu2402</guid><pubDate>Sat, 17 May 2025 00:00:00 GMT</pubDate><content:encoded>&lt;h1&gt;Ubuntu 24.04でEmacs最新版をソースからインストールする（ネイティブコンパイル対応）&lt;/h1&gt;
&lt;p&gt;こんにちは！
この記事では、&lt;strong&gt;Ubuntu 24.04&lt;/strong&gt;に&lt;strong&gt;最新版のEmacs&lt;/strong&gt;を&lt;strong&gt;ソースコードからインストール&lt;/strong&gt;する手順をまとめます。
特に最近重要になっている&lt;strong&gt;ネイティブコンパイル（Native Compilation）対応&lt;/strong&gt;のビルド方法も含みます！&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;対象読者：Ubuntu 24.04を使っていて、apt版より新しいEmacsを使いたい人
難易度：中級（ビルド経験が少しでもあれば大丈夫！）&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;1. はじめに（apt版ではダメなの？）&lt;/h2&gt;
&lt;p&gt;Ubuntu 24.04のaptリポジトリにもEmacsはありますが、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;バージョンが古いことがある&lt;/li&gt;
&lt;li&gt;ネイティブコンパイル対応が不完全な場合がある&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ため、&lt;strong&gt;ソースから自分でビルドする&lt;/strong&gt;ことで、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;最新版Emacs&lt;/li&gt;
&lt;li&gt;ネイティブコンパイル対応&lt;/li&gt;
&lt;li&gt;起動・動作の高速化
が実現できます！&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;2. 必要な開発ツールをインストールする&lt;/h2&gt;
&lt;p&gt;まずはビルドに必要なツールとライブラリをまとめてインストールします。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo apt update
sudo apt install -y build-essential libgccjit-13-dev gcc-13 g++-13 \
libjansson-dev libjpeg-dev libpng-dev libtiff-dev libgif-dev libxpm-dev \
libncurses-dev libgtk-3-dev libxaw7-dev libxft-dev libmagickwand-dev \
libtree-sitter-dev librsvg2-dev
&lt;/code&gt;&lt;/pre&gt;
&lt;blockquote&gt;
&lt;p&gt;✏️ ポイント：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;gcc-13&lt;/code&gt; + &lt;code&gt;libgccjit-13-dev&lt;/code&gt; が揃っていれば、&lt;strong&gt;ネイティブコンパイル&lt;/strong&gt;が有効になります！&lt;/li&gt;
&lt;li&gt;これにより、Emacsが内部的に高速な&lt;code&gt;.eln&lt;/code&gt;ファイルを生成できるようになります。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2&gt;3. Emacsのソースコードを入手する&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Emacs公式サイト&lt;/strong&gt;から最新版ソースコードをダウンロードします。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://ftp.gnu.org/gnu/emacs/&quot;&gt;GNU Emacs公式ダウンロードページ&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;上記リンクから&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;最新版の &lt;code&gt;.tar.gz&lt;/code&gt; ファイル&lt;/strong&gt;（例：&lt;code&gt;emacs-30.1.tar.gz&lt;/code&gt;）
をダウンロードしてください。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ダウンロードしたら、ターミナルで解凍します。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cd ~/Downloads
tar xvf emacs-30.1.tar.gz
cd emacs-30.1
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;4. ビルド専用ディレクトリを作る（おすすめ）&lt;/h2&gt;
&lt;p&gt;ビルドファイルをソースと分けるため、専用ディレクトリを作ります。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;mkdir build
cd build
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;これによりソースツリーがきれいなままビルドできます！&lt;/p&gt;
&lt;h2&gt;5. configureを実行（ビルド設定）&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;gcc-13を指定してネイティブコンパイルを有効化&lt;/strong&gt;します。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;CC=gcc-13 CXX=g++-13 ../configure --with-native-compilation
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;✅ 成功すれば最後に &lt;code&gt;Configuration done.&lt;/code&gt; と表示されます。&lt;/p&gt;
&lt;h2&gt;6. make（コンパイル）&lt;/h2&gt;
&lt;p&gt;CPUコアをフル活用して高速ビルドします。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;make -j$(nproc)
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;7. make install（インストール）&lt;/h2&gt;
&lt;p&gt;ビルドが完了したら、管理者権限でインストールします。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo make install
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;デフォルトでは &lt;code&gt;/usr/local/bin/emacs&lt;/code&gt; にインストールされます。&lt;/p&gt;
&lt;h2&gt;8. インストール確認&lt;/h2&gt;
&lt;p&gt;インストールできたか確認しましょう。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;emacs --version
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;例：&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;GNU Emacs 30.1
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;と出れば成功です！&lt;/p&gt;
&lt;h2&gt;9. インストール後のポイント&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;この手順でインストールしたEmacsは、ネイティブコンパイル（.elnファイル）対応版です。&lt;/li&gt;
&lt;li&gt;Emacsの起動後、自動的に&lt;code&gt;.eln&lt;/code&gt;ファイルが生成されるため、起動・動作が非常に高速になります。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/usr/bin/emacs&lt;/code&gt; に古いapt版が残っていても、パス優先順位により &lt;code&gt;/usr/local/bin/emacs&lt;/code&gt; が使われます。（通常問題なし）&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;📋 まとめ（コマンド一覧）&lt;/h1&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;ステップ&lt;/th&gt;
&lt;th&gt;コマンド例&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;パッケージインストール&lt;/td&gt;
&lt;td&gt;&lt;code&gt;sudo apt install build-essential libgccjit-13-dev gcc-13 g++-13 ...&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ソース解凍&lt;/td&gt;
&lt;td&gt;&lt;code&gt;tar xvf emacs-30.1.tar.gz &amp;amp;&amp;amp; cd emacs-30.1&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ビルド用ディレクトリ作成&lt;/td&gt;
&lt;td&gt;&lt;code&gt;mkdir build &amp;amp;&amp;amp; cd build&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;configure&lt;/td&gt;
&lt;td&gt;&lt;code&gt;CC=gcc-13 CXX=g++-13 ../configure --with-native-compilation&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;make&lt;/td&gt;
&lt;td&gt;&lt;code&gt;make -j$(nproc)&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;make install&lt;/td&gt;
&lt;td&gt;&lt;code&gt;sudo make install&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;バージョン確認&lt;/td&gt;
&lt;td&gt;&lt;code&gt;emacs --version&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;この記事はchatGPTを使用して書きました。筆者も実際にこの手順でインストールできたので大丈夫だと思いますが、もしビルドに失敗したなどがありましたら、コメントを残していただければ幸いです。&lt;/p&gt;
&lt;/blockquote&gt;
</content:encoded><author>satbunch</author></item><item><title>ClaudeとのAI会話をObsidianに記録するようにした</title><link>https://satbunch.com/posts/obsidian-memo-with-claude</link><guid isPermaLink="true">https://satbunch.com/posts/obsidian-memo-with-claude</guid><pubDate>Wed, 15 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;h1&gt;ClaudeとのAI会話をObsidianに記録するようにした&lt;/h1&gt;
&lt;h2&gt;きっかけ&lt;/h2&gt;
&lt;p&gt;Claude Codeで作業していると、コードの話だけじゃなく、「この機能どう設計しようか」「このアプローチとあのアプローチ、どっちがいいか」みたいな&lt;strong&gt;意思決定&lt;/strong&gt;や相談事がよく会話の中に出てきます。&lt;/p&gt;
&lt;p&gt;これらはその時の思考プロセスや困っていたことが載っている自分のログです。&lt;/p&gt;
&lt;p&gt;今までは、それらすべてを &lt;code&gt;/clear&lt;/code&gt; で削除していました。&lt;/p&gt;
&lt;p&gt;ある日ふと思いました。&lt;strong&gt;「これ、もったいなくないか？」&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;設計の判断理由、迷った末に選んだ選択肢、その背景にあった考え——そういうものがすべてチャット履歴の彼方に消えていっていたのです。&lt;/p&gt;
&lt;p&gt;これらを残しておけば、自分のログになるのではと思い方法を探しました。&lt;/p&gt;
&lt;h2&gt;どうやって解決したか&lt;/h2&gt;
&lt;p&gt;Claude Codeには&lt;strong&gt;スキル&lt;/strong&gt;という仕組みがあって、自分でカスタムコマンドを作れます。&lt;code&gt;obsidian_cli&lt;/code&gt;（ObsidianをCLIから操作するスキル）を使えば、会話の内容をObsidianに書き込むスキルが作れるんじゃないかと思って、&lt;code&gt;obsidian_memo&lt;/code&gt; というスキルを作ってみました。&lt;/p&gt;
&lt;p&gt;使い方はシンプルで、会話の最後に &lt;code&gt;/obsidian_memo&lt;/code&gt; と打つだけ。会話の要点が自動でまとまってObsidianのデイリーノートに追記されます。&lt;/p&gt;
&lt;h2&gt;使ってみて&lt;/h2&gt;
&lt;p&gt;正直、&lt;strong&gt;いい感じ&lt;/strong&gt;です。&lt;/p&gt;
&lt;p&gt;今まで &lt;code&gt;/clear&lt;/code&gt; するたびに消してきた意思決定のログが、ちゃんと残るようになりました。そのことが少し悔やまれるくらいには有用でした。&lt;/p&gt;
&lt;p&gt;ただ、まだ荒削りな部分もあるので、使いながらブラッシュアップしていくつもりです。&lt;/p&gt;
&lt;h2&gt;これからやってみたいこと&lt;/h2&gt;
&lt;p&gt;面白いなと思っているのが、&lt;strong&gt;記録→活用&lt;/strong&gt;のループ。&lt;/p&gt;
&lt;p&gt;たとえばこの記事も、obsidian_memoで残した会話ログをもとにドラフトを作ってもらいました。意思決定の記録が蓄積されていくと、「過去の自分がどう考えていたか」をAIに読ませて振り返ったり、考えをまとめるときのたたき台にしてもらったりできそうですね。&lt;/p&gt;
&lt;p&gt;自分の思考をAIに見てもらいながら整理していく、そういう使い方が今一番気になっています。&lt;/p&gt;
&lt;p&gt;それと最近考えるのは記憶についてAIのメモリ機能ってもっと人間味があるようにできるのではないかなと考えてます。&lt;/p&gt;
</content:encoded><author>satbunch</author></item><item><title>AI時代の学習</title><link>https://satbunch.com/posts/study_for_ai</link><guid isPermaLink="true">https://satbunch.com/posts/study_for_ai</guid><pubDate>Thu, 16 Apr 2026 00:00:00 GMT</pubDate><content:encoded>&lt;h1&gt;AI時代における学習について&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;AIは開発を速くするけど、学習を遅くしているんじゃないか。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;最近よくこのことについて考える。AIによって開発速度は上がった。だが、エンジニアとしての力はそれと相対して上がっているのだろうか。&lt;/p&gt;
&lt;p&gt;おそらくは上がっていないだろう。自分で業務を行っていてよく分かる。&lt;/p&gt;
&lt;p&gt;AI以前は実装においてわからない箇所があれば、自分で調べ、試し、実装していた。少し遠回りだが、それによって技術や言語に対しての理解も深くなっていったに違いない。&lt;/p&gt;
&lt;p&gt;しかし、今では実装はすべてAI任せ、自分が理解していない表現やライブラリでもAIが書いたコードを動かしてみて動けばそれでよし。動かなければエラーメッセージをAIに渡して修正してもらう。&lt;/p&gt;
&lt;p&gt;これでは理解もへったくれもない。&lt;/p&gt;
&lt;h2&gt;AIは開発を加速させるが、学習は？&lt;/h2&gt;
&lt;p&gt;AIを使えばアプリケーションはどんどん作れる。以前ならミドルクラスのエンジニアが担っていたようなスピードで、質はどうであれジュニアでも仕事をこなせてしまう。&lt;/p&gt;
&lt;p&gt;でも、それは本当に「成長している」と言えるんだろうか。&lt;/p&gt;
&lt;p&gt;ある論文※1 によるとAIを使わずに実装するのとAIを使って実装するのでは、&lt;strong&gt;学習という観点ではAIを使わない方が優れている&lt;/strong&gt;らしい。自分でつまずいて、調べて、理解する——そのプロセスが抜け落ちてしまうんだと思う。&lt;/p&gt;
&lt;p&gt;AIのお陰で開発の速度は上がったが、人間が考えなくなってしまった。&lt;/p&gt;
&lt;h2&gt;業務スピードはAIありきになってしまっている&lt;/h2&gt;
&lt;p&gt;とはいえ、現実は難しい。&lt;/p&gt;
&lt;p&gt;今の時代、業務に求めるスピード自体がAIありきのものになってしまっている。「AIを使わない」という選択肢は、個人の学習としては正しくても、チームや会社での業務という文脈ではなかなか取れない。&lt;/p&gt;
&lt;p&gt;この矛盾をどうするか。&lt;/p&gt;
&lt;h2&gt;答えは「AIを使わない時間をどう確保するか」&lt;/h2&gt;
&lt;p&gt;自分が出した答えとしては、&lt;strong&gt;AIを使わない学習の時間をいかに意図的に取るか&lt;/strong&gt;ということだ。&lt;/p&gt;
&lt;p&gt;業務ではAIをフル活用する。でも、プライベートの学習では意図的にAIを封印する。その切り替えが、今の学習には必要なんじゃないかと思っている。&lt;/p&gt;
&lt;p&gt;そして、AIが全盛の今だからこそ、基礎が重要だと感じている。&lt;/p&gt;
&lt;p&gt;AIはコードを書いてくれるけど、&lt;strong&gt;なぜそのコードが動くのか&lt;/strong&gt;を理解するのは人間だ。言語の仕様を知っていれば、AIが生成したコードの問題に気づける。OSの概念を理解していれば、パフォーマンス問題の原因を見抜ける。&lt;/p&gt;
&lt;p&gt;AIの出力を正しく評価できるエンジニアになるために、基礎知識はむしろ今まで以上に価値が高くなっていると思う。&lt;/p&gt;
&lt;p&gt;おそらくはそこが、今現在ジュニアと呼ばれるレベルのエンジニアたちの中で差別化されていく要因の一つになっていくと思う。&lt;/p&gt;
&lt;h2&gt;まとめ&lt;/h2&gt;
&lt;p&gt;自分なりの結論はこんな感じだ。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;業務ではAIを積極的に使う&lt;/li&gt;
&lt;li&gt;個人学習ではAIを意図的に使わない時間を作る&lt;/li&gt;
&lt;li&gt;基礎（ネットワーク・OS・言語）を地道に固める&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;AIに使われるのではなく、AIを使いこなす側になるために。そのために必要なのは、逆説的だけど「AIなしで考える時間」なんじゃないかと思っている。&lt;/p&gt;
</content:encoded><author>satbunch</author></item></channel></rss>