Ruby
おばんです。暑さ寒さも彼岸までと申しますように過ごしやすい季節となりましたが、皆様にはますますご全裸のこととお喜び申し上げます。遂にpure Rubyの形態素解析エンジンがリリースされたという情報を得て、全裸は急げということでさっそく遊ばせていただ…
行ってきましたTDDBC仙台。4時半起きで新幹線が立席というしょっぱなからの試練にかなりやられてしまっていましたが。で、課題が時間内には終わらなかったので最期までやらなきゃね。せっかくなので最後に和田さんがJavaScriptでやってた状況駆動ってのを試…
例のごとく既出だけど今回はattribute of subjectについて。rspec-core(2.5.1)/features/subject/attribute_of_subject.feature参考。「it { subject.first.size.should eq 2 }」とかするのやだよね。そんなときはitsを使えばステキになるよって話。 基本的…
シリーズ(?)の途中ですが軽く脱線。 route_toマッチャを使うと出来るみたい。名前付きじゃなくてもroute_toマッチャ使うんだけどね。ルーティング可能かどうかだけならbe_routableマッチャでよさげ。spec:routingタスクでルーティングだけテストできる。 % …
すでに前回のすごいぞRSpec(shared example group編) - ぷろぐらまねがで登場してるけどあらためてletを調べるよ。rspec-core(2.5.1)/features/helper_methods/let.featureを参考に。 let 要するにメモ化するわけで、同一サンプル内だと同じオブジェクトを使…
ちょっと前に話題になったRSpecのスライドがステキだったよね。でもRSpecはまだまだ底知れない気がするので自分でもいろいろと調べてみようと思った次第。まずはrspec-core(2.5.1)/features/example_groups/shared_example_group.featureを参考にshared exam…
もちろんテストが先だが、最終的にこんなコードにしたいとする。 class Task def initialize(&block) @block = block end def run @block.call end end で、これまでならこんなテストを書いていたと思う。 describe Task do describe '#run' do before do @s…
HerokuのWebSocketは制限があるみたいで残念。しかし、まだPublic betaではありますが、しばらく前からHerokuでPusherアドオンが使えるようになっているので、そろそろ試してみようかと思った次第です。 とりあえずあれだ、チャット的な。 http://tsukdany.h…
http://regional.rubykaigi.org/sapporo03※書き方マズイとことかあったら指摘してください ※柴田さんのが見つからなかったので知ってる方は教えてください 「高速な乗除算の実現と性能評価」 村田 賢太(@mrkn) - 株式会社ジェネティックラボ && Ruby 札幌 ht…
全裸でRubyですね。わかります - ぷろぐらまねがの続き。 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src …
もはや何もいうまい。全裸で形態素解析をするスクリプト - すぎゃーんメモ ゆーすけべー日記 全裸の肩に乗れ!pyZenraモジュールを作ってみた - Keep on moving 全裸のアレの PHP 版を作った - MemoあとでGemとかTermtterプラグインとか作ろうかしら。
こちらを参考にRubyでもやってみた。IS01でPython動かんしね。 良いもの。悪いもの。: Pythonを使ってAndroid端末を5分でリモートカメラにする方法 ついでに同じくこちらを参考にQRコードも貼っておこう。 良いもの。悪いもの。: Android端末で青空プログラ…
window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…
ローカルでは動いてんのにHerokuにPushしたら "invalid byte sequence in US-ASCII"って出た。環境変数LANGが設定されないからっぽいのでconfig.ruにでも書いとけばいんでない? Encoding.default_external = 'utf-8' require 'app' run Sinatra::Application
ついでに適当なバリデーションも入れてみる diff --git a/app/models/user.rb b/app/models/user.rb index 7d1ac58..04a015d 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -5,7 +5,9 @@ class User < ActiveRecord::Base :recoverable, :re…
devise のソースを眺めてたら View の ジェネレータで haml も作れそうだったのでやってみた。 ruby 1.9.2-preview3 rails 3.0.0.beta4 devise 1.1.rc1 haml 3.0.11 確かにあるね。 % rails g devise_views --help Usage: rails generate devise_views [SCOP…
Ubuntu 10.04 Ruby 1.8.7-p249 libnotifyとgemをインストール % sudo aptitude install libnotify-bin % sudo gem i autotest-growl 設定はこんだけで # .autotest require 'autotest/growl' あとは適当に # lib/hoge.rb class Hoge def bar 'Hello' end end…
Ubuntu 10.04 Ruby 1.9.1-p378 Cassandra 0.6.1 まずはそれらしいGemをインストール。 http://github.com/fauna/cassandra % gem i cassandra % gem li *** LOCAL GEMS *** cassandra (0.8.2) json (1.4.3) rake (0.8.7) rdoc (2.5.8) rubygems-update (1.3.…
require 'rubygems' require 'dm-core' require 'base64' DataMapper.setup(:default, 'mysql://省略') class Image include DataMapper::Resource property :id, Serial property :bin, Text end File.open('image.gif', 'w') do |file| file.puts Base64.d…
helpers do def partial(template, *args) options = args.last.is_a?(Hash) ? args.pop : {} options.merge!(:layout => false) if collection = options.delete(:collection) then collection.inject([]) do |buffer, member| buffer << haml(template, op…
ますは適当にscaffold。 ruby script/generate scaffold topic title:string app/views/layout/topics.html.haml !!! %html %head %meta{'http-equiv' => 'content-type', :content => 'text/html;charset=UTF-8'} %title= 'Topics:' + controller.action_na…
% sudo gem1.8 install rails haml % rails haml_sample % haml --rails haml_sample こんだけ。あとは app/views に haml をつくっていくだけ〜。http://haml-lang.com/docs/yardoc/HAML_REFERENCE.md.html
何かと話題なので。 Sinatraとりあえず公式サイトのトップのをそのままいってみる。 #hi.rb require 'rubygems' require 'sinatra' get '/hi' do "Hello World!" end rubygemsをインストールして実行。 % sudo gem1.8 i sinatra % ruby hi.rb == Sinatra/0.9…
とりあえず適当なテーブルを作っておく。ここはCoCでいっとく。 --test.sqlite3 create table items(id int, key text, value text); insert into items values(1,'test','てすと'); まんつこいだげ確認せばいいびょん。 #spec/item_spec.rb require 'item' …