タグ

2010年10月13日のブックマーク (13件)

  • 赤単ゴブリンがサバイバルに対して出来ること。

    ku-kai27
    ku-kai27 2010/10/13
    Goblin vs Survival
  • netswitch! | 高度すぎるコードジェネレータ WLang

    みなさんはコードジェネレータを使った事があるでしょうか。私はあります。 SQLHTML, JavaScript, はてはPHPまで、Rubyでコードジェネレータを使う機会は増すばかりです。 さて、Rubyでコードジェネレーションと言えばERbを使うことが多いですが、それで充分なのでしょうか。 他の選択肢はどうでしょうか。 今日は、wlangというコードジェネレータを紹介します。 template engine? 次のサンプルコードを見てください。 とてもシンプルなHTMLテンプレートエンジンのように見えます。 require 'wlang' puts WLang::instantiate(<<EOS, {:name => "O'Reilly & Animals", :animals => %w(Koala Rhino Giraffe)}, "wlang/xhtml") <h1>${nam

  • 見えないプログラム - かえる三十郎

    近頃は @fusuian としてもっぱら Twitter しておりますです。 先日 @etoさんと @_tad_ さんとで Tsukuba.rb を立ち上げ、今日は第2回の集まりでした。 筑波大春日キャンパスのラーニングコモンズをお借りして、大学2年で初めてさわったプログラム言語がRubyという、Rubyネイティブの若い人たちとお話ししていたところ。 「どこも間違っていないのにエラーが出て3日間悩んだが、原因は全角スペースだった」という話題が。 しかし @eto さんはRubyでは全角スペースが識別子として使えることを指摘。 いろいろ試して、コマンドラインで-Kオプションを指定すると確かに使える。 ならば、どこまで全角スペースを使ってプログラム可能か? やってみました。 コピペしてghost.rbにセーブしてください。 コマンドラインから「ruby -Ku ghost.rb」で動きます。(

    見えないプログラム - かえる三十郎
  • クラスが持つ3つの役割 - 西尾泰和のはてなダイアリー

    某所のチャットで話題になって、流れ去りそうだったのでもったいないから転載しておいた。事後承諾で。 MIYAMOTO Daisuke: 型の継承と実装の継承を区別する方法がないんだよな。 西尾泰和(nishio.hirokazu): 型を継承させずに実装を継承させたい→それ移譲で ってことかな? MIYAMOTO Daisuke: そそ。そもそも、クラスに「型としての役割」と「実装としての役割」という複数の責務があることに、俺は長い間気づかなかった。これに気づかないと、型継承と実装継承が頭の中で整理できない。 西尾泰和(nishio.hirokazu): 僕が最近気づいたことも加えると、クラスには「ユーザ定義型」「インスタンスを作成する道具」「実装の再利用の単位」という3つの役割がある。 MIYAMOTO Daisuke: あぁ、インスタンスの生成器ね。 西尾泰和(nishio.hiroka

    クラスが持つ3つの役割 - 西尾泰和のはてなダイアリー
    ku-kai27
    ku-kai27 2010/10/13
    クラスの役割。
  • Fabricationを使ってみた - のどをRubyでいっぱいにして

    ※2011/11/08 コメント欄で指摘を頂いた箇所を加筆修正しました。また、割と古い記事ですので最新の情報は Fabrication を参照することをお奨めします。 これを作ってるとき、machinistとmachinist_mongoを使っていたんですが、試しに前々から気になっていたFabricationで書き換えてみました。README書いてあることをいくつか実際にやってみたのでメモしておきます。割と使いやすかったです。 何に使えるの 下記をサポートしてるそうですので、Mongoid使えます。やった! Plain old Ruby objects ActiveRecord objects Mongoid Documents 使ったもの Fabrication…日のメイン Faker…嘘データをどんどこ作ってくれるやつ QuickStart & 使い方 Gemfile Rails/M

    Fabricationを使ってみた - のどをRubyでいっぱいにして
  • query_trace: SQLが発行されたファイルと行番号を調べる - 昼メシ物語

    Railsで、ActiveRecordがSQLのログを吐いてくれるんですが、これだとどのクエリがどこから呼ばれたのか分からなくて、デバッグがしにくい。 Schedule Load (0.023687) SELECT * FROM schedules WHERE (schedules.id = 3) LIMIT 1 Resource Load (0.001076) SELECT * FROM resources WHERE (resources.id = 328) LIMIT 1 Schedule Load (0.011488) SELECT * FROM schedules WHERE (schedules.id = 3) LIMIT 1 Resource Load (0.022471) SELECT * FROM resources WHERE (resources.id = 328)

    query_trace: SQLが発行されたファイルと行番号を調べる - 昼メシ物語
  • RubyのGeneratorが便利な例を考えた - hitode909の日記

    ライブラリのインターフェイスが変なときにGeneratorを使ってましにできることがある. MeCabのRubyバインディングのインターフェイスがださくて,使いにくかった. 分かち書きして,名詞だけ表示するようなとき,普通に書くとこうなる. c = MeCab::Tagger.new("-O wakati") node = c.parseToNode(text) while node do puts node.surface if node.feature =~ /^名詞/ node = node.next end whileとか,node = node.nextとかが,Rubyっぽくない. Generatorに入れて1個ずつ返すようにすると,Enumlatorを使えるようになって,だいぶましになる. c = MeCab::Tagger.new("-O wakati") node = c.

    RubyのGeneratorが便利な例を考えた - hitode909の日記
  • これからはじめるRuby on Rails

    はじめに Rubyと出会ったころ、その簡潔さに感動した著者は、「ここまで自然言語に近い形でプログラムが書けるのであれば、インターネットとPCの違いすら理解しないでも、少しはプログラミングができるようになるかもしれない」と、家庭での普及に挑戦したことがあります。 その試みは、渡した入門書を「はじめてのRUBAI」と読まれた時点で頓挫したわけですが、その経験から「Rubyの文法に従ってはいるが、何やら他言語の匂いを感じるコード」のことを、Rubyの潜在力を生かしきれていないという意味で「RUBAIコード」と呼ぶことにしました。 そして、社内のさまざまな分野のプログラマにRuby開発を指導してみて分かったのは、"RUBAIコード"には、実装レベルの間違いと、設計レベルの間違いがあるということです。 実装レベルの間違いとは、処理を他言語の習慣に従って記述することで引き起こされます。Javaプログ

  • Rails ERDはめちゃめちゃ簡単でRails3使い必携 - 思っているよりもずっとずっと人生は短い。

    Rails3.0でモデルのER図を簡単に出力する方法 (http://sawada0903.blogspot.com/2010/10/rails30er.html) ここで紹介されていたRails ERDを試したら、一発でER図が生成されました。これはすごい。 Rails ERD 手順を3行でまとめると、↓こんな感じです。 graphvizをインストール Gemfileのdevelopment環境の設定に「gem "rails-erd"」を追加 「rake erd」を実行 ほんとにこれだけで、普通に見やすいER図ができるんですから使わない手はないと思います。おすすめ。

    Rails ERDはめちゃめちゃ簡単でRails3使い必携 - 思っているよりもずっとずっと人生は短い。
  • YAMLにrubyのコードを書く方法 - rochefort's blog

    1時間でツイッターサービスを作ろう! | KRAY Inc 試してみました。 github公開ソースを見てみると twitter_auth.yaml oauth_consumer_key: <%= ENV['OAUTH_CONSUMER_KEY'] %> oauth_consumer_secret: <%= ENV['OAUTH_CONSUMER_SECRET'] %> となっていました。 おお、これは使えそうだなと思って、 同じようにして、config/initializers 下に gitignore 対象の環境変数読み込みファイル 作ってやってみましたが、うまくいきません。 #config/initializers/env.rb ENV['OAUTH_CONSUMER_KEY'] = "hogehoge" ENV['OAUTH_CONSUMER_SECRET'] = "fugafua

    YAMLにrubyのコードを書く方法 - rochefort's blog
    ku-kai27
    ku-kai27 2010/10/13
    YAML
  • devise+confirmableでsign up完了時にメールを飛ばしたりする方法 - 思っているよりもずっとずっと人生は短い。

    メモ。 deviseはRails3で便利な認証ライブラリですが、viewは $rails generate devise:views を実行すればapp/views/devise以下に展開されるので自由に変更できるものの、modelやcontrollerのロジックはライブラリ内にあるのであまりいじれません。というのが前提。 で、ユーザに登録時には登録ありがとうメールを飛ばしたりとか、何かしらメソッドを実行したいことがあります。deviseでも、modelのクラスそのものはアプリ側で定義できるので、標準ではたとえばafter_createに実行したいメソッドを指定しておけば、modelの生成時点=登録時点で実行されるようです。便利。 ところが、deviseにはconfirmableというオプションをつけられます。これは、いったん確認メールを送り、それに書かれているURLを踏むと登録が完了する

    devise+confirmableでsign up完了時にメールを飛ばしたりする方法 - 思っているよりもずっとずっと人生は短い。
  • lokka-ja - Google Groups

    komagataです。 先週ぐらいのコミットでpadrino-helpersが入った代わりにr18nが無くなったので多言語化のやり方がちょっと変わって、周辺プラグイン・テーマにも影響があると思うので

    ku-kai27
    ku-kai27 2010/10/13
    Groupe - Japanese
  • 目を二重にしただけで合コンでお持ち帰られ率100%w:ハムスター速報 - ライブドアブログ

    目を二重にしただけで合コンでお持ち帰られ率100%w カテゴリ☆☆☆ 1:以下、名無しにかわりましてVIPがお送りします:2010/07/09(金) 01:30:51.77 ID:CRnie5bE0 一気にモテ始めたんだけどw 高校まで処女で彼氏いない歴だったんだけど 大学で二重にプチして一気に声かけられるようになったw 今年入ってからの合コンでは 100%持ち帰りされちゃうんだけどw 3:以下、名無しにかわりましてVIPがお送りします:2010/07/09(金) 01:31:38.55 ID:uHYDxB4S0 おめでとう 7:以下、名無しにかわりましてVIPがお送りします:2010/07/09(金) 01:32:36.66 ID:+eWUQ3ju0 五重にしたら芸能界入れるかもよ 9:以下、名無しにかわりましてVIPがお送りします:2010/07/09(金) 01:33:31.61

    ku-kai27
    ku-kai27 2010/10/13
    肉体的にも、精神的にも吹き上がるくじら女子。