PuTTYをWindows on Armに移植するために必要な作業と、NEONアクセラレーションによる暗号化処理の詳細な解説。x86とArmの両方でコンパイル可能にするための技術的課題と解決策を探る。
chiark-greenend-org-uk-sgtatham
chiark-greenend-org-uk-sgtatham から 28 件
ネットのソルバーを書く
1.0パズルゲーム「Net」の自動ソルバーについての説明です。メールでの問い合わせに応じて書かれたもので、ゲームの解法アルゴリズムや実装の詳細を解説しています。
パズルゲーム「Mines」において、必ず解けるマインスイーパーグリッドを生成する技術についての解説。メールでの問い合わせに応じて書かれた記事で、確実に解ける盤面を作成する方法を説明しています。
PuTTY開発の歴史
2.01996年の誕生から2020年までのPuTTY開発の変遷を概観。電子メールの問い合わせに応じて執筆された、この人気SSH/Telnetクライアントの進化の軌跡。
PuTTY 0.78の主要新機能であるOpenSSHスタイルの証明書(ホスト鍵とユーザー鍵)の開発についての回顧録。この機能により、OpenSSHとの相互運用性が向上し、鍵管理が簡素化された。
筆者のパズルゲーム「Loopy」でペンローズタイルとハットタイルを生成するアルゴリズムについて説明。これらの非周期タイルをランダムに生成する手法を解説している。
パズルゲーム「Loopy」で使用されるスペクター・タイリングを生成するアルゴリズムについての説明。このタイリングは非周期的なパターンを持ち、組み合わせ座標を用いて効率的に生成されます。
エラーメッセージの読み方
1.0OSやネットワークエラーなど、エラーメッセージから最大限の情報を引き出す方法についての記事。著者が昨年同僚に向けて行った講演を基にしている。
C11の_Generic機能の大きな設計上の制限について説明し、主に元の_Genericを補完するために複数の_Genericインスタンスを使用する様々な回避策を紹介します。
C++20のコルーチンシステムについて、著者が自身で学びながら書いた詳細な入門記事です。この記事では、C++20のコルーチン機能を深く理解し、カスタムコルーチンシステムを構築する方法を解説しています。
コルーチンの哲学
1.0コルーチン全般についての考察、著者がコルーチンを好む理由、そしてそれらを使用し考える方法についての思考。コルーチンの本質的な価値と応用可能性を探る。
コマンドラインツールは、エラーメッセージに加えて長いヘルプテキストを表示すべきではないという短い意見。ユーザーが必要な情報だけを効率的に得られるように設計することが重要。
バブルソートが大嫌い
1.0バブルソートはひどいソートアルゴリズムであり、人々がそれを教えるのをやめてほしいという短い意見。効率が悪く、教育上の価値も限られている。
バージョン管理におけるコミットメッセージの書き方についてのガイドで、含めるべき事実や根拠に焦点を当てています。良いコミットメッセージは、変更内容の「何を」「なぜ」を明確に伝えることで、プロジェクトの歴史を理解しやすくします。
昨年の組み合わせ座標に関する2つの記事の続編で、今回は正規言語理論をそれらに適用しています。このアプローチにより、非周期タイル張りを有限状態トランスデューサーを通じて体系的に扱う方法を探ります。
「壁の向こう」を超えて
1.0先月の非周期タイル張りに関する有限状態トランスデューサーの記事の続編。有限状態トランスデューサーを用いた非周期タイル張りの手法について、さらなる考察と展開を探る。
「symbiosisware(共生ソフトウェア)」とは、自分自身だけが使うことを意識的に設計されたソフトウェアを指す筆者の造語です。この記事ではその定義と、個人のワークフローに完全に統合されたツールの価値について考察します。
イライラするコードレビューの行動パターンを分類し、それらについての考察をまとめた記事。効果的なコードレビュー文化を築くための洞察を提供します。
パズルコレクションの作成中にグラフのループ検出を試みて犯したすべての過ちの歴史。著者が経験した様々な失敗例とその教訓をまとめています。
バグトラッカーがより正確なデータ表現を使用してクエリを容易にする方法についての設計考察。バグトラッカーは、問題の状態や関係性をより適切に表現することで、複雑な検索や分析を簡素化できる可能性がある。
ポップサイエンスレベルに簡略化された、いくつかのポスト量子公開鍵暗号システムの解説。量子コンピュータ時代の到来に備え、現在のRSAや楕円曲線暗号に代わる新しい暗号技術の基本概念をわかりやすく説明しています。
XOR
1.0論理演算子およびビット単位のXOR演算子の入門、その用途、そしてそれらが導く高度なトピックについての紹介。XORは排他的論理和として知られ、プログラミングや暗号化、エラー検出など様々な分野で重要な役割を果たします。
個人プロジェクトはGitで管理しているが、「フォージ」スタイルのウェブサイトには置いていない。その理由と、それらとのやり取りの方法について説明する。
PuTTYユーザーからロゴとアイコンコレクションの歴史について質問がありました。デザイン意図と技術的側面について考察します。
著者の個人的なコンピューティング習慣についての説明で、物事が整理されないまま「永遠に続いてしまう」ことを避けることに焦点を当てています。
文脈自由文法、パーサージェネレータ、およびそれらが私の望むほど有用でない方法についての、半ば関連した一連の意見をまとめたものです。
有理数の代数拡大体を応用して、初等幾何学パズルを(ある意味)ズルで解く方法について。ラングレーの問題を総当たり計算で解決する手法を紹介します。
非周期タイル張りのための有限状態トランスデューサに関する一連の記事の続編。トランスデューサを構築できないタイル張りがある場合、それを構築可能なものに変換するアルゴリズムを紹介します。