atago-logo

CLI向けブラックボックス E2E テストランナー nao1215/atago を作った話

前書き:LLM の登場で自作 OSS の E2E テストを書く機会が増えた LLM が登場してから、E2E(End to End) テストを書くのが楽になりました。維持は相変わらず大変ですが。 ...

2026年7月4日 · 14 分 · nchika
japanese-resume-p-1-top-half

履歴書・職務経歴書・CVをyamlから生成するnao1215/careerを作った話

前書き:割と面倒な履歴書作成 妻との会話中、「履歴書の書き方」について話題に上がりました。妻はロシア人なので、日本のルールには詳しくありません。妻に説明するとき、私は過去の履歴書を思い出し、それぞれの作成方法に不満があったことを思い出しました。 ...

2026年6月14日 · 10 分 · nchika
iso8583-icon

クレカ決済で用いる通信規格 ISO 8583 の概要と、iso8583tool・tornago の紹介

前書き:Fintech らしい記事を書く 2025年3月に Fintech へ転職し、2026年6月時点で1年3ヶ月ほど経ちました。知見が溜まり、Fintech らしい記事を書けそうな状態になりました。 ...

2026年6月7日 · 18 分 · nchika
omokage

文体の一致度を評価する nao1215/omokage を作った話

前書き:LLM の文章は読みたくないが、LLM に書かせたい 私は、あなたの文章が読みたいという記事で、二律背反な気持ちを吐露しました。 要約すると、「LLM が生成したと思われる文章を見ると拒否反応が出るのに、自分自身も PR やコミットメッセージ、ドキュメンテーションを LLM に委ねている」という矛盾であり、私はもはや LLM っぽい文章を咎める資格などとっくに失いました。構造化されたリストの乱用、無駄に長くて中身のない文章、太字や絵文字の過剰な装飾。ああいったものが嫌いなくせに、私自身が量産する側に回ってしまっているのですから、ダブルスタンダードも良いところでしょう。 ...

2026年6月2日 · 15 分 · nchika
Gleam-OSS

関数型言語 Gleam で遊んでいる話(OSS4個を連作した話)

前書き:Gleamとは 最近、関数型言語 Gleam で遊んでいます。 Gleam は、Louis Pilfold 氏が開発した静的型付けの関数型言語であり、Erlang や JavaScript にコンパイルされます。2016年6月13日に登場したので、10年選手ぐらいです。 ...

2026年4月19日 · 6 分 · nchika
truss-logo

【Rust】CLI・サーバー・Wasm で動く画像処理ツール truss を作った話

前書き 画像処理ツール nao1215/truss を開発したので、紹介します。読みは、「トラス」です。 truss は、画像の変換(拡張子変更)、リサイズ、ぼかし、透かし、切り抜き等ができるツールであり、JPEG、PNG、WebP、AVIF、BMP、SVG に対応しています。クロスプラットフォーム対応(Linux, macOS, Windows)であり、CLI・サーバー・Wasm で動作します。 ...

2026年3月14日 · 9 分 · nchika
sensitive-logo

【Golang】クレカ番号などを検出・マスクするsensitiveライブラリを作った話

前書き sensitive テキストを見つけ、必要であればマスクする nao1215/sensitive ライブラリ(Golang)を作ったので、軽く紹介します。Fintech に所属していれば、誰でも一度は作ろうと考えるタイプのライブラリですね。なお、暇つぶしで作っただけなので、現職の業務で利用予定はありません。 ...

2026年2月8日 · 6 分 · nchika
2025-suntopia_world

2025年の振り返り & 2026年の抱負

前書き 2024年に引き続き、2025年の振り返りと来年の抱負をまとめます。 トップ画像は、25年以上ぶりに訪れたサントピアワールドです。サントピアワールドは1976年に開園しており、新潟県民にとって馴染み深い場所でしょう(上越住まいにとっては、馴染みないかもしれない)。入口付近に辿り着いた時、幼少期の記憶が蘇りました。祖母と車で訪れて、途中のコンビニで買ったチョコレートが車のダッシュボードで溶けたことを不意に思い出しました。最近、息子と一緒にいると30年ぐらい前の色褪せた記憶が蘇ります。 サントピアワールドは、総括すれば面白かったです。全ての乗り物が待ち時間ゼロでした。売店にトミカ売り場があり、「こんなところにトラップが!」と思いました。案の定、息子は吸い寄せられてました。息子は、何度も弁慶号に乗っていて、スタッフさんが「また乗るの?」と苦笑していました。スピードの早いワイルドジェットに息子を乗せてみたら、無反応でした。しかし、2回目は猛烈に嫌がってました。怖かったのでしょう。スカイジェットに乗った時は、私がデブすぎて車体が大幅に傾き、「これ、落ちるのでは?」と心臓がバクバクでした。 ...

2025年12月8日 · 20 分 · nchika
fileprep

【Golang】CSV、TSV、LTSV、Parquet、Excel に前処理とバリデーションを行う nao1215/fileprep を作った話

nao1215/fileprep(前処理ライブラリ) を開発した理由 理由は、データが汚れているからです。 私は、過去に nao1215/csv ライブラリ(パブリックアーカイブ済み) を開発していました。nao1215/csv は、struct tag でバリデーションルールを指定すると、CSV ファイルの読込み後に「どの行のどのカラムが不正値なのか」を教えてくれます。 ...

2025年12月7日 · 8 分 · nchika
レゴ

4年間続けたOSS開発を振り返る

OSS 開発を始めてから4年経った 本記事は、私の日記に近いポエムです。5年後に見返すために書いてます。なお、OSS 開発を初めて5年経過しているつもりで記事を書き始めたら、計算したところ4年でした。 ...

2025年11月30日 · 10 分 · nchika
onionlint-logo

【Golang】.onion(Torサイト)の匿名性チェックを行う nao1215/onionlint を作った話

onionlint とは nao1215/onionlint は、.onion(Torサイト)が匿名性を担保できないような実装になっていないかをチェックするツールです。普通の開発者が onionlint のお世話になることはないでしょう。onionlint には、34個のルールが搭載されており、以下の3カテゴリで構成されています。 ...

2025年11月25日 · 7 分 · nchika
tornago-logo

【Golang】tor client/server を実装するための nao1215/tornago ライブラリを作った話

悪用厳禁 本記事で紹介する nao1215/tornago は、Tor(The Onion Router)に関するライブラリです。Tor は、通信を暗号化して IP アドレスを隠蔽できるため、悪用されるケースが多々あります。 ...

2025年11月15日 · 9 分 · nchika
csv package logo

【Golang】バリデーション付き CSV 読み込み機能と DataFrame 機能を持つパッケージを作った話

前書き:バリデーション付きCSV読み込み機能は2024年に開発 本記事で取り上げるのは、2024年に開発した nao1215/csv です。本来の予定では、新規に開発した機能の紹介だけ書く予定でした。しかし、本ブログで一度も nao1215/csv の説明をしていなかったようなので、まずは基本機能を説明した後に新機能(DataFrame)について紹介します。 ...

2025年11月15日 · 7 分 · nchika
【TypeScript】ファイルを分割し、任意の分割ファイル数で復元できる nao1215/horcrux を作った話【分霊箱】

【TypeScript】ファイルを分割し、任意の分割ファイル数で復元できる nao1215/horcrux を作った話【分霊箱】

前書き: jesseduffield/horcrux を参考にした 「Yet Another Horcrux を作ったよ」というお話をします。 Horcrux は、ハリーポッターに登場する用語で、日本語では分霊箱と訳されています。闇の魔法使いが不死になるために自らの魂を分割して、自らの魂を隠した物体を指します。この物体が存在する限り、現世に留まれることができます。予め断っておきますが、私はハリーポッターがそこまで好きではありません。ネタとしては好き。「フォフォイのフォイさ」や「ハリー< 二次会は嫌だ、二次会は嫌だ…… 組分け防止 < フィリピンパァアアアアアアアブ!!! 」とか。 ...

2025年10月5日 · 4 分 · nchika
【nao1215/prompt】コードを読むのが辛いから、放置されたOSSをforkせずに作り直した話

【nao1215/prompt】コードを読むのが辛いから、放置されたOSSをforkせずに作り直した話

前書き:OSSが放置されることは当然のようにある 「OSSは、人気があれば活発にメンテナンスされる」 そのように考えている方がいらっしゃるのではないでしょうか。現実は、そこまで甘くありません。私が利用していた c-bata/go-prompt(5.4 stars)は、ライブラリとして採用した時点でメンテナンスが滞っており、結局3年間殆ど更新はありませんでした。 ...

2025年9月20日 · 6 分 · nchika
夏休みの自由研究として自作プログラミング言語をClaudeでVibe Codingした話

夏休みの自由研究として自作プログラミング言語をClaudeでVibe Codingした話

前書き:妻と息子が不在の一足早い夏休み 仕事が谷間(= 夏休みが取れる状況)、かつ妻と息子が旅行で不在だったので、ある程度規模感があるOSSを作ろうと思いたちました。今回、実装期間2日で開発したのは、SNOW言語(関数型言語)です(補足:夏休みは2日以上あります) ...

2025年8月7日 · 9 分 · nchika
O'Reilly Learning PlatformをAudify(耳)で学習する

O'Reilly Learning PlatformをAudify(耳)で学習する

 前書き:O’Reilly Learning Platformは高め タイトルが全てなのですが、どのような経緯でAudifyを使い始めたかを記録として残します。 ...

2025年5月25日 · 4 分 · nchika
GitHub Personal Access Tokenをコミットする人がいた話、類似例、漏洩対策ツール【GitHub Secret scanning、gitleaks、git-secrets、gitguardian】

GitHub Personal Access Tokenをコミットする人がいた話、類似例、漏洩対策ツール【GitHub Secret scanning、gitleaks、git-secrets、gitguardian】

 前書き:セキュリティのお勉強中 本記事は、ユーザー2376名のGitHub リポジトリ8017件を調べたら、GitHub Personal Access Token 16件(全て失効済み)が見つかったという話です。悪用されたら困るので、トークン探しに使ったコードは公開しません。 ...

2025年4月27日 · 5 分 · nchika
qhqで管理しているリポジトリをVS Codeで開くシェル関数

qhqで管理しているリポジトリをVS Codeで開くシェル関数

前書き 複数のリポジトリを用いて開発している人は、x-motemen/ghqでリポジトリを管理するケースが多いでしょう。本記事では、ターミナルからghqで管理しているリポジトリをVS Codeで開く方法を紹介します。 ツールインストール x-motemen/ghq および peco/peco を利用します。以下はgoコマンドを利用したインストール方法です。他のインストール方法を利用する場合は、公式サイトを確認してください。 ...

2025年3月17日 · 2 分 · nchika
【Golang】fe3dback/go-arch-lintでアーキテクチャの破壊を防ぐ

【Golang】fe3dback/go-arch-lintでアーキテクチャの破壊を防ぐ

前書き:アーキテクチャは容易に壊される アーキテクチャリンターであるfe3dback/go-arch-lintをnao1215/sqlyに導入したので、使用方法のメモを記事として残します。結論としては、初期設定が面倒ですが、期待通りの効果が得られました。なお、既存コードがカオスなアーキテクチャの場合、go-arch-lintを採用できないと思われます。 まず、アーキテクチャをリンターでチェックする発想に至った理由から、説明します。以前、ペアプロ中にドライバ側(実装する人)がアーキテクチャルールに反しているのを偶然目撃しました。違反内容は、「外部サービス操作用パッケージ内でのみ使用できる構造体をユースケースレイヤーから呼び出した」というものです。構造体の定義場所が悪いと思いつつも、ルール違反してしまう理由はアーキテクチャを理解していないからだと考え、対策が必要と考えました(ちなみに、ドライバの方に「その使い方、ダメですよ」と声をかけたら、「そうなんですか?」と返答がありました) ...

2025年2月13日 · 7 分 · nchika
【何をどこに書く?】Pull Requestマージ速度を上げるためにドキュメンテーションコメントを書く

【何をどこに書く?】Pull Requestマージ速度を上げるためにドキュメンテーションコメントを書く

前書き:ドキュメンテーションコメントの書き方が分からん 本記事は、「【GitHub Actions】 github/issue-metrics でPRマージにかかる時間を分析」に関連する記事です。2024年は、Pull Request(以降PR)をマージするまでにかかる時間を如何に短縮するかに、課題感がありました。 ...

2025年1月26日 · 10 分 · nchika
【GitHub Copilot】「もっとAIを使った方が良いですよ」とアドバイスする時代になった

【GitHub Copilot】「もっとAIを使った方が良いですよ」とアドバイスする時代になった

前書き:AIが当たり前の時代に OpenAIが2022年11月にChatGPTをリリースしてから、AIを利用した様々なツールが登場しました。AWS Summitに行けば、Amazon Bedrockを用いて業務生産を向上させた事例がメイントピックでした。直近の技術系の話題(例:ブロックチェーン、web3.0)と比較すると、AIの普及速度が早く感じました。 ...

2025年1月25日 · 6 分 · nchika
【どうやって見積もりしてますか?】プロジェクト工数を見積もるときの私なりのやり方【ボトムアップ見積り】

【どうやって見積もりしてますか?】プロジェクト工数を見積もるときの私なりのやり方【ボトムアップ見積り】

前書き:超概算見積もり?KKD法でいいですか? 私は、立場上、プロジェクトの工数を見積もることが多いです。 しかし、自分が担当していない領域(例:iOSやAndroid)の見積もりは流石にできません。そこで、他メンバに作業を依頼します。そのタイミングで、次のような質問を受けることがあります。 ...

2025年1月11日 · 7 分 · nchika
【GitHub Actions】 github/issue-metrics でPRマージにかかる時間を分析

【GitHub Actions】 github/issue-metrics でPRマージにかかる時間を分析

前書き:PRマージに時間がかかっていた 2024年は、私のPull Request(PR)がなかなかマージできない課題がありました。 このように書くと「あなたが書いたPRのサイズが大きかったり、色々と他者に配慮できていないだけでは?」と考える人もいらっしゃるかもしれません。その可能性は当然あります。 ...

2024年12月31日 · 5 分 · nchika
【寄稿】Software Design 2024年12月号 第1特集 第4章 落し穴に落ちないシェルスクリプト開発のススメ

【寄稿】Software Design 2024年12月号 第1特集 第4章 落し穴に落ちないシェルスクリプト開発のススメ

祝!Software Design 3回目の寄稿 技術評論社のSoftware Design 2024年12月号 第一特集に寄稿させていただきました。3回目です。びっくり!未読の方は、是非ご一読ください。 過去2回に引き続き、内容はシェルスクリプトに関する記事です。2022年1月号はPythonに関して説明していますが、シェルスクリプトと比較した記事になっています。過去の寄稿に関する感想は、別記事でまとめてあります。 ...

2024年12月7日 · 7 分 · nchika
DependabotでGitHub ActionsのActionを最新に保つ方法

DependabotでGitHub ActionsのActionを最新に保つ方法

前書き:絶滅へ向かうJenkinsオジサン 結論ですが、GitHub公式ドキュメント「Dependabot でアクションを最新に保つ」を読めば、GitHub ActionsのActionを最新に保つ方法が分かります。ちなみに私は、現職のテックリードから教えていただいて「なにこれ便利だ」と思った記憶があります。 ...

2023年9月30日 · 3 分 · nchika
AndroidプラットフォームアーキテクチャでJavaが採用されている理由は、エンジニア人口が多いから

AndroidプラットフォームアーキテクチャでJavaが採用されている理由は、エンジニア人口が多いから

前書き:何故AndroidはC/C++がメインではないのか AndroidでJavaを採用した理由が気になって夜しか眠れなかったので、調べました。 まず、前提をおさらいします。Androidプラットフォームは、ハードウェアを制御するためにLinux Kernelを採用しています。その上にハードウェアを抽象化するためのHALレイヤーがあり、C/C++とJavaランタイム(Android Runtime)がHALの上にあります。最近では、NativeライブラリにRustも採用され始めたと聞いています。 ...

2023年4月17日 · 6 分 · nchika
【Android Studio】JSON To Kotlin ClassプラグインでAPIレスポンス用モデルの作成を楽に

【Android Studio】JSON To Kotlin ClassプラグインでAPIレスポンス用モデルの作成を楽に

前書き Androidアプリでは、RESTful APIの実行結果(≒ jsonデータ)に対応するdata classを作成し、kotlinx.serializationでjsonをdata classにデシリアライズする処理があります。 ...

2023年4月1日 · 4 分 · nchika
【寄稿】Software Design 2022年6月号 第1特集(第3章 シェルスクリプトの使い方)

【寄稿】Software Design 2022年6月号 第1特集(第3章 シェルスクリプトの使い方)

Software Design誌 2回目の寄稿! 技術評論社のSoftware Design 2022年6月号 第1特集 第3章 「シェルスクリプトの使い方」に寄稿する機会をいただきました!2022年1月号に続いて、2回目の寄稿です。表紙がワンちゃんからネコちゃんに戻っています! ...

2022年5月15日 · 4 分 · nchika
【勉強期間1ヶ月(60h)】LPIC Level3 303 (Security) 合格体験記【ping-t、黒本使用】

【勉強期間1ヶ月(60h)】LPIC Level3 303 (Security) 合格体験記【ping-t、黒本使用】

資格有効期限切れ 2週間前の滑り込み合格 LPIC有効期限2022年6月3日の約2週間前に、LPIC Level3 303-200(Version 2.0)に合格しました。「転職(組み込みからサーバサイドへのキャリアチェンジ)」「息子の誕生」「Software Designへの記事寄稿」と、生活の変化が多い中でギリギリ合格できて、安心しました。 ...

2022年5月15日 · 4 分 · nchika
【解決方法】You don't have write permissions for the /var/lib/gems/2.7.0 directory【Ruby, Linux】

【解決方法】You don't have write permissions for the /var/lib/gems/2.7.0 directory【Ruby, Linux】

前書き:gem installでコケる 原因は単なる権限の問題。Ruby初心者なので自分用にメモします。 まずは、前提情報です。Ubuntu 21.10、Ruby 2.7.4[x86_64-linux-gnu]で、femパッケージ(パッケージ作成ツール)のインストールを試みました。結果は、/var/lib/gems以下のパーミッションエラー。 ...

2022年2月5日 · 4 分 · nchika
【Vala言語】優れた点、Linuxにおける立ち位置、物足りなさとその対策(coreライブラリ開発)

【Vala言語】優れた点、Linuxにおける立ち位置、物足りなさとその対策(coreライブラリ開発)

マイナーなプログラミング言語:Vala言語とは あなたはVala言語をご存知でしょうか? Vala言語は、プログラミング言語ランキングでは圏外(50位以下)であり、クロスプラットホーム言語にも関わらずLinux環境のGUIプログラミングでしか用いられる機会がありません。GUIに強みを持つ言語であるため、Linuxでシステムプログラミング開発する人でも、Vala言語の存在を知らない可能性があります。THE マイナー言語。 ...

2022年1月5日 · 7 分 · nchika
Software Design 2022年1月号 第2特集(第1章、第2章)に寄稿【キッカケ、感想、書き足りない内容】

Software Design 2022年1月号 第2特集(第1章、第2章)に寄稿【キッカケ、感想、書き足りない内容】

前書き:人生初!ソフト雑誌への寄稿 技術評論社のSoftware Design 2022年1月号 第2特集(第1章、第2章)に寄稿させていただきました。 間違いなく、2021年で最も嬉しい出来事です!(エンジニア人生の中でトップクラスの嬉しさ) ...

2021年12月17日 · 8 分 · nchika
「Log4j2の脆弱性から垣間見えたOSS開発の厳しさ」と「OSS開発者に投げ銭する文化(未来)」について

「Log4j2の脆弱性から垣間見えたOSS開発の厳しさ」と「OSS開発者に投げ銭する文化(未来)」について

前書き:災害レベルの脆弱性 本記事は、紛うことなきポエム記事です。Log4j2の脆弱性問題を追っている間に「OSS開発の醜い部分」を目の当たりにしたので、本記事では「せめてOSS開発者が金銭的もしくは他の手段で報われればいいのに」と主張します。 ...

2021年12月12日 · 6 分 · nchika
【OS/Linux系多め】組み込みエンジニア時代(7年間)に役立った良書9選

【OS/Linux系多め】組み込みエンジニア時代(7年間)に役立った良書9選

前書き:技術レイヤーが変わる前に振り返り 2021年12月に新卒入社した会社を退職しました。 退職前の会社では、組み込みエンジニアとして働いていましたが、次の職場ではバックエンドエンジニアとして働きます。組み込みエンジニアは、ハード(機密情報)と近い関係からか、あまり情報発信しない印象があります。情報発信しようにも、「会社独自技術のネタしか無い」という業界な気がしています。 ...

2021年11月23日 · 10 分 · nchika
【オススメ】ソフト開発/エンタメ(余暇)で使用するLinuxアプリ【Debian/elementary OS】

【オススメ】ソフト開発/エンタメ(余暇)で使用するLinuxアプリ【Debian/elementary OS】

前書き:オススメ?当たり前? 本記事は、読者の皆様にLinuxアプリをオススメするように見せかけた備忘録記事です。 私は、2018年から開発環境(≒普段使いのPC)をMacからLinuxに移行しました。Linux環境に移行した後もDebian → elementary OSと移行を続けていて、開発や余暇で使用するアプリを記録しておく必要性が出てきました。 ...

2021年5月22日 · 7 分 · nchika
【C/C++/C#/Java対応】循環的複雑度の計測ツール lizardの導入方法【Swift/Rust/GoもOK】

【C/C++/C#/Java対応】循環的複雑度の計測ツール lizardの導入方法【Swift/Rust/GoもOK】

前書き:ネストの深さを指摘する時間が勿体無い コードレビューを効果的に実施したいと考えた事はありませんか? 例えば、短い期間でソフト開発する場合、レビュー時間を潤沢に取れないケースがあります。このような場合は、 ...

2021年5月19日 · 7 分 · nchika
【Androidアプリ】コードリーディングに使うアプリをUserLAndからSource Code Viewer Proに浮気した話

【Androidアプリ】コードリーディングに使うアプリをUserLAndからSource Code Viewer Proに浮気した話

前書き:UserLAndは遅かった 約2年前の2019年、私はAndroidスマホでコードリーディングするにはUserLAndが最適だと結論づけていました。 しかし、使い込んでいく内にUserLAnd特有の**「ファイル操作が遅い点」**に我慢できなくなりました。 システムコール単位でフック処理を入れているUserLAndは、ミドルレンジスマホがCeleron PCと同等に感じられるぐらい遅いです。特に、パッケージマネージャによるインストール処理などの待ち時間は長く、下手すると数十分から数時間待たされます。 ...

2021年2月20日 · 5 分 · nchika
【LPICで見た】/etc/motdの内容を出力しているのは誰?【答え:sshd】

【LPICで見た】/etc/motdの内容を出力しているのは誰?【答え:sshd】

 前書き:Message Of The Dayファイルとは LPIC受験者は、よくご存知の/etc/motd (Message Of The Day)ファイル。 ユーザがLinuxサーバにsshログインした際に、/etc/motdファイルの内容がターミナル上に表示されます。 ...

2020年12月1日 · 4 分 · nchika
Cortex-A8 (ARMv7-A, e.x. BeagleBone Black)におけるコンテキストスイッチ/割り込み操作/Halt

Cortex-A8 (ARMv7-A, e.x. BeagleBone Black)におけるコンテキストスイッチ/割り込み操作/Halt

前書き:XINUソースコードから学ぶアセンブラ実装 本記事では、ARM Cortex-A8における コンテキストスイッチ 割り込み処理 Halt(システム停止) に関して、XINUソースコードのアセンブラ実装を例として紹介します。 ...

2020年11月21日 · 5 分 · nchika
Cortex-A8 (ARMv7-A, e.x. BeagleBone Black)のレジスタ情報/アセンブラ命令/インラインアセンブラの書き方

Cortex-A8 (ARMv7-A, e.x. BeagleBone Black)のレジスタ情報/アセンブラ命令/インラインアセンブラの書き方

 前書き:XINU (Real Time OS)で学んだARMに関する情報 本記事では、ARM CPU(Cortex-A8、32bit)に対する調査内容を備忘録としてまとめています。 ...

2020年11月21日 · 7 分 · nchika
【Builderパターン】コンストラクタの初期化(new)引数が多い場合にオススメなデザインパターン

【Builderパターン】コンストラクタの初期化(new)引数が多い場合にオススメなデザインパターン

 前書き:Builderパターンとは Builderパターンは、GoF(Gang of Four)デザインパターンの一つであり、複雑な構造を持つインスタンス生成を容易にするための手法です。 ...

2020年4月25日 · 4 分 · nchika
Linuxコマンドのソースコードを取得する方法(Debian環境):オリジナルコマンド作成前の勉強向け

Linuxコマンドのソースコードを取得する方法(Debian環境):オリジナルコマンド作成前の勉強向け

前書き 少し古い雑誌ですが、CQ出版社のInterface誌(2016年10月号)に「レベルアップ! オリジナル・コマンドを作る」という記事がありました。しかし、この雑誌に書かれている内容は、bashに偏っており、情報が不足していると(当時)感じました。 ...

2019年6月1日 · 6 分 · nchika
Code Reading:Redox(Rust)版coreutilsのcatコマンド その2(全2回)

Code Reading:Redox(Rust)版coreutilsのcatコマンド その2(全2回)

前書き Rustを学習するための一環として、Redox(OS)版coreutilsのcatコマンドをCode Readingします。本記事(その2)は、catコマンドの主要な処理(ファイル内容の表示)を説明します。catコマンドのオプションパース処理に関する内容は、以下に示す前回記事(その1)を確認して下さい。 ...

2019年5月11日 · 16 分 · nchika
Code Reading:Redox(Rust)版coreutilsのcatコマンド その1(全2回)

Code Reading:Redox(Rust)版coreutilsのcatコマンド その1(全2回)

前書き Rustを学習するための一環として、Redox(OS)版coreutilsのcatコマンドをCode Readingします。Redoxプロジェクトや環境構築方法に関しては、以下の記事にまとめてあります。 ...

2019年5月6日 · 9 分 · nchika
環境構築:Redox向けcoreutils(Rust)のCode Reading準備およびReading対象コマンド一覧

環境構築:Redox向けcoreutils(Rust)のCode Reading準備およびReading対象コマンド一覧

前書き:Redox版coreutilsを読む理由 Redoxプロジェクトが開発しているcoreutilsを読む理由は、「(Rust初心者の私が)Rustを学習する」ためです。Redoxプロジェクトに関わるコードは、基本的にRustで書かれています。何故、Redox(Kernel)ではなくて、coreutilsを読むのかと言えば、 Kernelを読めるほど、私がRustに慣れていない RedoxプロジェクトのCoreutilsは小規模 CoreutilsはUnix/Linuxコマンドのため、私が機能を把握済み という理由です。 ...

2019年5月3日 · 7 分 · nchika
感想: Rust Programming By Example: Enter the world of Rust by building engaging, concurrent, reactive, and robust applications

感想: Rust Programming By Example: Enter the world of Rust by building engaging, concurrent, reactive, and robust applications

Rustアプリを写経できる数少ない書籍の一つ 私は、2018年に"OSS + オライリー本(下画像のカニ本)“によるRust独学で、学習を断念しました。Rustは学習曲線が急勾配で、最初の100時間はつまづきやすいです。コンパイラが引くほどエラーを出します。残業後に勉強する私は、そのエラーと向き合う体力がありませんでした。 ...

2019年5月1日 · 更新: 2026年7月19日 · 3 分 · nchika
Linux Command Optionの慣習(一般的なOption一覧)

Linux Command Optionの慣習(一般的なOption一覧)

前書き 本記事は、Linux環境で実行するCommand Optionの慣習について、調査結果を記載します。調査動機は、「Option規格」や「一般的に用いられるOption」を知る事によって、よりよいInterfaceを持つCommandが作成できると考えたからです。特に、Option文字列(例:–version)は、他のCommandに可能な限り一致させた方が、ユーザが混乱しないと考えています。 ...

2019年2月23日 · 6 分 · nchika
ccache(compiler cache)によるビルド高速化

ccache(compiler cache)によるビルド高速化

前書き 大規模なプログラムをビルドする場合、数十分〜数時間かかる事があります。ビルド時間が長いと、それだけ開発者の待ち時間が増えるわけですから、短いに越したことはありません。そんなビルド時間を短縮するツールとして、ccacheがあります。 ...

2019年1月26日 · 4 分 · nchika