タグ: トラックバック

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

日付と時刻をTで結ぶ方式は普及していない

僕も ISO 8601 形式は大好きなんだけど、 YYYY-MM-DDTHH:MM:SS 形式は思いのほか通用しないので気をつけましょう。

日付と時刻の正しい表現方法 - Web屋のネタ帳

日付と時刻を両方表現したい場合は
2008-05-16T11:25:30+09:00
つまり日付と時刻をTでつなげる。

これが世界的スタンダードとしてISO8601とRFC3339に定められた日付と時刻の表現方法。有名どころの言語やらデータベースその他ミドルウェアはすべてこれに沿った表記を解釈し入出力できるようになっている。

JavaScript

とりあえず、JavaScriptではほとんど通用しません。

続きを読む

そろそろZDNetの翻訳につい(ry

Emacsは忘れた方がいい(Gosling):2008年の名言 - builder by ZDNet Japan

あー、Emacsね。あれは1978年頃のアイデアとしてはとても素晴らしいものだったよ。何年前になるかな?30年前?みんな、もういい加減使うのをやめたらどうだ。30年前と言えば、ムーアの法則が少なくとも15回は適用できることになる。2の15乗倍ものCPU性能があれば、もっと違うやり方ができるはずだ。NetBeansを試してみることを強く勧めるね。セマンティックスをリアルタイムで解釈してくれるプラットフォームを使い、キーストロークを逐次分析させることで、素晴らしい魔法のようなことができるようになるんだよ。だから、Emacsのことなど忘れてしまった方がいい。もうテレタイプなんて使っていないんだろう--それってあまり頭の良いことじゃない。とにかくEmacsを使うのはやめた方がいい。

もちろん、われわれはGosling氏がSunのNetBeansを推していることは知っている。とは言うものの同氏のこの発言は、EmacsをEclipseに置き換えても通用する。

気になるのは、EmacsをEclipseに置き換えても通用するの部分。どう考えても通用しないだろ…

と、いうことで原文を当たってみると、

Quote of the year (so far) - Blogs - Code Monkey Business - Builder AU

Alright, we know he's pushing Sun's Netbeans, but you could substitute the quote with Eclipse and it would still hold true.

「Eclipseに置き換えても…」とは言ってるけど、「Emacsを…」とは言ってない。文脈的には、NetBeansをEclipseに置き換えるということだろう。

どう考えても誤訳としか思えない。

追記

日本語の記事の方が、NetBeansをEclipseに置き換えても通用するに訂正されていますね。これだとなんか僕がいちゃもんをつけただけに見えてしまうから、魚拓でも取って置けばよかったのかな。

これは裁定機会かもしれない

kaeru_san(=id:gomi-box)がこんなことを言ってた。

何か楽しいことがしたい - 毛の生えたようなもの

「女だからと言う理由で注目されているのだ」と言われると、心がずきずき痛む

俺はkaeru_sanが優遇されてるとかされてないとかっていう話をするつもりはさらさらないけど、プログラマコミュニティでの女性たちは、見ていて滑稽に思えてくるくらい優遇されているように感じるのも事実。滑稽に思えてくるのは、日頃男女比率がさほど歪んでいないコミュニティに属しているからだろうか。

続きを読む

太陽光発電バック

確保できる電圧次第では欲しい。

持ち歩ける太陽光発電 米製バッグ 日本で人気上昇 :ニュース - CNET Japan

バッグの背面部分にシート状のソーラーパネルが備え付けられており、携帯電話や携帯音楽プレーヤーと接続することで、野外でも電源を確保できる仕組みだ。

見た目はすごくダサいが、新品の携帯電話でも一日で電池を使い切るほどのケータイヘビーユーザーな俺としてはぜひ欲しい商品。ノートパソコンレベルの電圧が確保できたりするといいなぁ。

[追記]JavaScriptには\uXXXXがあるんですよ

[追記]404 Blog Not Found:javascript - \uXXXXを使わない理由を受けて追記

dankogaiさんはあまりJavaScriptのリテラルに詳しくないのかな?

404 Blog Not Found:regexp - 全角英数字を半角に

var fascii2ascii = (function(){
  var cclass
   = '['+String.fromCharCode(0xff01)+'-'+String.fromCharCode(0xff5e)+']';
  var re_fullwidth = new RegExp(cclass, 'g');
  return function(s){
    return s.replace(re_fullwidth, function(m){
      return String.fromCharCode(m.charCodeAt(0) - 0xfee0); // 0xff00 - 0x20
    });
  }
})();

続きを読む

[JavaScript]hover関数を修正

以前、jQueryのhover関数を移植したことがあったのだが、実地で使ってみたらいろいろとバグが出たので修正。

jQueryのソースでは、

// Traverse up the tree
while ( p && p != this ) try { p = p.parentNode; } catch(e) { p = this; };

// If we actually just moused on to a sub-element, ignore it
if ( p == this ) return false;

となっているコードを、大幅に省略して

do if (p == elm) return false; while (p = p.parentNode);

としていたんだが、やはり横着するとよくないらしい。ところどころでバグる。

続きを読む

FC2ブログの個別記事画面から個別編集画面に飛ぶブックマークレット

ずっと面倒だと思ってた。

#!電式ブログ Entry->Edit 作成メモ

記事から編集画面に直接行くBookmarklet「Entry->Edit(FC2)」の作成メモ

僕は個別記事画面から個別編集画面に飛べるだけで満足なので、↓のような簡単なスクリプトにしてみた。

javascript:
    location.href = 'http://'
        + location.hostname.match(/blog\d+\.fc2\.com/)[0]
        + '/control.php?mode=editor&process=load&eno='
        + location.pathname.match(/\d+/)[0]

ブックマークレット

ものすごく手抜きな実装。元記事のようにお行儀のよい処理はしていないので、使う場所を間違えたらバグるので注意。

Firefoxでのみ動作確認。

locationオブジェクトはlocation.hrefだけじゃなくてlocation.hostnameとかlocation.pathnameとかいろいろ使えるから使ってみると便利かも。

続きを読む

[JavaScript]IEで名前つき関数オブジェクトの扱いが変

以前、JavaScriptの名前つき関数オブジェクトのスコープについて調べたことがあった。

僕は名前つき関数オブジェクトを使うのが好きだからよく使う。↓のような感じに。

var fn = function self(i) {
    return (i < 10) ? self(++i) : i;
};

↑の関数はまったく意味がない関数だが、名前つき関数オブジェクトを使えば、var fn = の部分に依存せずに再帰処理が書けることがわかる。つまり、関数定義部分だけ適当にコピー&ペーストして使えるということ。

続きを読む

アスタリスクで隠されたパスワードを確認

アスタリスクで隠されたパスワードを確認する方法

javascript:(function(){var s,F,j,f,i; s = ""; F = document.forms; for(j=0; j<F.length; ++j) { f = F[j]; for (i=0; i<f.length; ++i) { if (f[i].type.toLowerCase() == "password") s += f[i].value + "\n"; } } if (s) alert("Passwords in forms on this page:\n\n" + s); else alert("There are no passwords in forms on this page.");})();

こういうのを見ると、無意味にコードを短くしたくなる変な癖がある。

ということで、簡単にして短縮したのが↓

javascript:for(var i=0,s='',e=document.getElementsByTagName('input');i<e.length;i++)if(e[i].type=='password')s+=e[i].value+'\n';alert(s||'no passwords')

ブックマーク

元のバージョンはdocument.formsを走査しているので、form要素の中のパスワードフィールドしか拾えないっぽいので、document.getElementsByTagName('input')で全input要素を取得するように改造。

(function() { ... })()でくくってないから変数汚染を起こす可能性があるが、問題になる可能性は低い。どうしても変数汚染を避けたければ↓のバージョンで。

javascript:(function(i,s,e){for(;i<e.length;i++)if(e[i].type=='password')s+=e[i].value+'\n';alert(s||'no passwords')})(0,'',document.getElementsByTagName('input'))

ブックマーク

車輪の再発明

ってことはわかってるんだけど、何でこんなことをやってしまうんだろうな。

追記1

弾さんが同じことやってた!

追記2

id:amachangさんだったら、document#evaluate()を使って

javascript:(function(s,e,t){while(t=e.iterateNext())s+=t.value+'\n';alert(s||'no passwords')})('',document.evaluate('//input[@type="password"]',document.body,null,XPathResult.ANY_TYPE,null));

ってやったりするのかなー

インターネットでの決済のオーバーヘッド

インターネットでは決済のオーバーヘッドが大きいからでないかね。

「価格はあなた次第」のレディオヘッド新作、幾らで売れた? - ITmedia News

人気バンドのレディオヘッドが先月、買い手が価格を決められるアルバムをオンライン販売して話題になったが、一銭も払わずにダウンロードした人が6割に上った。

インターネットで実際にお金を払うのは面倒くさい。丁寧に住所とかを名前とかを登録して、リスクとってカード番号送ってとかをするからだ。

もし、今回のレイディオ・ヘッドの企画が、公式サイト上じゃなくてAmazonでやってたら事情が違ったんじゃないかと思う。Amazonなら多くの人がカード番号も登録を済ませて、1クリックで決済できるわけだから。

5ドルくらいなら払う人がたくさん出たんじゃないかな?

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。