タグ

ブックマーク / zariganitosh.hatenablog.jp (12)

  • マルコフ連鎖で日本語をもっともらしく要約する - ザリガニが見ていた...。

    そもそも、マルコフ連鎖とは何なのか?全く聞いたこともなかった。そして、文章を要約するのはとっても高度なことだと思っていて、自分のレベルではその方法を、今まで思い付きもしなかった。 しかし、以下のようなシンプルなRubyコードでそれが出来てしまうと知った時、目から鱗である...。一体、何がどうなっているのだ?コードを追いながら、マルコフ連鎖を利用するという発想の素晴らしさを知った! 作業環境 MacBook OSX 10.5.7 ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0] mecab utf8環境でインストール済み マルコフ連鎖に出逢う rssを流し読みしていると、以下の日記に目が止まった。(素晴らしい情報に感謝です!) MeCabを使ってマルコフ連鎖 一体何が出来るコードなのか、日記を読んだだけではピンと来なかっ

    マルコフ連鎖で日本語をもっともらしく要約する - ザリガニが見ていた...。
  • タイムゾーンはどのように設定しておこうか... - ザリガニが見ていた...。

    最近、MacBookOSX 10.5 Leopardの使い方ばかり気になって調べていたが、久々にRails関連のこと。既に、最新バージョンは2.2だそうだが、自分の頭はまだ2.1なのであった。(すっかりObjectiveC&AppleScript脳になってしまった頭を、 RubyRails脳に戻すのにちょっと苦労してしまった...。)時間の取り扱いは最も基的なことなのだが、いろいろ悩むことが多い。 関連する以前の日記:よりシンプルに日付と時刻の表示書式を整えるには... - ザリガニが見ていた...。 実験環境 MacBook OSX 10.5.6 Rails 2.1.0 2008-08-15時点のrestful_authentication http://d.hatena.ne.jp/zariganitosh/20080815 2008-09-03時点のaasm http://d.

    タイムゾーンはどのように設定しておこうか... - ザリガニが見ていた...。
    emosei
    emosei 2008/12/24
    UTC
  • restful_authenticationでユーザー別のTodoリストを管理する - ザリガニが見ていた...。

    前回からの続き。現状のTodoでは、ログインしたユーザーは共通のTodoを利用する仕様になってしまっている。これをユーザー別のTodoに変更したい。restful_authenticationは、そのユーザーが認証された状態かどうかをチェックして、そのユーザーが誰であるかをcurrent_userで確認できるようにしてくれている。あとはTodoをユーザー別に管理できるように対応すれば良さそう。 ユーザー別の管理 まず思いついたのが、モデルにhas_manyとbelongs_toを設定すること。 # ---------- app/models/user.rb ---------- require 'digest/sha1' class User < ActiveRecord::Base has_many :todos ...(中略)... # ---------- app/models/to

    restful_authenticationでユーザー別のTodoリストを管理する - ザリガニが見ていた...。
  • aasmとは何か?acts_as_state_machineとの違いは? - ザリガニが見ていた...。

    restful_authenticationを--statefulオプションで利用すると、2つのstate_machineが用意されていることに気付く。一つは、以前から利用しているRailsのプラグインacts_as_state_machine。で、もう一つがgemでインストールするaasm。aasmってacts_as_state_machineの頭文字だよな?と思いながら、デフォルトではacts_as_state_machineの設定になっているし、acts_as_...を身近に感じるので、aasmの方は今まで無視していた。 ところが、インストールしたacts_as_state_machineの更新日時を見てみると2006-11-13と相当古い...。1年半以上更新されていないことになる。(でも、特に不便は感じないのだけど。)一方、aasmのページを見てみると、今も活発に更新されている。

    aasmとは何か?acts_as_state_machineとの違いは? - ザリガニが見ていた...。
  • railsforumのrestful_authenticationは素晴らしい!それを見てRESTfulの理解も深まる - ザリガニが見ていた...。

    最近、restful_authenticationで試行錯誤していて感じたこと。restful_authenticationはユーザー認証に関する必要最小限の機能を提供してくれるが、実際に運用できるレベルに仕上げるには、要点を押さえた的確な修正が必要になる。ユーザー認証のscaffold的な位置付けだろうと。 生成されるソースコードはとても簡潔にまとめられていて、読み易い。しかし、いざ自分好みのログインに修正しようとすると、実にいろいろな手段があり、どのような仕組みにするか当に迷ってしまう。 例えば、以前の日記で試したパスワード忘れに対応する方法も、今振り返ってみれば最悪の例だ...。アクティベーションとパスワード忘れの処理が混同しているし、修正の手順もセキュリティ的に中途半端。実装の仕方もせっかくのrestful_authenticationのRESTfulなルールを無視している。やは

    railsforumのrestful_authenticationは素晴らしい!それを見てRESTfulの理解も深まる - ザリガニが見ていた...。
  • 地図で最初に表示する場所はどこにすべきか? - ザリガニが見ていた...。

    前回からの続き。地図を表示する時、最初のアクセスで表示する地域をどこにするかという悩みがある。Google Maps APIのサンプルコードでは、アメリカのスタンフォード大学とかパロアルト周辺になっていた。おそらくGoogleの始まりがスタンフォード大学の学生寮だった、という経緯からだろう。 しかし、日人の自分としては馴染みもなく、出来れば日のどこかの地域が表示された方が地理感覚もあるので、その後の操作も楽になる。そう思って、最初は日の道路の起点としてよく使われる「日橋」を中心にしていたのだが、それも自分中心の考え方だと気付いた。関東地方に住んでいる人なら許せる範囲かもしれないが、北海道や九州に住んでいる人から見れば、最初に表示される地域としては違和感を感じるかもしれない。 出来ることなら、今その人がいる場所周辺が表示されるようにしたい。特に生活に密着した情報を表示することを目的と

    地図で最初に表示する場所はどこにすべきか? - ザリガニが見ていた...。
  • Rails2.1のrender :partialとform_forで可能な限り重複を排除していくと... - ザリガニが見ていた...。

    Rails2.0の頃から出来たようなのだが、つい最近まで自分は知らなかった...ということがたくさんある。ずいぶん損をしていた気がする。断片的な知識が増えてきたので、サンプルコードを作りながらの自分用のメモ。サンプルコードは前回に引き続きQandAプロジェクト。 リスト表示する時のforループは「render :partial=>...」で置き換えることができる 「app/views/answers/index.html.erb」のforループ内を、partialファイル「_answer.html.erb」として抜き出しておいた。 <%# ---------- app/views/answers/_answer.html.erb ---------- %> <tr> <td><%=h answer.name %></td> <td><%=h answer.body %></td> <td>

    Rails2.1のrender :partialとform_forで可能な限り重複を排除していくと... - ザリガニが見ていた...。
    emosei
    emosei 2008/07/23
  • テスト結果を常に分かり易く - ザリガニが見ていた...。

    require 'autotest/redgreen'を有効にしてautotestを実行しておけば、テスト結果の下に緑や赤のバー「====」が表示されてそれなりに見易い環境なのだが、たまに特定のテストをrake testコマンドで実行した時はガックリする...。(黒1色でテスト結果が目立たないので。)そんな時はredgreenをインストールしておけば幸せになる。autotest/redgreenと同じ名前で紛らわしいが、以下のようにインストールして利用してみた。 インストール $ sudo gem install redgreen 利用方法 test/test_helper.rbに「require 'redgreen'」を追記した。(オレンジ色の部分) # test/test_helper.rb ENV["RAILS_ENV"] = "test" require File.expand_p

    テスト結果を常に分かり易く - ザリガニが見ていた...。
  • autotestのGrowl通知をカスタマイズする - ザリガニが見ていた...。

    以下の設定ファイルでGrowlを有効にしたautotestは、テスト結果をGrowlメッセージとして教えてくれるのでとても快適なのだが、いくつか気になる点も出てきた。 # autotest設定ファイル: ~/.autotest require 'autotest/growl' 現状では、failuresやerrorsが発生した時は毎回Growlメッセージが通知されるが、テストが成功を繰り返す場合は何も通知されない。 成功している状態は当然の状況なのだから、この仕様は無駄が無くて良いのだが、テストに不慣れな現状では、毎回テスト結果を通知して欲しい気分だ。 通知されるGrowlメッセージは「Test Failed」か「Test Passed」なので、failuresとerrorsの件数はターミナルのテスト結果を見るまで確認できない。 Growlメッセージにも「1 tests, 1 assert

    autotestのGrowl通知をカスタマイズする - ザリガニが見ていた...。
  • 2.0のmap.resourcesのオプション設定いろいろ - ザリガニが見ていた...。

    今までおろそかにしていた「ルート設定」ではあるが、Rails2.0からは避けて通ることができない*1と今更ながら思い直し、いろいろ試してみた。以下はその実験結果。 基 追加オプションなしの基ルート設定map.resources :slipsによって、以下のルート規則が生成される。 ルート規則は上にあるものが優先される。 .:formatが付属する偶数No.の行は、http://XXXX.XXX/slips.xml等の拡張子付きのリクエストを、respond_toブロックで適切に処理するために存在する。 # ルート設定: config/routes.rb ActionController::Routing::Routes.draw do |map| map.resources :slips end No. 名前付きルート名 メソッド URLパス書式 処理されるコントローラー、アクション

    2.0のmap.resourcesのオプション設定いろいろ - ザリガニが見ていた...。
    emosei
    emosei 2008/02/04
    Rails2.0系 読むべし
  • textmate_footnotesとTextMateを組み合わせた使い心地に感動する - ザリガニが見ていた...。

    またまた面白いソフトウェア(Railsプラグイン)に出会った。textmate_footnotesはRailsで開発中のページ下部に、開発に便利なリンクを追加してくれるらしい。こういうのを見ると、まずはインストールして実際に体感してみたくなる。早速インストール。(ただしTextMateがMacOSX専用のエディタのため、MacOSX環境でないと体感できない...。と思う。) インストール Textmate Footnotes Plugin in Ruby on Rails Railsのプラグインの紹介ページを見る。Rails2.0.2環境で利用したいので、以下のようにedgeバージョンをインストールした。 script/plugin install http://macromates.com/svn/Bundles/trunk/Bundles/Ruby%20on%20Rails.tmbun

    textmate_footnotesとTextMateを組み合わせた使い心地に感動する - ザリガニが見ていた...。
    emosei
    emosei 2008/01/31
    オンライン編集機能って感じ
  • ユーザー環境を保存する。 - ザリガニが見ていた...。

    調子良くCSVサーバーを運用していると、ユーザーからこんな要望が入りそう。「1ページの表示件数をもっと増やして欲しい、ページ切り替えが面倒だから100件くらい表示して。」と。開発者としても、現在の表示件数は開発段階でテストするのに都合のいい件数にしただけである。特に断る理由もなかったので、「わかりました。」と表示件数を100件に変更したとする。すると今度は別のユーザーから、すぐまた連絡が入る。「どうして表示件数を変更したのか、件数が多すぎて表示に時間がかかる」と。こんなとき、開発者としては一体どうすれば良いのだろう? そうなのです。1ページの表示件数のような、ユーザーの好みや利用環境によってベストな設定値が変化する場合は、それぞれのユーザー固有の設定を、ユーザーごとに保持できる仕組みが必要なのです。 ユーザー環境保存の仕組み それでは、どのような仕組みでユーザー固有の設定を保存すべきか?M

    ユーザー環境を保存する。 - ザリガニが見ていた...。
    emosei
    emosei 2007/10/28
  • 1