はじめに
4記事目になりました。(下書きに置きっ放しでだいぶ遅くなってしまった。。)
超離散のお話は一旦休憩。時間があれば戻ります。
2回分くらい使って、GitHubの初期Iconでライフゲームする(予定)。
本稿では、GitHubの初期Iconがどのように生成されているのかを紹介します。
Motivation
Icon変えたいなーと思っていたらこんな記事を見つけたので、MacUserの自分にも動かせるように作ろうと...
(GitHub の自動生成されたユーザーアイコンでライフゲーム)
ちなみに, JavaFXで作る予定です。
Identicon
GitHubの初期IconはIdenticonというものだそう。
https://github.com/blog/1586-identicons
まず、Identiconとは何なのか。
From Wikipedia:
An Identicon is a visual representation of a hash value, usually of an IP address, that serves to identify a user of a computer system as a form of avatar while protecting the users' privacy.
つまり、IPアドレスなんかの個々を識別するための値を、可視化したもの。こんなのです。↓
GitHubのIdenticon
自分のIconはGitHubの初期Iconから変えていないので、これもIdenticon。
GitHubのIdenticonは、正方形を$5\times5$に並べたもの。
色のついた正方形をおく場所と、その色によって差別化が図られています。
生成方法
GitHubのIdenticonは以下の方法で生成されている(らしいです)。
- GitHubのUserIDをMD5(wikipedia)で128bitのHash値に変換。
(UserIDは http://caius.github.io/github_id/ でわかります。) - 形を決める。左右対称なので、左から3列目までを決めればよい。3→2→1列目の順で上から下に、変換後の先頭15文字の偶奇で決める(偶数ならそこに色をつける)。
- 128bitの末尾 7 文字を使って色を決める。
(詳しくは http://blog.atgw.jp/archives/3025)
ちなみに...
GitHubのIdenticonは
https://identicons.github.com/(User名).png
に残っているそうです。Iconを変えてしまった人は、お試しあれ。