Chienomi

Chienomiについて

  • TOP
  • Chienomiについて

主題

テーマ

Chienomiはコンピュータに関する技術的な内容を扱うブログである。

基本的にはコンピュータに関する内容を扱っているが、一部にそれ以外のものも含まれる。 例えば私がコンピュータを使って研究している主題であるところの「人心と人動」ゃ「心理モデル」「行動心理学」などに関わること、 私のコンピュータに関する仕事のことなどだ。

ただし、これらの内容も旧サイトと比べると内容は限定的であり、特にデジモノ・デジゴトと呼んでいたインターネットで話題になっていることの扱いなどはHarukamy’s Memorandaという別サイトに振り分ける場合が増えている。

もちろん、依然としてインターネットの話題やデジタルガジェットの話などはこのサイトで取り扱う場合もある。

モチベーション

Chienomi(Live with Linux)の当初のモチベーションは、Linuxの情報が少なかった時代であることも踏まえて、「情報は共有するもの」というハッカーマインドがそのモチベーションだった。

現在においては情報はむしろ飽和しているため、この点は大きく異なる。 現在のモチベーションは次のようなものだ。

  • 根幹にあるのは、「人の為ならん」という私の基本的な部分
  • 知識は共有するものである (hacker ethic)
  • 根拠のある、正確性の高い情報を提供する
  • 他にない情報を提供する。少なくとも既に存在する情報を提供するならば、よりまとまった情報を提供するか、より正確な情報を提供するか、より充実した情報を提供するなどする

内容とレベル

書き方としては基本的には論文に似た形式を取っている。これはHarukamy’s Memorandaでも同様である。

内容で最も中心となっているのは”Live with Linux”というカテゴリで、Linuxに関するものである。 その他、ハードウェアやソフトウェア、テクノロジーに関する記事を上げることも多い。

内容は原則として「その情報を必要とする人にとって有益なものに限る」としている。 つまり、まともに理解していない内容を「知った」「動いた」だけで書いたり、きちんと裏付けをとっていない内容を掲載することはしない。 また、他に既に有益の情報がまとめられているものを掲載することもしない。

他に情報がない、他の情報が出まわっているがその多くは誤っている、情報はあるが揃っていないといった事柄に対して記事を書くようにしている。

だから、最新の研究だったり、唯一の情報ソースだったりといった内容を中心とする。 場合によっては情報自体は存在するが、主題ではなく情報の一部に小さく書かれているだけであるため、それが目的の情報であると解釈できないことを主題として解説するようなことはある。

既存知識を解説する、というようなことは基本的にはしないが、新しいアプローチのテストとして行う場合はある。 初心者向けプログラミング記事はその一部だ。 また、なんらかの発信に対してツッコミを入れるために解説記事を書く場合はある。 だが、解説・教育系の記事は本分ではない。それはMimir Yokohamaのウェブサイトに書いているからそちらを見てほしい。

また、“Journal de Aki”時代の名前から連想するのかわからないが、「ジャーナリストとして云々」とかおっしゃるからがたまにいるが、“Journal de Aki”というのは「あきの日記」という意味であり、ジャーナリズムは微塵も関係ない。

ちなみに、このことからもわかるように、「このことについて教えて欲しい」みたいなことを言うと、たまに書くことがある。 だから言ってみる価値はある。 ただし、そんなことをするくらいなら依頼したほうが間違いなく早いが。

想定読者

基本的には、その情報を探し求めている人、つまり、「その情報を必要とし」「その情報を得るために労力を割くことを厭わない人」を中心に考えている。

なので、じっくりと理解に至れるように情報を記述し、検討部分もすべて載せるようにしている。

ただし、これは教育サービスではないので、思考を補助するような記述はしていない。 「なぜ」といったことは考えれば最終的には自明であるはずなので、そうしたことは自分で考えていただく方向で。

その情報を知るにあたり、その記事の前提となっている情報に関しては原則としては解説をしない。 なぜそうなるのか、なんの話題について述べているのかというのは分かるという前提で書いている。 ただし、明らかにそれについて解説することが有益だと判断して載せる場合はある。 繰り返すが教材ではない。

こうしたことから、記事によって著しく振れ幅はあるものの、基本的にはレベル高めの人を想定している。

なお、検索では必要としている人に届きやすい書き方をすることは心がけている。 つまり、目的の情報に到達できないときに、キーワードを追加して絞り込んでいけば到達できるようにといった配慮である。

ソースコードのライセンス

当ウェブサイトに掲載される、以下を満たすソースコード

  • 私が書いたものである
  • GitHubなど、私の何らかのプロジェクトにおいて公開されていない
  • 当該コードのライセンスについての言及がない

MITスタイルライセンスにおいてその利用を許諾する。

(もっとも、肝心のオリジナルライセンスがどこにもないので困るかもしれない。AuthorはMasaki Harukaであり、年はその記事の公開年だと解釈してほしい。)

少し説明を加えると、Chienomiの目的は情報の共有、あるいは技術向上に役立ててほしいというところにある。 よって、私が書いたコードを利用してあなたの成長につなげることは、私にとって本意であると言える。 故に、私が記事として書いたコードをあなたが利用することを、私は妨げない。

もちろん、あなたが成長を果たしたときに、その糧となったものとして、Chienomi、あるいは私の名前を挙げてもらえれば嬉しいが、それを強制するわけではない。 ただし、この記事、及び記事中のコードは無保証・無担保である。自由に利用して良いが、記事によって何らかの問題が生じたとしても、その責任を私に求めることはできない。

なお、記事本文はCopyrightである。 当然、著作権法上許されている私的複製により、あなたが端末に保存したり、印刷したりすることは何も問題がないが、それを配布したり、転載することはできない。これは各ページ下部に明記されているはずだ。

Chienomi読者データ (2019-10-15 〜 2021-01-26)

ユーザーの特徴

このサイトに訪れる人をサーバーログ(検索ワードや記事の閲覧数、UA等)とSNS等で共有される内容は以下のような特徴を持っている

  • PC/スマホだとだいたいPCが61%、スマホが7%。今どきのサイトとしては圧倒的にPCが多い
  • Linuxユーザーはかなり多い。Windowsよりは少ないが、Macよりも多い。
  • Gitなどの初心者向けの記事、ウェブ系の記事が人気が高い傾向があるが、マニアックな記事にも人気記事がある
  • Linux系の記事は安定してそこそこ読まれていることが多い
  • Linux記事の読者がLinuxユーザーに偏っているわけではない
  • 開発系の記事や高度技術系の記事はあんまり読まれていない
  • 検索ワードは「マジ困ってる感」が出ているものが多い
  • Firefox vs Chromium系では1:3くらいの比率でChromium系のほうが多い (Chromiumそのもののユーザーはかなり少ない)
  • IPv6ユーザーはとても少ない
  • Chienomiの熱心な読者よりは、検索で到達している人のほうがずっと多い

ちなみに、Chienomiはトラッカー絶許系サイトなので、ユーザーがどのように行動したか、あるいはChienomiの外でどのように振る舞っているかということには一切タッチしていない。 もちろん、追いかければわかる人もいる(非常に特徴的なUser Agentの人とか、あるいはIP addressで追いかけるとか)が、そうはしていない。

OS統計

Windows => 481816 (41.2770%)
*Bot => 266945 (22.8691%)
Mac => 113586 (9.7309%)
Linux => 96127 (8.2352%)
Android => 94973 (8.1363%)
iPhone => 82924 (7.1041%)
*RSS_READERS => 11979 (1.0262%)
*USER_PROGRAM => 10879 (0.9320%)
iOS => 3748 (0.3211%)
CrOS => 1298 (0.1112%)
*UNKNOWN => 1061 (0.0909%)
FreeBSD => 408 (0.0350%)
*External_Services => 332 (0.0284%)
*SNSLinks => 258 (0.0221%)
*Embed => 219 (0.0188%)
*COMMANDLINE => 203 (0.0174%)
*MEETING => 134 (0.0115%)
*Unix Browsers => 91 (0.0078%)
cros => 71 (0.0061%)
ios => 43 (0.0037%)
PlayStation => 32 (0.0027%)
PLAYSTATION => 29 (0.0025%)
NetBSD => 27 (0.0023%)
mac => 27 (0.0023%)
SunOS => 16 (0.0014%)
BlackBerry => 12 (0.0010%)
Symbian => 10 (0.0009%)
iphone => 9 (0.0008%)
OpenBSD => 8 (0.0007%)
*Office => 8 (0.0007%)
android => 1 (0.0001%)
PalmOS => 1 (0.0001%)
BeOS => 1 (0.0001%)

Windowsは偽装を含む可能性が高いため、日本国内の比率から考えると「Linuxがめちゃくちゃ多い」と言えそうだ。

かなり少ないが、FreeBSD, NetBSD, OpenBSDのユーザーはいて、なんと、SunOS(!!!!)のユーザーがいる。 いや、SunOSでChienomi(要TLS1.2)が読めるとはとても思えないので偽装だと思うのだけど…… また、偽装である可能性はある(アメリカでは人気だったので、古いbotがそう偽装している可能性がある)ものの、BlackBerryユーザーもいる。

そこそこの人数PlayStationで見ている人もいる。 逆にDragonflyBSD, Illumos, Solarisなどのユーザーはいない……人気ないのか……

これ以外が全部bot(つまり、約3割がbot)というわけではない。 RSSリーダーで見ている人が結構いる(全体の5%くらいいる)のと、他のサイトの埋め込みで見ている人も0.02%程度いる。このため、bot比率は(Windowsを除外すれば)2割弱といったところ。

興味深いのは、OS比率には含まれない、結構な数の

  • w3m, Lynxなどのターミナルウェブブラウザからのアクセス
  • curlなどのコマンドラインからのアクセス
  • プログラミングライブラリでのアクセス
  • Officeソフトウェアからのアクセス(Google Spread Sheet, Google Action Scriptなど)
  • ミーティングルームからのアクセス(Webex, Typetalk, Chatworkなど)
  • SNSからのアクセス(Mastdon, Pleromaなど)

がある。w3m, Lynx, curlなどは何らかのUnixプラットフォームだと考えられるが、これがトータル0.02%強いる。

スクリプトアクセスの統計

Ruby => 2201 (20.2316%)
PostmanRuntime => 129 (1.1858%)
Java => 164 (1.5075%)
Go-http-client => 924 (8.4934%)
Go 1.1 => 20 (0.1838%)
python => 2434 (22.3734%)
okhttp => 232 (2.1325%)
Apache-HttpClient => 4444 (40.8493%)
Test Certificate Info => 21 (0.1930%)
Python => 263 (2.4175%)
nadesiko => 7 (0.0643%)
curb => 10 (0.0919%)
CakePHP => 17 (0.1563%)
cpp-httplib => 1 (0.0092%)
Faraday => 2 (0.0184%)
Go http => 6 (0.0552%)
scalaj-http => 1 (0.0092%)
AngleSharp => 3 (0.0276%)

プログラミングライブラリに至ってはなんと0.5%以上いる。 プログラミングライブラリを使っているものをbotに分類していないのは、Chienomiとしては「ユーザープログラムフレンドリ」を考えているからだ。 Chienomiを自作スクリプトで購読されることは一向に構わないし、むしろそうしやすいように考えてページを作ってある。 もちろんそれがノンオーガニックな粗末なbotである可能性もあるが、Chienomiの特性上、「ユーザーお手製のプログラム」だと考えたい。

最も多いのはApache-HttpClientでこれはJavaのライブラリなので、Javaが最も多いということになる。 次いでPythonが多く、Rubyもかなりのボリュームがある。Goも無視できないくらいの人数がいるようだ。 なお、RubyはOpen-uriを使った場合でも、Net::HTTPを使った場合でもUAは “Ruby” になる。

珍しいのは、Scala(!), Dart(!)となでしこ(!!)だろう。

UA統計

Chrome => 380656 (32.6106%)
*Bot => 214699 (18.3932%)
Firefox => 177402 (15.1979%)
iPhone Safari => 91019 (7.7976%)
Android WebView => 75244 (6.4461%)
*Embed => 52349 (4.4847%)
Trident => 35615 (3.0511%)
*UNKNOWN => 31827 (2.7266%)
Edge => 17066 (1.4620%)
Edg/ => 16393 (1.4044%)
*RSS_READERS => 15521 (1.3297%)
*USER_PROGRAM => 9132 (0.7823%)
Android Chrome => 7305 (0.6258%)
Vivaldi => 6517 (0.5583%)
OPR/ => 6340 (0.5431%)
MSIE => 5550 (0.4755%)
Goanna => 5213 (0.4466%)
Waterfox => 4953 (0.4243%)
iOS app => 3753 (0.3215%)
Chromium => 2728 (0.2337%)
Iron => 2014 (0.1725%)
Sleipnir => 1606 (0.1376%)
Kinza => 1014 (0.0869%)
Android Browser => 452 (0.0387%)
*MEETING => 427 (0.0366%)
*External_Services => 339 (0.0290%)
YaBrowser => 310 (0.0266%)
Opera => 307 (0.0263%)
*SNSLinks => 258 (0.0221%)
curl => 203 (0.0174%)
iPhone Chrome => 135 (0.0116%)
QQBrowser => 115 (0.0099%)
*Office => 104 (0.0089%)
*Malicious => 77 (0.0066%)
MetaSr => 77 (0.0066%)
Instapaper => 58 (0.0050%)
PaleMoon => 57 (0.0049%)
Mozilla => 52 (0.0045%)
w3m => 51 (0.0044%)
2345Explorer => 43 (0.0037%)
PlayStation => 32 (0.0027%)
edge => 31 (0.0027%)
Wget => 31 (0.0027%)
PLAYSTATION => 29 (0.0025%)
Emacs => 27 (0.0023%)
Dillo => 24 (0.0021%)
Netscape => 20 (0.0017%)
Lynx => 17 (0.0015%)
NetSurf => 14 (0.0012%)
Konqueror => 13 (0.0011%)
Otter => 12 (0.0010%)
QTabWebView => 11 (0.0009%)
Viv/ => 8 (0.0007%)
UCWEB => 7 (0.0006%)
NetFront => 5 (0.0004%)
Links => 5 (0.0004%)
YJApp => 4 (0.0003%)
BlackBerry => 3 (0.0003%)
MultiZilla => 1 (0.0001%)
wii libnup => 1 (0.0001%)

読者データから導かれた想定読者

これらを踏まえて推察しているChienomi読者は

  • 一般的なエンジニア(職務としての関心に限る読者)はある程度いるが、リピーターは技術的関心が比較的高い傾向にある
  • Linuxユーザー、特に「Linuxに定住している」ユーザーはかなり多く、Linuxは身近な存在
  • プログラミングをする、できる、あるいは関心がある人が比較的多いが、「比較的」の範囲に収まる
  • スマホよりはPCを好んで使う
  • 自分好みのアプリをよく使いこなす人である傾向がある
  • 技術的な深い話や最新技術などに関心がある

ということから

  • 積極的な職業エンジニア
  • ギークあるいはハッカー
  • Linuxer

の少なくともいずれかである可能性は高い、と考えている。

こうしたことを踏まえて、

  • 初心者向け記事はエンジニアの卵やワナビーにとって有害にならず、ゆくべき道を選ぶ助けになるようなものに
  • ナレッジ記事は「調べれば得られる情報」や「基礎教養」は省いて、必要なら個々に掘り下げられる本質情報を記述
  • トラブルシューティングなどで読むような記事はよりコンパクトに、問題を完全に解決するために必要な情報を記載
  • テクニックや高度な記事は、その本質部分や特徴的なところを丁寧に解説
  • 開発記事やプログラミング記事は、そうしたプログラムに関心がある、あるいはプログラミングそのものを習得しようとする人の助けになるようなインストラクション方向で

といった感じで心がけている。 (むしろ、そのように書いてきたから今がある、という感じではあるが。)

来歴

2003年にLive with Linuxというタイトルでブログを開始したのがルーツ。当時はDiary.cgiというソフトウェアを使用していた。

2004年に「ちぇのみ」というサイトを立ち上げ、Live with Linuxは一部コーナーに変更された。2008年にWordPress化され、「Live with Linux」というのはカテゴリとして残された。

2014年に全アーカイブを削除し、ブログサイト全体を統合して”Journal de Aki”をスタートさせた。 2017年に技術情報以外の内容を追い出す形で独立させ、残った側が “Chienomi”という名称に変更された。 なお、この際にサーバーも移転している。

2019年にWordPressを廃止し、PureBuilder Simplyによるウェブサイトに変更した。 従来の記事はアーカイブ記事という形で残されている。

2014年に全アーカイブを削除したのは、ブログ統合のためというのもあるが、それ以上に単なる感想にすぎない記事や、無知から誤った情報を発信している記事が多かったためである。 当時はLinuxについての情報がとても少なかったため、「やってみた」的な記事もそれなりに価値があったが、現在においてはノイズにしかならないため削除した。 私の意見としては、これが損失になるような記事は全くない。

ブログ分離時にChienomi側が残ったのは、アクセス量的にChienomiのほうが圧倒的に多かったためである。

デザインと機能

基本的なことについてはリニューアル記事に記載がある。

基本的なデザイン

初期のChienomiのイメージであるオレンジを一部継承しつつ、控えめで読みやすいデザインを採用した。 リーダービューにナビゲーションを追加したようなデザインを目指している。

もともと白ベースのデザインだったが、現在はダークテーマに変更された。 これは、ダークテーマのほうが読みやすいこと、そして一般的にエディタのテーマはダークテーマが好まれることによる。

ただし、prefer-color-schemeメディアクエリにより、ライトテーマが要求される場合はライトテーマを適用する。

コンテンツ幅とカラム

2カラム/1カラムの可変。

メインカラムは、コードの表示幅の任意性のためにビューポートをめいいっぱい使うようにしている。 PCでのビューポートの拡大/縮小にも良い対応を示す。

なお、FHDのscale 1.0でタイルするとギリギリで2カラムを維持する設定。

フォント

全体を通じたフォントの指定はなく、ユーザーエージェントに委ねている。

コード部分は一部指定されている。 これは、ブラウザでフォントを指定していない人が、コーディングフォントとして不適切なものを採用されてしまわないようにするためで、ConsolasMesloがその設定に含まれている。 Operatorを購入している人のために、Operatorを優先で指定している。

フットノート

注釈は本文中の番号(CSSによって†マークが追加される)をクリックすることでジャンプすることができる。 また、注釈のリターンマーク(↩︎)によって本文の位置に戻ることができる。

TOCナビゲーション

1カラムモードのために画面に小さくTOCボタンが表示され、これでTOCに飛ぶことができる。

でないとTOCが下だからね。

サイドバーナビゲーション

サイドバーが表示されている状態では右上のセレクトボックスで選んだ項目にジャンプする。

気づきにくい機能。私もよく忘れる。

検索

高速で実用的なgrep的検索を可能にしている。

ダブルクォートで囲むことでスペースを含むワードを検索できる。

複数のワードをスペースで区切ることができ、通常はOR検索、AND検索も可能。

大きなサイズの画像を必要とする画像については、クリックすることで大きな画像がロードされる。 なお、大きな画像がロードされるのはあくまでこのタイミングである。

非常に大きな画像を必要とする場合は画像をリンクにしてある場合もある。

アーカイブ記事の画像はすべてリンクであり、lightboxとしては機能しない。

この機能はJavaScriptによって提供されている。 なお、Vanilla JSであり、ライブラリは使用していない。

また、lightboxを使用しないページでは、lightboxのスクリプト自体をロードしない。

印刷

printingを想定したCSSを提供しており、ウェブページを印刷することで印刷に適したレイアウトに変換される。

印刷時はserifが使用されるが、これについてはそれなりに明朝体を明示的に指定している。

コメント

“View/Leave comment”ボタンを押すとコメントページに移る。

SNSシェアボタン

Twitter, LINEともにトラッキングを避けるため、単なるリンクタグになっている。

Web Share APIによる共有機能はJavaScriptを使用している。このスクリプトはHTML要素の属性として書かれている。 現状、Web Share APIが動作するのはAndroid/iOSのChrome系ブラウザと、iOSのSafariだけである。

それ以外の環境でシェアする場合、アプリに備わっている共有機能を使うか、アドレスをコピーして使用してほしい。

なお、他のSNSシェアボタンがない理由についてだが、主には際限ないことが挙げられる。 Telegramなどはシェアボタンを作るのはとても簡単なのだが、スペースを取るまでもないだろう。 そもそもアプリ共有やアドレスのコピペなど方法はあるわけで、シェアボタンをわざわざ用意するまでもないというのもある。

Twitterを用意しているのは、Twitterのシェアに関しては私へのメンションとして含むことができるからだ。 また、LINEを用意しているのは、Mimir Yokohamaのシェアボタンとして実装するためのテストのためである。

ちなみに、LINEのリンクはFirefox Focusだとブロックされる。

Promise

将来に渡ってこの内容を維持することを確約するものではないが、現時点で私が心がけていることである。

トラッカーを含めない

私がトラッカーを使わないだけでなく、広告, Google analystics, SNSシェアボタンなど第三者がユーザーをトラッキングすることを可能にする方法も提供しない。

私は訪問者のアクションを監視しない。

広告を含めない

約束の中では最も弱い。なぜならば、全サイト合わせると運営に年間4万円近くかかっているからだ。

だが、私は今のところ広告を含める意思がない。理由は、他の約束に差し支えるからである。

アクセシブル

古い環境、マイナーな環境、視覚障害者、ナローな回線などであっても問題なく情報を獲得できるようにする。

また、それもあり、閲覧者の通信容量を浪費しないためにも軽量なページを心がけている。 これは、トラブル環境下でトラブルシューティングのためにページを検索している人が見る可能性も高いため、アクセシブルで軽量なページであることはとても重要なのである。

リーダブル

デザインのためのデザインでなく、「読みやすい」を追求する。

ヒューマンファースト & 有益な記事

人間に寄与しないSEO対策や、アクセスを増加することを目的としたジャンクな記事の生産をしない。

あくまでも「存在することに価値がある記事」から成るサイトを構築する。

Stat

Chienomiの月間PVはおよそ8万から25万程度。 オーガニックアクセスに限定すると1万から5万程度。

アクセスは9割がPCから。

受けている攻撃はほとんどがWP向け。もちろんこのサイトでは無効。

実はトラッカーを使っていないので、得られるユーザー情報は猛烈に少ない。 ただ、どういう情報にニーズがあるかは確認しないといけないので、それなりにログは見ている。