タグ

ブックマーク / secondlife.hatenablog.jp (41)

  • Ruby の http ライブラリの通信を表示する http-dump を作った - 2nd life (移転しました)

    Ruby 上で http を叩いた通信見たい時に、毎回同じ事をやってるので抽象化して http-dump というライブラリを作った。 https://github.com/hotchpotch/http-dump $ gem install http-dump require 'net/http' require 'uri' require 'http-dump' HTTPDump.dump { Net::HTTP.get(URI('http://example.com')) } と http でやりとりしてるコードを block で囲むと、以下のように出力される。 > GET http://example.com/ with headers {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=

    Ruby の http ライブラリの通信を表示する http-dump を作った - 2nd life (移転しました)
  • Re: Podcast ep2: 2013/02/19 ゲスト: Kenn Ejima - 2nd life (移転しました)

    miyagawa さんの podcast が毎回面白い、Web っ子ならあーそれそうだよね〜的な相づちを頭の中でうちつつにやにやと聴いてしまう。しかしそれだけだとなんか言い足りない気分、なんか言いたい!と言うわけで、今回の江島さんとの podcast の話題に勝手に乗っかかってみます試み。 http://podcast.bulknews.net/post/43535683799/podcast-ep2-2013-02-19-kenn-ejima マシン環境のセットアップの話し 開発環境をどう整えどう保つか。これはエンジニアそこそこいる会社だと必ず考える話で。マシンセットアップの初期化コストを減らし、その後どう継続するか。 miyagawa さんが言う、うちの会社というのは弊社(クックパッド)のことで、エンジニアの開発環境 OS は MacMac の上にとりわけ仮想環境の Linux

    Re: Podcast ep2: 2013/02/19 ゲスト: Kenn Ejima - 2nd life (移転しました)
    aki77
    aki77 2013/05/25
  • さいきんの Rails サービスを高速化をしてみた - 2nd life (移転しました)

    先日のももクロハッカソンで出会った wantedly を作ってる仲さんが と言ってたので、面白そうなので wantedly を速くしてみました。 wantedly ちなみにデータが数百万オーダーもなさそうなのに、どのページもログインすると2-5秒ぐらいかかっていたので、確実に速くできそうだなぁという感覚はやる前からありました。 アプリケーションサイドのチューニング 初心者*1にありがちな問題として SQL に適切にインデックス張ってない キャッシュすべき場所をキャッシュしていない 無駄なデータを引きすぎてる ことがよくあります。ので順に実装を見ていきました。 SQLに適切なインデックスを張ってない 張ってありました!びっくり!\(^o^)/ キャッシュすべき場所をキャッシュしていない Facebook API を利用したアプリケーションなんですが、ユーザのデータの取得を毎回馬鹿正直に HT

    さいきんの Rails サービスを高速化をしてみた - 2nd life (移転しました)
  • さいきんの JavaScript テスト / Test.js - Shibuya.js 発表資料 - 川o・-・)<2nd life

    日行われた Shibuya.js の発表資料をアップしました。 さいきんの JavaScript テスト / Test.js - Shibuya.js 発表資料 View more presentations from hotchpotch JS のテスティングフレームワークのおおざっぱな説明や JavaScript テストにおける問題、それについての解決方法の一つ、CUI でのテスト、Envjs、エンドツーエンドテストにおける JS / Ajax のテスト、終わりにちらっと Phantomjs の話があります。 スライドの最後にあるように、やはりまだコレだ!という JS のテスティングフレームワークは存在しなく、今後 JS のテストは『僕らが書きたいテスト』をどれだけ簡単に書ける・書く手法が確立されるかによって流行廃りは決まってくるんじゃないかなぁ、と思ってます。そのうちの一つがスライ

    さいきんの JavaScript テスト / Test.js - Shibuya.js 発表資料 - 川o・-・)<2nd life
  • watchr - ファイルに変更があったら何かする / もしくはオサーンについて - 2nd life (移転しました)

    みなさま、いかがお過ごしでしょうか。以前人のことをオサーンオサーン云いまくっていたけどその当時のオサーン年齢のもうすぐ三十路になります secondlife ですこんばんわ。言葉のしっぺ返しが痛い今日この頃です。 さて、若かりし頃には合わなかったけど今使ってみるとしっくり来る物もありますね。その一つが AutoTest(ZenTest) です。ファイルが更新したらこける / SyntaxError になると解っていてもテストが走りFFF、自分のテストサイクルでテストが実行できないのが我慢できませんでしたが、久しぶりに使ってみるとそんなのは気にならず、いちいちテスト実行しなくてよくなってとても気持ちがよい感じです。 しかしながら ZenTest に含まれる AutoTest はレールが敷かれているテスト環境では利用しやすいけど、ちょっと道を踏み外すと結構テストを実行するのがめんどくさいです。

    watchr - ファイルに変更があったら何かする / もしくはオサーンについて - 2nd life (移転しました)
  • gist.github.com で GreaseMonkey Script を管理しよう - 川o・-・)<2nd life

    http://gist.github.com/ 最近 github にまた新しいサービス、gistが誕生しました。これはよくあるソースコードを web にペーストして参照できるサービスの git 版、と云ったところです。 gist の良いところは、まず git を知らなくても使えるところが上げられます。普通のペーストサービスと同じで、ソースコードを適当にはっつければOKで簡単です。編集ももちろん web 上からでき、インターフェイスから編集を行うと、git の履歴としてサーバサイドに保存されます。また、匿名による作成・編集も可能です。(匿名による編集は cookie が切れるまでっぽいですが) そして、git と同じく、github にログインしてれば、gist で誰かが貼り付けたソースコードを fork でき、自分の権限の元編集操作が可能になります。ので、誰かが貼り付けたコードを for

    gist.github.com で GreaseMonkey Script を管理しよう - 川o・-・)<2nd life
  • ブックマークレットサービス・Hatena::Let を作りました - 2nd life (移転しました)

    ブックマークレットをかんたんに作成・公開できるラボサービス、その名も Hatena::Let を作りました。 http://let.hatelabo.jp/ 未だにブックマークレットを作るときには、アドレスバーに javascritp:... を打ち込んで実行したり、 Firebug で実行して試しつつも外部の bookmarklet 化サービスを使って文字列削ったり、IE対策のため500ちょい文字を超えると gist にファイルを置きつつもおきまりの var script = document.createElement('scrit');... で JS のローダー書いたり、とやりたいことは同じなのにめんどくさい手順を毎回行っていたました。 ここらへんの手順を毎回繰り返すことなくさくっと作って公開したい!と思い id:cho45 と半年ぐらい前の開発合宿*1で作って眠らせていたのを、ち

    ブックマークレットサービス・Hatena::Let を作りました - 2nd life (移転しました)
  • はてなモノリス開発話 - 川o・-・)<2nd life

    日、はてなモノリスという Android / iPhone3GS 向けの簡単にモノのバーコードをスキャンして投稿(Twitter にも同時投稿できます)というサービスを作りました。是非対応端末をお使いの方は利用してみてくださいね。概要だけきいてもうーん、という感じですが実際に使ってみると簡単にモノのバーコードが認識できお気楽に投稿できるのは楽しいです! http://mono.hatena.ne.jp/ 約一ヶ月ほど専念して開発したんですが、その話でも。 開発の経緯 最近僕ははてなブックマークのディレクターと、はてなAndroid 開発周りを担当しています。とあるミーティングで今後 Android をどう展開していくか、という話を id:jkondo, id:naoya, id:cho45 と僕で行いました。Android の開発おもしろーい、と個人的に強く思ってることもあり And

  • Google Chrome 拡張ことはじめ - 2nd life (移転しました)

    2009年12月8日*1(日時間では12/9朝)、拡張機能が有効(除くOSX)な Google Chrome ベータ版がリリースされました。同時にこつこつ開発を続けてた、はてなブックマーク Google Chrome 拡張ベータ版も公開したので、良かったら使ってみてください :D http://hatena.g.hatena.ne.jp/hatenabookmark/20091209/1260314705 というわけで、Google Chrome 拡張を作ってみたのですが、その時に参考にした資料やドキュメントをまとめてみました。 Google Chrome 拡張APIドキュメント http://code.google.com/chrome/extensions/docs.html的に上のURLで必要なAPIのドキュメントはまとめられています。またページ中央下の「Doc versio

    Google Chrome 拡張ことはじめ - 2nd life (移転しました)
  • Firefox Developers Conference 2009 発表資料 - 2nd life (移転しました)

    2009年、11月9日に開かれた、 Firefox Developers Conference 2009 で、はてなブックマーク Firefox 拡張の話をしてきた資料です。実装についての話は、nanto_vi さんが資料を公開してくれると思います。 資料の最後にも載ってますが、当に Firefox 拡張開発に当たり、Mozilla/Firefox に関わる方々が公開してくださっている資料やコミュニュティの成果物に非常に助けられ、それらが無ければ開発は行えなかったと思います。Firefox Developers Conference に参加された方々、Mozilla Japan やその他 Mozilla コミュニュティの方々、Mozilla/Firefox に関わるすべての方々、どうもありがとうございます。 はてなブックマーク Firefox 拡張の裏側 はてな 舘野祐一(id:seco

    Firefox Developers Conference 2009 発表資料 - 2nd life (移転しました)
  • デブサミ2009 はてなの開発戦略 - 2nd life (移転しました)

    先日のデブサミ2009で発表した、はてなの開発戦略 (すごい名前だ…) のプレゼン資料を公開します。前半は主に git の話で、後半ははてなブックマークリニューアルの、Perl 層の開発をどんな感じで行っていったか、という話です。 デブサミ2009 はてなの開発戦略View more presentations from hotchpotch. はてなの git では、中央のマスタレポジトリサーバがあって、そこから各自 clone / fetch して開発を行ってるので、完全に github のような分散のメリットを生かしているわけではありません。 しかし完全に分散を生かさずとも、git に移行したメリットは十分にあって、資料の中でもふれていますが、やはり一番便利なのが git のブランチ機能です。もうこれ無しでの開発は考えられないなぁ、ぐらいで、さくっとブランチ切って開発、ブランチの切り

    デブサミ2009 はてなの開発戦略 - 2nd life (移転しました)
  • ctags で JavaScript のタグを生成 - 2nd life (移転しました)

    エディタを使う上でわりと欠かせないのが、ctags(じゃなくてもいいけど)によるタグの生成です。あらかじめタグを作っておけば、関数などの補完も効くし、タグジャンプで即座にソースが読めて非常に便利です。 しかしながら現在の Exuberant Ctags の最新版では、JavaScript のタグ生成が function funcname(){}という関数の書き方にしか対応しておらず、最近の JavaScript プログラミングでよく使われるプロパティに関数を定義するタイプの funcname: function(){}という書き方ではタグ生成がされず悲しいです。で、prototype.js やら MochiKit やらを多用してるとタグジャンプがないのは不便すぎて悲しくなってきたので、当初は jstags という rubyJavaScript タグ生成のプログラムを作って代用してまし

    ctags で JavaScript のタグを生成 - 2nd life (移転しました)
  • 2008-07-19 - 川o・-・)<2nd life Uffy externalinterface external interface

    日の OSC Kansaia 2008 で開かれた Shibuya.js in Kyoto で、JavaScript と ActionScript の連携について話しました。関西のカンファレンスでの発表は初めてでしたが、楽しかったです。スピーカの皆さん、参加された皆さん、どうもありがとうございましたー。 以下発表資料です。 JS <-> AS JavaScript と ActionScript の連携 自己紹介 はてなエンジニア 舘野 祐一 (id:secondlife) http://tako3.com/http://rails2u.com/ Ruby, ActionScript3, JavaScript JS と AS JS だけでよくない? AS だけでよくない? 相互に補完しあえる関係 両方使えると、様々なメリットが JavaScript -> ActionScript cros

    2008-07-19 - 川o・-・)<2nd life Uffy externalinterface external interface
  • cdd - screen の別WINDOWのカレントディレクトリに移動する zsh スクリプト - 2nd life (移転しました)

    現在は m4i さん作のcdd を tmux, bash, multi session +α に対応した - カワイイはつくれる のcddを使うのがオススメです。 screen を使ってると、別の作業している WINDOW のカレントディレクトリに移動したくなることってありませんか?私は月1000回ぐらいあります。で、毎回手動で打つのがめんどくさくなってきたので zsh スクリプト書いてみたら思っていた以上に便利だったので、汚いスクリプトですが公開します。 http://svn.coderepos.org/share/lang/zsh/cdd/cdd 使い方は、上記スクリプトを checkout したりダウンロードしたりしてから、.zshrc に autoload -U compinit compinit source ~/path/cdd # (cdd はこのファイル) するを追加します

    cdd - screen の別WINDOWのカレントディレクトリに移動する zsh スクリプト - 2nd life (移転しました)
  • 川o・-・)<2nd life - bookmarkletの文字数制限を無くす

    bookmarkletを作るとき、IEでは500文字ちょい、Firefoxでは2000文字ぐらい(?)の文字数制限がある。また、作った後に一行にまとめたり、デバッグしたりも大変面倒。でもそれがとても簡単な方法でどうにでもなることをインターフェイス!インターフェイス!の人に教わった。 javascript:(function(){var s=document.createElement("script");s.charset="UTF-8";s.src="http://example.com/example.js";document.body.appendChild(s)})(); createElementでscript要素を作って、その中にhttp://example.com/example.jsとソースを指定することによってそのJSを実行できる。WinIEとFirefoxでは確認済み。

    川o・-・)<2nd life - bookmarkletの文字数制限を無くす
    aki77
    aki77 2008/01/20
    『createElementでscript要素を作って、その中にhttp://example.com/example.jsとソースを指定することによってそのJSを実行できる。』
  • はてなハイク お絵描き機能の話 - 2nd life (移転しました)

    さてさて、日リリースされたはてなハイクですが、実は一昨日にはお絵描き機能がありませんでした。リリース日の前日の朝、id:jkondo がすっごくニコニコしながら(ニコニコしてるときは大抵なにかしてもらいたいときだ!騙されるな!)ねーねーと声をかけてきました。 「jkondo: シンプルなお絵描き機能があったら絶対面白いねん!実現出来ないかなぁ(ニコニコ)。」 突然!しかもリリースは明日ですよシャチョー!でもこんなシチュはエンジニアなら燃え(萌え)ますよね。Ruby など LL を弄ってる(今回はAS3だけど)と、出来るだけ短い期間でどれだけの物を作れるかというのは熱くなれる瞬間です。はてなは作ったら即座にサービスに反映してくれるので、自分の思想と合った物なら作るモチベーションもぐんぐん上がります。 というわけでミニマムな機能だけ最低限実装することにして、サーバサイドは Fotolife

    はてなハイク お絵描き機能の話 - 2nd life (移転しました)
  • ExportJS - ActionScript3 のオブジェクトを JavaScript にエキスポート - 2nd life (移転しました)

    ExportJS (ソース) 通常 flash では、コンパイル済みのオブジェクトの変数やプロパティは外部から弄ることが出来ず*1、パラメータの微調整を行うことや、現在プロパティにどんな値が設定されているかは解りません。ので Firefox の JavaScript から AS3 のオブジェクトを JavaScript にエキスポートして簡単に弄れる ExportJS というライブラリを作ってみました。現在は Firefox の JS 専用です。*2 なにはともあれまずは Demo を。 http://as3exportjs.googlecode.com/svn/trunk/demo/ExportJS_Example1.htm リアルタイムに TextField を変更したり、メインのオブジェクトを弄ったり、shape のパラメータを変えています。Firefox の setter/gett

    ExportJS - ActionScript3 のオブジェクトを JavaScript にエキスポート - 2nd life (移転しました)
  • crossdomain.xml と CSRF 脆弱性について - 2nd life (移転しました)

    crossdomain.xml を安易に設置すると CSRF 脆弱性を引き起こす可能性があります。というのも、ここ数が月、それなりの数の crossdomain.xml による CSRF 脆弱性を発見し(現在、それらのサイトでは対策がなされています)、まだまだ Web プログラマに脆弱性を引き起こす可能性がある、という考え方が浸透してないんじゃないか、と思ったので。 先月、Life is beautiful: ウェブサービスAPIにおける『成りすまし問題』に関する一考察にも crossdomain.xml について書かれてたのですが、その後もいくつかのサービスで crossdomain.xml を許可ドメインすべてにしているサービスがあったので、注意喚起としてエントリーに書き起こします。 自分も一年半ぐらい前は、crossdomain.xml を許可ドメインすべて ('*') にして設置し

    crossdomain.xml と CSRF 脆弱性について - 2nd life (移転しました)
    aki77
    aki77 2007/07/21
    「crossdomain.xml を設置して、安易に許可ドメインをすべてにすると、別ドメインからでも、第三者がそのユーザのブラウザの COOKIE を用いてアクセスが可能になってしまいます」
  • fcwrap を使ったAS3オールドタイプ開発 - Shibuya.es 発表資料 - 川o・-・)<2nd life

    昨日の Shibuya.js Technical Talk #3 - Shibuya.es で LT をしてきました。関係者、来場者のみなさん、お疲れ様でした。 どの発表も面白かったです。技術的な面では omo さんのはじめてのABCでの、AVM2/JIT の話が大変面白かったです。なんで型を定義すると速くなるのかなど、「へーこう実行されるからなのかー」と解りやすかったです。 また会場では一斉を風靡するであろう、kushigahamaメソッドが生まれました。あのインパクトは正直高橋メソッドを初めて見たとき以上でした。今年は高橋メソッド以上にkushigahamaメソッドが流行る予感…。 また、fcwrap のデモも撮ったので置いておきます。 http://rails2u.com/misc/fcwrap_demo/fcwrap.htm このように保存するだけで即座に結果を表示/リロードしつつ

    fcwrap を使ったAS3オールドタイプ開発 - Shibuya.es 発表資料 - 川o・-・)<2nd life
  • 川o・-・)<2nd life - Developer Enviroments Conference の発表資料

    9/8 に開かれた DEcon で windows enviroments and vim という内容で発表してきました。主に自分が使ってる windows の開発に便利なツールと、vim についてプレゼンしてきました。時間大幅に押してしまいましてスイマセン…。 また、スピーカと参加者のみなさん、お疲れ様でした。他の方の開発環境やポリシーが聴けて大変参考になりました。あとカンジマン(id:tnx)には毎度の事ながら様々な準備お疲れ様でした。 自分のプレゼンには自作のはてな記法つかったプレゼンツールを使ったのですが、よくよく考えるとそれをエントリーに貼り付ければいいじゃん!ということに気づいたので、以下に発表資料を貼り付けておきます。 windows environments and vim secondlife 発表内容 windows での環境 どんなツールがあると便利か vim vim

    川o・-・)<2nd life - Developer Enviroments Conference の発表資料