タグ

@rubyに関するyamaedaのブックマーク (168)

  • 2ちゃんねるBOTの作り方 実装編2 - GIOの日記

    2ちゃんねるBOTの作り方 準備編 - GIOの日記 2ちゃんねるBOTの作り方 設計編 - GIOの日記 2ちゃんねるBOTの作り方 実装編1 - GIOの日記 同じファイルをダウンロードしないようにしよう この機能は実装方法に悩む 1.DATを前回読み込んだ分だけシークさせて、残りから画像を探す 2.ダウンロードした画像URLをDBにいれとく 3.前回ダウンロードした枚数回はダウンロードしない 2は無いとして、1がベストだと思うが、一番最初に思いついた3を実装します。 Appクラスを変更。yaml/storeでDAT番号をキーに枚数を永続化 class App def execute(board) root_dir = File.dirname(__FILE__) image_dir = "#{root_dir}/images" # db = YAML::Store.new("#{ro

    2ちゃんねるBOTの作り方 実装編2 - GIOの日記
  • Groovin' High:map reduceで感じる未来 - livedoor Blog(ブログ)

    「しらなーい」って人に、何人か会ったので、ちょっと解説しながら話をすすめます。 いつも大量のデータを処理しているGoogleが、「バックエンドでこんなことやって効果を上げてます。」という論文を2004年に発表した。 そこに書かれているのは、分散処理のためのデザインパターン「MapReduce」。 大量データをいくつかの単位に分割して、キーと値に分割する処理(Map)と、それを集計する処理(Reduce)に分ける事で、処理単位同士の関連性を希薄化し、その結果分散並列処理を可能にする。というもの。 このデザインパターンを実装したオープンソース製品が、世界中にうじゃうじゃあるんだけど、一番有名なのが、Javaで実装された「Hadoop」。 Javaで実装されてるから、Javaで利用すればいいんだけど、こいつにはstreamingという機能も搭載されていて、他の言語でもMapReduceを実装でき

  • Rails 2.3のengine機能を調べてみた - moroの日記

    どんなものかしら、と思って調べてみました。実はenginesとか(Merbのsliceとか)懐疑派だったんですが、最近になっていくつか良さそうなユースケースが思いついたんで、うまくやれないかな、と。 これまで懐疑派だった償い?として、rails-enginesチームの公式ブログの記事を意訳してみました。 http://rails-engines.org/news/2009/02/02/engines-in-rails-2-3/ 後半は疲れてきたので、特に訳が粗くなっていますが、何かあればコメントやIRCなどでツッコミください。 Engines in Rails 2.3 Some support for ‘engine’ plugins has been merged into the Rails core codebase in Rails 2.3. In this guide, I’ll

    Rails 2.3のengine機能を調べてみた - moroの日記
  • O'Reilly Village / オラの村 - 『プログラミング言語Ruby』トークイベントの動画公開

    イベントレポート Posted by oreilly : 2009-02-24 10:02 先日よりお知らせしております『プログラミング言語Ruby』トークイベントの模様を録画した動画を、ニコニコ動画にて公開いたしました。 イベントにおいでいただいた方も、おいでになれなかった方も、イベントの模様を動画でお楽しみください。 2月5日大阪会場 【ニコニコ動画】まつもとゆきひろ『プログラミング言語Ruby』を大いに語る@大阪 1/3 【ニコニコ動画】まつもとゆきひろ『プログラミング言語Ruby』を大いに語る@大阪 2/3 【ニコニコ動画】まつもとゆきひろ『プログラミング言語Ruby』を大いに語る@大阪 3/3 2月12日東京会場 【ニコニコ動画】まつもとゆきひろ『プログラミング言語Ruby』を大いに語る@東京 1/3 【ニコニコ動画】まつもとゆきひろ『プログラミング言語Ruby』を大いに語る@

  • Close to the EDGE Rails 2.2.2のI18n機能による日本語化がイケてない6つの理由

    Rails 2.2から導入されたI18nモジュールだが、さすがにバージョン0.0.1だけあって、実際に日語でアプリを作ってみると細かいところでちょっとずつイケてなかったりするところが目につく。 以下に、僕が今までに気になったところを挙げてみよう。 1. ARのerror_messages_forでカラム名とメッセージの間に半角スペースが入る active_record-2.2.2/lib/active_record/validations.rb 208行目より抜粋 1 full_messages << attr_name + ' ' + message 半角スペースハードコード!! このおかげで、例えば、「名前」カラムの必須チェックのメッセージが 「名前 を入力してください。」 というように表示されてしまう。半角スペースがめちゃめちゃ気になりますよね。 そこで、こんなチケットをあげて超い

  • Ruby/XMLを読む - 俺の基地

    XMLをパースしてオブジェクト化する require "rexml/document" hoge = <<AAA <aaa> <bbb> <ccc>12345</ccc> <ddd>67890</ddd> </bbb> </aaa> AAA #Stringのxmlからオブジェクト化 xmldoc = REXML::Document.new(hoge) ▲ ▼

  • Redmine運用例 - プログラマの思索

    Redmineの運用例をリンクしておく。 一つは、Ruby1.9の開発。 もう一つは、SKIP(RailsSNS)。 【SKIP】 SKIP ... 情報共有ソーシャルウェア SKIP - 概要 - SKIP - Redmine SKIP - ロードマップ - SKIP - Redmine SKIP - 変更記録 - Redmine SKIP - サマリ - Redmine SKIP - 経過時間 - レポート - SKIP - Redmine Redmineで最も重要な画面は、サマリの画面だ。 そこからバージョン項目の右にある虫眼鏡をクリックすると、ステータスごとのチケット集計数が表示される。 SKIP - サマリ(バージョン単位) - Redmine 面白いと思うのは「実装完了」というステータスがあることだ。 他のチケットの状態遷移の履歴を見ると、下記のフローが正常フローのように見え

    Redmine運用例 - プログラマの思索
  • Ruby 1.9 の新機能もうひとめぐり (前編) - まめめも

    ref: Ruby Freak Lounge 第1回 Ruby1.9の新機能ひとめぐり(前編):YARV,Fiber,配列処理の強化 の補足など。 YARV (Yet Another Ruby VM) による高速化 いきなり編とあまり関係ないんだけど、高速化のまめ知識をひとつ。 YARV では while や if のようなプリミティブの構文が最適化されています (というか、Ruby の中で数少なく最適化の余地があったところ) 。そのため、1.9 では C メソッドやブロックを呼び出すより while を使ったほうが速いです。 # 1.8 で 13 秒、1.9 で 2.4 秒 n = 0 while n < 50000000 n += 1 end # 1.8 で 6.5 秒、1.9 で 5.0 秒 50000000.times {|n| } # 1.8 で 4.3 秒、1.9 で 4.8

    Ruby 1.9 の新機能もうひとめぐり (前編) - まめめも
  • PythonRecipe

    このページは、Rubyレシピブック (詳細) をPythonで書こうというたくらみです。内容は当たり前のことばかりですが、たまにしかコードを書かない人間は、こうしたことがわからなくてイライラしてしまいます。10行くらいのプログラムならさっと見てさっとかけるようにするのが目標です。 2008年1月21日19:00 ロボットによる荒らし対策を施しました。 レシピブック作成にご協力いただける方がいらっしゃいましたら、最初にユーザー登録をお願いします。 レシピブックを修正する際は、一度ログインをしてください。ログインすると右肩の部分に編集の項目が現れます。 記述方法は、structuredText もしくはreStructuredText でお願いできればと思います。 WEB上の情報 Python クイックリファレンス日語訳 pythonライブラリリファレンス pythonチュートリアル Per

  • Ruby on Rails: ファイルアップロード機能を作る ver.2 - ネギ+シオ

    はじめに 「Ruby on Rails: ファイルアップロード機能を作る」の書き直し。変更点は以下の通り。 rails2.2 を使う。 ファイルをデータベースに保存せずにフォルダに入れることにした。 ファイルサイズの上限設定など、validation をわりとまじめにすることにした。 保存に関する作業をモデルに記述することにした。 正直、file_column とか paperclip とか使った方がいいと思うけど、まあ自分で書いたほうが何かと勉強になるので。 環境 Ruby version 1.8.6 (universal-darwin9.0) RubyGems version 1.3.1 Rails version 2.2.2 Active Record version 2.2.2 Action Pack version 2.2.2 Active Resource version 2.

  • Rubyでシンプルなページャ

    あるページにアクセスして,ある処理をして,そしたら次のページに遷移して,また同じ処理をして… ってのはよくある処理です.ボクも過去に何度かそういった処理をするスクリプトを書いた覚えがあります.特に,Nokogiri 登場以後は,がしがしと XPath を扱えるようになったのでスクレイピングがとても楽しくて,その手のスクリプトを書く機会が増えました. そこで,シンプルなページャを作ってみました.対象となる Web ページの URL と,そのページ中に「次ページへのリンク」の XPath を与えます.each に与えるブロックが,各ページへの処理になります. サンプルでは,http://june29.jp/ にアクセスして,各エントリのタイトルとリンクを表示させています.2008年11月より古いエントリが現れたら,ページングを止めています. コンソール出力はこんな感じです. ---------

    Rubyでシンプルなページャ
  • 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のオプション設定いろいろ - ザリガニが見ていた...。
  • irbとscript/consoleの超便利なTips - このブログは証明できない。

    これは便利だと思います。 no title Wirble: colors irbでシンタックスハイライト。 Wirbleをインストールします。 % sudo gem install wirble ~/.irbrcに下のコードを書きます。 require 'rubygems' require 'wirble' Wirble.init Wirble.colorize 出力がハイライトされます。ハッシュや配列は見やすいかも。 Wirble: history irbは、コマンドの履歴が残ります。[↑]や[↓]、[control] + [p]や[control] + [n]で履歴を見ることができます。しかし、いったんirbを終了すると、履歴がクリアされてしまいます。 Wirbleをインストールしておくと、履歴がクリアされません。再度irbを起動すると、前回の履歴を使うことができます。 Wirble:

    irbとscript/consoleの超便利なTips - このブログは証明できない。
  • Rubyのblock、Proc、lambdaを理解する - このブログは証明できない。

    新年おめでとうございます。2009年の最初のネタはプログラミングのネタにすることにしました。 Rubyについてのステキなエントリーがあったので、紹介します。 no title 私は翻訳能力がないばかりか、リーディング能力も貧相です。ぜひ、原文を読んでみてください。 はじめに Rubyblock、Proc、lambdaはパワフルですが、解りにくい。Rubyはクロージャを使う方法が4つあって、それぞれチョットずつ違います。ここでは、そのへんを解説したいと思います。 Block もっとも簡単で、かつRubyっぽいと言えば、Blockですね。 array = [1, 2, 3, 4] array.collect! do |n| n ** 2 end puts array.inspect # => [1, 4, 9, 16] 何が起こっているか? まず、block付きでArrayの"collect

  • Re:Ruby初心者の2冊目はなに?

    Ruby初心者の2冊目はなに? Rubyの「最初の二冊目」は何? に答えてみる。 - どんなジレンマ id:hrkt0115311さんに名前を出してもらったことだし、簡単に紹介しておこうと思う。crossreviewに書いてないも多いしね。と言うかしょっぱなからそうなんだけど。 Rubyレシピブック第二版 Rubyレシピブック第二版 id:hrkt0115311さんもすすめてたけど、たのしいRubyを読んだのならこれもオススメ。大体初心者が思うあれがしたい、これがしたいはここを参照すれば載ってると思う。ただ、なにができるかは書いてあるけど、それらで何かを作る方法は書いてないので作りたいものが曖昧だとこれ1冊だとどうしたらいいかわからなくなるかも。 Rubyで作る奇妙なプログラミング言語 Rubyで作る奇妙なプログラミング言語 そこでオススメするのがこの「Rubyで作る奇妙なプログラミング

  • Rails を使用しない ActiveRecord + Migrate - chaotic valkyrie

    メモ代わり。 ActiveRecord require 'rubygems' require 'active_record' ActiveRecord::Base.establish_connection( :adapter => 'postgresql', :host => 'localhost', :username => 'foo', :database => 'baz', :encoding => 'utf8' ) class User < ActiveRecord::Base end User.find(:all).each do |u| p u end Migrate Rakefile ほんとは設定ファイルわけたほうがいいんだけどね require 'rubygems' require 'active_record' require 'logger' ActiveRecord:

    Rails を使用しない ActiveRecord + Migrate - chaotic valkyrie
  • Amazon.co.jp: 恋するプログラム: Rubyでつくる人工無脳: 秋山智俊: 本

    Amazon.co.jp: 恋するプログラム: Rubyでつくる人工無脳: 秋山智俊: 本
  • Amazon.co.jp: Rubyで作る奇妙なプログラミング言語 ~Esoteric Language~: 原悠: 本

    Amazon.co.jp: Rubyで作る奇妙なプログラミング言語 ~Esoteric Language~: 原悠: 本
  • 角谷HTML化計画(2009-01-06) - 2008年のkakutani.comのアサマシランキング

    ■1 2008年のkakutani.comのアサマシランキング 2008年のふりかえりっぽいネタも入れつつ、恒例行事を。 2007年のkakutani.comのアサマシランキングと見比べるとあまり代わり映えしないが、2007年には1冊もランキングに入ってなかった翔泳社の書籍が2冊ランクインしている。でもこれは「翔泳社の書籍」というよりは「青木靖さんによる訳書」だな。野口さん去りし後、kakutani.com的には今後はどうかな。 いっぽうオーム社の書籍は2007年の4冊から1冊減って、2008年は3冊になってしまった。がんばれ、日オーム社の会。では1位から順番に: 1位 『実装パターン』 2008/12/08の紹介(しかも大したこと書いてない)にもかかわらず1位になった。お前らはKentBが好きすぐる。 実は私は翻訳はまだ読み終えてないのだけれど(いま8章)、これまでのところ翻訳はわりと

  • 2009年の今、Railsを始める初心者にどの本を薦めたら良いか?問題 - OneRingToFind by 榊祐介

    なかなか難しい。というのは1年前だったら「RailsによるアジャイルWebアプリケーション開発 第2版」(通称アジャイル)でファイナルアンサーだったんだけどRails2系が出たことで状況が変わった。アジャイルRailsの記述バージョンが1.2系と古い。Railsはバージョンアップで結構振る舞いが変わるでしょう?全然互換性無くて「ぎゃーっ!!」なものはないが、初心者の場合自分が間違っているのかバージョンの違いなのかでハマりやすい。と思う。 また実案件で言うと1.2系を最新版のRailsで動かすには色々手を入れる必要があるので、できるだけRails2系で始めた方がいいと思う。 2009.01.09追記 たくさんブックマークしていただいて恐縮です。私の狭い観測範囲だけでは申し訳ないのでRails勉強会@東京のIRC、#rails-tokyoで相談してみました。その結果をまとめると以下のセッ

    2009年の今、Railsを始める初心者にどの本を薦めたら良いか?問題 - OneRingToFind by 榊祐介