D’où venons-nous ?
Que sommes-nous ?
Où allons-nous ?

  • Bug Hotel/虫のホテル

    Dsc_12443600
    薫風香る皐月の日曜日、風がとても気持ちいい。
    ちょうどバラの季節だけれど、うちのバラは、咲いたとおもったら、あっという間に散ってしまった。
    そろそろ夏の植物に登場し活躍してもらおうと思い、近所の園芸店に行ってきて、マリーゴールドとゴーヤの苗を買ってきた。今年もゴーヤのグリーンカーテンで、きっと暑くなるであろう夏を乗り切りたい。そのグリーンカーテン、毎年同じ篠竹を使ってを作ってきたけれど、さすがにくたびれてきた。今年は新しいものに替えることにした。
    では、使い古した篠竹はどうしよう?
    そうだ、バグホテルにしよう!昨日、YouTubeでたまたま見かけた「The Clever Reason Smart Gardeners Hoard Plastic Pots」という動画で紹介されていて、とても面白そうだった。ゴーヤの苗が入っていたポットに、古い篠竹を10センチほどに切って詰め、その間に枯れたビオラの花や茎も入れてみた。即席だけど、なかなか良い雰囲気のホテル。
    バグホテルにやって来る虫の種類が増えて、この庭の生物多様性が高まれば、庭全体がもっと元気になるのではないか――そんな期待を抱いている。園芸店からの帰り道、よく周りを見てみると、アゲハやシジミが飛び回っていた。うちのバグホテルにもお客さん、来てくれるかな。いいお客さんだといいのだけど、もし困ったお客さんだったらどうしよう……

  • EmacsとChatgptの良い関係

    20250302-130814

    これまでは、エディタとしてのEmacs。
    特に不便を感じたことはなかったが、ChatGPTアプリを使っているときに、ふと考えた。Emacsの拡張機能はLispで書かれている。 このLisp、人工知能(AI)開発のために生まれた言語。と、大学4年のときにReduce特論で東大の後藤英一先生から教わった。それなら、LispでAIシステムを開発してきた人たちは、EmacsからChatGPTをどう活用しているのだろう? そんな疑問が湧いてきた。
    調べていくうちに、LaTeXの大家・奥村晴彦さんのページにたどり着いた。
    > EmacsでLLMを使う: chatgpt-shell
    奥村さんは、既にEmacs上でOpenAIのAPIを使ってChatGPTを活用していた。
    `.init.el`に以下のように記述するだけとのこと。
    “`elisp
    ;; ChatGPT!
    (use-package chatgpt-shell
    :ensure t
    :custom
    (chatgpt-shell-openai-key (getenv “OPENAI_API_KEY”)))
    “`
    OpenAIとAPI利用契約を結び、APIキーを発行してもらい、
    `.bash_profile`などに環境変数を下記のように設定する。
    “`bash
    # OpenAI API Key
    export OPENAI_API_KEY=”xxxxxx”
    “`
    あとは、Emacsを通常通り起動して
    `M-x chatgpt-shell`
    と入力すれば、ChatGPTとの対話バッファが開くらしい。
    なんだ、こんなに簡単でいいのか! しかもAPIごとの課金で、課金単位も自分で設定できるので安価!
    と、驚いた。
    物事の本質をよく知る人は、最短ルートを知っている。
    あらためて、それを実感した。
    ただ、自分の環境(Apple Silicon Mac)でchatgpt-shellを動かせるEmacsをビルドするのは一筋縄ではいかなかった。.init.elに上記の記述を追加してEmacsを起動すると、Emacsが起動しない。 バッファにはエラーメッセージが表示されていた。どうやらTLSが必要らしい。 今までビルドしてきたEmacsはローカルリソースにアクセスできれば十分だったのでOpenSSLやGnuTLSをリンクから外していた。 API連携を使うならTLSは必須だし、Emacs Lispの追加パッケージもELPA経由で取り込む場合TLS通信は必須。
    GnuTLSをリンクしたEmacsをビルドするには、GnuTLSをMacにインストールしなければならない。
    ここで一苦労した。
    “`bash
    brew install gnutls
    “`
    とHomebrewでGnuTLSをインストールしても、`configure`コマンドでエラーになる。
    結局、Apple Silicon Macであることが原因だったようだ。
    Brew環境は以前使っていたIntel Macから移行してきたものだったため、悪影響が出ていた。
    一度、Homebrew環境を全て削除し、再インストールした。
    これで無事にビルドが通った!
    “`bash
    $ cd ~/emacs # Emacsのソースディレクトリへ
    $ make distclean
    $ ./autogen.sh
    $ ./configure –with-ns –without-x –disable-ns-self-contained –with-gnutls –without-webp –without-rsvg –without-png –without-gif –without-tiff –without-jpeg –without-xpm –without-lcms2
    $ make
    $ sudo make install
    “`
    こうして、chatgpt-shell生活が始まった。
    使い始めてみると、非常に快適!!!
    20250429-205647

  • バックアップ地獄は、つづく

    Dsc_1236small
    いつの間にか、桜の花のことも話題にならなくなり、八重桜でさえ、もう、葉桜、ようやくゴールデンウィークらしい天気になってきた。
    今朝目が覚めたら、そとの空気がすがすがしく、鳥の声も聞こえたので、窓を開けて、外気をとりいれて、しばし、ボーッとしてみた。
    昨日、dittoコマンドで、ホームディレクトリ配下を外付けHDDにバックアップした。
    sudo ditto -v $SRC $DST 1>log$DATE.txt 2>&1
    ゴールデンウィークのころになると、データーのバックアップをとりたくなる。
    今朝、ログを確認した。Operation not permittedがけっこうでていた。
    ditto: ./Pictures/写真 Library.photoslibrary: Operation not permitted
    あれれ、sudoで実行したはずなんだけどな。。。
    バックアップ地獄は、つづく、かなあ。
    ChatGPTにきいてみた。
    ご質問の内容から判断すると、`sudo`(管理者権限)で`ditto`コマンドを使っているにもかかわらず、 Operation not permitted` と表示され、一部バックアップできていない状況のようですね。これは**macOSのセキュリティ機能(特にSIP: System Integrity Protectionやフルディスクアクセス制限)**が影響しています。macOSでは、rootユーザー(`sudo`)であってもアクセスできないフォルダ・ファイルが存在します。`写真ライブラリ`(`Photos Library.photoslibrary`)はその代表例です。
    ### 対応策
    #### 1. ターミナルに「フルディスクアクセス権」を与える
    1. `システム設定` → `プライバシーとセキュリティ` → `フルディスクアクセス`
    2. 一覧から「ターミナル」が**ON**になっているか確認
    – 無ければ「+」ボタンから追加
    sudo`で実行していても「ターミナル」自体がフルディスクアクセスを持っていない場合は意味がありません。
    また、セキュリティ!!!
    あーーーーーーーーーーー。

  • Jeanne Moos, CNN…

    Dsc_1229
    そう、CNNのJeanne Moosさん
    ■CNN公式ページ
    社会人生活の三年目くらい、まだ、独身だった頃。毎朝、テレビ朝日が放映していたCNNの番組“CNNデイブレイク”を録画してみていた。MCの小西克哉さん、川瀬真真由美さん、この二人の掛け合いもおもしろかった。
    CNNというと湾岸戦争や、貿易摩擦など、国同士のきらびやかな外交問題の報道で有名だけど、私がこの番組の中で、今でも覚えているのは、街角のほんの些細な出来事をレポートし続けていたJeanee Moosさんのレポート。ちょっと皮肉、いや、ウイットが効いていて、耳に心地よかった。
    英語に慣れるきっかけを与えて暮れたし、米国人の日常の様子が垣間見られて面白かった。
    まだ、CNNに在籍しているのかと、wikipediaを調べてみたら、昨年の6月に引退されたらしい。こういうレポートをしてくれる人、今は、いないし、CNNのニュースカテゴリからも消えていったようだ。寂しいことだ。
    CNN LOSES THE BEST
    Jeanne Moos Calls It Quits
    いま、彼女のレポートがyoutubeに動画が残っている。そこで再開できる。
    CNN35周年の中で興味深い作品
    Almost 35 years of wacky work at CNN
    彼女が、ミスターサスペンダー、ラリー・キングの次に有名な記者として紹介されていた。
    その他、彼女らしい報道の動画も見つけた。
    北極低気圧渦が全米を凍らせた
    Polar vortex didn’t freeze Moos’ funny bone
    ものすごく真剣にイヌが水を飲む様子を分析した
    The strangest thing about your dog is …
    タコベルのタコスは、ビーフといっていいのか?
    A beef with Taco Bell
    これもフライ・フィッシュ?
    You won’t believe what he uses to catch this fish

  • 生成AIとワインバークの場の量子論を輪読する

    Dsc_1222
    生成AIと協力しながら数式の証明を進め、その過程で理解を深めていくワークフローを見つけたかもしれない。証明内容をMarkdownで書き起こし、最終的には印刷・精査・公開までを行えそうだ。
    1. 数式の証明に挑戦する
    ・Visual Studio Code(VSC)を使って証明したい数式をMarkdown形式で記述する。
    ・ChatGPTにその数式の証明を依頼する。
    ・返ってくる内容には、それっぽいけれど微妙に間違った説明が混ざっていることが多い。
    ・返答はMarkdown形式、じっくり読むために印刷したくなる。
    ・しかし、Markdownはそのままではきれいに印刷できない。
    ・VSC拡張機能として人気のあるMarkdown to PDFは役に立たなかった。
    2. MarkdownをHTMLに変換して印刷する
    ・VSC上でGitHub Copilotとチャットし、MarkdownをHTMLに変換するPythonスクリプトを生成してもらう。python3.6から導入されたf文字列は知らなかった。
    ・提示されたスクリプトの動作を確認するため、Python仮想環境を構築し、必要なパッケージ,markdown,markdown_katexをpipインストールする。
    ・VSCでスクリプトを編集・保存し、自分の環境で実行できるようにする。
    ・MarkdownファイルをHTML形式に変換し、ブラウザで開けるようにする。
    3. 証明の内容を精査する
    ・生成したHTMLをブラウザで開き、数式を含む内容を紙に印刷する。
    ・紙面上で証明の構成や論理の流れを精査し、問題点や改善点を洗い出す。
    ・精査結果を元に、VSC上でMarkdownファイルを修正・ブラッシュアップする。
    ・修正を重ねて、数式と文章が整った、完成度の高い証明文ができあがる。
    4. 成果を公開する
    ・最終的に生成されたHTMLを自分のブログに掲載し、証明の成果として公開する。
    5. Pythonスクリプトも見直す
    ・保守性や再利用性を高めるために、使用したスクリプトをCopilotに再度依頼してリファクタリング->md2html.py。
    ・提案されたスクリプトを自分の環境でテストし、動作を確認する。
    生成AIと共に数式を扱う過程だった。生成AIとの対話は輪読で他の人と意見を交換する行為に近いかもしれない。ただ、場の量子論という、物理をやっているのに、数学をやっているのか、ITをやっているのか、よくわからなくなりそうな沼がある。でも、場の量子論の理解を深める新たな学びのプロセスになりそうだ。AIとの対話の中に、小さな誤りも含めて多くの「気づき」があり、それをどう取り込むかが新たな面白さのひとつだった。
    と、生成AIに校正をしてもらいながら書いてみた。なんか、自分の文章でない。味気ない。。。

  • ピエール・ブーレーズ・フェスティバル 東京 1995

    Dsc_12182
    四月に入ってから天候が安定しない。
    20℃を越える温かい日と10℃に満たない寒い日が繰り返しやってくる、体に負担が大きい。今のところは体調に異常がないけど、後からあらわれてくるのかもしれない。
    家の中を整理していたら、結婚したばかりで子供がいなかったころに行った演奏会のパンフレットがでてきた。20世紀の現代音楽家、ピエール・ブレーズが1995年5月に開催した、ピエール・ブーレーズ・フェスティバル in 東京 1995。ものすごく分厚い。ポリーニ、クレーメル、バレンボイム、シカゴ交響楽団、ロンドン交響楽団と、いまでは、こんな人たちが集まれるわけがないという人たちが、1995年5月に東京に集まっていた。
    主催の梶本音楽事務所には、当時の記録が整理されていた。さすが。
    「ピエール・ブーレーズ・フェスティバル in 東京」25周年を迎えて── その思い出(1)
    追悼ピエール·ブーレーズ 1925-2016
    たしか、マ・メール・ロアを初めて聞いた。演奏のことをすべては覚えていない、曲の詳細は忘れているものの、なんとなく覚えている。細かいことは意識の世界では覚えていなくとも、意識の奥底まで沈み込み、必要な時に浮かび上がってくる。それこそが教養かもしれない。
    昔は、本当によく、六本木のサントリーホールに出かけた。東京の会社に就職し、社会生活を送るとは、週末に演奏会を聴きにいけることと期待し、希望にあふれていた時代だった。

  • 生成AIとの付き合い方

    Dsc_1184_20250320142601
    マイクロソフトから、メールが届いた。
    From: Microsoft Azure
    Subject: Immediate action required: Convert Azure classic administrator roles to Azure RBAC roles

    Convert to Azure role-based access control (RBAC)
    You’re receiving this additional notice because you use Azure classic administrator roles.
    Azure classic administrator roles were retired on 31 August 2024 and are no longer supported. If you still have active Co-Administrator or Service Administrator role assignments, convert these roles to Azure RBAC immediately.
    Required action
    To avoid service disruptions, convert classic admin roles that still need access to your subscription to Azure RBAC roles immediately.
    If you do not take action, your subscription may become ownerless and you could lose access to it.
    2024/8/31から、Azureクラシカル管理者ロールはサポートが終了しているから、Azure ロールベースのアクセス制御 (Azure RBAC) を使用したAzure リソースへのアクセスに切り替えろ、クラシック デプロイから Resource Manager デプロイにリソースを移行するさもないとアクセスできなくなるぞ。
    と、いつもの通り、一方的な通知のメール。
    なにを?どうすればいい?このメールではサッパリわからない。
    マイクロソフトのlearn “Azure の従来のサブスクリプション管理者” を読んでも、例のマイクロソフト日本語。書いてある文字がサッパリ腹落ちしない。
    しかたがない。
    Azure Portalにログインし、自分に割り当てられているリソースの種類、サブスクリプション、リソースグループ、AppServiceの状態をPortal画面上で確認していった。サブスクリプションの画面にだけ、警告のアイコンがついていて、来たメールと同じような内容が記載されていた。どうやら、このサブスクリプションの管理が、クラシカルだから、Azure RBACに移行しなければいけないようだ。サブスクリプション>アクセス制御(IAM)>従来の管理者と進み、表示された利用者をロールベース管理者に割り当て直した。これでいいはずなのだが、警告アイコンが消えない。まだ、なにか、操作をしなければいけないのか?
    わからない。
    マイクロソフトのlearnを読んでも、わからない。Google検索しても、広告など余計なコンテンツがために必要な情報までたどり着くのに苦労するので、読む気がしない。
    わからない。
    Chatgptに質問してみた。
    Azureで、どのサブスクリプションに従来の管理者がいるかを確認するにはどうすればよいですか?
    Azure で従来の管理者(クラシック管理者)がどのサブスクリプションに含まれているかを確認するには、以下の方法があります。
    方法 1: Azure Portal を使用
    方法 2: PowerShell を使用
    方法 3: Azure CLI を使用
    うんぬん、、、と、でてきた。
    一番シンプルなAzure cliで確認することにした。あとは、chatgptさんの指示に従うだけ
    # Azure Cliのインストール
    $ brew update && brew install azure-cli
    #Azureにサインイン
    $ az login
    # サブスクリプションの一覧を取得
    $ az account list –output table
    Name CloudName SubscriptionId TenantId State IsDefault
    —— ———– ————– ——— ——- ———–
    従量課金 AzureCloud *ce75 *ff0e Enabled True
    # クラシック管理者を確認
    $ az role assignment list –role “Service Administrator”
    Role ‘Service Administrator’ doesn’t exist.
    $ az role assignment list –role “Co-Administrator”
    Role ‘Co-Administrator’ doesn’t exist.
    わかった、ようやく、クラシカル管理者が存在しないことが、わかった。
    Chatgptに支援してもらわなければ、もっともっと、時間がかかっていただろう。いや、放置していただろう。
    最近のネット上では、物事の本質にたどり着くまでの時間、広告や、冗長なテキストなどのノイズを除去し、本質的なシグナルを取り出すまでの時間が、本当に長くなった。このどうでもいい無駄な時間を省くためのツールとして、生成AIは、使える道具かもしれない。決して、ゼロからイチを生み出すことを期待するのではなく、過多な情報のゴミから、一粒のダイアモンドを短時間に見つけるツールとしては使えそうだ。
    生成AIとの付き合い方がようやくわかってきた気がする。

  • 春近し。。。

    今日は、近所の河原まで散歩してみました。春が近づいてきていました。
    Dsc_1170
    河原には、菜の花の畑が広がっていました。堤の上からみると、黄色いジュウタン。とてもキレイでした。晴れた日の様子も見てみたかったです。
    Dsc_1174
    河原におりて、菜の花に近づいてみました。咲いてからだいぶ経っている様子。いつの間に、こんなに咲いたのかと驚きました。そういえば、春の花は黄色い花が多い気がします。私の私感かしら。
    Dsc_1176
    その先、堤の上には、河津桜の並木がありました。だいぶ大きな株の木達です。もう、葉桜に近づき、だいぶ、終盤だったようです。が、沢山の人がいろんな角度から、スマホのカメラに写真を収めていました。
    Dsc_1184
    こちらも、近づいて、桜のぼんぼりをみてみました。花の真ん中が、赤く、花が酔っていました。ソメイヨシノのつぼみがまだ小さいけど、桜の花のリレーが始まったようです。

  • 庭仕事2025 始動!

    Dsc_1137
    今日は、気温が20℃を越え、ずいぶん暖かい。
    久しぶりに、庭にでて、冬の間の剪定を受け、なりを潜めていた鉢植えのバラの様子を確認してみた。そろそろ、バラが芽吹くころ、とは、予想していたが、ついにきた。バラ達も冬の眠りから覚め、活動を開始したようだ。
    Dsc_1146
    赤い芽から、葉が顔を出し始めた。彼ら、ここから、一気に成長を始めだす。
    Dsc_1141
    さあ、今年の庭仕事も本格的に開始だ。バラは芽が乾かないように、気をつけないといけない。チューリップや、パンジーの花の鉢も欲しいところ・鉢たちの世話、水かけも忙しくなるぞ!

  • Emacs 31系にバージョンアップ!

    20250302-130814

    午前中、パシフィコ横浜で開催されたCP2025に出かけた。会場に入場する人たちの行列ができていた。みんな、みるからにカメラおたくさんたちだった。
    帰ってきてからは、emacsの日。日頃お世話になっているエディターemacsヴァージョンアップの日。手順は、昔の自分が作ってくれていた。
    ■Emacs 28系にバージョンアップ!
    ただし、使っているMacBookProは、ArmベースのApple M1 pro。MacOSは、 Sequoia 15.3.1。と,28系の頃とは環境がだいぶ変わったので、手順の変更が必要。
    さて、いきますか。
    まず、githubからcloneしてソースを取得
    $ cd emacs
    $ ./autogen.sh
    $ ./configure –with-ns –without-x –disable-ns-self-contained –with-gnutls=ifavailable –without-webp –without-rsvg –without-png –without-gif –without-gif –without-tiff –without-jpeg –without-xpm –without-lcms2
    $make
    $sudo make install
    とすすめ、
    ・~/bash_profile中の環境変数を変更して、
    EMACSDATA=/usr/local/share/emacs/31.0.50/etc/
    EMACSPATH=/usr/local/libexec/emacs/31.0.50/:
    EMACSLOADPATH=/usr/local/share/emacs/31.0.50/site-lisp/:/usr/local/share/emacs/31.0.50/lisp/
    EMACSDOC=/usr/local/share/emacs/31.0.50/etc/
    $cd
    $source .bash_profile
    $emacs –version
    GNU Emacs 31.0.50
    Copyright (C) 2020 Free Software Foundation, Inc.
    GNU Emacs comes with ABSOLUTELY NO WARRANTY.
    You may redistribute copies of GNU Emacs
    under the terms of the GNU General Public License.
    For more information about these matters, see the file named COPYING.
    はい、完了。
    $ file /usr/local/bin/emacs
    /usr/local/bin/emacs: Mach-O 64-bit executable arm64
    なので、Armベースのネイティブコードとしてビルドできたようだ。
    emacs 28系での手順ではmakeが失敗していた。ldが、画像処理系ライブラリのarm64へのシンボルエラーを繰り返す。HomebrewのCellerにarm64ベースのものが揃っていない様子。始めは、解決方法を、ネットで検索しても、chatgptに問い合わせてみても、的を射った回答が見つからなかった。
    私は、emacsをエディターとしてシンプルに使っている。ゆえに、TLSも、画像処理系もいらない。
    ひとつづつ、不要なライブラリを外していって、makeが通るように落ち着かせたのが実態。なんか、軽い、違和感。
    emacs、なんか画面が速くなった気がする。emacs、私にとっては、料理人の包丁みたいなもの。emacs一本、さらしに巻いて、渡世を歩く。

    20250303