タグ

ブックマーク / route477.net (34)

  • Route 477 - geminaboxで「俺専用gem配布サーバ」を立てる

    ■ [ruby] geminaboxで「俺専用gem配布サーバ」を立てる http://github.com/cwninja/geminabox via http://twitter.com/qrush/status/18707703461 gem配布サーバといえばrubygems.orgなわけだけど、クローズドな環境でプライベートなRubyライブラリをgemで管理したいとかいうとき には、自前でgemサーバを立てると便利かも知れない。 インストール $ gem install geminabox サーバの起動 以下のようなconfig.ruを書いて「rackup config.ru -p 9292」とかするとgemサーバが起動する。 require "rubygems" require "geminabox" Geminabox.data = "/var/geminabox-data"

    Route 477 - geminaboxで「俺専用gem配布サーバ」を立てる
  • Route 477(2010-06-05)

    ■ [ruby] Rubyの新リファレンスマニュアルをコマンドラインから簡単に引くためのツールを書いた Rubyリファレンスマニュアル刷新計画(通称るりま)のリファレンスを、コマンドラインから簡単に引けるようにするgemを作りました。 多くの人はWeb版か、chm版を使ってると思いますが、同じものがコマンドラインから見れるようになります。 インストール方法とかはgithubに書いてますが、 $ sudo gem install myrurema $ rurema --init $ rurema Array#length Array#length --- length -> Integer --- size -> Integer 配列の長さを返します。配列が空のときは 0 を返します。 p [1, nil, 3, nil].size #=> 4 という感じです。初回のみ、データベースを構築す

    Route 477(2010-06-05)
  • Route 477(2010-03-16)

    ■ [ruby] Ruby meets Manpage manは、Unix系OSで一般的に使われているドキュメントシステムだ。 これを、Rubyのgemに対しても応用できないかという試みが現れた。 その名もgem-man。 gem install gem-man とすると、 gem man <gem名> でそのgemの説明が見られるようになる。例えば gem man gem-man とか。 ライブラリ作者の側では、gemを作る際にman/以下にmanのファイルを置けばいい。 manファイルの作り方はman whatが参考になりそう (ronnを使う例が載っている)。 おまけ http://man.cx/ruby : ネットでmanを引けるサイト。

    Route 477(2010-03-16)
  • Route 477(2010-03-02)

    ■ [git] githubで任意の2点間のdiffが取れるようになったぞ (from Introducing GitHub Compare View - GitHub) 例1: http://github.com/magnetised/mongomapper/compare/master...proxy_owner compareの後に、始点と終点を書く。 例2: http://github.com/jquery/jquery/compare/omgrequire ブランチ名だけでもOK。 例3: http://github.com/sinatra/sinatra/compare/0.9.3...0.9.4 タグ名を使った例。リリース間の変更点が見られる。 32 https://www.google.co.jp/ 23 http://reader.livedoor.com/reader/

    Route 477(2010-03-02)
    Watson
    Watson 2010/03/03
  • Route 477 - Ruby基礎文法最速マスター&Ruby書籍紹介

    Perl基礎文法最速マスターをだいたいそのまま、Rubyに置き換えてみました。 他の言語をある程度知っている人はこれを読めばRubyの基礎をマスターしてRubyを書くことができるようになる…かも知れません。無保証です。 参考: オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (1.9.2) オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (1.8.7) ■ 1. 基礎 インタラクティブRuby (irb) irbを使うと、Rubyのプログラムを簡単に練習することができます。 /Users/yhara $ irb irb(main):001:0> puts "hello" hello => nil irb(main):002:0> 1 + 1 => 2 以下の説明は、irbを起動して、自分で試しながら読むと習得が早いと思います。 表示 (print,

    Route 477 - Ruby基礎文法最速マスター&Ruby書籍紹介
    Watson
    Watson 2010/01/27
  • Route 477(2009-12-02)

    ■ [ruby] Ruby 1.9ではハッシュをJavaScriptっぽく書けます (※12月の1日から25日まで、日替わりでRubyのTipsを紹介するイベント、Ruby Advent Calendar jp: 2009参加記事です。) ご存じない(あるいは、忘れている…)方もいると思いますが、Ruby 1.9ではハッシュリテラルをJavaScriptのオブジェクトリテラルのように簡潔に書ける 文法が追加されています。 例えば、 {:a => 1, :b => 2} の代わりに {a: 1, b: 2} と書くことができます。キーはSymbol限定とはいえ、これは短い! Railsでよくあるオプションなんかも: has_many :moves_from, :class_name => "Move", :foreign_key => :account_id_from このように、短くなりま

    Route 477(2009-12-02)
    Watson
    Watson 2009/12/03
  • Route 477(2009-07-29)

    ■ [ruby] RubyからJavaScriptのテストも行うためのライブラリあれこれ RailsなどのWebフレームワークでは、「rake test」一発でWebアプリのテストが走ってくれて楽ちんなわけですが、 JavaScriptのテストは手作業でやってたりしませんか? 「rake test」でJavaScriptのテストもやってしまうためのライブラリがいろいろ出てきてるようなので、列挙してみました。 ブラウザを使うもの 実際にブラウザを起動し、それをRubyからコントロールすることでWebアプリのテストを行う。 Selenium 有名ですね。 調べてないんだけど、Rubyからも使えるし、JavaScriptを操作したりもできるんじゃないですかね(投げやり)。レポート求む。 Watir (RubyForge) #どっちが公式サイトなんだろう Rubyからブラウザを起動し、操作する。

    Route 477(2009-07-29)
  • Route 477(2009-04-28)

    ■ [ruby][scraping] Nokogiriに新機能が取り込まれたよ NokogiriにもWeb::Scraperのshellみたいのが欲しいなーと思っていて、そしたらSequel添付のsequelコマンドが irbを使ってそれっぽいことを簡単に実現してたので、真似してみた。bin/nokogiri んで、コミットしてpull request送ったら採用されました。これは嬉しい。 http://github.com/tenderlove/nokogiri/commit/3038d868ebb620b1bc9a197beefc328d2a4c063e 使い方は、 $ nokogiri http://www.ruby-lang.org/ (もしくはHTMlファイルのパス) などとすると、変数@docに指定URLのHTMLを表すNokogiriオブジェクトが入った状態でirbが起動する

    Route 477(2009-04-28)
    Watson
    Watson 2009/11/15
  • Route 477(2009-11-10)

    ■ [ruby] 大規模Railsサイトのための新しいHTTPサーバ、Unicorn githubの中の人が、ブログで「Unicorn使い始めて一ヶ月くらい経つけどいい感じだよ」と書いています。 適当に要点だけ拾ってみました。 Unicornって何よ? UnicornはRubyのためのHTTPサーバ。MongrelやThinのようなものだけど、全く違う設計と思想を持っている ありがちな構成 [mongrel] [mongrel] .. [nginx] -> [haproxy] -> [mongrel] [mongrel] .. [mongrel] [mongrel] .. 問題点: あるactionの処理に60秒以上かかったとき、Mongrelが当該スレッドをkillしようとして固まることがある メモリが一定量を超えたときMongrelを再起動するのが遅い。 デプロイ時に9個のmongre

    Route 477(2009-11-10)
  • Route 477(2009-10-13)

    ■ [rails] Rails3に「デフォルトでHTMLエスケープする機能」が入ったらしい ERBでは「<%= foo %>」がエスケープなし、「<%= h foo %>」がエスケープありですが、 Rails3のtrunkで、デフォルトでHTMLエスケープを行う機能が入ったそうです。 Riding Rails: What's New in Edge Rails 安全のために「<%= foo %>」の方をエスケープありにすべきだろうという議論は前からあって、 実装もErubis(オプションで可能)とか SafeERB*1 *2とか あったわけですけど、できればRails標準でそうなってた方が良いし、その変更を入れるなら確かにバージョン2→3の今しかない気がします。 エスケープを無効にするにはString#html_safe!を呼ぶか、プラグインで「<%= raw foo %>」のように書ける

    Route 477(2009-10-13)
    Watson
    Watson 2009/10/14
  • Route 477(2009-08-03)

    ■ [ruby] RubyForge, githubに続く第3のgem配布サイトが登場 http://gemcutter.org/ ____ /      \ /  _ノ  ヽ、_  \ / o゜((●)) ((●))゜o \  RubyForgeはなんか使いにくいお…… |     (__人__)    | \     ` ⌒´     / ____ /      \ /  _ノ  ヽ、_  \ /  o゜⌒   ⌒゜o  \  かといってgithubはどれが公式か分かりにくいお…… |     (__人__)    | \     ` ⌒´     / ____ /⌒  ⌒\ /( ●)  (●)\ /::::::⌒(__人__)⌒::::: \   だからgemcutter作ったお! |     |r┬-|     | \      `ー'´     / こうですかわかりません! g

    Route 477(2009-08-03)
    Watson
    Watson 2009/08/04
  • Route 477(2009-01-07)

    ■ [misc] プログラマの仕事場 耳鼻科で思いついたネタ。 「病院の診察室できょろきょろしてはいけないよ」 「どうして?」 「尖った道具を見つけたら、何をされるのだろうと無駄に不安になるからさ。」 「レストランで厨房を覗き込んではいけないよ」 「どうして?」 「手の洗い方が雑なのを見つけたら、それで大丈夫なのかと不安になるからさ。」 「ねえパパ、パパはプログラマだよね」 「そうだよ」 「パパの職場も見てはいけないの?」 ■ [ruby] Webアプリのテストに役立つらしい「Webrat」って何だ? WebratはRubyのライブラリで、 def test_sign_up visit "/" click_link "Sign up" fill_in "Email", :with => "good@example.com" select "Free account" click_butto

    Route 477(2009-01-07)
  • [ruby] RubyでHTMLとWebを操作するためのライブラリ、HpricotとWWW::Mechanize - Greenbear Diary (2007-02-05)

    ■ [ruby] RubyHTMLとWebを操作するためのライブラリ、HpricotとWWW::Mechanize 今日は、RubyでWebサイトを解析するときに強い味方となるライブラリ、HpricotとWWW::Mechanizeを紹介します。 どちらも非常に強力なので、覚えておいて損はないよ! 以下ではまずHpricotでHTMLを解析・編集する方法について解説します。 次に、「はてなダイアリーの自動更新」を例にWWW::Mechanizeの使い方を解説します。 Hpricot HpricotはHTMLを解析するためのライブラリです。 例えば「あるページのリンクだけを全部抜き出したい」と思ったとき、どうしますか?scrAPIを使う?でもscrAPIはやっぱり ちょっと使いたいだけなのにパーザ(Scrape)用のクラスを定義するのが面倒なんだよね! Hpricotなら、たったこれだけで

    [ruby] RubyでHTMLとWebを操作するためのライブラリ、HpricotとWWW::Mechanize - Greenbear Diary (2007-02-05)
    Watson
    Watson 2008/01/20
  • Route 477(2007-11-27)

    ■ [prog] PAC(Presentation-Abstraction-Control)パターン なんかMVCの進化系パターンとして、PACなるものがあるらしい。 PACフレームワーク - MVCの次に来るもの|Ouobpo Presentation-Abstraction-Control Presentation-abstraction-control - Wikipedia, the free encyclopedia MとVとCを持った小さいコンポーネントがたくさんあり、それぞれがCを介してやりとりする…みたいなイメージか。 2番目のサイトでは、使用例として「新しいGUIコンポーネントを開発するとき」が挙げられている。 ボタンやパネルなどいろいろなコンポーネントがあり、それぞれのCを通してイベントをやりとりすると。 ■ [ruby] LiveConsole Debu.gs 実行中

    Route 477(2007-11-27)