Remember the Fire – ビリージョエルの”We Didn’t Start the Fire”の歴史的事物をグラフ化

Remeber The Fire は、ビリー・ジョエルの1989年のヒット曲 We Didn't Start the Fire(ハートにファイア) の歌詞をグラフにしたものです。 歌詞をグラフに? どういうこと? と思われるかもしれませんが、この曲はとても変わった曲で、メイン部分の歌詞はほとんどが歴史的な事件や有名人などの固有名詞の羅列なのです。時代的には、第二次世界大戦後からベルリンの壁崩壊までの冷戦時代、彼が生まれてからそれまでの世界の歴史を彩った事柄を、若干アメリカ中心ではありますが、並べて歌ったものでした。 今回のグラフは、それらの事件や人物を「ウィキペディアで検索された回数」という観点でグラフにしています。 2019年1月と2014年1月の二つを同時に表示させると、この5年間で検索回数が増えたキーワード・減ったキーワードを見つけることもできます。 それぞれの事件や人物の解説は、ハートにファイア - Wikipedia

OpenVim – ブラウザで動く Vim 入門

OpenVim は、ブラウザ上で動く Vim のインタラクティブなチュートリアルです。 20章にわかれたチュートリアルをこなしていくことで、Vim の基本的なコマンドを一通り知ることができます。 Unix

LockScream – MacOS X のロックスクリーンを偽装してパスワードを横取りするツール

悪用しか使い道が無いように思えますが、GitHub で公開されてて入手できるツールです。 LockScream は、Mac で動かすと本物のスクリーンロックに代わって画面をロックするツールです。 起動すると OS に設定した本物の壁紙を表示し、メニューやドックを非表示にし、いろいろなキー入力を無効にします。画面を見ていつものロック画面だと思い込んだユーザーは、ロックを解除しようとパスワードを入れるわけですが、この LockScream がその入力されたユーザー名やパスワードを横取りできてしまえるというわけです。 パスワードはこのツールの裏側で本物のOSに問い合わせられるため、ユーザー名・パスワードが合っているかどうかも正しく判定でき、でたらめなパスワードでは(本物と同じように)エラーになります。動作も本物と同じため、パスワードを奪われたこと自体に気づくこともないでしょう。 横取りしたパスワードは特定のファイルに XOR + Base64 エンコードされて保存されるので、後でこのファイルを回収すれば、所有者のユーザー名/パスワードが入手できてしまいます。 仕込む際と取得したパスワードを回収する際の2回、アンロック状態のMac

Never-Blink ウェブカメラ対戦型の「まばたき我慢」ゲーム

Never-Blink は、まばたきを我慢し合うゲームです。 サーバにつながった中からランダムな相手が決まり、その相手とwebカメラがついたブラウザ経由でにらめっこのように向き合います。 最初に持っているヒットポイントは、まばたきをするたびに減っていき、ゼロになると負け。 https://www.youtube.com/watch?v=VCP36k5OqDs&t=59s 類似の先行例として、2017年にBBCが人気ドラマ「ドクター・フー」のプロモーションで短期公開した、Don't Blink(まばたきするな)があるそうです。こちらは他人との対戦ではなく、ウェブカメラをみながらどれだけまばたきを我慢できるかというゲームだったよう。 ランダムにつながるというあたりは、一時期世界中で話題となった Chatroulette を思い出しますね。単にランダムにつなげるより、そこにゲームが有った方が楽しいという人はいるかもしれません。 ソースコードがGitHub に公開されていますが、今のバージョンは処理が重いそうで、どこかのサーバに載せて一般公開はできていないということ。自分でインストールした上で相手を探して遊ぶのはちょと大変かもしれませんね。 モバイルゲームとして手軽に遊べれば、そこそこ流行るかもしれません。 via Hacker

ASCII QR – QRコードをテキストで生成

ASCII QR は、テキストでQRコードを作れる、というQRコードジェネレータです。 # 「ASCIIじゃなくてUnicodeだって? よく分かってるよ」とあるのでサービス名のASCIIは言葉の綾でしょうか URLか文字列を入力すると、そのQRコードをUnicodeテキストで表示してくれます。 Imageをクリックすると、画像版も見られます。 二つ並べてみると、だいぶ違いますね。 このサービスの使いどころを考えてみたのですが、QRコードを画像ではなく文字列で送れれば、転送内容をかなり節約できますね。メールにQRコードを添付して送るよりも、メール本文にテキスト版のQRコードを貼り付けて送った方が軽そうです。 # あれれ? QRコードが表現するURLや文字列をメール本文に貼り付ければもっと軽いのでは… まあそれは置いておくとして。 出来上がった「テキスト版」QRコードを、当ブログ上でなんとか表示してみたのがこれです。  ▄▄▄▄▄▄▄   ▄ ▄ ▄▄▄▄▄▄▄   █ ▄▄▄ █ █ █▄▀ █ ▄▄▄ █   █ ███ █ ▄▄▄▄█ █ ███ █   █▄▄▄▄▄█ █▀█ ▄ █▄▄▄▄▄█   ▄▄ ▄  ▄▄▀ ▄▄▄ ▄▄▄ ▄▄    █▄▄█▀▄▄ █▄▀█ ▀ ▄▀ ▄     █▀▀ ██▄▄▀▀▀▄▀▀▀▄ █▄█▀   ▄▄▄▄▄▄▄ ██▀█▄██ ▄█ ▀    █ ▄▄▄ █  ▄▄▀▄ █ █▀▀█    █ ███ █ ▀█▀   ▀▀▄▄▄▀█   █▄▄▄▄▄█ ██▀█  ▄▄▄ ▄ ▀     フォントが等幅になったり、縦横比を合わせるなどいろいろやっていますが、僕のスマートフォンのアプリではQRコードとして認識してくれませんでした。 # テキストなのでコピペできます。テキストエディタ等にコピーしたら動くかも? 表示の調整に問題があるのかな、と思って元の ASCII QR

Quickfix – インスタグラムやツイッターのフォロワー自販機アート

Quickfix は、Raspberry Pi, Arduino などで制作された、持ち運び可能な自動販売機。売るのはソーシャルネットワークのフォロワーです。

「イイネやフォロワーを即時に購入」

(credit: Driesdepporter)

直観的でわかりやすいですね。

コインを投入し、qwerty キーボードで対象のInstagramユーザー名を入れると、数秒でイイネやフォロワーが増えるということです。

「Quickfix – インフルエンサーも大好き!」

お金を出してフォロワーを購入するのは、もちろんどのサービスでも利用規約違反でしょうし、バレたら問題になるのは必至でしょうけど。あらゆるところにはびこるインチキに対する皮肉で、今の時代を切り取ったアートと言えるかもしれませんね。

ホッピングシェアが英米仏瑞で今夏にサービス開始。街中で気軽にポゴスティックが利用できる

スウェーデン、マルメーを拠点とするカンゴルー社(Cangoroo)が、英語ではポゴスティック(Pogo-stick)、日本では「ホッピング」や「スカイホッパー」として知られる、バネを利用したあの乗り物のコミュニティシェアサービスを、今年の夏にパリ、ストックホルム、サンフランシスコ、ロンドン、マルメーの4か国5都市でサービスインするということです。

自転車のシェアに続き、キックスクーターのシェアサービスも各地で開花しているそうですが、ホッピングはこれらマイクロ・モビリティサービスのさらなるマイクロ化を進めそうですね。

料金は、一回の貸し出しが$1(110円)、あとは時間による従量課金で一分あたり$0.3(円) ということです。一時間借りると$19(2090円) は、自転車と比べてもちょっと高いかなと言う気もしますが、よく考えたらホッピングを一時間も乗れませんね。

ほとんどの国で、ホッピングは「歩行者」扱いとなるのだそうで、免許等は不要ではないかということ。もし日本に来た時には再チェックは必要でしょうけれど。ガソリンも要らず、駐車場が無くてもどこにでも置け、楽しくて健康になる(一分間で15から20kカロリーを消費)といいことづくめの乗り物のようです。

サイトではリクエストも受け付けているので、日本でも欲しい、という方はリクエストを投げてみてはどうでしょうか。

正気か? って?

FastCompanyの記事では、広告代理店も経営するカンゴルー社の代表を取材した上で、メディアで大注目を集めた後で、もう少し真剣味のある別の乗り物シェアにつなげるという意図があるのではないか、という分析をしています。人騒がせではありますが、SNS時代に一つの有りうる手法なんでしょうねえ。

via Curbed SF

metro-clojure – gitリポジトリで地下鉄路線図を作るClojure製ツール

gjhenrique/metro-clojure は、鉄道路線図をgitのコミット/ブランチログで再現するためのオープンソースツールです。

路線と路線に所属する駅名を並べた json ファイルが入力となります。サンプルとしてサンパウロとニューヨークのデータがついてきてるので、それを参考にします。


[
{
"name": "銀座線",
"stations": [
"渋谷",
"表参道",
"外苑前",
"青山一丁目",
"赤坂見附",
"溜池山王",
"虎ノ門",
"新橋",
"銀座",
"京橋",

データをツールに食わせると、git コマンド群を発行するシェルスクリプトを作ってくれます。


$ boot generate-git-commands -c tokyo -f tokyo.sh

大江戸線のような循環があると、git グラフが作れないためツールはエラーで止まります。そりゃそうですね。

都庁前の循環を外して再度挑戦するも、東京のいたるところの乗換駅でエラーが… あちらとこちらで乗り換えができれば、循環だらけにもなりますね。


# 渋谷 銀座線 半蔵門線 副都心線
git checkout --orphan "銀座線"
git commit --allow-empty -m "渋谷"
git branch -f "副都心線" HEAD
git branch -f "半蔵門線" HEAD
# 代々木上原 千代田線
git checkout --orphan "千代田線"
git commit --allow-empty -m "代々木上原"
# 代々木公園 千代田線
git commit --allow-empty -m "代々木公園"
# 明治神宮前 千代田線 副都心線
git merge --strategy=ours --allow-unrelated-histories --no-ff --commit -m "明治神宮前" 副都心線
git branch -f "副都心線" HEAD
# 北参道 副都心線
git checkout "副都心線"
git commit --allow-empty -m "北参道"
# 方南町 丸ノ内線分岐線
git checkout --orphan "丸ノ内線分岐線"
git commit --allow-empty -m "方南町"
# 中野富士見町 丸ノ内線分岐線
git commit --allow-empty -m "中野富士見町"
# 中野新橋 丸ノ内線分岐線

「赤坂見附-永田町」のような別名の乗換駅の同一化を諦め、さらにエラーを起こす乗換駅を同一にしないよう入力データを修正していって、やっとなんとかエラーを出さなくした結果のスクリプトを、新しい git レポジトリに突っ込むことで、部分的には正しいところもあるぐらいの、東京の地下鉄gitグラフ(東京メトロ+都営地下鉄)を作ってみました。

git log で見るとこんな感じ

東京の路線図は循環しすぎなので、使用例としてはあまり良くないかもしれませんね。

もともとパリの路線図をGitHub 上で再現した2015年の作品があり、metro-clojure はこのような作品を簡単に作れることを目指して制作されたようです。

このツールを使えば、地下鉄の路線図以外の何か身近な有向グラフを git グラフで表現することができますね。

via From metro connections to a git graph

マルコフ連鎖キーボード – 入力結果でキー配列が動的に変わる

markovkeyboard は、キーボード配列の新しい提案です。なんと、一字タイプする事にキー配列が変化します。

ツール本体は emacs lisp のコードで、emacs の IME として読ませて起動します。

一文字タイプすると、これまでの文字列から次に来そうな文字をより打ちやすい箇所に配置した「新配列」にキーボードが変わります。

ドキュメントによれば、”the”をたくさんタイプする人なら、ホームキーで’t’を打つと、同じキーが次に’h’に変わり、次は’e’になるだろう、ということ。なるほど。予測がうまくはまる文章を打つなら、ホーム付近のキーだけで文章が書けるようになったりするのかもしれませんね。

ガイド無しに打てるとは到底思えないので、下半分に「現在の」キー配列を表示して使ってみました。…これは苦しい。自分の環境のせいかもしれませんが、一文字打ってガイドのキー配列が切り替わるのにも数秒掛かることがあり、これで楽々と文章が入力できるようになるには時間が掛かりそうです。

# この markovkeyboard を試すために、ひさしぶりに Emacs を起動しましたが(というか、インストールから始めました)、昔あんなに使ってたのにほとんどのコマンドを忘れててたいへんでした。

既存の文章を使ってマルコフ連鎖データを用意するツールも同梱されているので、自分の過去の文章を食わせれば、より正確な予測がされるということです。

個人的には初めてT-Code方式を見た時を超える衝撃でした。機械に人間はどこまで寄り添えるのかというチャレンジ精神を感じます。

キートップが液晶やeインクになってて表示を切り替えられるキーボードも今はありますし、キーボード上で直接キーを確認できたら、ちょっとは使い物になりますかね?

via Hacker News

トランプ大統領がツイートしてる国を大きく描いた世界地図

World Mapper による、ツイッター大好き大統領ドナルド・トランプ氏のツイッターの発言に登場した国の言及回数を調べ上げて、よりたくさん語られている国を大きく描いた世界地図です。

World Mapper

これまでの彼のつぶやきの総数は42,000近く。そのうち8000個は大統領就任以降のもの。このアメリカ大統領としてのツイートと同期間のリツイートから、アメリカ合衆国以外のすべての登場国をカウントしたそうです。

一度でも登場した国は81個。

トップは21%のロシア。外国について語るとき、その5回に1回はロシアなのですね。まあこれは、大統領選挙にロシアの隠れた支援があったのではという疑惑があることから、外交の件以上に言及してるのかもしれないなとは思いますが。

仲良しの北朝鮮が12%、中国が11%と続きます。日本はイラン、シリアに次ぐ8位の3.1%(43回)。カナダ・フランス・韓国・ドイツよりちょっと多いのは最近の接待の成果でしょうか。

日本やシンガポール(15回)は元々が小さいので、実際の世界地図と比べるとかなり大きく見えますね。

O.MGケーブル – 挿したパソコンが遠隔操作されるUSBケーブル

マイク・グローバさん(@_MG_)が開発を進めているO.MG Cableは、PCを遠隔操作するためのツールを組み込んだUSBケーブルです。

見た目は何の変哲もない普通のUSBケーブル。

PCに挿すと、リモートのスマートフォンアプリから、PCに対してキー入力ができるようになります。デモでは、PCの利用者がスクリーンロックを解除した状態で、任意のウェブサイトをブラウザに開かせていますが、キー入力が遠隔でできるということは、ほぼなんでもできてしまうと言っていいでしょう。

パソコンに外部機器やスマートフォンをつなげるUSBポートが、パソコン乗っ取りなどの攻撃のターゲットとなりやすいのは昔から知られています。

駐車場にUSBメモリをばらまいたら45%の人が自分のPCに挿してファイルを開いてしまった」というような実験もありますし、挿したらPCを破壊できるUSBメモリなんてものも作れたりします。

企業の情報システム部でもUSBポートに指定の機器以外を挿さないよう指導したり、ポート自体を物理的に塞いで使えなくしたりという対策を取っているところもあります。

そんなわけで、出自のはっきりしないUSBデバイスを挿すのはよろしくない、という認識の人は多少は増えていると思われるのですが、今回の O.MG ケーブルの場合、ケーブルの先に挿すのはおそらく自分のスマートフォンなどで、挿す理由も充電のためだったりするかもしれません。

しかし、ケーブル自体に信号を横取りし書き換える機能が入っているのであれば、乗っ取り側からすればそれで十分、というわけです。USBケーブルがどこから来たものか、企業支給のものだったり自分が新品未開封の商品を買って開封した手つかずのものか、というところまで確認しないと危ないかもしれない、となると、管理はさらに大変になりますね。

回路設計からはんだ付けまで勉強しながらo.mg ケーブルを改善しているグローバさんには、ハードウェア・ソフトウェア・開発機材などさまざまな面から協力者の手が挙がっていて、量産化へ向けて前進しているということです。設計や内部のソフトウェアはオープンソースとして公開されるそう。

via New Offensive USB Cable Allows Remote Attacks over WiFi

akky's work blog