タグ

ブックマーク / amachang.hatenablog.com (67)

  • IT戦記 - Math.floor を使わずに小数を整数にする

    少数を整数にしたいような場合 たとえば、 0 - 9 のランダムな整数が欲しい場合 普通はこう書く var value = Math.floor(Math.random()*10); Math.floor を使わない場合はこう書く var value = ~~(Math.random()*10); 「~」は補数を求める単項演算子で、オペランドを整数変換するので二回やることでオペランドを整数化できるのです。 まとめ でも、もっといい方法があるかも。 皆様なら「どう書く?」のでしょうか。

    IT戦記 - Math.floor を使わずに小数を整数にする
  • フェイスブック、ミクシィ、グリーで使われている OGP (Open Graph Protocol) とは何か - IT戦記

    みなさん、こんにちは お元気ですか?僕は元気です。 さて 最近よく、「いいね!」ボタンや「ミクシィチェック」ボタンによって、ウェブページを紹介し合う文化が少しずつ定着してきたなーと思います。 そんな中で、今後重要になってくるんじゃないかと思われる OGP (Open Graph Protocol)と言われる仕様があります。今日はそのことについて書いてみたいと思います。 OGP? おーじーぴー??とはなんでしょうか。 OGP とは 簡単に言うと「このウェブページは何のことを書いているか」という情報を、プログラムから読める形で HTML に付加する記述方法のことです。 まあ、普通のウェブページは人間が読めばだいたい何のことが書いてあるか分かりますよね。 ですが、プログラムは人間ほど頭が良くないので、そのウェブページ内の文章だけではそのページが何のことについて書かれているページなのか正確に識別す

    フェイスブック、ミクシィ、グリーで使われている OGP (Open Graph Protocol) とは何か - IT戦記
    sukka9
    sukka9 2011/01/17
  • はてなダイアリーにいいねボタンを置く方法 - IT戦記

    たっち! みなさん、こんにちは お元気ですか、僕はアイスのあとラーメンべて気持ち悪い状態ですが元気です。 さてさて 最近は、フェイスブックやミクシィやツイッターなどの SNS で面白いと思ったモノを紹介し合う文化が定着してきているような気がします。 そんな中で、ウェブページを紹介するために使われるためにウェブページに置かれるものが「いいね!」ボタンだったり、「ツイート」ボタンだったりするわけですね。 というわけで、はてなダイアリーにそういったボタンを配置する方法を紹介したいと思います。 ここで紹介する方法は、ちゃんと理解して置きたい人向け、 XML や HTML を分かっている人向けとなります。 はてなダイアリーには自由な HTML を貼り付けられない まあ、普通に自由に HTML を貼り付けられる環境であれば、ただ単に提供されるボタン用の HTML を張り付けるだけなので簡単です。

    はてなダイアリーにいいねボタンを置く方法 - IT戦記
  • フェイスブックの新 API でフェイスブックアプリのテストを自動化しよう。 - IT戦記

    みなさま お久しぶりです。最近フェイスブックアプリを作ったりしてますが、やっぱりテストが大変ですよね>< と思っていたら、今日以下のような API が公開されたみたいです! Test User - グラフAPI - ドキュメンテーション - 開発者向けFacebook アプリをインストールしている、テストユーザーを API で作ってそのユーザーを使ってテストできるようになるんですね! すばらしい! と、いうわけでさっそく試してみた。 まずはアプリの access_token ゲット! まずは、アプリの access_token を取得します。 以下のように POST してください。 $ curl -F grant_type=client_credentials -F client_id=ここにアプリケーションのID -F client_secret=ここにシークレットキー https://

    フェイスブックの新 API でフェイスブックアプリのテストを自動化しよう。 - IT戦記
  • フェイスブックが面白い - IT戦記

    フェイスブック楽しい! はじめに みなさんこんにちは!フェイスブックしてますか? ゆうすけべーが書いているように、最近当にフェイスブックがおもしろいなーと感じます。 ゆーすけべー日記 というわけで、一人で使っていたときから人が増えてきたときまでの雰囲気を思い出しつつ、僕が感じているフェイスブックのおもしろさ、特徴、楽しみ方などを紹介していけたらと思います。 ちょっと長くなっちゃいますけど、よろしくお願いします! フェイスブックの一番の面白さは「速さ」 僕が感じているフェイスブックの良さは、一言で言ってしまえば「コミュニケーションの速さ」なんだと思います。 速さと言っても、システム的な速さだけではなくって「コミュニケーション」の速さです。 フェイスブックの「コミュニケーションの速さ」は主に以下の3点にあると思っています。 「左下」の通知が素早い 書き込むより早く「いいね!」が伝わる 「一緒

    フェイスブックが面白い - IT戦記
  • サイボウズで学んだこと - IT戦記

    はじめに 2010 年 9 月 15 日を持ちまして、サイボウズ・ラボを退職いたしたました。 報告も兼ねて、久しぶりにブログを書いてみたいと思います。 (写真はゆうすけべーさんです) この会社に入って、たくさんの学びと思い出がありました。 その一つ一つをまとめていければ、素晴らしい記事になるのかもしれませんが、僕は文章が苦手です。 ですので、うまく退職のエントリを書き上げることができません。 言葉にできない。そんな感じです。 なので、このエントリはサイボウズ・ラボやサイボウズ社の仲間たちへのありがとうの気持ちをこめて、自分らしく最後まで JavaScript のことを書きたいと思います。 サイボウズでの最後の仕事 僕にとって、サイボウズでの最後の仕事は「JavaScript で新しいユーザーインタフェースを作ること」でした。 そして、その中で始めて複数人による大規模な JavaScrip

    サイボウズで学んだこと - IT戦記
  • 要素が document につながっているかを高速に調べる方法 - IT戦記

    とある要素が document につながっているかどうかを調べたい! とりあえず、ほとんどすべてのブラウザで出来る方法としては、 parentNode で確認することができますね。 function isElementInDocument(node) { do { if (node === document) { return true; } } while (node = node.parentNode) return false; } でも 前の例だとちょっと遅いので contains や、 compareDocumentPosition を使うといいです! コードにすると以下のような感じ function isElementInDocument(node) { if (document === node) { return true } else if (document.compa

    要素が document につながっているかを高速に調べる方法 - IT戦記
  • ツイッタラーたちは何処からやってきたのか - IT戦記

    こんにちは 最近、ツイッターが流行ってますね! みなさんは使っていますか?僕は使っています! よかったらフォローしてくださいね>< http://twitter.com/amachang (←くりっく! さてさて そんな、ツイッターを見ていてふと思ったんです。 このひとたちは何処からやってきたのだろう? というわけで ツイッターのプロフィールに貼ってある URL を調べてみよう! それを調べるために、 ミーユー からフォロワーの多い人トップ 5000 の Twitter ID を取得 その 5000 人の Twitter のプロフィールを参照して、URL が貼ってあればそれを取得 取得した URL が短縮 URL だった場合は、元の URL に戻す さらにその URL を Pathtraq API で正規化 URL からドメインを取得 並べる という風にランキングを作ってみました。 順位

    ツイッタラーたちは何処からやってきたのか - IT戦記
  • Twitter で「はてなダイアラー」ときゃっふきゃっふしよう! - IT戦記

    はじめに はっ ( ゚д゚ ) _(__つ/ ̄ ̄ ̄/_ \/    /  ̄ ̄ ̄amachang です。 みなさん、こんにちはお元気ですか。僕は元気です。 もっと もっと、熱くなれよおお、じゃなくて、もっとツイッターではてなダイアラーと絡みたい! と言うわけで ツイッターをやっているはてなダイアラーランキング Top 100 を作ってみた! 順位 はてな ID Twitter ID 1 id:finalvent @finalvent 2 id:amachang @amachang 3 id:naoya @naoya_ito 4 id:shi3z @shi3z 5 id:kanose @kanose 6 id:mkusunok @masanork 7 id:Hamachiya2 @Hamachiya2 8 id:nitoyon @nitoyon 9 id:takerunba @takerunb

    Twitter で「はてなダイアラー」ときゃっふきゃっふしよう! - IT戦記
  • Firefox に outerHTML を実装する - IT戦記

    outerHTML について outerHTML とは Mozilla 系のブラウザ以外のすべてのブラウザで使える要素の HTML が文字列として取得できるプロパティです。 alert(document.body.outerHTML); // => body の HTML がすべて見える(例:<body><h1>It works!</h1></body>) というわけで 以下のコードを書いてみました。 if (!('outerHTML' in document.createElement('div'))) { HTMLElement.prototype.__defineGetter__('outerHTML', function() { return this.ownerDocument.createElement('div').appendChild(this.cloneNode(tru

    Firefox に outerHTML を実装する - IT戦記
  • Tabnagging の自衛用 User JavaScript を書いてみた - IT戦記

    Tabnagging というフィッシング手法があるそうです。 詳しい内容は、以下の記事をごらんください。 ブラウザでたくさんのタブを開いてネットサーフィン! あなたが知らないうちに非アクティブなタブの内容が偽のGmailページに書き換えられた!(タブのアイコンも変わる!) ← 別にGmailじゃなくてもFacebookでもmixiでも。 あなたがそのタブに戻ってくるとGmail(もしくは他のサービス)のログイン画面が!(URLはおかしいけれどあなたは気づかない!) ID&PWDを入力してしまってあなた終了のお知らせ…orz ブラウザのタブを使ったフィッシングの最新手法『Tabnagging』が巧妙すぎる件… | IDEA*IDEA これは…!! というわけで、とりあえずタイトルを「ホスト名を省いたドメイン」に書き換える User JavaScript を書いてみた。 これをインストールする

    Tabnagging の自衛用 User JavaScript を書いてみた - IT戦記
  • はてなダイアリー新機能「Twitter記法」を使って、トゥギャッターを引用するブックマークレット

    はてなダイアリーがバージョンアップしましたね!!!! やったー! 主な新機能・改善の内容 バージョンアップに伴う新機能・改善の主な内容は以下の通りです 管理画面を大幅刷新しました。デザインを調整し、ナビゲーション改善など使い勝手の改善を行いました iPhone 専用の閲覧画面 (iPhone ビュー) を追加しました Twitter と連携する各種新機能を追加しました 2つめ以上のブログを追加できる複数ブログ作成機能を追加しました (はてなダイアリープラスのみ) サイトマップ作成、meta タグの設定などが行えるSEO設定画面を追加しました (はてなダイアリープラスのみ) サーバー増強、アプリケーション改善による応答速度改善を実施しました ほか、新しい設定項目の追加など細かな改善を実施しました はてなダイアリーのバージョンアップを実施しました ― iPhoneTwitterSEO、複数

    はてなダイアリー新機能「Twitter記法」を使って、トゥギャッターを引用するブックマークレット
  • ニコニコ動画より Youtube を使う人の意見を聞いてみた - IT戦記

    知り合いと動画サイトの話題になって amachang「なんで、 Youtube ばっか使うの?ニコニコ動画のほうがおもしろい動画多くない?」 知り合い「うーん。そうかなー。」 amachang「そう思うけどなー。」 知り合い「とりあえず検索するじゃん。そのとき、候補が出てくるから楽でいいんだよねー。あと、ニコニコ動画ってログイン必須じゃん、パスワードとメールアドレス打つの大変。」 amachang「え、それってそんなめんどくさいことなん?」 知り合い「いやー。パソコンで文字打つのに慣れてないからさー。みんなお前みたいにパソコンで文字打てると思ったら大間違いだよ。」 amachang「まじでー?」 知り合い「まじでー。」 ちなみにこの「知り合い」の属性 ニート 割とリア充 パソコンよりケータイを使う どんな、言葉で検索するんだろう ちょっと気になって Youtube のトレンドトピックを見て

    ニコニコ動画より Youtube を使う人の意見を聞いてみた - IT戦記
  • はてなモノリスで一括フォローするためのブックマークレット - IT戦記

    はてなモノリスが登場しましたね!! はてなモノリス サービス終了のお知らせ このサービスは、各種商品を投稿することで「モノ」に対するコメントを共有するものみたいです! これはきっと、フォロワーがたくさんいたほうが楽しいに違いない!!! と言うわけで、一括フォローブックマークレットを書きました javascript:(function(s){s.src="http://amachang.sakura.ne.jp/misc/monolith/follow.js";document.body.appendChild(s)})(document.createElement('script')) 使い方 使い方は簡単 1 フォロー中/フォロワー ページに行く 2 そのページで上記のブックマークレットをロケーションバー(URL が出てるところ)に貼り付けて、 Enter キーを押すだけ 3 あとは、し

    はてなモノリスで一括フォローするためのブックマークレット - IT戦記
  • hCalendar を使って予定を公開しよう! - IT戦記

    はじめに みなさん、こんばんわ! さてさて最近のことですが、 Google の検索結果にイベントや予定へのリンクが表示されるようになりましたね!(まだ、英語版だけですけどね^^;) ASCII.jp:Google、リッチスニペットでイベントの日時や場所表示に対応 以下のような感じで表示されるみたいです! ウェブページの中に書かれた「予定」や「イベント」などを Google 先生が理解して表示しているんですね! この予定やイベントはどうやって探してるの? Google は hCalendar という形式のデータを読んで、予定やイベントを探しているようです。 というわけで、今日はこの Google が使っている hCalendar というものが「どういうもので」「どうやって活用すればいいか」を実例を交えながら紹介したいと思います。 hCalendar って何? hCalendar とは「カレン

    hCalendar を使って予定を公開しよう! - IT戦記
  • ウェブページから NG ワードを消すグリースモンキー - IT戦記

    id:otsune さんの RT 論を読んで あと「公式RTだろうが非公式だろうが返信だろうが何でもいいけど、オレはタイムラインに◯◯の文字が見えるのが嫌なんだ」って要望は3年前から存在する。オレの持論は何十回も言ってるけど「すべてのブラウザはNGワード機能を搭載すべき」 @otsuneさんのRT論 - Togetter なるほどー、たしかしー というわけで グリースモンキーを書いて見たよ! こんな感じです 良かったら使ってください! NG ワードのところに好きな単語を書き込むと、その単語を含む要素が消滅します!*1 // ==UserScript== // @name NG Filter! // @namespace http://d.hatena.ne.jp/amachang/ // @include http://* // ==/UserScript== (function() {

    ウェブページから NG ワードを消すグリースモンキー - IT戦記
  • 早速 Go 言語を試してみる! - IT戦記

    はじめに Google から新プログラミング言語 The Go Programming Language が発表されましたね! というわけで、さっそく試してみたいと思います。 環境は Mac OS X 10.6 インストール さっそくインストール Getting Started - The Go Programming Language を見ながら 環境の準備 ディレクトリを作る amacbook% cd ~ amacbook% mkdir go amacbook% mkdir bin環境変数の設定をする。~/.zshrc に以下を追加 # Go 用 export GOROOT=$HOME/go export GOOS=darwin export GOARCH=amd64 export GOBIN=$HOME/bin export PATH=$GOBIN:$PATH Mercurial を

    早速 Go 言語を試してみる! - IT戦記
  • Macbook (with Snow Leopard) 買った後にやったことまとめ - IT戦記

    購入編 会社にて amachang「秋だけに akky ですね。Macbook が欲しくなってきました」 akky(苦笑) amachang「新しい Macbook が欲しくなってきました」 akky(苦笑) amachang「買って来まーす」 akky(苦笑) Apple Store 銀座にて amachang「Macbook Pro の 13 inch のやつください」 店員「はい。 2 種類ありますが」 amachang「高いほうのやつください」 店員「キーボードは JIS と US どちらにいたすますか」 amachang「US ください」 店員「こちらでよろしいですか?」 amachang「JIS よりキー少ないのですね」 店員「はい。英数キー、かなキーなどがありません」 amachang「えっ」 店員「えっ」 amachang「JIS ください」 店員「かしこまりました」 am

    Macbook (with Snow Leopard) 買った後にやったことまとめ - IT戦記
  • XPath に文字列を埋め込むときの注意 - IT戦記

    よく、以下のように XPath に文字列を埋め込む事があります document.evaluate('//*[@class="' + text + '"]', document, null, 7, null); まあ、僕もよくこんなコード書くんですけど。 でも、これって text が外部から来るものだったら、意図通りの動作をしないんですよね たとえば、以下のような例です。 var text = '"] | /hoge/fuga/piyo | .["'; document.evaluate('//*[@class="' + text + '"]', document, null, 7, null); というわけで 任意の文字列を XPath の式に変換する JavaScript を書いてみた 以下で試せます http://amachang.sakura.ne.jp/misc/xpath_es

    XPath に文字列を埋め込むときの注意 - IT戦記
  • PHP で引数をそのまま返す関数を作っておくと便利 - IT戦記

    PHP では以下のように new してすぐメソッドを呼べない <?php new DateTime()->getOffset(); なので、引数をそのまま返す関数を作ってやると <?php function expr($a) { return $a; } expr(new DateTime())->getOffset(); // OK! 便利だなー おまけ 配列アクセス用のも作っておくと便利 <?php function expr($a) { return $a; } function idx($array, $i) { return $array[$i]; } echo idx(idx(expr(new DateTimeZone('Asia/Tokyo'))->getTransitions(), 0), 'abbr') . "\n"; おまけ2 無名関数をそのまま呼ぶときにも使える。 <

    PHP で引数をそのまま返す関数を作っておくと便利 - IT戦記