タグ

ブックマーク / blog.ruedap.com (155)

  • Vimperator 3のヒントモードでアルファベットを使う - アインシュタインの電話番号

    Vimperator 2系では、char-hints-mod2.jsプラグインにお世話になっていた「ヒントモードでのアルファベット指定」が、Vimperator 3ではデフォルトのオプションで出来るようになったみたい。初期設定の数字指定はやっぱり使いづらかったのでアルファベットに変えた。その時に、指定した文字の1文字目が無視される挙動があったのと、表示はアルファベットの大文字にしたかったので、それぞれ解決してみた。 hintcharsオプション Vimperator 3では、デフォルトで備わっているhintcharsオプションでヒントモードで表示したい文字を指定できるみたい。 set hintchars=abcde ちなみに、Vimperator 2系で自分の環境では、char-hints-mod2.jsプラグインを使って以下のように指定していた。 "" char-hints-mod2.j

    Vimperator 3のヒントモードでアルファベットを使う - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/27
    Vimperator 3のヒントモードでアルファベットを使う
  • オライリーの電子書籍買い占め運動に参加してみた - アインシュタインの電話番号

    オライリー・ジャパンが3月26日0時までの期間限定で、被災者支援キャンペーンをやっていたので出来るだけ参加してみた。興味ある書評をネットで読んだりして何回かに分けて注文していたのだけど、合計で17冊買った。支払いも既に済んでいるんだけど、デジタルなくせに書籍はまだ1冊も手元に無い。処理が追いつかないくらいの人気らしい。 被災者支援キャンペーン 今回のキャンペーンは、オライリーで扱っている電子書籍を半額にした上で、その売上の全額^1を日赤十字に寄付するというもの。 オライリー・ジャパンでは、O'Reilly Mediaで行なわれている被災者義援金キャンペーンに続いて、東北関東大震災の被災者を支援するための期間限定キャンペーンを実施いたします。 上記に記載したプロモーションコードをO'Reilly Japan Ebook Storeのショッピングカートでご入力いただくと、Ebookの通常

    オライリーの電子書籍買い占め運動に参加してみた - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/26
    オライリーの電子書籍買い占め運動に参加してみた
  • HTTPメソッドのPOSTとPUTの冪等性 - アインシュタインの電話番号

    昨日の記事のはてブコメントにて、POSTとPUTの使い分けには冪等性が重要ですよとのアドバイスをいただいた。ので、冪等性について調べてみた。 冪等性と安全性 @tkawaさんに、はてブコメントにてアドバイスいただいたのは冪等という考え方。 これに加えて、性質の違いとしてPOSTは冪等ではないがPUTは冪等というのも重要です 冪等ってあまり聞かない用語だけど、この冪等についても、Webを支える技術にはちゃんと書いてあった。 冪等とは「ある操作を何回行っても結果が同じこと」を意味する数学用語です。たとえばPUTとDELETEは冪等ですので、PUTやDELETEを同じリソースに何回発行しても、必ず同じ結果(リソースの内容が更新されている、リソースが削除されている)が得られます。 安全とは「操作対象のリソースの状態を変化させないこと」を意味します。リソースの状態に変化を与えることを副作用といいます

    HTTPメソッドのPOSTとPUTの冪等性 - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/25
    HTTPメソッドのPOSTとPUTの冪等性
  • HTTPメソッドのPOSTとPUTの使い分け - アインシュタインの電話番号

    どこで見たか忘れたけど、POSTはURLが変わる場合に使用して、PUTはURLが変わらない場合に使用する、と書かれたページを読んだことがあって、POSTとPUTの使い分けはそうするものだと思ってた。が、これは間違い^1っぽい。Webアプリ制作におけるバイブルとも言えるWebを支える技術を読み返していたら、これらの使い分けの指針が載っていて、それは自分が覚えてた使い方と逆だった。 POSTとPUTを使い分ける指針 POSTとPUTを使い分けるのに明確な答えはないみたいだけど、Webを支える技術では以下のような設計上の指針を紹介されていた。 これには正解は存在しませんが、設計上の指針として次の事実があります。 POSTでリソースを作成する場合、クライアントはリソースのURIを指定できません。URIの決定権はサーバ側にあります。逆にPUTでリソースを作成する場合、リソースのURIはクライアントが

    HTTPメソッドのPOSTとPUTの使い分け - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/24
    HTTPメソッドのPOSTとPUTの使い分け
  • WindowsのMS-IMEやGoogle日本語入力で英数/かなキーを使ってIMEの状態を切り替える - アインシュタインの電話番号

    Macの英数キーでIMEをOFF、かなキーでIMEをONに慣れてしまうと、WindowsでのAlt+半角キー(または半角キーのみ)でIMEのON/OFF状態をトグルするのはとても非効率だと感じるようになる。で、Boot Campや仮想マシン上のWindowsを触ったときに、英数キーを押すとカタカナとかになってイラッとする。これらの仮想環境のWindows上でも英数キーを押せばIMEがOFFになるように変更する方法を調べたので備忘録。使っているキーボードは、Apple Wireless Keyboard (JIS) MC184J/Aなので、Windows用キーボードだとキーの割当が違うかもしれない。Apple Wireless Keyboardの場合は、なぜか無変換キーを修正・割当することで変更できた。 タスクトレイ等に表示されているGoogle-IMEのアイコンを右クリックしてコンテキスト

    WindowsのMS-IMEやGoogle日本語入力で英数/かなキーを使ってIMEの状態を切り替える - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/23
    WindowsのMS-IMEやGoogle日本語入力で英数/かなキーを使ってIMEの状態を切り替える
  • RubyのRMagickで縦横比固定でリサイズしたり切り抜いたり - アインシュタインの電話番号

    縦横比固定でリサイズする場合は、resize_to_fitメソッドを使う。縦か横のどちらか小さい方のサイズでリサイズされる。残ったもう一方は、比率を保ったままリサイズされる。 require 'rubygems' require 'RMagick' # 元画像の画像サイズは1024x768 original = Magick::Image.read('target.jpg').first image = original.resize_to_fit(1024, 120) image.write('resize_to_fit1.jpg') #=> 160x120にリサイズされる image = original.resize_to_fit(120, 768) image.write('resize_to_fit2.jpg') #=> 120x90にリサイズされる 画像の一部を切り抜く 画像の

    RubyのRMagickで縦横比固定でリサイズしたり切り抜いたり - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/22
    RubyのRMagickで縦横比固定でリサイズしたり切り抜いたり
  • RubyのRMagickで画像をリサイズする - アインシュタインの電話番号

    前回の記事でImageMagickとRMagickのインストールができたので、実際にRMagickを使って画像をリサイズしてみた。 基形 リサイズの基形はこんな感じ。比率によるリサイズと、縦横のピクセル指定のリサイズが、同じメソッドの引数の違いで使える。 require 'rubygems' require 'RMagick' scale = 0.3 width = 160 height = 120 # 対象の画像ファイルの読み込み original = Magick::Image.read('target.jpg').first # 比率でリサイズ image = original.resize(scale) image.write('resize1.png') #=> 元画像の縦横30%のサイズに # 縦・横のピクセルを指定してリサイズ image = original.resiz

    RubyのRMagickで画像をリサイズする - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/21
    RubyのRMagickで画像をリサイズする
  • MacでImageMagickとRMagickをインストールする - アインシュタインの電話番号

    Rubyで画像を扱う必要があったので、MacのHomebrewでImageMagickをインストールして、それからRMagickをインストールした。 ImageMagickのインストール まず、ImageMagickをインストールする。Homebrewからインストールした場合のImageMagickは64bit版になるらしく、MAMP版のPHPで使う場合に問題になるみたいだけど、Rubyの場合はどうなのかよくわからないので、とりあえずHomebrewからインストールしてみる。MacPortsはアンインストールしちゃったしね。 $ brew install imagemagick 依存パッケージも色々インストールされるみたいで、結構時間掛かる。最後に表示されるのSummaryだと5.7分って書かれてた。これってインストールを開始してから終了するまでの時間でいいのかな? 感覚的にはもっと長い時

    MacでImageMagickとRMagickをインストールする - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/20
    MacでImageMagickとRMagickをインストールする
  • Rubyの正規表現で使える組み込み変数 - アインシュタインの電話番号

    似たような記号が多くて覚えづらいので書き出してみた。 正規表現用の組み込み変数 以下のコードを実行した場合の出力結果を横にコメントで書いてみた。最低限覚えておいたほうがいいのは「$&」と「$数字」かな。ほかは使わないとすぐ忘れそう、というか使いたい時に思い出せなさそう。 "hoge fuga piyo poyo" =~ /(f\w+)\s(\w+)/ p $~ #=> #<MatchData "fuga piyo" 1:"fuga" 2:"piyo"> p $& #=> "fuga piyo" p $` #=> "hoge " p $' #=> " poyo" p $+ #=> "piyo" p $1 #=> "fuga" p $2 #=> "piyo" それぞれの記号の解説と覚え方を、リファレンスマニュアルから抜粋。 |変数|覚え方|クラスメソッド|説明| |-|-|-|-| |$~|「

    Rubyの正規表現で使える組み込み変数 - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/19
    Rubyの正規表現で使える組み込み変数
  • 「小さなチーム、大きな仕事: 37シグナルズ成功の法則」を読み終えて - アインシュタインの電話番号

    他の人がさんざん褒めているので自分が改めて言う必要は無いのだけど、これは素晴らしい良書。何度も読み返したい。さすがDHH、さすが37signals。さすがRails書の中でRailsについてはほとんど触れられていないけど、このに書かれている思想や行動によって作られたんだなぁと思えば納得がいく。 小さなチーム、大きな仕事: 37シグナルズ成功の法則 また、気に入った箇所を抜き出すために、全体的に読み返していて思ったのだけれど、今回の大震災のような時にも通じるセンテンスがけっこうあることに驚いた。ビジネスも生活も人間の活動という大きな枠組みの中では同じなのだと気付かされた。 あと、日語版には載ってなくて残念なんだけど、原書である英語版に収録されているイラストがセンスの良い分かりやすいものばかりで、Flickrの以下のページでまとめられているので一見の価値あり。 REWORK Illu

    「小さなチーム、大きな仕事: 37シグナルズ成功の法則」を読み終えて - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/18
    「小さなチーム、大きな仕事―37シグナルズ成功の法則」を読み終えて
  • PHPでフォームのチェックボックスの値を配列で受け取る - アインシュタインの電話番号

    フォームのcheckboxで複数選択された状態を、PHP側でどうやって受け取るのか知らなくて調べたら、配列っぽい名前を付ければ良いらしい。 PHPで書くと HTML側でnameのところで末尾に [] を付けて配列っぽく書けば、 <input type="checkbox" name="foo[]" value="hoge" />hoge<br /> <input type="checkbox" name="foo[]" value="fuga" />fuga<br /> <input type="checkbox" name="foo[]" value="piyo" />piyo<br /> PHP側で配列で受け取れた。 <?php $foo = $_post['foo']; var_dump($foo); array(3) { [0]=> string(4) "hoge" [1]=> s

    PHPでフォームのチェックボックスの値を配列で受け取る - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/17
    PHPでフォームのチェックボックスの値を配列で受け取る
  • ねこ、カレー、色、美女…つぎは何スタグラム? ジャンル特化型Instagramビューアーまとめ - アインシュタインの電話番号

    ネットには好きが多いと聞きますが、ここまで反響があるとは思いませんでした。 ||| |-|-| |名称|Nekostagram - ねこ大好き専用Instagram| |URL|http://nekostagram.com/| |作者|@ruedap| |関連記事|Instagram APIを使ってねこ大好き専用の「Nekostagram」を作ってみた| ビール 美味しそうなビールばかり出てきます。昼間から飲みたくなっちゃいますね。 ||| |-|-| |名称|beergram - ビール大好き専用Instagram| |URL|http://tavii.com/sp/instagram/beer/| |作者|@taviiさん| |関連記事|なし| うさぎ うさぎって寂しいと…でお馴染みのかわいい小動物代表。モフモフ度高し。 ||| |-|-| |名称|Usastagram(うさすたぐら

    ねこ、カレー、色、美女…つぎは何スタグラム? ジャンル特化型Instagramビューアーまとめ - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/10
    ねこ、カレー、色、美女…つぎは何スタグラム? ジャンル特化型Instagramビューアーまとめ
  • NekostagramとInustagramのソースコードをGitHubに公開してみた - アインシュタインの電話番号

    NekostagramとInustagramで使用しているファイル一式をGitHubに公開してみた。技術的にはなんにもすごいことはしてなくて、さらにSassとか初めて使ってみたので、いろいろとツッコミどころ満載かもしれない。 共通化・汎用化 最初にNekostagramを公開したときは、とりあえず動くようにすることを第一目的に、きったない書き方で殴り書きしてたんだけど、次のInustagramを作るときに、できるだけコードを共通化・汎用化させていき、最終的には現在公開しているコードのように、まったく同じ1つのRubyファイルでNekostagramとInustagramの両方を動かせるようにできた。 ruedap/nekostagram - GitHub Gitリポジトリがゴミだらけ なかなかGitHubに公開できなかった理由は、恥ずかしながらこれ…。 このツイートに対して、いくつか方法を

    NekostagramとInustagramのソースコードをGitHubに公開してみた - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/09
    Nekostagram/InustagramのソースコードをGitHubに公開してみた
  • はてブページのタイトルが英語版タイトルになってしまって直せない - アインシュタインの電話番号

    下のキャプチャ画像のとおり。はてブプラグインのタイトル編集機能を使って日語タイトルに戻しても、すぐ英語版の方に戻ってしまう。Sinatraのi18n用ライブラリsinatra-r18nを今回から使い始めたのが関係していると思うけどよくわからず。 Inustagramのはてブページのタイトルがなぜか英語の方 今回Inustagramを公開してすぐに、1つのミスを犯した。そして、それは未だに解決できていない。Inustagramでは公開時から、訪問者のブラウザの言語設定で英語版と日語版の表示を切り替えるようにしていた。で、これが裏目に出たのか、上のほうで張っているInustagramはてブページのキャプチャ画像のとおり、Inustagramのはてブページがなぜか英語版の方のタイトルで登録されるようになった。 以下はそれぞれ、NekostagramとInustagramのはてなブックマークの

    はてブページのタイトルが英語版タイトルになってしまって直せない - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/08
    はてブページのタイトルが英語版タイトルになってしまって直せない
  • NekostagramとInustagramで個々の写真にツイートボタンを付けてみた - アインシュタインの電話番号

    NekostagramとInustagramに、個々の写真にツイートできるボタンを付けてみた。いまさら感が満載だけど、かわいい写真やおもしろい写真を見かけたらツイートしてみてね。 ツイートボタンはこれ 個々の写真に対してツイートするボタンは右上のこれ。あんまり主張しないよう薄くなってるのでちょっと見づらいかも。これをクリックすると、ツイート用のTwitterページに飛ばされて、テキストフィールドには既にハッシュタグと選んだ写真のInstagramへのリンクが含まれているので、コメントなどを入れてツイートしてもらえれば。写真の中には、Instagramへのリンクが元々無い写真があるので、その場合はツイートボタンも出ない。

    NekostagramとInustagramで個々の写真にツイートボタンを付けてみた - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/07
    Nekostagram/Inustagramで個々の写真にツイートボタンを付けてみた
  • はてブのページに表示されるサムネイル画像を変更する - アインシュタインの電話番号

    はてなブックマークのページの右側に表示されているサムネイル画像を変更できるって知らなかった。NekostagramやInstagramを公開後、時々はてブのページをチェックしてて、このサムネイル部分が最初はサイト自体のキャプチャ画像だったのに、途中からかわいいねこ写真やいぬ写真に切り替わったので「あれ?」と思ってた。 昨日その変更をした人をTwitterで見かけたので、直接聞いて方法を教えてもらった。 はてなブックマークのプラグインから変更可能 Twitter上で@shibamanaさんに教えてもらったのだけれど、はてなが提供しているはてブ用のブラウザー機能拡張(プラグイン)を利用するとサムネイル画像を変更できるとのこと。はてなブックマークのプラグインは現状Firefox版とChrome版があるのかな? 他にもあるかもしれないけれど、とりあえず普段自分が使っているFirefoxで試してみた

    はてブのページに表示されるサムネイル画像を変更する - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/06
    はてブのページに表示されるサムネイル画像を変更する
  • 二匹目のどじょうを狙っていぬ大好き専用の「Inustagram」を作ってみた - アインシュタインの電話番号☎

    家と一瞬見分けのつかないちょっとグレーな名前な上に、前作Nekostagramの検索対象をcatからdogに変えただけのかんたん複製アプリでございます。 前作ネコスタグラムの公開から約1週間。ビバ土日。2匹目のドジョウを狙って、ネコスタグラム公開後にいただいた反響の中で多かった「犬バージョンはまだ?」というリクエストにおこたえして、いぬ大好き専用Instagramビューアー、イヌスタグラム。前作とまったく同じプログラム。 ★Nekostagram - ねこ大好き専用Instagram http://nekostagram.com/ (情報元:はてブ) いぬ大好き専用作れやごるぁあああ まなめはうす iPhoneに対応 とりあえず今回はiPhoneのSafariでも見づらくならないように、専用HTMLを用意して対応した。iPhone 3GSでしか見てないので、iPhone 4とかだとどうな

    二匹目のどじょうを狙っていぬ大好き専用の「Inustagram」を作ってみた - アインシュタインの電話番号☎
    ruedap
    ruedap 2011/03/05
    犬好きな方々お待たせしました。いぬ大好き専用の「Inustagram」が3月5日に登場です。
  • Google Analyticsで参照元サイトのURLをフルパスで表示する - アインシュタインの電話番号

    Google Analyticsの左メニューの「トラフィック」→「参照元サイト」で見られるURLはドメイン名をクリックしないとドメイン以下のパスを見られないけど、ユーザー定義なフィルタを作ることでフルパスなURLで表示できるように設定する方法があったのでメモ。 カスタムフィルタの設定 Google Analyticsのトップページから、複数アカウントを作成している場合は該当するアカウントを選択する 設定したいアカウントを選択し、プロパティ → プロファイル を選択する フィルタタブをクリックする 「新しいフィルタ」をクリックして、各項目を以下のように設定する フィルタ名:参照元URL フィルタの種類:「カスタムフィルタ」を選択後、「詳細」を選択する フィールド A -> 引用 A:左のリストから「参照」を選択し、右のテキスト欄に「(.*)」と入力する フィールド B -> 引用 B:未入力

    Google Analyticsで参照元サイトのURLをフルパスで表示する - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/04
    Google Analyticsで参照元サイトのURLをフルパスで表示する
  • Sinatraを使ってInstagram APIのアクセストークンを取得する - アインシュタインの電話番号

    Instagram APIに関する日語情報は、現時点ではこのページが一番良くまとまっていて素晴らしい。ただ、アクセストークンを取得する具体的な例は載っていなかったので(記事を読む限りPHPを使って取ってるっぽい?)、自分が取得した方法を備忘録がてらにまとめてみた。Instagram公式のRubyAPIラッパーライブラリを使って、さらにSinatraで記述するととても簡単にOAuth認証できる例が載っているので、これを少し書き換えて、アクセストークンを表示するようにした。 Sinatraでアクセストークン取得 Instagram APIのページのManageから、アクセストークンを取得したいアプリを新規作成にして、「OAuth redirect_uri」に http://localhost:4567/oauth/callback と入れる。あとは、表示されている「Client ID」と「

    Sinatraを使ってInstagram APIのアクセストークンを取得する - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/03
    Sinatraを使ってInstagram APIのアクセストークンを取得する
  • 数字で見るNekostagram公開後3日間 - アインシュタインの電話番号

    ねこ大好き専用Instagram「Nekostagram」を公開(2月28日の朝)してから3日が経過したけど、想定外なほどに多くの方に利用してもらえて驚いた。また、Twitterやはてブのコメントを見る限り、多くの方に喜んでもらえてるようで、そういうのを読むと率直に嬉しいです。そんなこんなで、この3日間でのNekostagramへの反響を数字に焦点をあててまとめてみた。 はてブ、Twitter、Facebook このブログ記事を書いている現時点(3月2日23時頃)で、はてなブックマーク数、Twitterのツイート数、Facebookのいいね数は以下のとおり。 |はてブ|Twitter|Facebook| |-:|-:|-:| |507|1,243|677| はてブ 今回一番気にしていた数字は、はてなブックマークの数。このはてブが勢い良く伸びるとホッテントリに掲載され、ここに掲載されると一気

    数字で見るNekostagram公開後3日間 - アインシュタインの電話番号
    ruedap
    ruedap 2011/03/03
    数字で見るNekostagram公開後3日間