Railscasts見たのでメモしておく。 やっぱり毎回見とかないとだめだなぁ。

Railsのdeleteとdestroyの違いをおさらいする

deleteとdestroyの違いをちょこちょこ忘れるのでメモ。 delete ActiveRecordオブジェクトを介さずに削除する。(直接SQLを発行するイメージ) オブジェクト同士に依存関係がない場合はこっちを使った方がActiveRecordの インスタンスを生成しない分早い。 de…

インストール方法

http://www.scala-lang.org/downloads/ へアクセスしてダウンロード 解凍してPATHを通す 以下のように出力されることを確認する。 bash-3.2$ scala -version Scala code runner version 2.7.7.final -- Copyright 2002-2009, LAMP/EPFL bash-3.2$

スタンドアローンで動かす方法

開発用にスタンドアローンで稼働させたかったのでメモ。 hadoopをサイトから落としてくる あとはconf/hadoop-env.shのJAVA_HOMEを修正すればOK bin/hadoop jar hadoop-*-examples.war wordcount input output

bin_pathから利用するためには

gem

railsとかインストールするとそのままrailsコマンドが利用出来るようになっていますが、 gemspecファイルに以下の項目を記述しないとcan't findエラーが発生します。 Gem::Specification.new do |s| # これでbin/hogeが利用出来るようになる s.bindir = 'bin…

rubyで標準出力をテストする方法

最近毎日のように読んでいるwycatsさんが便利なメソッドを利用していたのでメモしておく。 # -*- coding:utf-8 -*- require "rubygems" require "spec" # this method is written by wycats def capture(stream) begin stream = stream.to_s eval "$#{stream…

thorのuninstall方法

thorの(un)installにはファイル名を指定する必要がある。 で、installしたときのファイル名を知りたいときは、ユーザホームディレクトリの下に.thorというのができており、その下のthor.ymlを見ればよい。 bash-3.2$ cat ~/.thor/thor.yml sample.thor: :fil…

Thorの起動の流れを追う

Thorはまってきました。これすごい手になじむというか。。。 基本はRuby 1.9.1 + Thor 0.13.4でなんでもできちゃいそうな錯覚すら。まずは、thorコマンドから。 Thor::Runner.startを呼んでるだけです。 #!/usr/bin/env ruby # -*- mode: ruby -*- require '…

rubyのデフォルトを1.9.1にした

rvm使ってますがとうとうデフォルトを1.9.1にしました。 やりかたは以下。 rvm 1.9.1 --default

Thorってなんなんだろう。

Rails3.0で利用されているThorだけど、まだあまり情報ってないようにおもう。 一番詳しいのは、多分リンク先の記事です。(2010/3/13時点) Thorってなんなの?yet another rakeなの?ただ、僕が前の記事であげたgeneratorの仕組みを解読するでは、 railsコマ…

generatorの仕組みを解読する

Rails3.0.0betaが出ていて仕事でFW作ることになったのでRailsのgeneratorの仕組みを参考にしたい。 環境 bash-3.2$ rvm use Now using ruby 1.9.1 p378 bash-3.2$ rails -v Rails 3.0.0.beta 流れを追うコマンド bash-3.2$ rails pochi -d mysql create crea…

OSのデフォルト文字コードを変更する

OSのデフォルト文字コードを変更する よく忘れるからメモ。 UTF-8にしたいときの例。(redhat linux) /etc/sysconfig/i18n を編集。 LANG="ja_JP.UTF-8" # 文字コードをここで編集 SYSFONT="latarcyrheb-sun16" HTMLのリンクを別タブで開きたい場合 リンクタ…

Rails3をインストールしてみる

Ruby 1.8.7 EM114-48-240-92:~ kuro$ sudo gem install rails --pre Password: ERROR: While executing gem ... (RuntimeError) Marshal.load reentered at marshal_load 要はRubyはもう1.9使えってことかなと理解。 Ruby 1.9.1 とりあえず必要なGemは以下の…

Net::HTTP

Net::HTTPでbodyにデータつめるときはset_form_data使ったほうがいいよ! OAuthの認証エラーで2日はまった原因がNet::HTTP.post(url, body, header)につめるデータが違っていたせいだった。set_form_dataの例 request = Net::HTTP::POST.new(path, headers)…

アプリケーションの処理フローを追ってみる

今回調査すること Requestがどのように受け渡されるか ActionControllerのバージョン: 2.3.5 ご参考 Railsノート - ActionController::Request の生成過程を Webサーバーまでさかのぼるこっちのが詳しく書かれています。いろいろ勉強になります。 最初の流れ…

Ruby

instance_evalが面白い こういうのはgithubにいれたらいいのか。。。 expectationsは書きやすい。 require "rubygems" require "expectations" class Project attr_accessor :room_id def initialize(room_id) @room_id = room_id end end Expectations do e…

Gitでタグをつける方法

簡単なんだけどいつも忘れるからメモ git tag version_name

実践Cucumber

id:moroさんのお話 Cukeのお話 memo みんな大好き!Ruby -> 大事 cucumberの未来の話は興味ある ruby * Agileはお客様に出来るだけ喜んでもらえること(名言だなー) ruby + Agileはいつも幸せになれるわけではない 画面を目視ってのが増えてる(Default test) …

gemを作成してみる

OAuthをラップしたgemを作成してみる 最近ライブラリをどんどんgemにしたくなる衝動にかられます。 Developer Summit 2010に参加してきた メモメモ。 Google的大規模分散処理 基本的にはHadoopと同じだった。(そりゃそうか) 基本を含めて簡単にまとめてお…

プレゼンテーションの対象について

プレゼンテーションって難しいと最近さらに感じるように。 社会人になると体験したかぎり以下の2つのパターンのプレゼンテーションを学ぶ必要があるとおもう。 ある聞きたい目的を明確にもってくる人たちに関するプレゼンテーション(セミナーとかはこの部…

覚えたTipsいろいろ

Railsでモジュールを組み込む際にbefore_filterを設定する RailsのOSSで独自の拡張を行いたいとき、できるだけ本体に触れないで拡張を行いたいときがあります。 そんなときはmoduleに設定してapplication_controller.rbでinclude "module"とかしてたのですが…

ioke_E_0_3_1をインストール

手順 githubからソースコードを取得 ソースコード解凍後、インストールディレクトリに移動 ant (Version 1.7.1) インストールできているか試す bash-3.2$ ./ioke --version Ioke E ikj 0.3.1 [2009-10-20 23:04 -- ???] bashrcの設定ファイルを再読み込み ba…

Rails-tokyo41.1にいってきた

Rails-tokyo41.1にいってきたのでまとめておく 今日はRails3の話を目的にいったのですが、id:t-wadaさんやid:moroさんなどと rspecを利用してTDDしようというセッションがあがって即決で参加。 予想通りいろいろ勉強になったのでまとめておく。 Rails-tokyo4…

iokeの基本的な文法

hello,world bash-3.2$ ioke -I iik> "hello, world" println hello, world > nil 四則演算 bash-3.2$ ioke -I iik> foo = 3 > 3 iik> foo += 5 > 8 iik> foo println 8 > nil iik> bar = 2 > 2 iik> bar = bar -1 > 1 iik> -=(bar, 1) > 0 iik> baz = 5 * 3…

emacsを間違って中断してしまったとき〜

Ctr + z でバックグラウンドにいってしまうemacs...fg ってうつと戻ってくることを今日しった。

gemspecからgemファイルを作成する

gem build ***.gemspec gem install --local ***なんかgettext触ってたら undefined method "require_gem"みたいなこといわれたので全てgemに変更したら通った。

Mongrelとrubyのみを使ってブラウザ上に文字列を表示する

Mongrel::HTTPServer.newの仕組み Mongrelを利用して文字列を返してみる。 普段はRailsと組み合わせるが今回は単体で。 例を参考に書いてみると以下のように利用できる。 require 'rubygems' require 'mongrel' class SampleHandler Mongrel::HttpHandler de…

merbのslice機能を使ってみる

merb-uiというgemを利用してmerb-sliceの機能を実装してみる まずはgemをインストール bash-3.2$ sudo gem install merb-ui Password: Successfully installed merb-ui-0.4.9 1 gem installed Installing ri documentation for merb-ui-0.4.9... Installing …

gitで共同開発する場合のマージ

gitでマージする gitで共同開発しているので、Aさんのgithubレポジトリからforkして自分のgithub環境に新しいレポジトリを作成します。そして自分のローカルレポジトリがある程度形になった時点で、Aさんにpull requestを送るようにしています。やりかたとし…

jrubyだとrake db:createができない

jrubyでrailsのアプリからjdbc_connectorを利用してDB接続を利用する(利用DB:MySQL) 環境は以下の環境を利用します。(jruby-1.1.4) bash-3.2$ jruby -S gem list --local LOCAL GEMS *** actionmailer (2.1.0) actionpack (2.1.0) activerecord (2.1.0) Acti…

すごい気になる言語

Iokeという言語がめっちゃ気になります。 ポイントはJVM上で動的言語として動作するということ。作者はJRubyのコミッタとしても有名なOla Bini。 さすがにRubyが好きなので文法もRubyっぽいしさらに「Ispec」というrspecのようなものまで用意されています。…

もう一度チャレンジ

bash-3.2$ git push git@github.com:pochi/skip-note.git Enter passphrase for key '/Users/kuro/.ssh/id_rsa': updating 'refs/heads/master' from e04b06210fed99267343b9ecacd546e52673b039 to 3d6f30b64364e9ad80dd5760ede7398e42462905 Generating pac…

keyの登録を再度やり直す

.ssh/id_rsa.pubのファイルの内容全てをgithubのaccountに登録する。 (さっきまでは鍵の部分っぽいとこのみ登録)

push!!!

bash-3.2$ git push git@github.com:pochi/skip-note.git Permission denied (publickey). fatal: The remote end hung up unexpectedly bash-3.2$ 残念…

githubに作成した鍵を登録します。

githubにログインしたあと、accountから先ほどの鍵を登録します。

まずはsshキーを作成します

bash-3.2$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/Users/kuro/.ssh/id_rsa): Created directory '/Users/kuro/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase agai…

gitでpushしてgithubにコミットする

gitで普通にコミットしたらgithubにコミットされるものやと思ってました。 みてみたらなんも変化ない…ということでgithubにコミットできるようチャレンジしてみます!

シナリオを記述してみます

#{RAILS_APP}/features/***.rbにシナリオを記述してみます。 シナリオ: 管理者権限を持っていないユーザは管理者メニューにアクセスできない 前提シナリオ ノートの作成者はノートへアクセスできる もし ノート"a_note"のページ"FrontPage"を表示している な…

前提

今回はアプリに関して管理者メニューを追加するためcucumberを利用したいと思います。 最初はログイン後の画面に"管理者メニュー"のリンクがあるかどうかチェックしたいと思います。

cucumberの使い方をメモしておきます

id:moro さん絶賛のcucumberを利用してみたいと思います。 詳しくはid:moroさんのブログを読んでいただきたいです。

mysqlのバックアップ and リカバリ

bash-3.2$ mysqldump -u root [DB名] > ./[dumpファイル名] 取得したdumpファイル名の先頭に use [データベース名]; を追加。 bash-3.2$ mysqldump -u root

getTextの使い方

あってる気がしないですけど一応メモ程度に…(gettextの使い方とか勉強しないと。) #{RAILS_ROOT}/po/app.po 及び #{RAILS_ROOT}/po/ja/app.poにmsgidとmsgstrを追加する #{RAILS_ROOT}/po/app.po #: app/views/shared/_common_body_header.html.haml msgid "…

newsingが落ちてるっぽいです…

いつ復活するんでしょうかねー (しばらくしたら復活してました)

年末だ!gitやろう。

ってことで今からgithub使ってgit学んでみたいです。 雨トークの誘惑に勝てる気がしないけど…

gem install mysqlでエラーが出る件

rails-2.2からgem install mysqlでいれないとだめだよっていうのを本格対応。 bash-3.2$ sudo gem install mysql -- --with-mysql-config Building native extensions. This could take a while... Successfully installed mysql-2.7 1 gem installed bash-3…

持ってきたskip-noteを動かしてみます。

bash-3.2$ cp config/database.yml.sample config/database.yml bash-3.2$ emacs config/database.yml development: adapter: mysql database: skip_note_development2 host: localhost username: root password: encoding: utf8 # Warning: The database de…

人のプロジェクトを自分のものにしちゃう!

githubでは人のプロジェクトをフォークできます。 今回はskip-noteという最近開発のお勉強をさせていただいているものを使用します。 まずはgithubのPublic Clone URLからローカルに落とす作業を行います。 bash-3.2$ git clone git://github.com/pochi/skip…

git基礎講座

git status 現在のリポジトリからどのファイルに変化が起きているか表示してくれます git add [ファイル名] 指定したファイルをコミット内容に追加します

まとめ

rakeタスクいっぱい よく利用できそうなのは頭に入れておくと効率のいい開発が実現できそうです

rakeタスク

db:abort_if_pending_migrations migrationを実行していないファイルがあれば教えてくれる db:charset そのdatabaseの文字コードを表示します db:collation databaseの照合順序を教えてくれます db:create database.ymlからdatabaseを作成してくれます db:cr…