Skip to content

Instantly share code, notes, and snippets.

@smeghead
smeghead / tdd-tutorial.md
Last active October 1, 2025 06:28
テスト駆動開発(Test-Driven Development)入門

テスト駆動開発(Test-Driven Development)入門

Note: 社内のTDDを知らない人向けに、TDDの基本説明とデモを行なう機会があり、その時に使った資料です。

テスト駆動開発


動作するきれいなコード

@smeghead
smeghead / runbook-json-schema.md
Created August 20, 2025 02:07
runbook YAML の JSON Schema 化 方針メモ

runbook YAML の JSON Schema 化 方針メモ

背景

  • runn のシナリオ(runbook)は YAML で記述されるが、
    記法が複雑になってきており どんなキーや型が許されるか分かりづらい
  • バリデーションや補完のために JSON Schema を用意したい。
  • しかし「既存の YAMLを収集 → サンプルから逆生成」だと メンテナンス性に課題がある。

@smeghead
smeghead / 4o.md
Last active August 13, 2025 14:49
GPT-4o廃止騒動をどう読むか――社会実験としてのChatGPT

GPT-4o廃止騒動をどう読むか――社会実験としてのChatGPT

(ChatGPTに書いてもらったものです)

2025年8月、OpenAIは新モデルGPT-5を導入し、従来のGPT-4oを含む複数の旧モデルを廃止した。これにより、多くのユーザーは慣れ親しんだ“相棒”を失ったような感覚を抱き、SNS上では大きな反発が広がった。OpenAIは急遽、GPT-4oを有料プラン限定で復活させる対応をとったが、この騒動を単純に「判断ミス」と捉えるのは早計だろう。

ChatGPTは、単なる製品提供にとどまらず、生成AIを社会に晒す大規模な実証実験としての側面を持っている。 生成AIは、同じ入力でも出力が揺らぎ、会話の文脈や応答スタイルまで変動する。このような特性は、既存のツールとは根本的に異なり、「正しい使い方」もまだ確立されていない。したがって、あえて汎用的な「チャット」という形で広く公開し、ユーザーが自由に試行錯誤する場を提供することには大きな意味がある。

モデルの差し替えは、その社会実験の一部と考えられる。今回の廃止と反発は、ユーザーがAIに抱く“人格性”や“親しみ”の強さを可視化した。 これは「性能の良し悪し」だけでは説明できない反応であり、AIのUX設計において重要なデータだ。OpenAIは、単に技術的性能を高めるだけでなく、人間との感情的つながりをどう扱うかという課題に向き合うことになる。

@smeghead
smeghead / think-hard.md
Created June 3, 2025 07:46
新作落語「たくさん考えて」

新作落語「たくさん考えて」

(*場面:町の相談屋。AIにハマっている男が相談にやってくる*)

へぇ〜い、いらっしゃい。今日はどうされました?

「実はね、ご隠居さん、最近“生成AI”ってのを使い始めましてな」

ほほぅ、それは流行りのやつじゃな。なんでも聞けば答えてくれるとか?
@smeghead
smeghead / AI生成コンテンツが招く「人間の能力鈍化」リスク.md
Created May 13, 2025 02:03
AI生成コンテンツが招く「人間の能力鈍化」リスク

AI生成コンテンツが招く「人間の能力鈍化」リスク

消費者の目が鈍る「AIコンテンツ慣れ」現象

近年の調査によると、AI生成コンテンツへの過剰な曝露が消費者の審美眼を低下させる可能性が指摘されています。50%の消費者がAI生成広告を「無機質」と感じ、26%は「ブランドが人間味を失った」と認識する傾向があります[^1][^9]。特に16-24歳の若年層では、人間が作成したコンテンツを55%が「より魅力的」と評価する一方、AI生成コンテンツへの日常的な接触が「品質基準の低下を自然に受け入れる」心理を生み出す危険性があります[^9][^12]。

この現象は「AIコンテンツ慣れ」と呼ばれ、大量の均質化コンテンツに囲まれることで、ユーザーが「表面的な完成度」と「本質的な価値」を区別できなくなるプロセスを指します。マイクロソフトの研究では、AIを頻繁に使用するユーザーほど「批判的思考力が23%低下」するというデータも示されています[^7][^11]。

@smeghead
smeghead / VariableHardUsage.md
Last active April 4, 2025 14:24
Variable Hard Usage: A Metric for Local Variable Utilization in PHP

Variable Hard Usage: A Metric for Local Variable Utilization in PHP

Introduction

Code readability and maintainability are crucial aspects of software engineering. While numerous techniques exist to improve software structure—such as architectural design, modularization, and testability—this document focuses on a micro-level metric that directly impacts code comprehension: Variable Hard Usage (VHU).

Variable Hard Usage is a quantitative measure of how intensely a local variable is utilized within a function or method. By analyzing a variable’s scope (the number of lines it spans), access frequency (how often it is referenced), and update frequency (how often its value is modified), this metric aims to identify overused variables that may degrade code readability and maintainability. High VHU values indicate that a variable is being excessively manipulated, making the code harder to read, understand, and modify.

Importance of Measuring Variable Hard Usage

@smeghead
smeghead / php-variable-hard-usage-check-mode.md
Created March 25, 2025 11:51
CIでローカル変数酷使度をチェック可能にする

修正方針: CheckCommand の追加

ご提供いただいた情報に基づき、CheckCommand を新たに追加する方針を具体化します。

修正が必要な主な箇所

  1. CheckCommand クラスの作成
  • CommandInterface を実装する新しい CheckCommand クラスを作成
  • --threshold=<値> オプションを処理する機能を実装
@smeghead
smeghead / qubit.md
Created December 30, 2024 13:54
キュービット(量子ビット)と関数型言語の型理論の類似点

質問: キュービットの性質は、進んだ関数型言語の型理論に似ているように感じましたが、的外れでしょうか?

ChatGPTの回答: 非常に鋭い観察です!キュービットの性質を型理論と関連付けて考えるのは、興味深く、ある意味で的を射ています。特に、進んだ関数型言語の型理論における概念(例えば代数的データ型やモナド)とキュービットの性質を比較すると、いくつかの共通点が見えてきます。一方で、本質的な違いもあるので、以下で整理してみます。


1. キュービットの性質と型理論の類似点

(1) スーパーポジションと型の柔軟性

@smeghead
smeghead / lubuntu-setup.md
Last active January 4, 2025 12:36
Lubuntu の初期設定

Lubuntuのセットアップ

2024-11-09 Lubuntuのセットアップをするので、作業内容を記録します。

CapsLock

XKBOPTIONS="ctrl:nocaps" の行を追加する。

$ cat /etc/default/keyboard 
@smeghead
smeghead / phel-tdd.md
Last active September 12, 2024 11:02
phel-lang で小さいプログラムを作る方法 (TDD)

phel-lang で小さいプログラムを作る方法 (TDD)

phel-lang を使って小さいプログラムを作るのをTDD(テスト駆動開発)で進める場合に、どのように作成しているかを順番に書いてみます。

作るものを決める

一次元セル・オートマトンでフラクタル図形を描画することができるというのがおもしろいと思い、phel-langで実装してみることにしました。

1次元セル・オートマトン | Wikipedia