著者が8歳の頃、転校先の学校にあったコンピューター室での体験を振り返る。フロッピーディスクでMS-DOSやLOGOを起動し、限られた時間の中でプログラミングに夢中になった日々。ペンと紙でプログラムを書き、教室で実際に動かす喜び、そしてその後の人生に大きな影響を与えた子供時代のコンピューティング体験が、鮮やかな記憶と共に綴られている。
susam-net
susam-net から 30 件
プログラマの間では「暗号は自分で実装するな」という格言が広く知られている。しかし著者は、ウェブデザインにも同様の戒めが必要だと主張する。独自スクロール、リンクナビゲーション、テキスト選択、パスワードフィールド、日付ピッカーなど、ブラウザが標準で提供する機能を独自実装で置き換えることは、ユーザーにとって馴染みのある操作を壊し、アクセシビリティやセキュリティにも悪影響を及ぼす。とりわけカスタムスクロール挙動とカスタムリンクナビゲーションは顕著な問題であり、GitHubのJavaScriptによるリンク処理もその一例として挙げられている。
5分間のプライムタイム
0.52008年、RSAセキュリティに入社した筆者は素数好きの社風に親しんでいた。ある月例ゲームで「1〜1000の素数を5分でできるだけ多く書け」という課題が出され、スマホからリストを書き写して全168個を正確に記入し優勝。賞金はすぐにピザと飲み物に使われた。今も忘れられない馬鹿げた思い出話。
コメントガイドライン
0.0当サイトにコメントを投稿する際のガイドライン。HTMLやMarkdownの使用が可能で、投稿前にレビューが行われます。記事の内容に新たな知見を加えるコメント、中立・賛成・反対の意見、誤字・エラーの報告、ユーモアのあるコメント、感謝の表現などが掲載対象です。著者の場所で暴言を吐く行為は避け、コメントは全体的なコメントインデックスページにも公開されることに留意してください。
数学の教育法の問題は初等・中等教育に限った話ではない。大学院レベルの教科書でも、証明は概略のみで詳細を欠いており、学生は10行の議論を理解するために10ページもの証明を自ら展開せねばならない。プロの数学者でさえ中間ステップが不明瞭だと感じるケースがあり、教育の質は動機ある学習者の多くを遠ざけている。著者は補足ノートの作成など、より完全でアクセスしやすい教材の必要性を訴えている。
著者は、自身のWander Consoleプロジェクトに追加したリファラル用クエリ文字列機能が、意図しない動作やURL破損を引き起こした経験を語る。Chris Morganの「I've banned query strings」という投稿に触発され、この機能を削除する決断をした。URLは作者の意図した形でそのまま読み込むべきであり、クエリ文字列の勝手な追加は行わないという教訓を得た。
Wander Console 0.6.0 がリリースされました。Wander は、独立したウェブサイト所有者のコミュニティが推薦する興味深いサイトやページを訪問者に紹介する、小さな分散型・セルフホスト型のウェブコンソールです。今回のリリースでは、推薦URLに追加されていた「via」リファラルクエリパラメータのサポートが完全に削除されました。このパラメータはコミュニティの要望で導入されましたが、任意のクエリパラメータをURLに追加することで一部のウェブサイトが正常にページを提供できなくなる問題があったためです。また、ユーザーインターフェースの微調整や修正も含まれています。
RSSからAtomへ
1.0著者が2026年になり、自身のウェブサイトのフィードをRSSからAtomに移行した経緯を綴る。衝動的にCommon Lispで実装した約1時間の作業内容や、UUIDの導入、コンテンツタイプの明示といったAtomの利点について解説。さらに、移行に伴う既存購読者への影響を避けるため、新規投稿のみをフィードに含める暫定対応についても述べている。
QuickQWERTY 1.2.3がリリースされました。QuickQWERTYはブラウザ上で直接動作するQWERTYキーボード向けのWebベースタッチタイピング学習ツールです。今回のリリースでは、前回のバージョンで発生していたフッターのライセンスリンク誤りと、数字キーの分割切り替え時に不要なダイアログが表示されるバグの2点が修正されています。
2026年4月のノート
1.0今月の余暇ノート。タットの定理(s-弧推移的な有限3次グラフはs ≤ 5)の証明をビッグスの『代数的グラフ理論』で学び、詳細に18ページのノートにまとめた。また、群論の剰余類に関する初等的な結果を再考し、その証明を整理。加えて、分散型・自己ホスト型ウェブコンソール「Wander Console」のアップデート(ネットワーククローラー機能など)や、Debian端末でのCtrl+Oによる出力破棄の挙動差についても記録している。
大学時代にタッチタイピングを習得した著者は、長年「1」を左小指で打つ一般的な方法に違和感を感じていた。そこで従来の常識を破り、左薬指で「1」と「2」を打つ独自の方法を自ら訓練。20年の筋肉記憶を克服するのは難しいと思われたが、新しい方法は驚くほど簡単に習得でき、今では新旧両方の方法を状況に応じて使い分けている。
Gitリモートには通常1つのURLを設定するが、同じリモートに複数のURLを追加できる。最初のURLがfetch先となり、すべてのURLがpush先となる。さらにpushurlを個別に設定すると、pushはそのURLのみに送信され、fetchは引き続き最初のURLから行われる。この機能は、プライマリリポジトリを読み取り専用として扱い、ミラーに変更をプッシュするような限定的なシナリオで有用だが、push先とfetch先が不一致になるリスクもあるため注意が必要。
WebベースのQWERTYキーボードタッチタイピング練習ツール「QuickQWERTY 1.2.2」がリリースされました。練習画面の「Restart」リンクが誤ってUnit 1.1に遷移するバグが修正され、現在のレッスンを正しく再開できるようになりました。また、ソースコードのホスティングがCodebergに移転し、MITライセンスのもとで引き続き利用可能です。
今月のメモでは、GodsilとRoyleの『Algebraic Graph Theory』を中心に学んだ数学的考察(ケイリーグラフ、頂点推移グラフ、弧推移グラフなど)と、線形合同法ジェネレータやcatコマンドの行番号付けといった技術的メモを記録しています。
著者が25年にわたるソフトウェア開発のキャリアを振り返り、大学時代のHTMLとの出会い、8086のリセットベクター実験、初めてのエンジニアリング仕事、スパゲッティコードのデバッグ、セットトップボックスでのウィジェット開発、RSAでのキャリア転機、CTFイベントでの優勝など、技術者としての成長と学びを綴った個人的な物語集。
ZNCからSojuへ
1.0著者はIRCバウンサーをZNCからSojuに切り替え、Debianでの簡単なインストールと設定、自動的な構成ファイルのセットアップに満足している。ZNCでは手動で設定ファイルや証明書を管理する必要があったが、Sojuではパッケージインストールだけで準備が整い、SQLiteデータベースに設定が保存される。
Soju IRCバウンサーのユーザー削除時に求められる確認トークンは、ユーザー名のSHA-1ハッシュの最初の6文字から生成される。この仕組みを理解することで、削除プロセスを自動化する方法を紹介する。
1997年にIBMのDeep Blueに敗れたカスパロフの落胆を振り返りつつ、チェスでは人間同士の対局が依然として価値を持つ一方、プログラミングではプロトタイプ作成が芸術ではなく実用と見なされるため、プログラマーは同じような保護された空間を得られないと指摘。プログラマーは問題定義やシステム連携、現実世界での技術活用といった高付加価値な役割に価値が移行する時代の変化を受け入れる必要がある。
Nerd Quiz #4
1.0Nerd Quiz #4は、あなたの内なるギーク度を測る短いクイズで構成されたシングルページHTMLアプリケーションの第4弾です。このリリースでは、コンピューティングの歴史、グラフ理論、Unixなど幅広いトピックから5つの新しい問題が追加されました。
2月 '26 のノート
1.0今月は、ノーマン・ビッグス著『Algebraic Graph Theory』を読み進め、グラフの自己同型群、頂点推移性、辺推移性、対称グラフなどに関するメモをまとめました。特に、同じ軌道に属する頂点の次数が等しいことの証明や、推移性の様々な概念の関係について考察しています。
HN Skins 0.1.0は、Hacker Newsにカスタムテーマを追加するブラウザユーザースクリプトの初回リリースです。GreasemonkeyやTampermonkeyなどのユーザースクリプトマネージャーをインストール後、GitHubから導入できます。MITライセンスで提供されています。
HN Skins 0.2.0は、Hacker Newsにカスタムテーマを追加するユーザースクリプトのマイナーアップデートです。このバージョンでは、「返信」リンク下の余分な垂直スペースの削除、スキン選択ダイアログのアルファベット順ソート、Terminalスキンのナビゲーションバーの背景色修正(ダークグレーからダークグリーンへ)など、初期リリースのスタイルに関する細かい問題が調整されています。
HN Skins 0.3.0は、Hacker Newsにカスタムテーマを追加するブラウザユーザースクリプトのマイナーアップデートです。コメント入力ボックスのフォント調整、訪問済みリンクの色の調整、いくつかのスキン名の変更(Teletype→Courier、Nox→Midnight)などが含まれています。
HN Skins 0.4.0は、Hacker Newsにカスタムテーマを追加するユーザースクリプトのマイナーアップデートです。このリリースでは、技術者や科学者の追悼時に表示される黒いバーが一部のスキンで隠れてしまう問題を修正し、適切なコントラストを保ちながら表示されるようにしました。
Git 2.23で導入されたgit restoreコマンドと、従来のgit checkoutやgit resetとの対応関係について解説。作業ツリーやインデックスのリセット方法を新旧コマンドで比較し、その違いと使い分けをまとめています。
Wander 0.1.0は、独立した個人ウェブサイト所有者のコミュニティが推奨する興味深いウェブサイトやページを訪問者が探索できる、小規模で分散型のセルフホスト型ウェブコンソールの最初のリリースです。2つの静的ファイルをコピーするだけでインスタンスをセットアップでき、クライアントサイドで他のコンソールからの新しいリンクが発見される仕組みです。
Wanderは個人ウェブサイトの小さなウェブを探索するためのツールです。自分のウェブサイトをお持ちの方は、Wanderコンソールをホストすることでこのコミュニティに参加できます。
Wander 0.2.0は、分散型の自己ホスト型ウェブコンソールの第2リリースです。このバージョンでは、リモートコンソールと推奨ページをサンドボックスiframeで実行するセキュリティ強化、カスタムCSS/JavaScriptの追加、URLブロック機能、拡張されたコンソールダイアログなど、多数の改善が導入されています。
Wander 0.3.0は、分散型の自己ホスト型Webコンソールの第3リリースです。このリリースでは、ignoreリストのバグ修正やiframeでのウェブサイト読み込み問題の解決など、重要な修正が含まれています。また、小型デバイスでの横スクロール防止や重複推薦の改善など、いくつかのマイナーな修正も行われました。
GitHubではフォークにのみ存在するコミットをオリジナルリポジトリのURLでアクセスできるが、Codebergでは404エラーになることを実験で確認した。GitHubは「このコミットはこのリポジトリのどのブランチにも属さず、リポジトリ外のフォークに属する可能性があります」という警告を表示する。