若くない何かの悩み

何かをdisっているときは、たいていツンデレですので大目に見てやってください。

Nodeの認証モジュール「Passport」の解説ページを邦訳しました

Nodeの代表的な認証モジュール「Passport」の解説ページを(勉強ついでに)邦訳しました(邦訳版ページ)。

Passportの解説ページ邦訳版のスクリーンショット

対訳機能はじめました

@merborne さんのエントリ「英語圏のオープンソースプロジェクトにおける翻訳ドキュメントの問題点とその解決のための一方策」に触発されて対訳機能をつけてみました。パラグラフの末にある» 原文 を押すと、対訳が下に表示されます(下図)。

続きを読む

大学の頃の研究が国際会議MoMMで表彰されました

大学の頃の研究が、オーストリアで開かれていたMoMM2013という国際会議のショートペーパー部門で表彰されました。うれしい! ただ、(~♥~)は既に大学を卒業してしまった身なので、英語論文を書き上げたのは先生です。つまり、私の論文が表彰されたというよりかは、私の研究アイデアが認められた、という印象ですね。先生に大感謝です。

MoMMって何?

MoMMはモバイルコンピューティングとマルチメディアを取り扱う国際会議です。モバイルのMo+マルチメディアのMMで、MoMMというわけです。この国際会議では研究初期のアイデアなどを発表するショートペーパー部門があり、この部門で私の研究テーマ「同時押し暗証番号認証」が表彰されました。

何を表彰されたのか

当時の私の研究テーマは、暗証番号認証をなんとかしてより安全にすることでした。いろいろな認証方法を考え、あーでもないこーでもないとやっていたそんなあるとき、研究アイデアの元となるアイデアをひらめきました。

「複数の数字を同時に入力できたら、入力できるパターンが増えるんじゃないか?」

続きを読む

googkit を使ったカンタン Closure Library 開発のすすめ

この記事では、JavaScript - Client Side - Advent Calendar 2013の23日目の記事です。


さて、googkit を使ってカンタンに Closure Library での開発をはじめる方法を紹介します。

googkit は Closure Library を使った開発を手助けするツールです。私が前に開発した Webアプリケーション「piine! 」も Closure Library + googkit を使っています。

Screenshot of piine

では、本題の googkit の説明に移る前に Closure Library の説明から始めましょう。

すばらしき Closure Library

そもそも Closure Library ってばすごいライブラリなんですよ!!(白目

  • 安心の Google
  • パリッとキマったクラス指向

    var Child = function() {
      goog.base(this);
    };
    goog.inherits(Child, Parent);
    
  • おまかせ依存管理

    goog.require('foo.bar');
    
    foo.bar.FooBar(); // これだけで foo.bar モジュールが利用できる!
    
  • 質・量ともに類を見ないライブラリ群(30MBくらいある!)

    // 配列処理はもちろん
    goog.require('goog.array');
    goog.array.forEach(arr,
        function(elem, index) { console.log(elem, index);});
    
    // ときどき欲しくなるこんなのも
    goog.require('goog.crypt.base64');
    var base64str = goog.crypt.base64.encodeString('Hello, World!');
    
  • Closure Compilerとの相性バツグン

    Closure Compiler の機能をフルに活用できるのは Closure Library だけ!

なんかAltJSよりもすごい部分があるような……?
ま、まさか!

AltJSなんていらなかったんや…!

でも…Closure Libraryって…

続きを読む

vim-splashを使い倒してこそ真のVimmerですぞ #vim

Vim Advent Calendar の19日目です。昨日はyoshikawさんのサーバ管理に役立つVim技10選でした。

さて、@modsoundさんの記事、Vimmer名刺を持ってVimConfへ出かけよう に触発されてvim-splashの可能性を最大限に引き出す使い方を提案します。

vim-splashでなにができるの

かっこいい起動画面

All you need is VIM

VimmerにモテるVim名刺

orga_chem

続きを読む

QRCode on your Vim #vim

いままでのビムに足りなかったもの、それは…

携帯端末との連携手段だ!

というわけでvim-QRCodeつくりました。 QRCodeが新しいタブとして作成されます。

screenshot for vim-qrcode

ひつようなもの

  • orgachem/vim-qrcode

    neobundle などのプラグイン管理ツールでインストールするとよいでしょう。

  • rQRCode

    gem install rqrcode でインストールしてください。

つかいかた

コマンドを叩くだけです。なお、140文字までという制限があるのでご注意を:

:QRCode https://twitter.com/orga_chem

範囲選択後に下のコマンドでもOKです:

:'<,'>QRCode

まとめ

いやこれほんと、誰得…

Vim Advent Calendar 2013 のトップ絵描いた #vim

Vim Advent Calendar 2013 のトップ絵を描きました。 ひさしぶりのお絵かきです。

VimGirl

VimGirl のデザインは@IMAGEDRIVEさんの VimGirl ver.7.3 をお借りしました(背中の部分は資料がなかったので想像で描きました)。ところどころに散りばめられた蛍光色のワンポイントがかっこよいのですよ!

絵に登場した小物たち

この絵には、いくつかこだわりの小物を3つ登場させています。 どれだかわかりましたか?

続きを読む

「メールアドレスのルール」系まとめがそろって間違ってるのでご注意を

メールアドレスのルールのまとめ系のサイトの内容が間違っています。 なので、この類のまとめは安易に信じないように 、という注意喚起をしておきます。

追記(2013/11/27)

twitterはてブをみていたところ、「ユーザーへの啓蒙という観点ではまとめの内容間違ってない」というご意見をたくさんいただきましたので、補足をしておきますね。

どうも「ルール」と「トラブルを避けるためのガイドライン」が混同されているように思います。まとめで紹介されている内容がユーザ向けの「ガイドライン」なのであれば、「+ 記号使わせてよ」ぐらいしか文句はありません。

ですが、ほとんどのまとめは上記の内容を「ルール」として説明しています。ひどいものにはRFCに基づいてまとめを書いたようにミスリードさせる記事もありました。このような現状を憂い、このような記事を書いたのです。


そもそもこれに気づいた発端は@kusano_kさんのつぶやきです。

ググってみたところ、上位陣のサイトの内容は 軒並み間違っていました 。これは由々しき事態です。

内容が間違ってる検索結果の上位陣はこちら。

(2013/11/27:曝すことが本意ではなかったので削除しました)

そして、間違っているのはこの部分です:

  • 次の文字は原則として使用できない。/ ! “@ # $ % & ‘ ( ) = ~ | \ ^ : ; * + ? < > , ` [ ] { }
  • の直前には英数字しか使えない。
  • .(ドット)、_(アンダースコア)は2つ以上連続してはいけない。
  • メールアドレスの最初の文字は英数字しか使えない。

正しくは:

  • 半角の英数字記号であれば使用できない文字はない

    ただし一部の記号(( ) , : ; < > @ [ ] " \)を含める場合には @ よりも前の部分全体を " で囲む必要があり、特に "\ を含める場合には、直前に\ を配置しなければならない。

  • @ の直前には英数字・記号(! # $ % & ' * + - / = ? ^ _ ` { | } ~ ")が使える

    ただし " を使う場合には、先頭にも " を配置する必要がある。

  • @ の前の部分全体を " で囲んでいない場合は . を連続させてはいけない

  • メールアドレスの最初の文字は英数字・記号(! # $ % & ' * + - / = ? ^ _ ` { | } ~ ")が使える

    ただし " を使う場合には @ の直前にも " を配置する必要がある。

解説

RFC5322 に書かれているメールアドレスの仕様を引用して、それぞれの項目を解説していきます。

続きを読む