トップ 追記

誰も褒めてくれないから自画自賛する日記

nu-chon.org  「ぬ」あんてな  「ぬ」wiki  家計簿さな太郎  RSS
2000|01|02|03|04|05|06|07|08|09|10|11|12|
2001|01|02|03|04|05|06|07|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|06|07|
2012|01|
www.flickr.com
This is a Flickr badge showing public photos from nununununu. Make your own badge here.
Ruby Kaigi ツッコミ一覧
  1. mrkn (01-02)
  2. ぬ (01-02)
  3. あきよ (01-02)
  4. ぬ (04-09)
  5. さいとう (04-09)
Twitterやってます。
名前はkaznumです。
2012年
1月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31


2012-01-04 「家計簿さな太郎」ソースコード公開の日 [長年日記]

家計簿さな太郎のソースコードを公開しました

ついに家計簿さな太郎のソースコードを公開しました。

https://github.com/kaznum/sanataro

履歴を見てみると、2007年から開発を始めたっぽいです。ソースコードを公開しようとは思っていたものの、「もう少しソースコードを綺麗にしてから」などと考えていたところ、Railsのバージョンがバンバン上がり、完全に追いつけなくなり、というわけで、汚くても公開するしか術がなくなりました(笑)

特徴

いたって普通のWebの家計簿ソフトなので、どこかの家計簿サイトとは異なり、銀行口座のパスワード等は不要です。

動作環境

  • Ruby1.9.2以上
  • Rails 3.1
  • MySQL5

で動作するハズです。

デモ環境

http://k.nu-chon.orgで動作を確認できます。

ライセンス

MITライセンスです。

パッチ、アドバイス、要望、共同開発者募集!

pull requestや共同開発者は随時募集中です。

どうぞよろしくお願いします。

(追記)これから改善したいこと

たくさんあるのですが、できるだけ早く変えたいところは以下のとおりです。

  • test-unitからrspecに変更中だが、まだまだtest-unitが残っている。
  • gettext依存のため、localesを使うように変更したい。
  • prototype.js依存をjQuery依存に変更したい(RJSを使用している箇所が多いため、かなり大変)
  • プロシージャ的書き方をしている箇所が多い(特にentities_controller)。OOP的に書き換えたい。
  • validates_..._ofなど、Rails2までのold-fassionなコードが多数残っているので、今の書式に変えていきたい。

(追記2)すごく重要なこと

Rails界には古くから大場寧子 (nay3)さん作の「小槌」( http://www.kozuchi.net/ )という優れた家計簿Webアプリがあります。私と妻はこの小槌を愛用し、機能的にも非常に満足していました。ただ、小槌のソースコードが公開される以前、小槌のサーバが頻繁にアクセス不能になった時期があり、短気な僕は妻に「俺が作ってやる!」と宣言し、一念発起でこの「家計簿さな太郎」を作りました。当時は小槌のソースコードは非公開だったためコードのコピー等はしていませんが、動作については何かしらの影響を受けていると思います。大場さん、ようやく公開できました。ありがとうございます!


2012-01-01 [長年日記]

あけましておめでとうございます。

あけましておめでとうございます。今年もよろしくお願いします。

まず、去年の反省

去年の元旦にたくさん目標を書いたので、まずはふりかえりをしてみます。

仕事など

  • Haskell は全く手を付けずじまいで、今になって失望。
  • C言語(K&R)についても全く手を付けず、さらに失望。
  • C#は、業務の都合から手を付けざるを得ず、結構いろいろ覚え、比較的綺麗で「最近のC#らしい」書き方ができるようになったと思います。Ruby、Railsで得た知識(lambda式など)のお陰で、すんなり出来ました。まだまだですけど。こちらは及第点。
  • Railsの案件は前年から引き続き3月までは行なっていたものの、自分担当のプロジェクトでは新規ではありませんでした。ただ、社内のほかのプロジェクトでは使われていたので、社内的にしっかり認知された、という意味では及第点。
  • BDD化については、上に書いた3月までの案件ではModel, ControllerについてはCoverage(C0)は100%にしていましたが、別案件では実施されなかったのが残念。少しずつしっかり根付かせていきたいです。

コミュニティ活動

  • LOCALの活動はあまりできませんでした。特に子供が生まれてからは、妻と子供のケアに必要な時間が想像を遥に超えていました。考えが甘かったです。
  • 今年から始めたアジャイル札幌の活動では、非常に有意義な時間を過ごさせていただけましたが、同様の理由で、十分に協力できたわけではありませんでした。
  • RSpec Bookの勉強会に参加できたのは良かったです。優秀な方々と意見交換ができて、勉強になりました。
  • 発表等については数件行う機会がありました。ちょっと内容をもっと洗練させて、これからも続けていきたいです。

英語について

  • 通勤時間の延1時間程度、毎日Podcastからニュースをダウンロードしたものをリスニングしました。成果が上がっているか微妙ですが、続けることが重要かな、と思い。続けていこうと思います。
  • 闇雲に多くの種類を聞くのではなく、同じコンテンツを1週間続けるようにするようにすることで、前回聞けなかったものが聞けるようになったことも多々あったため、この方法も続けていきたいです。
  • 英文の暗記は、意図的に取り組むことが出来ませんでした。さすがに詰め込み過ぎかな、という気がするので、仕方がない、ということにします。
  • 技術書は基本的にすべて原書を読みました。200〜400ページ程度のものを10冊くらいは原書で読んだので、及第点です。もうさすがに技術書の原書に対する抵抗感はほとんどありません。もう少しスピードを上げて読めるようになりたいです。

日記について

  • 週一どころか月一も書けませんでした。単なる怠慢でした。

物理

  • ファインマン物理学は、積読本になっています。去年はダメでしたが、やはり定期的に読んでいきたいです。

懇親会について

  • 懇親会にはできるだけ参加するようにしていましたが、やはり子供が生まれてからは子育てを協力剃る必要があるため、限界がありました。

今年の目標

仕事など

  • やはりC(K&R)とHaskellをしっかり勉強して、言語に関する幅を広げます。
  • C#は業務が継続しているので、これからも綺麗に書けるように改善していきます。
  • 社内でのRuby on Railsに関する知識共有をしっかり行なっていきたいです。
  • まずはコードレビューをしっかりします。(知識共有)
  • BDDはしっかり進めていきたいです。テストコードが無いものがあるので、まずはTDD/BDDでなくてもテストを書くような流れを作ります。
  • 社内のプログラマが「綺麗なソースコードを書く」ことの重要性をもっと理解してもらえるよう取り組みます。
  • これまでWebアプリケーションばかりやってきたので、少し幅を広げたいです。

コミュニティ活動

  • できる限り協力していきます。(あくまでも家族優先です)
  • アジャイル札幌、LOCALの活動を中心にしていくつもりです。
  • 発表する機会があれば、積極的に発表します。

英語

  • 基本的に今行なっているもの(通勤時間のリスニング、技術書は原書を読む)を継続します。
  • 負担にならないように、欲張らないようにします。(継続するため)

日記

  • 月に最低1回は書きます。何もネタがなければ、ネタを作れる活動をします。

物理

  • 休日にファインマン物理学を30分程度でも読みます。

家族

  • 妻と子供と過ごせる時間を大切にします。(仕事で遅くならないよう、効率を意識します)

というわけで、今年も皆様、よろしくお願いします!

改訂(改ざん)履歴

  • 体裁の修正をしました。
  • 仕事の目標を追加しました。
本日のツッコミ(全3件) [ツッコミを入れる]

あきよ [わたしも今年も頑張りたいと思います。]

 [お互い、頑張りましょう!]

mrkn [よいお年でありますように!]


2011-07-26 [長年日記]

Ruby on Rails 3 アプリケーションプログラミング 山田祥寛著 (技術評論社)

Ruby on Rails 3 アプリケーションプログラミング(山田 祥寛)

私自身はRuby on Railsの0.9から1.1,1.2,2.0,2.1,2.2,2.3,3.0とずっと使っており比較的Railsでのアプリケーション開発については玄人ですので、会社の後輩に読んでもらう本としてどうか?という視点で読み進めました。

以下がその感想になります。

Ruby on Rails 3.0としてはかなり良く纏まっている

Ruby on Rails 3.0を使ってWEBアプリケーションを書くために必要であろう知識は概ねこの一冊から十分に得られます。Rails自体の進化が速いため内容を網羅した本を書く、というのは難しいだろう、と思いますが、この本は必要な情報がよく網羅、整理されており、良い意味で私の予想に反していました。

なにより読みやすい。

本書中の日本語表現が砕けすぎず、かしこまり過ぎず、非常に読みやすくわかりやすい文体でした。

また、難易度については、さすがにWEBアプリケーション開発経験がない人が読むには難しいでしょうけど、プログラミング言語を問わずMVCを意識してWEBアプリケーションを作ったことがある人であれば容易に理解できるよう丁寧に書かれていました。読む前にRubyの知識は多少必要かと思います。(いずれにせよ書くためには必要ですが)

基本から順番に説明されているのでRails初心者は頭から読むと良さそう

構成として、

  • 第1章は、WEBアプリケーションフレームワーク全般の話
  • 第2章、3章は、Railsを使ったWEBアプリケーション開発の基本のチュートリアル
  • 第4章以降は、実用に活かすことができるRailsの機能の説明

といった構成になっています。Rails初心者の方は第1章から読み進めることで無理なく知識を身につけることができますし、第4章以降では、多くの実用的な内容が綺麗にまとめられていますので、すでにRailsの基本を知っている人はレシピ本として使うことができると思います。

(あえて)注文をつけると・・・

Rails学習者にとって非常に良い本で、あまり文句のつけようがないのですが、あえて注文をつけさせていただくと、

  • RSpec等、最近のRuby/Railsで人気のあるテストフレームワークについて言及しても良いのでは?
  • JavaScript/Ajaxとの連携についてもう少し深く説明して欲しかった。

というのがあります。RailsのTest Suiteについてネット上ではRSpecに関する情報が非常に多いことがあり、避けて通ることができないと感じています。また、JSについては、デフォルトがPrototype.jsからjQueryに変わる過渡期にあるので難しいかな、というのも理解できますので、あくまでも僕個人の希望として、の話です。

総論

このレビューの冒頭で「会社の後輩に読んでもらう本としてどうか?という視点で」ということを書きましたが、結論としては、「Ruby on Rails 3.0で開発する前に手にとってひと通り読んでもらい、開発中にも何度も眺めてみて欲しい本」でした。この本で得た知識を元にリファレンスマニュアルの探索の旅に出るのも良いでしょう。

正直なところ、私自身は最近はRails関連の書籍を買うことがなくなってしまいましたが、機会をいただいて読んだRails本がこのような優れた本で非常にありがたかったです。情報がきれいに整理され私自身、知識の整理ができ勉強になりました。ありがとうございました。


2011-07-19 [長年日記]

日本Ruby会議 2011

平成23年 7/16から7/18まで開催された日本Ruby会議 2011( http://rubykaigi.org ) にネットワーク班副班長兼当日スタッフとして参加しました。

前日準備で15日に札幌から上京する際、JRが事故停止しており急遽バスに変更するなどドキドキしましたが、無事予定の航空機に搭乗でき東京に到着しました。

前日準備

前日準備、初日午前は主にネットワーク設営にかかわり、といっても、基本的には、小岩さん(@koiwa)とすもけさん(@smokeymonkey)のお二人がテキパキと動いており、僕はその手伝いをする形になっていましたが。

小ホールの発表者の準備の手伝い

ネットワーク設営以降は、小ホール番長の谷口さん(@noplans)の補佐として発表者の方のマイク、プロジェクタ準備の手伝いを行いました。発表者には外国からいらっしゃった方々も多かったので、久しぶり英語を話しました。少しでもリラックスしてもらえるように準備が終わった後は必ず「If you have any question or problem, please ask me.」と言うようにしました。それほど英語力は落ちていないけどまだまだだなぁ、と感じました。

また、谷口さんの調子が悪い時や別の用事で手が離せないときに司会をしました。特にトラブルもなかったため良い思い出です。(16日の最終セッション)

小ホールの当日スタッフのみなさんのローテーション

小ホールの当日スタッフの仕事は、

  • 照明、マイク音量の調整
  • Ustのサポート
  • 質問時のマイク係
  • ビデオカメラの録画作業
  • 小ホールホワイエでの対応

がありました。

どの作業もやることはそれほど難しいことはないのですが、作業のタイミングが同じだったり作業場所の距離が離れているため、兼務ができない作業でした。しかも、一部の作業は体力を使うため丸一日固定で当日スタッフを割り当ててしまうと一部の数名だけがひどい目にあう、という問題がありました。また、できるだけ見たいセッションには参加させてあげたいというのもありました。そこで1時間ごとのローテーションをすることにしました。アサイン漏れが発生するのが怖かったので、僕がその調整役と人が欠けたときの代替要員として動くようにしました。すもけさんも代替要員として積極的に動いてくださいました。

多少偏りがでたり人気があるセッション(角谷さんのセッションですがw)の時間に人手不足になったものもありましたが、全員の動きが把握できていたため僕がビデオカメラ係とマイク係を兼務したりすることでなんとか克服できました。ビデオカメラの録画ボタンを押した直後にマイクをもってステージから飛び降りて会場を走りまわる、ということになりましたがw。

でも、照明、音声係は固定になっちゃいました。ごめんなさい。もう少し効率的な動きもできたかも知れませんが、それは僕の不徳の致すところということで許してください。

ホール番長はインカムで入ってきた情報でいろいろな動きをしないといけないので、こういった調整をする人が別に一人必要だな、と思いました。

なんだかんだ言っても当日スタッフは皆非常に協力的で心配することは全くなかったです。ありがとうございました。

ちなみに、3日目の小ホール前で、名札をつけずに入場しようとした@yukihiro_matz を制止し、名札を付けるよう指示したのは、この私ですw

講演について

上記のような動きをしていたためほとんど聞くことができなかったのですが、聞くことができたセッションのなかでPaulさんの講演にとっても感銘を受けました。感動しました。日本人は外国人と英語を話すのがコワイと感じるひとが多いですがそれは外国人だって同じことで、彼だって同じなのに彼は勇気を出していろいろな試みをしています。僕も海外でしばらく生活していて、現地の人に冷たい扱いをされて悲しい思いをしたり、ひどいことを言われたりして傷ついて殻に閉じこもりがちになったこともありました。そのことを思い出してしまったのと同時に、彼がRubyKaigiの演台に立ちまだ十分に自信のない日本語で発表している姿に彼の力強さを感じました。彼には次の日に英語でお礼を伝えました。Paulさんから「で、お前は発表しないのか? なんでしないんだ?」と責められましたけどw

懇親会

受付の手伝いをさせていただきました。すでに素晴らしい調整が行われていたため僕は全く困ることがありませんでした。ほんとすばらしい。

打ち上げ

あまり席の移動はしなかったのですが、Adamさん(@Robodisco)と長い時間お話をさせていただきました。日本人の外国人のコミュニケーションについて、Adamさんの考えをいろいろ聞かせていただきました。Adamさんありがとう。

さいごに

僕はRubyの発展に全く貢献できていないしRubyのスキルもまだまだ足りないけど、これらが出来ている人たちと少しでも触れ合うことができてとっても貴重な経験でした。ありがとうございました。

自分なりの貢献の仕方をこれからも考えていきたいと思います。

(また追記するかもしれません)

(11/20 7:34 小学生の作文のような文章になっていたので、言葉足らずの部分など修正しました。)


2011-06-12 [長年日記]

OSC 2011 Hokkaidoに参加してきました。

昨日の6/11、OSC 2011 Hokkaidoに一応スタッフとして参加してきました。スタッフと言っても、僕はあまり協力できなかったので、スタッフを名乗るのはおこがましいのですがね。

来場者が600名超え、ということで、年々参加者が増えているのも非常に嬉しいです。みなさん頑張っていますから、それが結果に出て喜ばしいことです。僕は傍観者になってしまっているので評価する立場でもないのですが、続ける力が重要だな、と感じました。

個人的に、蛯原純さんが、NetBSDのセミナーの中で「GODo2004」のことを取り上げてくださっていました。「当時としては画期的なイベントだった。」と言ってくださって、多分蛯原さんは僕が関係者だったことなど覚えていないでしょうけど、僕自身は感極まりました。

今年も興味深い発表がたくさんありましたが、清悦ながら、私も企画LT(守)の枠でバージョン管理システムの基本的なことについて発表しました。

どこにでも書いてある使い方は早々に切り上げて、「こんな使い方はやめましょう」ということに重点を置いて説明しました。

反省点としては、

  • 発表時間をコントロールできず、時間をオーバーしてしまった。
  • 無意識に口にしている発表者としてのNGワードがあり、島田さん(@snoozer05)があとで指摘してくださるまで気がつかなかった。
  • 良いコメントの例をひとつ出せば良かった。

こんな感じで反省点も多いのですが、少しでも役に立てたなら幸いです。

以下が発表で使用した資料です。


2011-06-06 [長年日記]

TDDBCでSmalltalkをやってきました。

6/4に産業振興センターで行われたTDD Boot Campに参加してきました。今回がはじめての参加です。TDDは会社でもRailsの案件ではすでに採用しており、私自身はそれより前の2007年くらいからはRails案件では全面的にTDD/BDDを採用しています。

RSpecについても、The RSpec Bookを読んだり、実際に使ったりして、かなり勉強しているほうだと思っていたのですが、やっているうちにいくつか疑問に思うようなこともあり、@t_wadaさんに聞けたらいいな、と思い、今回参加することにしました。

ただ、毎日Rubyを使っているので、今回は他の言語をやってみようと思い、これまでの経験が極めてゼロに近いSmalltalkが@sumimさんがコーチとしてついてくださることや、他の参加希望者に@tmaedaさんや@mrknさんなどスキルの高い方々がいらっしゃることもあり、Smalltalkを選択しました。

@sumimさんがやさしく丁寧に、しかも気長に教えてくださり、しかも翌日のフリーの日も長時間@sumimさんを独占させていただけて、いろいろな新しい体験ができました。

以前から、創世記のXeroxのパロアルト研究所が熱かった時代のことを勉強したい!オブジェクト指向言語の根本的な概念や歴史を勉強したい! と思っていたこともあり、それにちょっとだけでも触れることができて、しかも、今後も自分で勉強を続けていけるような形で教えを乞うことができました。今後もすこしずつSmalltalkを続けていこうと思いました。

「メッセージ」の根本的な考え方を丁寧に説明いただけたことは、そのままRubyの考えにも応用でき、他の言語の学習にも活かしていけそうです。

また、RSpecのit文の書き方について、@t_wadaさんにご意見もいただくことができました。また、私が疑問に思っているところも相談でき、@t_wadaさんの深い見解が聞くことができて、これも非常によかったです。なかなか相談出来る人がいないので。その流れで、@t_wadaさんが「じゃぁ、今から、TDDやってみましょうか!」とおっしゃって下さり、急遽、RSpecでのTDDの実践を@t_wadaさん直接指導のもとさせていただくこともできました。IntegerクラスにfizzBuzzメソッドを追加する、というアレなネタにしましたが、いろいろな発見もあり、面白かったです。@t_wadaさんのgit commitの頻度の高さには面を食らいました。

他にも、TDD時のいわゆる「茶番」の重要性について、@t_wadaさんの見解を聞くこともでき非常に納得出来るもので勉強になりました。

最近僕が参加しているイベントには珍しく参加費3000円が必要だったのですが、安いですね。イベントが終わった今、とっても晴れ晴れした気分です。


2011-04-08 [長年日記]

サーバ変更

この日記が設置してあるサーバが変更になった。これまでは、Pentium4の2.8GHzのマシン上にRAM384MBを割り当てたXen上で動作していたが、今回は、Xeon(4 cores) x 2、RAM16GBのマシン上で、XenにCPU 2Cores、RAM2GBを割り当てた環境になった。

だいぶ軽快に動作するようになったと思います。



本日のツッコミ(全2件) [ツッコミを入れる]

さいとう [これで日々の激しいアクセスにもびくともしない環境が整いましたね。おめでとうございます!!]

 [はい、一日10件という激しいアクセスにも余裕で耐えられます。実際のところ、Railsで作ったアプリケーションが384..]


2000|01|02|03|04|05|06|07|08|09|10|11|12|
2001|01|02|03|04|05|06|07|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|06|07|
2012|01|

2012年
1月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

Copyright (C)2005-2010 nu-chon.org. All rights are reserved.