2008年12月31日水曜日

2008年まとめ

このエントリーをはてなブックマークに追加
羅列。記憶をあさって適当に。
去年した事が混じってるかも。

■キーボード関係
・HHKProを手に入れる。惚れ込みまくる。
・完全に窓使いの憂鬱が無いと生きていけない体になった
・Vimperatorにはまった
・Operaにそれ以上にはまった
・Hit-a-Hintのお陰で幸せが訪れた
・メインエディタがVimになった。
・Vimが無いと生きていけない体になった

総評:やっぱり、Vimだよね、

■ネットサービス関係
・GoogleReaderからLivedoorReaderへ乗り換えた
・LDRフィード数が5000越えた
・LivedoorClip始めた
・ニコニコ動画アカウント削除った
・RTM始めた
・Tumblr始めた
・Twitter始めた
・Outputz始めた
・iKnow始めた
・pixiv始めた
・/.J始めた
・/.始めた
・スタスト始めた
・読書メータ始めた

総評:なんだかんだ言って色々登録してるなぁ。

■人関係
・edvakfさんと知り合いになった(HaH的な意味で)
・rarereさんと仲良くなった(オフライン的な意味で)
・rancorさんと知り合いになった(ネットストーカーごっこ的な意味で)
・skashさんと知り合いになった(iKnow+Twitter+tumblr的な意味で)
・Erl_さんに声かけまくった(Twitter的な意味で)
・nyatlaさんに声かけまくった(NyARToolkit的な意味で)

総評:edvakfさんとrarereさん以外は11月以降知り合いになった人かな。

■技術関係
・CentOSにOracleインストールした
・PL/SQL覚えた
・地味にRuby+JavascriptのAjax Chat作った
・仕事辞めた(笑)
・仕事始めた(笑)
・Javascriptにさらに詳しくなった
・Rubyにも詳しくなった
・Apacheにも少し詳しくなった
・正規表現に少し詳しくなった
・帳簿つけられるようになった
・GNU Screen覚えた

総評:独立がある意味最大インパクト

■趣味関係
・三大奇書を読破!
・ルービックキューブで二分切った
・車手放した
・超短編小説100個到達(予定)
・今年も独り身バンザイ!
・地味に将棋で五級タブキープ

総評:三大奇書は素敵だよ! ってか今年奇書ばっかり読んでる気がする!(汗)

全体を振り返って
今年は良くアウトプットした。
そして、来年はもっとアウトプット……出来たら良いなぁ。

2008年12月30日火曜日

おふざけブックマークレット

このエントリーをはてなブックマークに追加
TumblrにPOSTするためのブックマークレット
Operaでしか確認していない上、超使いにくい。

このブックマークレットを実行すると、画像のURL一覧と入力ボックスが表示されるので、そこに表示されている数字を入力してエンターすればPOSTしてくれる仕組み。

問題は、画像一覧ではなく、画像のURL一覧を表示してくれるという点。
どの画像がどのURLか分かるかよ、F○ck!!
って感じなので後日修正しようと思う。
HaHみたいな感じにしたら、edvakfさんあたりがもきゅもきゅするよね!

ちなみに、POSTが成功すると謎の文字列一覧が表示される。
画面遷移しちゃうのは仕様です。


今後の課題
・画像指定出来るようにする
・画面遷移せずにPOSTできるようにする
 (iframeを作ってそこからpostかなぁ、現実的には)


javascript:(function(){
var em = 'your_address';
var ps = 'your_pass';
var type= 'photo';

var im = document.getElementsByTagName('img');

var image_list='Select Number\n\n';

for( var i=0, l=im.length; i<l; i++ ){
image_list += i + " " + im[i].src + "\n";
}

var num = window.prompt(image_list);

if( num.match(/[0-9]+/) && num < im.length ){
var form = document.createElement('form');
var link = "<a href='" + location.href + "'>" + document.title + "</a>";

var html = '';
html += '<input type="hidden" name="source" value="' + im[num].src + '">';
html += '<input type="hidden" name="email" value="' + em + '">';
html += '<input type="hidden" name="password" value="' + ps + '">';
html += '<input type="hidden" name="type" value="photo">';
html += '<input type="hidden" name="generator" value="ArcCosine Bookmarker">';
html += '<input type="hidden" name="caption" value="' + link + '">';
html += '<input type="submit" value="Post Tumblr">';
document.body.appendChild(form);
form.method='post';
form.action='http://www.tumblr.com/api/write';
form.innerHTML = html;
form.submit();
}
})();

2008年12月29日月曜日

Rubyで変数に格納した文字列を正規表現で検索する方法

このエントリーをはてなブックマークに追加
Rubyで文字列検索を関数化したい時あるよね!
え? 無い?
まあ、いいや。
変数に格納した文字列を正規表現で検索したい時は以下のようにする


def hoge(query)
line = "abc def ghi jkl mno pqr stu vwx yz"
if /#{query}/ =~ line then
p "fooooooorrryyyyyy!!!"
end
end

hoge('abc')


式展開すれば良かったんですねー。
式展開しているサンプル少なすぎるだろ、F○ck!
この方法を知るのに2時間もかかってやんの。馬鹿だなぁ、自分。

参考
http://oshiete1.goo.ne.jp/qa916511.html

2008年12月27日土曜日

tomblooが便利すぎる件。

このエントリーをはてなブックマークに追加
tombloo便利すぎて吹いた。
tumblurにアップするのにしか使ってないけど明らかにストレスが減った。
このツール作った人すごいわぁ。

2008年12月26日金曜日

TortoiseSVNの設定続編。

このエントリーをはてなブックマークに追加
以前にこんなエントリ書いたんだけど、サーバ側にそんな設定しなくても回避する方法が分かった!!

問題だったのは、puttyの設定。
puttyに標準の設定って項目があるんだけど、そこにホスト名とか鍵のパスを保存していたのがいけなかった。
TortoiseSVNのネットワークにplinkw.exeを設定する事でようやく原因が分かったというアホっぷり。

どうやら、標準の設定に設定されたホスト名を優先して見に行く動きをするらしい。
そのせいで、なんだか変な挙動をしていたって落ち。
あー、ようやく長年の疑問解決した。

って事で、もし標準の設定に色々設定されてしまった方は、別名保存した後、内容をクリアされることをお勧めします。


TortoiseSVN使っていてなんだか上手く接続出来ねぇよ、F○CK!って人にこの情報が役立つと良いな~。
ではでは♪

頭が良い人と悪い人を分けるたった一つの思考パターン

このエントリーをはてなブックマークに追加
最近とある増田の日記から火がついているから便乗して(笑)
……なーんて、悪いこと考えながら、30分かけていっぱい書いたんだけど消えてしまったorz
因果応報っと。

やる気がないから結論だけ。

「なぜ」と考える

うん。これだけ。
何事に関しても「なぜ」という思考パターンを入れるか入れないかで頭の良し悪しが変わってくる。
「なぜ」という思考なしにただ言われるがままに物事を覚える人はただの馬鹿。
で、企業にとってはそーゆー中身の無い人間の方が使いやすい。
日本の教育もうまい具合に詰め込み形教育だから、中身の無い人間を排出しまくってる。
もっとも、根本的にそーゆー事を親が教えて来なかったってのがあるんでしょうけどねぇ。
本当に頭が良い人は「なぜ」そうなるのかというのを自分なりに考え、自分の意見をちゃんと出してくる。
なので、その意見が間違っていた場合「なぜ」間違えたのかを再検討する。
結局頭が良い人は頭が悪い人よりも多く頭脳を使っている。それだけだよね。

頭を使ってない人が頭悪くなるんだよ。
頭が良い人は頭を使っている。
ね、簡単でしょ?
(これを書いている人はもちろん、頭使っていませんorz)

2008年12月23日火曜日

IEというかFirefoxではまった。

このエントリーをはてなブックマークに追加
いや、結局はIE死ねって話ね。


今日、YahooオークションのデータをいじるJavascript書いていたんだけど、Firefoxでの動作確認が終わってさあ、IE行くぜーってやったら、全然行かなくて。
そもそも、動かない。
そして、エラーすら出さない。
何このブラウザ?
マジギレしてconsole.logとかalertとか入れたけど全然動かない。
そこで、Operaの登場。
で、チェックしたらOperaも動かない。エラーコンソールをチェック。


var hoge = item.option[0].new;


上記のコードでエラーが出ていた。分かる人は即効で分かる。
そう、末尾のnewだ。
アホIEはnewという要素を関数と勘違いしているのだ。
#そもそも、responseにnewとか(複数言語の)予約語を含めるとか、ありえないでしょう!
#それ以前に、JSONでXMLのデータをごりごりいじろうとしている自分もどーかと思うが。

まあ、Yahooの結果を何も考えずにJSONにコンバートしてるという変態的な処理をかましてるせいで、こーゆーエラーが出ちゃっている訳なんですがねぇ。
なので、一旦、以下のように直した。


var hoge = item.option[0]['new'];


だがしかし、これでも動かない。
IE死ねってTwitterにPOSTしまくった。

結局

var hoge = item.optiopn[0]["new"];


でようやく動いた。もしJavascript使っていてIEでエラーが出なかった場合、Operaを一回通すとエラー箇所が見えるかもしれない。

2008年12月20日土曜日

色々リーク。

このエントリーをはてなブックマークに追加
ここで読んだ内容を誰かに話しても良いようになるべく伏せて書こう。
今やってるお仕事は、Javascriptメインでのお仕事です。
んで、Javascriptが絡んでくる=Web関係のお仕事って訳。

んでさ。
そのWeb関係のお仕事で今回自分が作りこんだのはサイト側でAutopagerizeを実現するというもの。
ほら、FirefoxユーザやOperaユーザはユーザ側でAutopagerizeを作ってSITEINFOとかゴリゴリ書いて対応させたけど、サイト側で対応している場所ってあんま無いよね?
無いから価値が高いんじゃないかなーって自分で思っている。
特にIE!
あの駄目ブラウザも対応している点がポイント。
でも、かなりきつかった。
スクロール位置を検索するためのコードが全然効かないの。何このブラウザ。
実際、開発責任者に言ったのよ、Arc「IE対応しなくて良いっすか?」
責任者(以下、責任)「おk」
Arc「マジで?」
責任「マジマジwww」
Arc「いや、やっぱまずいっすよね。一応ユーザ数はIEの方が多いですし」
責任「でも、難しいんでしょ?」
Arc「難しいです。つーか、そうとう大変です」
責任「大変って事は、出来ない訳じゃない?」
Arc「汎用的に作るなら厳しいですけど、サイト側でタグのクラス決めうちなら出来るっす」
責任「ぢゃあ、それで」
Arc「軽いノリですねー」
責任「時間かかっても良いから、お願いね」
Arc「了解っす」
(上記かなりの脚色アリ)

とまあ、そんな感じでうまく乗せられて作っちゃいました(爆)
Twitterで、たまにIE死ね!死ね!死ね!って発言が流れたら、ArcCosineの中の人がIE専用のコードを書いている時だと思ってください。
ちなみに、IE専用の方がシンプルになったからそれにあわせてモダンブラウザ側のコードを変えたって経緯もあったりします。
IEみたいに出来ない子の方が時には良い結果になるという例でして。
ああ、でも一番辛かったのはCSSかなぁ。
Javascriptは奇妙な手法を取らなくて良いんだけど、CSSは兎に角キツイ。
CSSを見た人はポカーンってなると思う。本当にアレは酷い。
ブラウザハック知らなかったら一個のCSSで対応とか到底無理。
まあ、divとulとliだけでなんとかしようとする自分が悪いのかもしれないけれど。
tableタグだけでやっちゃえば、楽なんだろうけど、人として負けたくなかった。
お陰で意味不明なHTMLを吐き出すコードにしてしまい、余計に負けた感じだけど、今はもう何も聞こえない(笑)

という事で、○○○○○をこれからよろしく!
やべえ、製品名書くところだったwwww
えー、どこかの製品でAutopagerizeが実装されてたら、それ僕が書いたコードです。
アホコードですが、SUGEEEEって思ってくれると嬉しいです(笑)

2008年12月19日金曜日

tumblrの面白さによーやく気づく。

このエントリーをはてなブックマークに追加
良く分からずにtumblrしてたけど、ようやく面白さが分かってきた。
tumblrのfollowとreblogの二つを使うと初めて面白くなる。

1.follow

followは気に入ったユーザのtumblrが自分のtumblrで見れるようになる。
まだ自分は三人しか登録してないけど、これから増やす。
ちなみに、以下の三人。
http://rancorcool.tumblr.com/
http://caprin.tumblr.com/
http://otsune.tumblr.com/

followは上記のページにアクセスして右上のfollowボタンをクリックするだけ。
らくちん。


2.reblog

reblogは、気に入った画像を自分のtumblrにも登録できる機能。
これは便利。つーか、この機能に気づくのに2ヶ月もかかる僕は真性の馬鹿。
馬鹿でいいもーん。

後、最低限Autopagerizeが無いと楽しさは半分になるので、ご用心。


どうでも良い蛇足。

何気に、tumblrのブックマークレット重くね?
高機能なのは良いが、スピードを犠牲にした高機能はあまり好きじゃないなぁ。
I love faster,faste,faster!
なので。

2008年12月17日水曜日

Opera9.63のAcid3と最近のLDRと操作性とつまり雑文ってことね。

このエントリーをはてなブックマークに追加
Opera9.63がリリースされていたので、当然のようにインストール。
ついでにAcid3をやらせたら85だった。
まあ、自分は10Alphaをメインにしたので、毎回100点が出ますけどね。
つーか、アホだよなぁ、Alpha版のブラウザを常用してるなんて。

閑話休題

最近、LDRの使い方をちょい変えてみた。
LDRはFirefoxで見て、ピンを開くのはOperaという変則的な使い方をしている。
というのも、LDRはどうやらFirefoxに最適化されているらしく、スピードが速い。
(逆にGmailとかだとFirefoxよりOpera10の方が速かったりするから不思議)
ともあれ、自分は適材適所って言葉好きなので、LDRの消化はFirefoxに任せることにした。
なんだかんだ言って、ブラウジングはOperaの方が好きだからだ。
ある程度カスタムすればFirefox(厳密にはVimperator)でもそれなりにブラウジングは出来るんだろうけど、一回に100タブ前後をザコザコ開く使い方で安心して任せることが出来るのはOperaだ。
こればっかりは、まだFirefoxを信頼出来ない。
後は単にOperaの方が使い慣れているってのもある。

閑話休題その2
個人的にパスワード記憶したサイトの動きについてはOperaの操作感が非常に気に入ってる。
Ctrl+EnterまたはAlt+→でログインして画面を進むのが気持ち良い。
Vimperatorの場合は、ログインボタンをクリックしないといけない。
この差は小さいようで意外に大きい。
操作性の統一性というただ一点において、OperaはFirefoxより気持ち良く使える。
単に自分がものぐさとも……。言いますががががががが。
まあ、そんな感じでOperaを愛してやまないOpera信者の戯言でした。
えんいー。

2008年12月16日火曜日

Gmail+Opera10α=最速!

このエントリーをはてなブックマークに追加
度肝抜かれた。
何気にOpera10αでGmailにアクセスしたら異常に速くて笑った。
GoogleChromeの1.8倍くらい(当社比)(主観100%)
キーボードショートカットを使う人は、j,k,oの速さに泣くはず。

ただ、あくまでもこれは読み込みが終わったあとの動作なので、トータルするとどうだか。
とはいえ、自分は初期起動時間をあまり気にしない性質なので、Opera最強伝説はまだまだ続くという訳である。


ってか、単なるOpera信者(ry

なんとなくうれしい。

このエントリーをはてなブックマークに追加
autopagerizeは、自分に取っては物凄い技術の塊だと思っていた。
が、自分にも(根性で)実装出来たのがうれしかった。
もちろん、過去にそのソースコードを公開してくれた先人のお陰なのであるが、それでも実際にやるかやらないかでは大きな違いだ。
公開しようと思っているサービスにもこの機能を実装しよう。
本体は実装するほど出来ていないけどorz

2008年12月15日月曜日

馬鹿な話。

このエントリーをはてなブックマークに追加
深夜にやった凡ミスのメモ。

コンソールからroot権限に変更できなくなって死ぬほど焦った
んで、クラックされたんじゃねーの?やべーやべー!とか言いながら、線をぶち抜いたりルータをリセットしたりしていたらら、今度はネットに繋がらなくなって途方にくれました。
放心状態でルータを見たら、WAN側の線が抜けてましたorz

それからは一気に問題解決。
ああ、それにしてもアホなミスだったなぁ(;;)

#ちなみに、root権限に変更出来ないのは、ユーザグループを変更したからというお粗末なミスでしたorz

2008年12月14日日曜日

2008年12月13日土曜日

昨日のブックマークレットに機能追加。

このエントリーをはてなブックマークに追加
まあ、何も言わずに以下のブックマークレットに更新してくれぃ。

LDRとLDCをキーボードから変更するブックマークレット

全ソースコードは以下の通り。

javascript:(function(){
if( location.href.match(/clip.livedoor.com/)){
var num = window.prompt('レートを入力', '');
var rate = parseInt(num);
if( !isNaN(rate)){
if( rate > 5 ) rate = 5;
if( rate < 0 ) rate = 0;
var el = document.getElementById('rate_img');
if(!el.getAttribute('orig_src')){
el.setAttribute('orig_src',el.src);
}
el.src = '/img/rate/pad/' + rate + '.gif';
document.getElementById('rate').value = rate;
}
}else if( location.href.match(/reader.livedoor.com/) ){
var num = window.prompt('レートを入力', '');
var rate = parseInt(num);
if( !isNaN(rate)){
if( rate > 5 ) rate = 5;
if( rate < 0 ) rate = 0;
var el = document.getElementsByTagName('img');
for( var i=0; i<el.length; i++ ){
if( el[i].src.match(/img\/rate\/pad/) ){
el[i].src = '/img/rate/pad/' + rate + '.gif'
break;
}
}
var form = document.forms[1] || document.forms['subscribe'];
form.rate.value = rate;
}
}
})();

LDR登録画面にも対応したよ。

ちなみに、自分はこれに"rate"ってニックネームをつけて、Operaのキーボードショートカットに「:,r」を登録して、「Go to Page,"rate"」とアクション指定する。
これで、セミコロン→rでレート変更できるというキーボード大好きっ娘にお勧めの状態に持っていっている。
これは非常に気持ちが良いよ!
おかげでマウス要らずの生活が楽しめそうだ!


次はUserjavascript化かなぁ(ぉ

今週のOutputz

このエントリーをはてなブックマークに追加
木曜日自重wwwwwwww
12/8/2008 - 12/14 Outputz
82,880文字

powered by Outputz.

LDCのレートをキーボードから変更する。をちょこっと修正した。

このエントリーをはてなブックマークに追加
さっき投稿したブックマークレットをちょこっとだけ修正。
折角なので、改行ありバージョンをうp。

javascript:(function(){
if( location.href.match(/clip.livedoor.com/) ){
var num = window.prompt('レートを入力', '');
var rate = parseInt(num);
if( !isNaN(rate)){
if( rate > 5 ) rate = 5;
if( rate < 0 ) rate = 0;
var el = document.getElementById('rate_img');
if(!el.getAttribute('orig_src')){
el.setAttribute('orig_src',el.src);
}
el.src = '/img/rate/pad/' + rate + '.gif';
document.getElementById('rate').value = rate;
}
}
})();


んで、一行Verはこっちね。


javascript:(function(){ if( location.href.match(/clip.livedoor.com/) ){ var num = window.prompt('レートを入力', ''); var rate = parseInt(num); if( !isNaN(rate)){ if( rate > 5 ) rate = 5; if( rate < 0 ) rate = 0; var el = document.getElementById('rate_img'); if(!el.getAttribute('orig_src')){ el.setAttribute('orig_src',el.src); } el.src = '/img/rate/pad/' + rate + '.gif'; document.getElementById('rate').value = rate; } } })();


LDC変更用ブックマークレット
リンクは↑コレ。
基本的には中身変わってないので、登録変更は不要で~す。

2008年12月12日金曜日

LDCのレートをキーボードから変更する。

このエントリーをはてなブックマークに追加
LDCのレートってキーボードで変更できないじゃないですか。
いちいちマウスオーバーとか馬鹿なの? 死ぬの?
って事で、カッ!となってブックマークレット作った。


javascript:(function(){ var Rate = {}; Rate.image_path_p = "/img/rate/pad/"; Rate.set = function(rate){ if( rate > 5 ) rate = 5; if( rate < 0 ) rate = 0; var el = document.getElementById("rate_img"); if(!el.getAttribute("orig_src")){ el.setAttribute("orig_src",el.src); } el.src = Rate.image_path_p + rate + ".gif"; document.getElementById('rate').value = rate; }; if( location.href.match(/clip.livedoor.com/) ){ var num = window.prompt("レートを入力", ""); var rate = parseInt(num); if( !isNaN(rate)){ Rate.set(rate); } } })();


これをブックマークに保存

使い方は、LivedoorClipの全画面表示の所で、このブックマークレットを実行。
レートを入力ってダイアログがでるから、数字の1~5を入力すれば、それに対応した星がセットされる。

OperaとFirefoxで動作確認した。変なJavascriptは使っていないので、IEやSafari、Chromeでも使えると思うけど、キーボードから変更しようっていう変人以外にはお勧めできない。
#そもそも、OperaとVimper以外でこんな事考える奴はいないんじゃな(ry

TortoiseSVNでsvn+sshでハマッタ件

このエントリーをはてなブックマークに追加
ずっと前から半ばあきらめ気味だったsvn+sshでの接続が急に出来るようになったのでメモ。

TortoiseSVNでサーバへsvn+sshで接続しようとすると「command not found」というエラーメッセージが出まくってほとほと困っていた。
で、その解決策。
サーバ側のauthorized_keysに以下を加える。

command="/path/to/svnserve -t -r /virtual/root" ssh-dsa AAAABBBB999CCC.... hoge@hoge.hoge


SSHの設定がちゃんとできていないので、この症状が出てるんだろうなぁ。
ひとまず通るようになったから良かった良かった。

参考
capsctrldays - バスタオルを一回使っただけで洗濯する派ですか? , svn+sshの設定方法
http://capsctrl.que.jp/kdmsnr/diary/20060704.html

2008年12月11日木曜日

LivedoorReaderの隠しショートカット?

このエントリーをはてなブックマークに追加
LDRの隠しショートカットを見つけたのでメモ。

セミコロンを押した後、数字キー1~5+Enterでレートの変更が出来る。
某人間の台詞の所に入力したのが出るので便利。
これ、LivedoorClipにも欲しい機能だなぁ。

元ネタ
Yoshioriの日記: livedoor Reader でレートをショートカットキーで変更する Greasemonkey 用スクリプト
http://yoshiori.org/blog/2006/09/livedoor_reader_greasemonkey.php

怪しげなコード書いています。

このエントリーをはてなブックマークに追加
自前のサイトでAutopagerizeするためのコードをゴリゴリと書いています。
特徴的なのは、XMLHttpRequestではなくJSONPの遅延ロードを使ってやっている事。
本当に怪しげな感じです。これで読み取り中のアニメーションでも付ければ完璧っすね。
問題は、Autopagerizeの機能を単品で提供できる仕組みを考える事。
結構難しいです。
出来たらどこかで報告したいと思います。

JSONPの遅延ロード

このエントリーをはてなブックマークに追加
JSONPで遅延ロードするコードをごりごり書いた。
かなり嘘コードなので、信じちゃ駄目。
イメージとしては、WebAPIのJSONP経由で自前のCallBack関数で処理してた人は参考になるかも。
意味不明な日本語だねぇ(笑)
肝になるのは、callback1.flgとcallback2.flgを処理が終わった後でtrueにしているところ。
これを設定する事で、initの中のwait関数が動くわけ。
もっとシンプルに書ける方法があるかもしれないので、知っている人はコメント欄なりトラバなりで教えてください。よろしくお願いしますm(_ _)m


//遅延ロードsample

//ma.la 's wait function
//http://la.ma.la/blog/diary_200702210356.htm
function wait(a,func){
var check = 0;
try{
eval("check = " + "(" + a + ")" );
}catch(e){
}
if(check){
func()
}else{
var f = function(){wait(a,func)};
setTimeout(f,100);
}
}

function init(){
parseScript('http://hogehoge.hoge/hoge1.js');
parseScript('http://hogehoge.hoge/hoge2.js');
wait( 'callback1.flg' , function(){
wait( 'callback2.flg', function(){
alert('finish'); }); });
}

function callback1(){
//処理
alert('hoge1');
callback1.flg = true;
}


function callback2(){
//処理
alert('hoge2');
callback2.flg = true;
}

function parseScript( response ){
var s = document.createElement('script');
s.type = 'text/javascript';
s.src = response;
s.charset = 'utf-8';
var h =document.getElementsByTagName('head')[0].appendChild(s);
}

2008年12月9日火曜日

Google ChromeのDevelopperバージョンをダウンロードする方法

このエントリーをはてなブックマークに追加
英語が読めれば2秒で出来る(大嘘)

1.まず、ここにアクセス
http://dev.chromium.org/getting-involved/dev-channel/

2.Google Chrome Channel Chooserをダウンロードする

3.Google Chrome Channel Chooser(chromechannel-1.0.exe)を実行すると↓みたいな画面が出てくるので、devを選択。







4.Updateボタンを押せばOK。

5.×ボタンでGoogle Chrome Channel Chooserを終了させた後、GoogleChromeを更新するとDevelopperバージョンがダウンロードされる。

iKnowでBrainSpeed

このエントリーをはてなブックマークに追加
ベストスピード62単語/分。
これって早いほう?

2008年12月7日日曜日

ブログパーツ少し改変

このエントリーをはてなブックマークに追加
LDCをヘビーに使用してるので、そちらの件数も表示するようにしてみた。
変化はごらんのとおり。
後、アイコンもちょっち変えてみた。
個人的にはこの青っぽいデザインの方が好きです。

恥ずかしい話。

このエントリーをはてなブックマークに追加
はてなブックマークの新しい登録ブックマークレットは危険
http://slashdot.jp/comments.pl?sid=428647&cid=1463675

自分が投稿したネタ。はてなの新ブックマークレットがどんな物か良く分からないで書いているのが分かる。
恥ずかしいorz
#1463969のレスにあるとおり、「ページ内JavaScriptウィンドウ」なので、アドレス表示出来ないという罠。
Dragonflyで確認したら、div要素だった。
つまり、div要素をcreateElementして、body要素にappendChildしてる。
(ソースは読んでいないので、これが正しいとは限らないけどこれ以外の方法はまず考えられない)
これの危険性は高木先生の日記に詳しく書いてあるが、フィッシングの脅威があると言う点である。
どこで起きるのかというと、はてなにログインしていない状態でそれが起きるって書いてある。
なるほど。そーゆー事か。

裏を返すとはてなにログインしている状態ではこのブックマークレットは使っても差し支えないと判断してよいのかな?
この辺はギークかそうじゃないかで意見が分かれるなぁ。
でも、高木先生の指摘では一般人はそこまで分からないからエラーが発生するかもしれないシステム作るなボケぇと噛み付いているんだなぁ。納得。
結局、システム使う人の安全を考えないと駄目って事ですね。
Webシステムの開発は難しいねぇ。
見た目のカッコよさは必要なんだけど、それだと多分不足なんだよね。

新はてぶのブックマークレットで、「ページ内JavaScriptウインドウ」が表示されるのは実は問題じゃなくて、その「中」で「ログイン認証」するのが問題なんだよね。
ログイン認証の部分はポップアップ表示してアドレスを確認できるようにしないと駄目だよねーって事か。
おk。理解した。
今後自分がシステム開発でログイン画面作るときは「ページ内JavaSc(ry」に表示しないようにしようっと。
難しいなぁ、セキュリティは。

はちゅね in Opera

このエントリーをはてなブックマークに追加
偉大なる元ネタサイト
[Opera][3D]Operaで「はちゅね」を動かしてみた

これはwwww
はちゅねがぐるぐる動く様子はすっごい面白かったです。
後で自分もごにゅごにゅしてみよう。

ちなみに、通常版のOperaでは確認できません。
開発版Operaにて動作確認できます。
http://labs.opera.com/news/2008/11/25/

2008年12月6日土曜日

このサイトへ訪れるブラウザ比率

このエントリーをはてなブックマークに追加
以前にもやったこのサイトのブラウザ比率。
あれから少し変動がありました。

Firefox 38.45%
IE 26.80%
Opera 26.42%
Chrome 4.33%
Safari 2.68%
その他 略

Firefoxの利用率がアップし、変わりにOperaが落ちました。
IEも若干落ちています。
Chromeは変わらず。
Safriは若干アップって感じですか。
ってか、何でこんなにFirefoxのパーセンテージがアップしてるんだろう。
うーむ。

2008年12月5日金曜日

ガラパゴスケータイじゃない

このエントリーをはてなブックマークに追加
今まで日本の携帯はガラパゴス、ガラパゴスって言われてきたけど、実はそうじゃないんじゃないって話。

結論から言うと、ガラパゴスなのはキャリア。携帯キャリア3社がガラパゴスなんだよ。
携帯を普及させるためにやってきた0円携帯のばら撒きを携帯キャリアがやる事によってパワーバランスが完全に狂ってしまい、携帯電話を作っているメーカーではなくキャリア主体の携帯業界になってしまった。
結果どうなったかというとガラパゴスという単語が何度も出てくる世界になってしまった。
だからNokia撤退という悲しい事態になる訳です。
正直、日本の携帯端末に魅力を感じないのは、どの端末にもキャリアの「色」が色濃く出てしまっているからだと僕は思います。

結局、日本を孤立させたのはほかならぬ携帯事業者。中心核ですよ。
日本ってこーゆー傾向が多いよね。
過去の例から全く学ばないこの国の企業体制はある意味驚愕というか驚嘆。
意味同じだって。
ともあれ、ここまで成長してしまった分野は修正効かないから仕方が無いよね。
SIMフリーな状態だったら携帯業界はもっと別の形になっていた気がするんだよね。
(あくまでも気、ね)

だから、ニュースサイトの人はガラパゴスケータイって言うのはもう止めようぜ。
ガラパゴスキャリアって言おう。
そっちの方が自分としてはしっくり来る。

Google Readerリニューアルした?

このエントリーをはてなブックマークに追加
さっき久々にGoogleReaderに行ったらリニューアルしていてびっくりした。
え、ナニコレ?
軽くなったのかもしれないけれども、残念ながら最近はLDRばっかなので、動作の差異が分からない。
ヘビーユーザさんにその辺は任せておこう(ぉ

Opera 10 alpha1 Released!

このエントリーをはてなブックマークに追加
Presto2.2エンジン搭載のOpera 10 Alpha1がリリースされました。
Acid3で100とかどんだけ無茶したんだ、Opera開発チーム。
今回のリリースで初めて自動更新機能が着いたらしい。
今まで毎週更新してるようなアフォなユーザだから、そういう機能がついても「ふーん」としか感じない。
どう見ても変人です。本当にありがとうございました。

ちょっと使ってみた感想としてはなんか起動が早くなったかもしれない。

2008年12月3日水曜日

自分とコンピュータ&プログラムの歴史

このエントリーをはてなブックマークに追加
プログラムを読み書きできるようになるために必要なエッセンス - 探神
http://d.hatena.ne.jp/clock9/20081203/1228270475

ここのプログラム学習ルートを見て自分とPCの歴史を振り返ってみようと思った。


1.隣のおじさんからIBMのPCをもらう(10歳ごろ)
 ・なんかグラフィック動いてる、カコイイ!
 ・実はBASICで書かれた超高度なプログラムだった。
 ・多分、ベースはMSX-BASIC
 ・当時はグラフィックを見てるだけで満足

2.MSX-BASICの本を手に入れ、PC-9801を手に入れる(11~12歳ごろ)
 ・勉強用に手にしたBASICの本がMSX-BASIC
 ・でも、手にしたPCは9801
 ・\(^o^)/

3.ベーマガの存在を知る。(12~13歳ごろ)
 ・ベーマガの存在を知り、色々とコードを打ち込んでいく。
 ・FM-TOWNSのコードも打ち込んで動かなくて泣いたのは今では良い思い出。
 ・DISK版 N88-BASICをこの時に知る。
 ・平行してポケコンも手に入れていた。確かPC-1250。
 ・もぐら叩きゲーム作った気がする。

4.DOS版 N88-BASICにはまる(13~15歳ごろ)
 ・中学三年間はひたすらN88-BASIC。
 ・最終的にはマシン語を使ったプログラムを書くようになる。
 ・オリジナルゲーム(のバグ)に定評のあるArcCosineでした。
 ・最大1000行程度のプログラムだったので、地味にしょぼかった。
 ・この当時、9821を手に入れたり、MS-DOSに触ったり、一太郎JUMPを使ったりとある意味一番楽しかった時期。

5.Windws3.1に出会う(14~17歳ごろ)
 ・メモリが少なかったので、config.sysとautoexec.batをひたすらvzで編集する
 ・この当時はMS-DOSとWindows3.1を同時に勉強している感じ。
 ・秋葉原を訪れたのもこの頃。

6.Turbo Cに出会う(17~18歳ごろ)
 ・知り合いからTurbo Cを譲ってもらう。
 ・真面目にC言語の勉強をする。
 ・行番号がない事に俺、涙目wwwww
 ・配列、ポインタ、構造体の概念を学ぶ。
 ・#includeの意味が分かるまで相当時間がかかった。
 ・学校の授業でも習った。情報処理のテストだけ常にトップの成績だった。
 ・あ、ちなみに自分は電子工学専門でしたので、情報処理は2コマしかなく、成績は下から数えた方がはy(ry

7.Windows2000のRCを手に入れる(18~20歳ごろ)
 ・Windos95をすっ飛ばす。
 ・Windows98は一瞬触ってすぐ捨てた
 ・自作PCはじめた。
 ・Borland C++ Compilerでコード書く
 ・オブジェクト指向とはなんぞやと言うのを学ぶ前にテンプレート指向になるwwww
 ・誰だ、STLなんて考え出した奴はwwww
 ・Delphiでコード書く
 ・Visual Basicでコード書く
 ・ネットで勉強しながら毎日コード書いてた。
 ・でも、ひたすらWindowsアプリしか作っていなかったなぁ。
 ・ネットジャンキーになるのもこの頃
 ・ビーガーゴーが家族のストレスになる(マジ)

8.就職する(20~Now!)
 ・SQLを覚えるwwwww
 ・COBOLを覚えさせられるwwwwwwwww
 ・Visual C++.NETを覚えさせられる
 ・Shellを書く
 ・VBAでコード書く
 ・Visual C++でコードを書く
 ・Javaでコード書く
 ・JavaScriptでコード書く
 ・PHPでコード書く
 ・PL/SQLでコード書く
 ・Rubyでコード書く
 ・Arcを覚えるwwwww
 ・自宅に鯖が立つ
 ・オリジナルドメインげと(何

こうして振り返って見ると、就職後の方が覚えた言語多いかも。
最近はもっぱらJavascript+Rubyかな。
Ruby面白いよね?

LDRの凄さを改めて実感。

このエントリーをはてなブックマークに追加
今日公開フィードをたくさん突っ込んだ。
おかげで、5000フィードを超えるユーザになってしまったorz

まあ、それはともかく。
そんだけいっぱいフィードがあると中には自分の読みたくないフィードだってある。
んで、それを編集画面から選択して消すという作業をする訳なのだが、これは超絶に面倒だろうなぁと勝手に想像していた。

んが、それはただの杞憂に過ぎなかった。
読み込みはかなり時間がかかるものの、読み込んだ後の快適さにはびっくり。
文字による絞込みはもちろん、一覧の前後移動とかめっちゃサクサクと動く。
多分、最初の読み込みでメモリに必要な情報だけ突っ込んでいるんだろうけど、ここまで快適に動くと感動モノである。

で、そこで気がついたのが5000フィード近い量を前提としたシステム設計だったんだなと。
LDRは大量にフィードを閲覧するGeek向けのツール(サービス?)なので、これくらいの量は想定内だ、という事だ。
これは何気に凄い事じゃないかと思う。
非一般的な使い方をする人間が何を求めているのかキッチリツボを抑える事は、普通出来ない。
色んなノイズが入って使いづらい物が出来上がるはずが、そうなっていなかった。
LDRの作者は凄いよなぁ。もちろん、それをリリースする事を許したLivedoorもだけど。
最初はGoogleReaderから入ったけれど、今ではLDRが無いと生きていけない体になっている。
むう、困ったなぁ(ニヤニヤしながら)

2008年12月2日火曜日

RubyでHTMLのアンカーを自動生成

このエントリーをはてなブックマークに追加
泥臭くgsubを使う。
もっと綺麗な書き方があったら教えてください。

str = str.gsub(/(https?\:[\w\.\~\-\/\?\&\+\=\:\@\%\;\#\%]+)/){"<a href='"+$1+"'>"+$1+"</a>"}

これをかける前にEscapeHTMLやる必要があるかも。

2008年12月1日月曜日

Twitterで

このエントリーをはてなブックマークに追加
こんなUserCSS書いたら怒られるかなぁ(笑)

#side_ad_base{
display: none !important;
}

分かる人だけ分かってくださいw

windowsのvimでoutputzをやるためのメモ

このエントリーをはてなブックマークに追加
outputzひゃっはーな人用のメモ。

・VimとcURL.exeのインストール
vimはkaoriya版の7.1使用。(自分はgVim.exeを利用している)
http://www.kaoriya.net/
あと、curl.exeをダウンロードしておく事。
同じページにあるので、忘れずに。
curl.exeはgvim.exeと同じディレクトリに突っ込んでおけば幸せになれる。

・outputz interface for vimをダウンロードする。
outputz - outputz interface for Vim : vim online
http://www.vim.org/scripts/script.php?script_id=2455
Verは0.0.1を落とす事。
ダウンロード完了したら、ひとまず展開。

・outputz inteface for vimの修正
展開すると、フォルダが出来てるので、autoload/outputz.vimを編集する。
編集内容は以下のサイトを参考に。
Windowsのvimでoutputzのカウントを行う - /halt/Snapshot
http://project-p.jp/halt/anubis/blog_show/1141
なんかデフォで折りたたまれてるぜF○ck!という人は落ち着いて、zOコマンドをやってね。
http://www.ksknet.net/vi/post_183.html

・_vimrcの編集
最後に_vimrcを編集する。
_vimrcはC:\Document and Settings\<ユーザ名>\の直下にいる。
そこに以下の二行を追加。

let g:outputz_secret_key = 'outputzの復活の呪文'
let g:outputz_uri_function = 'http://example.com/vim'

これで全ての作業は終了。
後はひたすらvimでコード書きまくればoutputzに大量にリクエストが飛びまくる。

Webアプリケーションの優位性

このエントリーをはてなブックマークに追加
Webアプリケーションの優位性はなんだろうか。
端的に言ってしまえば、ネットワークを介する事でどこででも同じデータを取得できるという点だと思う。
それ以外は特に無い。

なので、どこででも見たいデータ以外はWebアプリケーションにするプライオリティというか重要性が低いと僕は思う。
では、どこででも見たいデータとはなんだろうかと考えるとToDoだったりスケジュールだったりメールだったり、メモだったりする訳で、それ以外は意外と一箇所で見れれば良いやってデータだったりする。
つまり、人間というのは不器用なので思った以上にデータを処理出来ない訳でして。
だからこそ、Webアプリケーションよりデスクトップアプリケーションの方が優れている理由なんぞそれこそ山のようにあるわけですね。

Webアプリケーションはその性質上、「小さくて」「誰に見られても良いデータ」である必要があります。
見られたくないデータはやっぱり各人のコンピュータ内に保持する方が懸命だと判断します。


そういう意味では、Gmailやremember the milkやQuillは良い点に着眼したと思うし、Operaのメモ機能というかOpera Linkはすげーなーって感じる訳ですよ。
例のごとく駄文でした。\e