タグ

ブックマーク / wota.jp (16)

  • RubyからScalaに乗り換えた15くらいの理由 - ヽ( ・∀・)ノくまくまー(2010-04-26)

    ● [Scala] RubyからScalaに乗り換えた15くらいの理由 [注意] この文章を読むと、既存のRubyコードをScalaでrewriteしたくなる、 Rubyコードで型チェックをやるのがになる、Ruby案件でやる気が出なくなる、 などの幻覚や異常行動が報告されています。 現在関わっているプロジェクトや家族のことを常に意識し、 気を強く持って冷静に読むとよいでしょう。 「Scalaプログラミング入門」を読みはじめて、いきなり大きく頷いてしまった。 "コーディング時間の半分をテスト作成に費やさなければならなかった"(p.3) "Railsによって得られた生産性の向上は、テスト作成の作業に失われてしまいました"(p.3) まさにここ数年私が抱いてた漠然としたストレスの正体が、的確に文章となっていたからだ。そしてほどなく、「あ、この機能がRubyに欲しかった!」という驚きと共に Sc

    sousk
    sousk 2010/04/29
  • ActiveRecord

    Introduction 第1章: for Ruby users (4) ・CRUD operations ・Assocations 第2章: for Rails users (15) ・With Scope ・Scoped Access 第3章: for Rails developers (17) ・Acts As View ・Finder Query CRUD : ActiveRecord Pattern require 'rubygems' require_gem 'activerecord' ActiveRecord::Base.eatablish_connection( :adapter=>"sqlite3", :db=>"db/users.db" ) class Member < ActiveRecord::Base # "members" e

    sousk
    sousk 2008/09/30
    AR, with_scope とか
  • ヽ( ・∀・)ノくまくまー(2006-03-07)

    ● [Rails][Rails1.1] Reloadable module 実行時にクラスを再読み込みさせるためのモジュールです。include したクラスはアクション実行時に自動的に初期化されます。下記のRailsクラスのサブクラス群は全て Reloadable 扱いになります。 ActiveRecord::Base ActiveRecord::Observer ActiveController::Base ActionMailer::Base ● メカニズム Dependencies.mechanism = :load である場合(大雑把に言うと development モード)に、dispatcher が該当クラス群を remove_class して、強制的に autoloading を発動させることで実現しています。(賢い!!)。 railties/lib/dispatche

    sousk
    sousk 2008/04/11
    Reloadable, require_dependency で reload カスタマイズ
  • 優しい Merb の育て方

    ● [Rails][Merb] Merb とは? Merb (Mongrel + Erb) は MVC ベースな Ruby の Web フレームワークである。簡単に言うと、軽量な ActionPack クローンである。Rails のテーマが「規約とDRY」ならば、Merbのテーマは「疑わしきものは入れない」であり、Rails の各機能を取り込みつつも、小さくて単純で簡単で軽量、そして高速であることを目指している。 特徴 コアはシンプルに (必要な機能はプラグインとして追加させる) thread safe cgi.rb を使っていない 高速な ERb エンジンである Erubis を標準装備 Rails に似ている (機能、ファイル配置) 大体3倍くらい速い (Rails Mongrel との比較) チートシート (Rails との比較) 基的に Rails である。app 以下のディレク

    sousk
    sousk 2008/01/08
  • ヽ( ・∀・)ノくまくまー(2007-06-05)

    ● 1. 一戸建てタイプ そのアプリ用に専用のマシンを準備できるケース。例えば、アクセス数が少ないβリリース時などは mongrel を直接80ポートで運用することもあるだろう。そして、負荷の増加、またはマルチコアを活かすという次の段階で、cluster 化した mongrel を扱う必要に迫られた場合、このタイプになる。この場合、フロントの仕事はバック(Rails)への割り振りだけだが、そのためにわざわざ Apache2 を持ち出すのは仰々しいと感じるかもしれない。そんな人にお奨めしたいのが Pound サーバだ。いきなり Apache から話が逸れてしまうが、このケースだとリアルでお奨めである。 Pound + mongrel Pound はリバースプロキシ用のWebサーバであり、特化しているだけあって、必要最低限かつ直感的で簡単な設定で済むため、敷居が低いのが魅力だ。それでいて、デジ

  • Rails勉強会@東京第24回(PofEAAの4つのORMパターンまとめ) - ヽ( ・∀・)ノくまくまー(2007-11-18)

    パターン名と実装名に同じ物が多くてややこしいので、P:パターン、I:実装とする。以下は(※1)、勉強会での話あるいは舞波の認識であるので実際と違っている可能もあり、それによって万が一あなたが被害をどーのーこーの(ry ActiveRecordパターン テーブルとクラスを1:1に対応させるパターン。勉強会参加者はAR(I)に当然馴染みがあるので省略。 DataMapperパターン AR(P)とDM(P)は凄く似ている。パターンとしての違いは、 ARのマッピングは1:1だが、DMは1:n (オブジェクトから見てテーブルをコンポジット可能) DMはスキーマ定義を持つ である。実装的には、AR(I)は機能2をマイグレーションとして持つため、マッピングが1:1であれば完全に同一だと言える。よって、以下のややこしい結論を得る。 AR(P)≠DM(P) であるが AR(I)≒DM(P) てことで、Dat

    sousk
    sousk 2007/11/26
    Sequel & AR 比較解説
  • ブラウザのローカルストレージ - ヽ( ・∀・)ノくまくまー(2007-04-16)

    ● 結論 ├→ Flash9 はもう標準だよ派 (Macromedia工作員) │  └→ storage.js (or Dojo) └→ 顧客を逃がしたくないよ派 ├→僕の想定する顧客はIEのみだよ派 (保守流) │  └→ UserData ├→ブラウザはIEだよ派 (ゲイツ原理主義) │  ├→ UserData │  └→ でも自分だけは開発にFirefox2を使うよ派 (ユダ) │     └→ rakuto式ストレージ ├→世の中はIEとFirefox2で95%だよ派 (希望的現実主義) │  └→rakuto式ストレージ └→その他 ├→ まだFirefox1のままだよ派 (メンド教) ├→ 俺マカーだよ派 (サファリパーカー) ├→ なんでみんなOpera使わないの派(ドンマイ!) └→ w3m だから JavaScript 動かないだよね!とか言ってw (舞美) └→で

  • acts_as_searchable

    ● [Rails] acts_as_searchable ずっと気になっていた namazu に代わりうる国産の新しい全文検索エンジン Hyper Estraier。その Rails プラグインが、樂水開発日記 http://dev.rakusui.jp/diary/?date=20060408 様にて紹介されていたので早速トライ。

  • ヽ( ・∀・)ノくまくまー(2006-02-24) - 複数のRails環境

    ● 複数のRails環境 えっと、複数のRails環境を用意する方法ですが、単に最新版の trunk を使うだけの場合は % rake freeze_edge とやるのだと思いますが、好みに応じて複数のバージョンを使い分けたかったり、trunk が手元にある場合にわざわざまた取得するのも冗長だったり、ということで、私は生々しく手作業でやっています。 ● Rails スクリプトの実行のメカニズム Rails スクリプトの実行のメカニズム的には、 % ruby script/XXX が実行されると、まずスクリプト(から呼ばれた config/boot.rb)内で、 "#{RAILS_ROOT}/vendor/rails" があるかどうかがチェックされます。存在すれば、その下の Rails パッケージ(activerecord, ...) が利用され、存在しなければ、システムにインストールされて

    sousk
    sousk 2006/08/10
    複数のRailsを複数のプロジェクト間で切り替えてつかうには
  • ヽ( ・∀・)ノくまくまー(2006-01-07) - ソースコードの色付け

    ● ソースコードの色付け どうせお前らは、日記やWebのコンテンツで、ソースコードを色付けしたいんだけど、以前ちょっと調べたときにはグッとくるものが見つからなくてそのままペンディング状態になっていて、自慢の記憶力の悪さが幸いして簡単に記憶から消えてしまって幸せな日々を送っていたのだけれど、「はてなの人の日記」 http://d.hatena.ne.jp/naoya/20051231 を見たせいでそのことを思い出しちゃって、さらにそこで見た実際に色付けされたコードがあまりにも綺麗で、脳裏に焼きついてしまって(※1)、どうにも羨ましくなった、というか何か負けた気がして悔しくなってきて、いやこれは自分が超えないといけない壁なんだ、神様が俺に与えた試練なんだ、と勝手にいつもの妄想がはじまるんだけど、かといってご褒美がないとヤル気の出ないゆとり教育の弊害のようなワガママなお前らだから、これで再調査し

    sousk
    sousk 2006/06/13
  • 運用サーバ速度比較

    ● [Rails] 運用サーバ速度比較 Pentium III(733MHz) Dual Ruby-1.8.4 (2005-12-24) Lighttpd-1.4.11 Mongrel-0.3.12.4 WEBrick-1.12 Apache2-2.0.55 LiteSpeed-2.1.16 Standard

  • ヽ( ・∀・)ノくまくまー(2006-05-14)#関連名による INNER JOIN が欲しい

    Member.find(:all, :joins=>"INNER JOIN groups ON groups.id = members.group_id INNER JOIN favorites ...") _, ,_ 从 ’w’) ∩ < ヤダヤダ、もう耐えられないのー!シンボル名でJOINしたいの〜! ⊂   ( ヽ∩ つ  ジタバタ 〃〃 class ActiveRecord::Base class << self private def add_joins!(sql, options, scope = :auto) scope = scope(:find) if :auto == scope join = (scope && scope[:joins]) || options[:joins] sql << " #{expand_join_query(join)} " if j

    sousk
    sousk 2006/05/26
    plugin, sql
  • http://wota.jp/ac/?date=20060518

  • http://wota.jp/ac/?date=20060523

    sousk
    sousk 2006/05/26
  • ヽ( ・∀・)ノくまくまー(2006-01-19) - $$ : selector magic!! (prototype.js)

    ● [Ajax] $$ : selector magic!! (prototype.js) prototype.js に新しい Selector クラスが追加されました。これを使うと、CSS形式の文字列でDOM要素の集合を指定することができます。(関数 "$$()" にもバインドされています)。 例 $$('div') → 全てのDIVタグ $$('pre.code') → クラス名が'code'である全てのPREタグ $$('table#content input') → IDが'content'のテーブル内にある全てのINPUTタグ $$('table#content tr.berryz td') → IDが'content'のテーブル内にあるクラス名が'berryz'である全TRタグの子要素のTDタグ チェックボックス制御の例http://rails.wota.jp/samples/

    sousk
    sousk 2006/01/20
    class ベースで DOM 操作
  • ヽ( ・∀・)ノくまくまー(2006-01-14)

    ● [Rails] IPE (In Place Editor) In Place Editor は表示された項目をクリックすることで、そのまま編集モードに移行してしまう Ajax の便利機能です。SoftwareDesign(2005-12) やsecondlife さんのページの TODO デモを見て衝撃を受けた人も多いでしょう。controls.js に含まれていますので、 new Ajax.InPlaceEditor( element, url, [options]); と直接 JavaScript を記述して利用することもできますが、Rails ではヘルパが用意されていますのでそちらを利用してみます。

    sousk
    sousk 2006/01/18
    InPlaceEditor 長所短所まとめ
  • 1