おもこん

おもこんは「思いつくままにコンピュターの話し」の省略形です

Zennへの引っ越し

Zennとは

Zennは技術関連の記事の公開プラットホームです。 内容がIT技術のブログだと思えば良いと思います。

Zennへの引っ越し

おもこんは、Zennへ引っ越しすることにしました。 引っ越しといっても、過去の投稿はそのまま「はてなブログ」に残します。 新規投稿をすべてZennで行うということです。

zenn.dev

今後はこちらのリンク先をご覧になってください。

ブログの引っ越し作業について

ブログをあるプラットホームから別のそれへデータ全てを移行することを「引っ越し」といいます。 実は「おもこん」全体をZennに引っ越すことも考えていました。 同じくもうひとつのブログの「マレーシア・ペナン島日記」はnoteに引っ越そうと思っていました。

ところが、実際に作業をはじめてみると、そう簡単ではないことがわかりました。 そのことはZennの最初の投稿に書きましたので、興味のある方はごらんください。

結局、これまでの「はてなブログ」の記事はそのまま残すことになりました。 いわゆるアーカイブになります。

読者の皆様、今後はZennでお会いしましょう。

プライバシーポリシー

(※)以下の文章は、このブログの固定ページに書かれていたものです。 先のことになりますが、2028年6月に、私の「はてなブログPro」契約が終了することに伴い、固定ページが無くなります。 そこで、あらかじめ、こちらのページに固定ページのコピーを掲載することにしました。 その内容は「おもこん」ブログのプライバシーポリシーです。

当ブログ「おもこん」におけるプライバシーポリシー

当ブログにおけるプライバシーに関する事項が2025年3月12日より変更になりました。 これは、ブログ内の広告掲載を取りやめたことによるものです。

  1. 当ブログでは、2025年3月12日よりGoogle Adsense による広告掲載を終了しました。
  2. それにともない、Google Analyticsによる個人を特定できない形での情報収集も終了しました。
  3. 第三者企業によるクッキー(Cookie)、画像ファイル(ウェブビーコン)の利用も終了しました。

今後、当ブログでは読者の皆様の情報収集(個人を特定しないものも含む)を行うことはありません。

ブログ作成者への連絡について

当ブログのプライバシ―ポリシーについてのご質問は、メールにてお願いいたします。 メールアドレスはサイドバーの「このブログについて」をクリックすると表示されます。

GtTK4チュートリアルのアップデートにAIを活用

GTK4チュートリアルのアップデート

しばらく前に、GTK4チュートリアルのアップデートについて書きました。 そのときは、チュートリアルをGFM (GitHubのMarkdownである GitHub Flavored Markdown)、HTML、PDFに変換するRubyプログラムが中心のアップデートでした。 その後、本文のアップデートを行い、昨日までにかなり大幅なアップデートをしています。 まだ、途中ではありますが、このチュートリアルの最初の部分であるテキストエディタの作成を書きかえました。 セクションも3つほど増えています。

この作業の中で、以前の版にかなり問題があったことが判明しました。 それらはすべて新しい版では改善されています。

  1. ダイアログは以前から最新のものを使ってはいました。Alert Dialog, File Dialogなどです。 しかし、その結果をシグナルで返していました。 これは古い方法です。 すべて、finishコールバックを使う方法に切り替えました。
  2. カスタム・エラーについて新たに加えました。
  3. ひとつのセクションでひとつの事柄を書くように整理しました。
  4. プログラムのバグ取りと、よりGTKらしい書き方にスタイルを変更しました。

詳しいことは、チュートリアルを読んでもらえばわかると思います。

しかし、プログラムでカスタム・シグナルが不要になったため、シグナルの解説が無くなってしまいました。 これは、今後、別に、シグナルのセクションを付け加える予定です。

AIの活用

今回の改定ではAIをフル活用しました。

  • プログラムの問題点をAIでチェックしました。 これにより、バグの早期発見、そして、よりGTKらしい書き方に変えることができています。
  • 英語の質向上。英語については、かなりAIを活用しました。 英語を書いてからAIにチェックしてもらう、日本語を英語に訳してもらう、などの使い方をしました。

しかし、これらの中でAIに頼り切らないことが大事です。

  • AIも間違うことがしばしばあります。また、AIがプログラムの間違いを見逃すことも多々あります。 ですから、AIを信用しきらない方が良いです。 この間使ってみると、プログラムについてはClaudeが一番良かったように思いました。 しかし、これもどんどん変わってくる可能性があり、GeminiやChatGPTも性能が向上していくと思います。
  • 英語については、主にGeminiを使ったのですが、文章のトーンには気をつけました。 過度に堅い文章にならないように、さりとてカジュアルになりすぎないように、とプロンプトを工夫しました。 読んでみてから、これではだめだと思うときもありました。 特に、日本語を英語に訳してもらうと、直訳調になって、自然な英語になりません。 おそらく、その直訳調をもう一度AIにかけて自然な英語にすると良いかもしれません。

いずれにせよ、AIはチュートリアルの執筆に大いに役に立ちました。

今後AIが進化すると、チュートリアルそのものが必要なくなるかもしれません。 なぜなら、プログラム方法が分からなかったらAIに聞けば教えてもらえるからです。 ただ、体系的なチュートリアルは、AIだけではカバーしきれないかもしれません。 なぜなら、AIの回答のサイズには限界があり、チュートリアルのような長文は出力できないからです。 この点が改善されないと、AIがチュートリアルを出力するのは難しいでしょう。

今後について

チュートリアルのアップデートに時間を使うため、他のことを犠牲にした面がありました。 このブログの更新もできなかったのは、そのせいです。 しばらくは、アップデートを休み、他のことに時間を使いたいと思っています。

ですので、次回のチュートリアルのアップデートには、少なくとも1ヶ月はかかると思います。 また、アップデートが終わったら、ブログでお知らせしたいと思います。

整備済みノートパソコン

アマゾンで「整備済み品」のノートパソコンFUJITSU LIFEBOOK U939を24800円で買いました。 今日、アマゾンを見たら、同等品が19800円で売られていたので、少しがっかり。

アマゾンの「整備済み品」

アマゾンのウェブサイトでは、次のように書かれています。

Amazon整備済み品は、完全に機能するように必要に応じて検査、テスト、整備されているため、信頼できる商品としてお求めいただけます

要するに、中古品だが、必要な整備をしたもので、基本「はずれ」は無いということでしょう。 ジャンクのようなリスクが少ないということですね。 加えて、180日間の返品保証もついています。

FUJITSU LIFEBOOK U939

今回購入したFUJITSU LIFEBOOK U939は、2019年モデルなので7年前の発売です。 7年たてば、パソコンは寿命が来ることが多いです。 全部ダメにならなくても部品の交換が必要になるでしょう。 私のメイン機の2019年モデルのDynabook G7もキーボードなどを交換していますから。

Dynabook G7は元々Windows10でしたが、無料でWindows11にアップグレードしました。 購入したLIFEBOOKはWindows11がすでにインストールされていましたので、その点も良いと思いました。

LIFEBOOK U939は、いわゆる軽量モバイルノートで、重量は777gです。 Dynabook G7の軽さに匹敵するレベルです。

購入の目的

メインのDynabookは、Windows11 + WSL環境のLinuxです。 WSLのLinuxは使いやすいですが、ネイティブのLinuxではないので、GTKのプログラムでは、警告やエラーが出ることがあります。 そこで、ネイティブLinuxマシンが必要になってきました。 LIFEBOOK U939は、ネイティブLinuxマシンとして使います。それが、購入の目的でした。

LIFEBOOKは、最新のノートパソコンから比べるとメモリやストレージがかなり劣りますが、Linuxには十分です。 むしろ最新のハードウェアはLinuxが未対応のこともあるので、ある程度古いマシンの方がLinuxに適しています。

Linuxのインストール

インストールの手順は次の通りです。

  • Windows11のバックアップ。AOMEIのbackupperというフリーソフトで、起動USBを作成し、バックアップイメージを外付けSSDに保存
  • UBUNTUのウェブサイトから、インストールイメージ(UBUNTU 26.04 LTS)をダウンロード
  • USBに書き込むためのフリーソフトBelanaEtcherをダウンロード
  • BelanaEtcherでUSBにインストールイメージを書き込み
  • USBを指した状態でパソコンを起動し、F12キーを押す。ブートをUSBに指定して起動
  • インストール・プログラムの指示に従ってインストール
  • インストール後、USBをはずしてLinuxを起動
  • aptを使って、必要なパッケージを追加でインストール(例えば、gcc, libgtk-4-dev, pkg-config, meson,など)
  • miseとrubyのインストール

こうして書いてみると、結構作業がありますね。 作業に慣れていなかったので、半日程度かかりました。

FUJUTSU LIFEBOOK U939 + Linux OS

個人の感想

整備済み品は、サブのパソコンとして使うなら、良い選択肢だと思います。 あるいはLinuxをメインに使いたい人にも良いでしょう。 ただ、すでに7年という年数を経過している以上、そのまま何年も使えるとは限りません。 おそらく、早い段階で修理が必要になるでしょうから、購入価格以外のコストも考えるべきでしょう。 自分である程度、部品交換などのメンテナンスができる人には、修理コストをかなり下げることができて、良いと思います。

Gtk4-tutorialをアップデート

Gtk4-tutorialをアップデートしました。 今年の1月にはすでに作業を始めていたので、4か月はかかったことになります。 長かったがやっと一区切りついた、というのが今の気持ちです。

アップデートの内容

Gtk4-tutorialの正式な名前は「GTK 4 Tutorial for Beginners」、つまり「初心者のためのGTK4のチュートリアル」です。

GTKは、主にLinuxで用いるグラフィックのためのライブラリです。 移植性を重視しているので、Windowsでも動くと言われていますし、C言語以外でも動きます。 今では本家のドキュメントが整備されていますが、それでも理解の難しいシステムです。

このチュートリアルは大きく2つの部分に分かれています。

  • GTKのチュートリアルそのもの。GTKの解説文書です
  • 文書のソースファイル(.src.mdファイル)を可読な3つのタイプのファイル形式(GFM, HTML, PDF)に変換するRubyスクリプト

今回のアップデートは両方に関わりますが、どちらかといえば、Rubyスクリプトの方に重きがあります。 実際、Rubyスクリプトは一から書き直しました。

今後の課題

今回のアップデートは大きな作業でしたが、すべてを解決したわけではありません。 まだ、文書の内容を改訂する作業が残っています。

  • プログラムに一貫性を持たせる
  • GTKがdeprecatedと指定した関数を新しい関数に置き換える
  • 言葉の使い方の曖昧さを除く
  • より明確で自然な英語に書き換える

まずは、プログラム例に関する改訂を1ヶ月程度で行おうと思っています。 その後に文書の改訂とプログラムの構成の改善で4ヶ月程度を見込んでいます。

世界中の多くの人が見ているチュートリアルなので、改訂作業は大変ですが、頑張っていきたいと思います。

外食と自炊 -- カルボナーラ

アメリカとイスラエルがイランに先制攻撃をしたことから、戦争になりました。 今日、2026年4月27日の時点では、停戦が続いていますが、まだ先行きが見通せません。 この戦争により、イランがホルムズ海峡を封鎖し、日本には一気に原油の供給不安が広がるとともに、物価の上昇が始まりかけています。

そんな中で節約志向が強まっており、そのひとつに食費を切り下げようと考える人が出てきています。 私は、もともと外食はお金がかかると思っていたので、以前から食費の節約を心がけていました。

外食と自炊

外食は、家族や友人などと会食を楽しむには良いですし、家庭ではなかなか作れない料理も提供してくれます。

  • 寿司。良いネタを数多くそろえるのは家庭では到底無理です。
  • 外国の料理。例えばインド料理。そもそも材料を調達するのが難しいです。
  • 創作料理。その店独自の創作料理は工夫が凝らされており、他では味わえないものです。

このようなプラス面があるので、外食は魅力的です。

しかし、外食は自炊と比べ、お金がかかるのが困る点です。 自炊すれば、コスト的には半額程度で同じものが食べられると思います。 問題は、料理と後片付けが面倒なこと、そして、そもそも美味しい料理が作れるかどうか、ということです。

カルボナーラを作ってみて

今日はお昼にカルボナーラ・スパゲッティを作ってみました。 ざっと費用を考えてみたら、一人分が約300円でした。 外食したら、1000円近くかかると思います。

自炊の場合は、最高のものを作ろうとしない方が良いと思います。 ほどほどのものができれば、それで満足する、そのことによって長続きするのだと思います。 また、できるだけシンプルに作ることも大事で、面倒になればなるほど、続かなくなります。

カルボナーラ(風)のレシピ

私は、スパゲッティを作るコツは、オリーブオイルとニンニクを使うことだと思います。 これは、アーリオ・オーリオとか、それを短くしてアリオリというソースです。 唐辛子を入れてペペロンチーノにしても美味しいです。

カルボナーラは、本来アリオリを使わないようですが、アリオリを使っても美味しかったです。 ですので、ここで書くレシピは「カルボナーラ風」「カルボナーラもどき」(一人分)です。 でも、簡単に作れます。

  • 大きめの鍋に水を入れて火にかけます。塩を加えます(けっこう多め)。煮立ったらスパゲッティを茹でます。その間に以下の4項目を平行して進めておきます
  • フライパンに(オリーブオイル少々を入れても良い)ベーコンを入れ、こんがりするまで炒め、取り出します
  • フライパンにオリーブオイル(大さじ1~2程度)とにんにく(みじん切り、または薄くスライス)を入れ、弱火から中火で温めます。オイルにニンニクの香りが移るまで炒めます。火が強すぎるとニンニクが焦げてしまうので注意が必要です。できあがったら、火を止めます
  • 卵1個をボールに入れ、ほぐしておく
  • ゆであがったスパゲッティと、とっておいたベーコンをフライパンに戻し、絡めます。フライパンが冷めていたら、火をつけて温めながら混ぜると良いです(たぶん)。塩味が足りなかったら足します。また、胡椒(黒コショウが最も良い)をかけます
  • 火を止めます。少し冷まします(30秒くらい?時間は適当です)。卵をフライパン全体にかけて、混ぜます。この時、フライパンの温度が高いと卵が固まってスクランブルエッグのようになってしまうので、注意してください。でも、私の妻はスクランブルエッグ状の方が好きです。このへん、十人十色ですから、卵が固まっても失敗などとは考えなくて良いです
  • お皿に盛ってできあがり

2、3回作ってみれば、段取りも良くなって、30分かからずにできると思います。 洗い物も、なべ、フライパン、ボール、皿、フォークだけですから、簡単です。

玉ねぎが好きな人は、ベーコンを痛めるときに一緒に炒めると良いです。 自分は先に玉ねぎを炒めてからベーコンを入れます。 なぜなら、玉ねぎは良く炒める方が甘さが出て美味しいからです。 キノコが好きなひとは、同じくベーコンを痛めるときに入れても良いです。 ただ、キノコは火の通りが良いので、少し短い時間で良いと思います。

要するに自分で食べるのだから、好きなものを何でも入れて、全然構いません。 やりすぎて、カルボナーラではないようなものになっても、そんなことはどうでも良く、美味しければ良いのです。

写真は・・・撮り忘れました。

もっと美味しく作りたい場合

もっと美味しい作り方を追求したい場合は、YouTubeなどにたくさん「カルボナーラの作り方」が出ていますので、それを見てください。 でも、人に食べてもらうのではなく、自分で食べるのであれば、そこまで追求しなくても良いのではないでしょうか。 自分で作ったものは、多少下手でも、美味しく感じるものです。

「はじめてのJekyll + GitHub Pages」の改訂版

おもこんの投稿がすっかり滞っており、誠に申し訳ございません。

2年半ほど前からマレーシアに2年間住んでおり、昨年10月に帰国しました。 その間については、別のブログ(マレーシア・ペナン島日記)をご覧ください。

マレーシアでは、プログラミングから遠ざかっていました。 帰国後に再開しましたが、この2年のブランクが大きく、今でもそれを取り戻せずにいます。

しかし、何もしなかったわけではありません。 はじめてのJekyll + GitHub Pages (第2版)は、全面的に書き直しました。

それにおよそ3か月かかりました。 実は、旧版にはかなり誤りがありました。 今回の改訂版は、一から全部書き直したものです。 JekyllとGitHub Pagesを使い、無料でウェブサイトを構築することに関心のある方には、参考になるチュートリアルになったと思います。

現在は、Gtk4-tutorialの改訂を進めていますが、まだ公開できるところまで来ていません。 6月頃にはアップデートを公開できると思います。 チュートリアルの内容はほとんど変わりませんが、Rubyスクリプト(ドキュメントを生成するプログラム)の方は全面的に書き直しています。

今回は近況報告だけですが、今後は「おもこん」の方も定期的に書いていきますので、どうぞよろしくお願いいたします。