カテゴリー
fun

Checkboxland – HTMLのチェックボックスですべてを作れるライブラリ

Checkboxland は、HTML のチェックボックス要素を活用してしまくるための JavaScriptライブラリです。

HTML のチェックボックス要素と言えばこれ↓ ですが、

このチェックボックスを使って様々な表現を実行できます。

デモでは、文字が横に流れるマーキー、デジタル時計、アニメーション、QRコード表示、ライフゲーム、動画再生(!)、など様々な表現が、すべてチェックボックスだけで実現されています。

API documentによれば、チェックボックスを縦横に並べたグリッド上でグリッド上の各座標を調べたり書き換えたりする低レイヤAPIと、文字を大きく描く、スクロールさせる、画像や動画を描写させるなどの拡張APIが用意されています。プラグイン機構も用意されているので、自分で Checkboxland に新たな機能を追加することも可能です。

多数の要素を表示しようとするとページが重くなるのはチェックボックスであっても(当然)同じで、チェックボックスの数が1500個を超えるとチェックボックスの更新速度が問題となることから、32×32 や 64×16 といったサイズ以下のグリッドを推奨するそうです。

作者のブライアン・ブラウンさん(Bryan Brown)は、職場の近くにある機械式の巨大サインボードが、黒白のグリッド表示でテキストやアニメーションを表示するのを見て「チェックボックスでも同じことができるのでは?」と考えたそうです。

チェックボックスだけで凝ったウェブサイトを作りたいと思っていた人(いるのか?)にとってはとても便利なライブラリと言えるのではないでしょうか。

via Hacker News

カテゴリー
Uncategorized 技術者と英語

「ランダムなdigitsを示して」「左小指、左足親指、右足第4指、右人差し指、…」

数学・計算に強い検索エンジンとして知られるWolfram Alphaで、面白い検索結果が出るというツイートがありました。

「数字をランダムに48個表示して」のつもりで入力したものに対して、両手両足の指の名前がランダムに返ってきてます。

digit の2番目の意味に「手足の指」があるそうです。知りませんでした。

指を折って数えたものが数字(digit)になったから、数字より指の方が先にあった言葉なのかもしれませんね。

この結果、技術的に(technically)正しいと言えばまったくもって正しいのですが、Wolfram Alpha に求められてる結果ではなさそう。このツイートがバズったのを見て修正したのか、今は結果が出なくなってしまっていますが、下の方の「関連検索語」にはまだ「左足親指」や「右足第2指」が提案で出てきますね。

本来ほしかった結果を得たいときはどうすればいいか、ですが、48 random integers (ランダムな整数を48個)ですかね。

ヒトケタの数字を48個ほしかったのかもしれませんが。

カテゴリー
fun

エクセルのフラッシュ・フィル機能でフェベット・フェクソン

マイクロソフト・エクセルのフラッシュ・フィルは、既存のセル内の値から埋めるべき値を推測してくれるという便利機能です。

月名の推測

このように、月の名前の略語が並んでいたとして、次の列に “January” と正式名称を入れます。そして2行目で “F” を打った瞬間、1行目の法則性を見て残りを埋めるための提案をしてくれます。

動作からするとこういうことでしょう。

  1. 一行目では”JAN” が “January” になった。
  2. つまり、ユーザーは1行目の2,3文字目を小文字にして、うしろに”uary”をつけようとしている
  3. 2行目からも同じ変換をして提案しよう

こうして、”February” は “Febuary” になり(おしい!)、”March” は “Maruary” になりました。

人名の推測

こんどは “JAN” の右の列に “Janet Jackson”(ジャネット・ジャクソン) と打ちます。すると、2行目に F をタイプした時、こんどは以下のような推論をしてくれます。

JAN → Janet, JAN → Jackson というルールを見出したエクセルは、フェベット・フェクソン、マエット・マクソン、ノベット・ノクソン など12人のそれっぽい名前を提案してくれました。

日本語の推測

日本語でも動くと面白いのですが、日本語のタイプにはIME が絡んできて、なかなか面白いフラッシュフィルを披露してくれません。補完はしてくれても、日本語の確定キーと衝突してしまい提案された値をフィルできなかったりという問題もあります。

ローマ字で入れれば、もちろん日本語だろうとなんだろうと補完しようとしてくれるのですが… あまり面白いものも思いつかず。

via reddit