タグ

ブックマーク / moro.hatenadiary.org (19)

  • 株式会社永和システムマネジメントを退職します - moroの日記

    日2015年7月31日をもって、9 年間勤めました株式会社永和システムマネジメントを退職します。 在職中は多くの方々に助けられ、Rails を中心としたたくさんの仕事をしながら育てていただきました。個別のご挨拶ができなくて大変申し訳ありませんが、当にありがとうございました。これからもどうぞよろしくお願いします。 今後ですが、すぐ他社で働くことが決まっておりまして、8 月 3 日から出社予定です。 以下、思い出話なので「このひと誰?」という人はスルーしてください。 永和ではほぼずっと RubyRails仕事をしてきており、次の職場でもやはり Ruby / Rails に関わる仕事をする予定です。 この私のキャリアのきっかけとなったのは、もう 10 年も前になる(!!) 2005 年にはじまった Rails 勉強会@東京でした。当時は Rails が"来そう" という噂はありつつ

    株式会社永和システムマネジメントを退職します - moroの日記
    nobyuki
    nobyuki 2015/07/31
  • SQLアンチパターン -- 苦い経験を思い出させる良書 - moroの日記

    いただきました。ありがとうございます。 書は、データベース設計や、そのDBをアプリケーションから利用する際によく見られるアンチパターンを、簡潔かついきいきとまとめた書籍です。もちろん、単なる「べからず集」ではありません。そのアンチパターンの背景である現実の問題の説明と、アンチパターンを回避した解法もしっかり紹介されています。さらに、それでもアンチパターンを採用する場合のメリットデメリットもしっかり提示されています。 特に気に入ったところとして、2013年の書籍(原著は2010年)にふさわしく、ORMの存在をしっかり意識した内容になっている点が印象的でした。たとえば、全テーブルにサロゲートキーを貼る(IDリクワイアド: とりあえずID)のアンチパターンも、避けるべきではあるが、ORMの規約であればしたがってよいと紹介するなど、 全体として現場寄り、実践的なノウハウの紹介になっています。

    SQLアンチパターン -- 苦い経験を思い出させる良書 - moroの日記
    nobyuki
    nobyuki 2013/02/05
  • Rails3レシピブックの目次を入手しました - moroの日記

    先日こちらに書いたRails3レシピブックですが、おかげさまで先ほど校了したという連絡をいただきました。 目次を入手したので、こちらに貼っておきます。そのうち、しかるべきところに貼られると思いますが、速報ということで。 それと、bit.lyで http://amzn.to/rails3recipebook というURLを作ったので、みなさんがどこかで紹介してくださるときはお使いくださいませ。では、引き続きよろしくお願いします。 第1章 Railsの基 [001] Railsをインストールする [002] Railsアプリケーションを作成する [003] Railsアプリケーションのファイル構造を理解する [004] DB接続を設定する [005] モデル・ビュー・コントローラを自動生成する [006] Railsの規約とは [007] Railsの宣言的記法とは [008] DBのマイグ

    Rails3レシピブックの目次を入手しました - moroの日記
    nobyuki
    nobyuki 2011/07/07
  • ダミーWebサーバを作るライブラリ、wwをリリースしました - moroの日記

    近頃はWebAPIを使ったアプリケーションを作ることが増えていると思いますが、自動化テストからのWebAPIへのアクセスはどうやってますか? 私は、自分でstubしたりFakeWeb(レシピ先輩に教わった!!)を使ったりしてたんですが、イマイチしっくりこない部分がありました。で、Sinatraなぞで作ってたんですが、それをgemにまとめましたので、よろしければご利用ください。 http://github.com/moro/ww http://gemcutter.org/gems/ww 概要 ww(Double Web)はいわゆるDouble(mock, stub, spyなど)の機能を備えたダミーWebサーバを簡単に作るためのフレームワーク(笑)です。現状では、以下のようなことが出来ます。 他のAPIサーバを使う場合などに、簡単にダミーサーバを作る そのダミーサーバは自動化テストないから起

    ダミーWebサーバを作るライブラリ、wwをリリースしました - moroの日記
  • 現実のプロジェクトでのCucumberの始め方 - moroの日記

    セッションが終わったあと、Ask the speakerに来てくださった方((お名前を聞いておけばよかった!!)と少しお話しました。Cukeに興味が湧いたので使い始めてみたい、というとても嬉しいことをおっしゃってくださいました。 そこで話した、「すでに始まっているプロジェクトでのCuke導入法」を簡単にご紹介します。今回の私の話や、その他いろんなコトで興味を持った方の参考になれば嬉しく思います。 新規でも途中でも、プロジェクトに導入するときのポイントは、「ムリをしない」「一歩ずつ」ですが、特に開発が始まったあとから入れる場合は、簡単なところからやっていくとよいでしょう。具体的には、 1. (ログインなどもいらない)GET系の画面(index or show) まずは、アプリケーションにCukeを組み込んで、一週回すことに集中します。script/generate cucumberをしたら、

    現実のプロジェクトでのCucumberの始め方 - moroの日記
  • デブサミ2010で『実践Cucumber』の講演をしました - moroの日記

    来てくださった方が、ありがとうございました。資料を公開しましたので、よろしければご覧ください。 Cucumber In PracticeView more presentations from Kyosuke MOROHASHI. 緊張その他の反省点も多々あるのですが、多くの方がいらしてくださって、話し手としてもとても嬉しかったです。 Twitterなどでいただいた反応を見ると、「Cucumberは会話を作るフレームワーク、つまりお客様と会話するための言語を作るフレームワークだ」という一番伝えたかったポイントが伝わったようで、安心しています。 私自身が、 同梱のWebratの便利さに惹かれてCukeを使い始め、 日語で書けることの可読性の高さに驚嘆し*1、 それを経て「会話のために語彙を育てる(イマココ)」 という考えに至ったので、そのあたりをお伝えしたいと思っていました。 感想やご質問

    デブサミ2010で『実践Cucumber』の講演をしました - moroの日記
  • OSC2009 Tokyo/FallでCukeとRSpecの紹介をしました - moroの日記

    休んでいるうちにずいぶん時間が経ってしまいましたが、10/31のOSCにてお時間をいただき、Railsの昨今のテスト事情について紹介させていただきました。普段から申しているようにCucumberとRSpecをぐいっと推しています。 Rails testing environment, 2009 fallView more documents from Kyosuke MOROHASHI.あとはRSpec方面で、subjectやitsの使い方について、使いながら考えているようなことを書いています。 前にオブラブ方面でCuctomMatcherの話をしたときに、簡単なCustomMatcherを量産するのはだるいんじゃない?という懸念があったんですが、その一つの解としてits()はありかなー、と。使い分けはこんな風になると思います。 CustomMatcher作る 検証内容が複雑になるとき エ

    OSC2009 Tokyo/FallでCukeとRSpecの紹介をしました - moroの日記
  • フック、そんなのもあるのか!! # CukeやRSpecの前後処理フック - moroの日記

    Akabane.rbとかやってみたい今日この頃です。土曜の9:00AMからまるます屋とかで。まぁ私自身はだいぶ先まで土日のマイルは枯渇してるんですけど。 それはそうと、RSpecの全Example(it)やCucumberのすべてのシナリオで前後処理をしたくなることはありませんか? ありますよね。 たとえばconfgatronというgemがあって、設定をまとめる依り代になってくれるんですが、これがSingleton(≒グローバル変数)なので各テストの前後にちゃんとリセットしたい場合とか。 ドキュメントをあたってみたらちゃんと用意されていたのでメモです。 RSpec Spec::Runner.configure(&block)のブロック中でbefore()とかafter()を書きます。Railsの人だとspec/spec_helper.rbあたりに書いてくださいな。 Spec::Runner

    フック、そんなのもあるのか!! # CukeやRSpecの前後処理フック - moroの日記
  • rake specの実行時間を短くするための簡単なお仕事です ※ただし、(何か)に限る - moroの日記

    TDDで開発している人の目下の悩みはSlow test問題、すなわちテストの実行時間がかかりすぎて辛い、という問題です。 が、ふと思うところがあって、次のようなタスクを定義していたら、なんということでしょう、劇的に早くなったではありませんか。 namespace :spec do spec_prereq = Array(File.exist?(File.join(RAILS_ROOT, 'config', 'database.yml')) ? "db:test:prepare" : :noop) desc "faster version of rake spec, but why?" task :faster => spec_prereq do %w[spec:models spec:controllers spec:views spec:helpers spec:lib].each do

    rake specの実行時間を短くするための簡単なお仕事です ※ただし、(何か)に限る - moroの日記
  • Cucumberと表について(1) - moroの日記

    いま参加しているプロジェクトで、ひさしぶりにCukeをゴリゴリと書いています。その際、チームメンバーから「表の使い方を教えて欲しい」という要望がありましたので、勉強会用にまとめます。 「表」とは? まずはここをみてください。 http://wiki.github.com/aslakhellesoy/cucumber/multiline-step-arguments CukeではAAで表が書けます。こんな感じのフィーチャを記述します。 # language: ja フィーチャ: 表のデモ TopHatenar陥落した私としては 表の機能を解説して いっぱいブクマされたい シナリオ: 表を、テーブルとして使う 前提 以下の表をテーブルにする: | title | author | | きゅうりかわいい| もろはし | | cool cuke! | morohashi | ならば "2"件のレコ

    Cucumberと表について(1) - moroの日記
  • 非ActiveRecord::Baseなクラスからvalidationを使ってみました - moroの日記

    Railsの便利機能の中でもかなり注目度の高いActiveRecord::Base#validates_*によるバリデーションですが、これをDBに保存する場面以外でもつかえないか、というのが今回のトピックです。 ユーザからの入力をDBではなく通常のファイルや帳票に落としたり、単に画面に表示させたり、他のWebサービスに送りつけたりする場面で、ARのvalidationが使えると便利だろうなぁ、と。 DBが必須になる*1validates_associatedとvalidates_uniqness_of以外についてはうまく動かせましたのでメモを。 実際のブツはこちらからどうぞ。 2006/05/24 23:00追記 id:babieさんからのご指摘をうけ、アーカイブ内のソースのtypoを修正しました。 あまりにしょーもないtypoなので、なかなか恥ずかしいです。 まずは動作を サンプルクラス

    非ActiveRecord::Baseなクラスからvalidationを使ってみました - moroの日記
  • named_scopeについてくわしく - moroの日記

    先日の金曜日に、社内でnamed_scopeの勉強会をやりました。 RubyKaigiで松田さんがしゃべった話がたいそう面白かったので、実際にnamed_scopeの実装を見てみよう、というテーマです。 | View | Upload your own 調べて改めて思ったんですが、これはまたよくできてますね。 method_missingを活用しまくっているという意味ではいつもの「イヤな予感」がするんですが、使い方がキレイで脱帽です。このあたりの「味わい」はスライド後半のコールシーケンスをご覧ください。複雑なことをやっているんですが、一度わかるとものすごく腑に落ちる感じが、何ともうまいですよね。うん。 今回取り上げたのはリリース版(AR2.1)のnamed_scopeですが、現時点でもいろんな機能が追加されてますのでまた先々も楽しみです。Railsレシピブックも改版する機会があったら(今回

  • moroの日記 - Railsでテストを書く勘所

    昨日はOSCに行ってきました。セミナーやブースはほとんど行かず、例によってRubyの会のあたりでだらだらしてたわけですが。 思いがけず師匠の師匠、id:t-wadaさんにもお会いできてびっくり。 で、そこでRailsとTDD(BDD)の話なんかしたので、一週間で思ったことをつらつらと。たぶん不正確というか、理解の足りないところもいろいろあるので、そのへんのツッコミをいただけると感謝です。 書いてたら長くなったのでagenda モデルのテストでは、とにかくロジックを書いたらテストを書く*1。def..endブロック(wを書いたら必ずテストもあるはず。 RailsのMVCコンポーネントの中では一番テストし易いので、そういう意味でもモデルを厚くすると幸せになりやすい。 コントローラのテストでは、基的にリクエストを受けてから表示対象のオブジェクトを導出するまでをテストしたい。 ビューのテストでは

    moroの日記 - Railsでテストを書く勘所
  • Webratがスゴい(続:Cucumberがアツい) - moroの日記

    Cucumberを使って、Railsアプリのテストを高い抽象度で書き進めていくために欠かせないのがWebratというライブラリです。前回のCucumber全体像の紹介に引き続き、こちらWebratを紹介します。今回も長いです。 2008-01-27修正 id:amacouさんから指摘を受けまして(と、たぶんsatokoさんも以前おっしゃってた)webrat_steps.rbの生成先パスを修正。 語: ${RAILS_ROOT}/step_definitions 正: ${RAILS_ROOT}/features/step_definitions ありがとうございます。 今回のまとめ Webratすごい 画面遷移を「リンクをクリックする」「ボタンをクリックする」と書ける リンクのアンカーテキストではまだ日語が使えず。さきほどパッチ送ったので早晩書けるようになるはず。 フォームの入力項目もラ

    Webratがスゴい(続:Cucumberがアツい) - moroの日記
  • Railsテスティング環境2009新春 @仙台Ruby会議01 - moroの日記

    仙台Ruby会議01で、Cucumberを用いた今流行のRailsテスティング環境について話しました。 2009-01-25追記 どうもSlidesareで公開したスライドがうまく表示されませんので、いったん埋め込みは削除しました。 スライドのダウンロードはできるようですが、とりあえずDropboxでも落とせるようにしておきます。 http://dl.getdropbox.com/u/108726/rails-testing-env-early-2009.pdf スライドに興味のある方は、お手数ですが、こちらのPDFをご覧ください。もうちょっと他の人のマシンなんかでも試してみます。 追記ここまで ここから元エントリ 今回はustでの見辛さを考慮して、話す前にSlideshareにあげてたでござる。いかがでしたでしょうか? IRCでオチの誤訳ふいた。書いてないことを読み取って感極まった勢いで

    Railsテスティング環境2009新春 @仙台Ruby会議01 - moroの日記
  • ネストしたリソースの扱いの話とか - moroの日記

    Rails勉強会@東京の月刊Merbで瀧内さんがサンプルを示しながらMerbの使い方を説明してくれました。 で、そのときにブログのようなものを実例に使っていまして、そのCRUDの設計についてプチ議論になっています。 まとめ なんかコードを書いてみたりしたらえらい長くなったので、私の考えを簡単に要約すると とりあえずこの前提に興味があるならDHHのプレゼンを見るといいと思います map.resource使うといいよ ビューの事情なんだからAjaxとテンプレート差し替えで何とかするのがいいかと それを簡単にするプラギンが欲しい という。あと読み返して思ったんですが、ネストしたリソースの扱いについての議論に対して、そのリソースはネストしていない、という主張が来てるのか。それはすれ違うなー、と思いました。 ここから意見いろいろ データ構造としてはよくあるブログを想起していただければいいんですが、P

    ネストしたリソースの扱いの話とか - moroの日記
  • Rails.vimのチートシート - moroの日記

    rails.vimといえば、イントロダクションがこんな感じで始まる素敵なプラグインなわけですが、 TextMate may be the latest craze for developing Ruby on Rails applications, but Vim is forever. ということでPartial ExtractionとAbbrevitationがとても良いです。vimを使ってるRails開発者には必携のプラグインですね。 ただ、すごく便利に感じつつも運指がなかなか覚えられなかったので作ってみました。よろしければ御利用ください。 http://homepage3.nifty.com/moro/rails_vim_cheatsheet.pdf

    Rails.vimのチートシート - moroの日記
  • Ruby 1.9.1でRails 2.3.0を(無理矢理)動かすモンキーパッチを書きました - moroの日記

    RubyKaigi2009の公式サイトをデジタル化すべく無理矢理なパッチを書きました。モンキー。gemにしておきますね。 http://github.com/moro/ruby19_monkey/tree/master Ruby1.9のほうにmoro-ruby19_monkeyをインストールして、config/environment.rbのconfig.gemとかあるところに下記を追加してください。 config.gem "moro-ruby19_monkey", :lib => "ruby19_monkey" RubyKaigiの私のフォークを何とか動かすことのみを念頭に置いたので、いろいろ不十分かもしれません。とりあえずWEBrickとMongrel(瀧内バージョン)でrubykaigiが動くのは確認しました。 追々、家へもっとキレイなパッチを書きます。 追記 あーそうだ、Activ

    Ruby 1.9.1でRails 2.3.0を(無理矢理)動かすモンキーパッチを書きました - moroの日記
  • moroの日記

    もうすっかり普段書くテキストが Markdown ばかりになってしまったので、この機にはてなブログに移行します。 こちらに、入社エントリを書きました。 http://moro.hatenablog.com/entries/2015/08/03 「この機に」といいながら実は3年前にドメインスクワッティングだけしていたのをさっき思い出したのですが。締まらない。。。 とはいえ、今後ともよろしくお願いします!! 日2015年7月31日をもって、9 年間勤めました株式会社永和システムマネジメントを退職します。 在職中は多くの方々に助けられ、Rails を中心としたたくさんの仕事をしながら育てていただきました。個別のご挨拶ができなくて大変申し訳ありませんが、当にありがとうございました。これからもどうぞよろしくお願いします。 今後ですが、すぐ他社で働くことが決まっておりまして、8 月 3 日から出社

    moroの日記
    nobyuki
    nobyuki 2008/05/10
  • 1