2008-01-01から1年間の記事一覧

もっと楽しみたいから、もっと勉強しよう

プログラミングは楽しい。奥も幅も広い。楽しいから、勉強もいわゆる学校でやってきたような「勉強」ではなく、トレーニングの感覚に近いと思っていた。 けど、最近はそれがまた勉強に戻ってしまった感があった。たんたんと本を読んでいくみたいな感じ。初め…

初めてのjavascript3章(演算子と文)

1章、2章に引き続き3章です。演算子と文の章です。 文の形式 文の終わりは、「jsを解釈するエンジンが、対象の文を完全な物だと判断でき、かつ、終わりが改行文字」または「;」で示す。 改行文字単体で文の終わりを示すわけではない。 ということは、1行…

SSLの設定

SSLの設定を始めてやったのでメモしておきます。今回はSSLの証明書は独自で作成します。独自でもOKなのですね。 OpenSSLコマンドの使い方 本来、セキュアなWebサーバを運用するためには、認証局から、署名付きの証明書を発行してもらう必要があります。認証…

SSH公開鍵認証の設定

初めてやってのでメモしておきます。リモートサーバーへのSSH接続の際に、パスワード認証を禁止し、公開鍵認証にする設定です。公開鍵認証の方がこちらも楽な上に、パスワードの漏洩なども回避できます。 では設定開始。今回は、クライアントがWindowsXP, サ…

中央寄せ

障害対応が終わったと思ったらなんと一部のテンプレート(ってかデフォルト)で中央寄せになってる。各自CSS書いてねモードか。 firebugでみたら、他のテンプレートでは「.hatena-body」に「text-align: left;」があるのに自分のにはなかった。なのでデザイ…

irbでのアンダースコアが便利だ

RubyのStruct - 西尾泰和のはてなダイアリー irb(main):018:0> FooBar = Struct.new(:foo, :bar) => FooBar irb(main):019:0> FooBar.new(1, 2) => #<struct FooBar foo=1, bar=2> irb(main):020:0> _.foo => 1 なんだこのアンスコ? どうやら、直前に評価されたものを格納しておいている</struct>…

Hashによるオプション引数とActiveRecord::Base.extract_options_from_args!

以前、メソッドの引数としてHashを使うといいというエントリーを書きました。 Hash引数便利よね - Slow Dance その中で、特にオプション引数に対して有効ということを書きました。 今回は、オプション引数とActiveRecord::Base.extract_options_from_args!を…

JavaScriptのデータ型と変数の追記(jsのスコープ, nullとundefinedの違いについて)

JavaScriptのデータ型と変数 - Slow Danceの内容でjavascripterさんにツッコミをもらった部分を調べたのでまとめました。 ツッコミ内容 >の部分が僕が書いた部分です。その下の行からが指摘してもらった内容です >ブロック内で宣言された変数は、そのひとつ…

バックアップ機能

あー間違えて編集ウィンドウ閉じちゃった(泣) でも、バックアップ機能有効だから平気だよー。って思ったらバックアップとってない。なんでや!!! よく見たら、バックアップは有効になっていたけど、保存容量設定が0KBになってた。 0KBなんて設定できる…

JavaScriptのデータ型と変数

初めてのjavascriptの2章です!データ型と変数について。 名前の付け方 jsでの変数名や関数名の付け方が書いてありました。ソースの可読性からいって名前は本当に重要。 省略しない簡潔な名前を これはどの言語でも同じ。たった数文字のために名前を省略し…

検索結果のテスト assert_found

railsでテストコードを書いている際に、次のようなコードが多くあった。 assert_equal [1, 2, 3], assigns(:users).map(&:id) result = User.find(:all, :conditions => ["school = ?", "Hoge"]) assert_equal [2, 3], result.map(&:id) 面倒だ なので、Arra…

Ruby 1.8.7 リリース

おぉー!Rails 2.1がリリースされて次はRuby 1.8.7ですか! いいっすねー熱いっすねー(*´艸`) Ruby 1.8.7リリース!! - ’(rubikitch wanna be (a . lisper))

Mochaが楽しそう

以前、テストの際にTimeオブジェクトの比較があると、1秒差で落ちるという問題に対して、エントリーを書きました。 テストで、Timeオブジェクト同士を比較するときのメモ - Slow Dance そしたら、同じようなことやっている人もいた。 Jay Fields' Thoughts:…

初めてのjavascript

先日からjsの勉強を始めました。まずは基本文法を身につけちゃおうということで、id:javascripter さんにならって「初めてのjavascript」で勉強。適度な厚さだし、説明も分かりやすい。今月はこれをやって行こうと思います。 1章やりました 昨日と今日で1…

tracでのチケット活用法

tracでチケットを使って開発していますが、タスク管理くらいにしか使ってなく、もっと上手く使えないかと調べてみました。 参考になる場所発見。 チケットの使い方 - Meadow - Trac チケットのコメントにWikiページのリンクを書き、 Wikiページにもチケット…

Rails 2.1 リリース

Rails 2.1の安定板がリリースされました。新しい機能はこんな感じとのこと。 Rails-2.1リリース - Hello, world! - s21g タイムゾーンのサポート Dirty tracking(なんだか面白そう) Gemの依存関係(前々回のRails勉強会でやってたやつ) Named scope マイ…

完璧ってそんなにいいのかな

最近、友達とこんな話になりましたので、なんとなく書いてみました。 本とかを読んでいると、「目標達成だ!そのために毎日リストつくって1つずつやるんだ!」とか、「20代は仕事に生きろ!」とかなんとかとか。そういうのを読んでいると、最初は「凄いなー…

instance_evalとスコープ

メソッド名と同じローカル変数がある場合はローカル変数が優先される - ’(rubikitch wanna be (a . lisper)) binding - I like Ruby too. これはfooがすでにローカル変数として宣言されているからそっちが優先された話でしょう。 foo.instance_eval { foo } …

閉じたタブを記憶する

閉じたタブを記憶しておき、再度閉じたタブを開く事ができる『SafariTabMemento』 | Macの手書き説明書 うっかり閉じてしまったタブの復元に最適ですね。 そうなんだよなーいいないいなー。firefoxにもそういうプラグインないかなーって思ってたら、デフォル…

putsの動作をテストする...

今日、人に説明する用にコンソールベースのコードを書いていた。 で、手動でテストするのが面倒なのでテストを書いたのですが、putsのテストが必要なことに気がついてテスト作りました。何か、putsのテストって意味あるの?という感じですが、晒しておきます…

新人はwikiを書くのに最適

今日先輩から言われてふと思ったことです。 今日ソースで分からない部分があり、先輩に質問しました。で、解決した際にもらった言葉がこちら。 疑問があって、解決した場合にはwiki にその旨追記した方が良いでしょうね。 この件に関わらず、社内の規則とか…

javascript始めました

1年前からrubyを始めて1年間rubyやってきました〜。rubyの理解もまだまだですが、javascript始めようと思いました。理由はいつくかあるのですが、一番は、複数の言語をやって始めてそれぞれの言語の本質が分かってくるかなと思ったからです。rubyのために…

テストで、Timeオブジェクト同士を比較するときのメモ

テストを書いていると、こんな風にTimeオブジェクト同士を比較する時があります。 assert @user.save assert_equal Time.now, @user.reload.updated_at まぁ、updated_atはrails側でもテストしているのでやる方はあまりいないかもしれませんが、自分でも「ev…

privateメソッドをレシーバを指定して呼ぶ方法

今までprivateメソッドは、定義元のクラスのコンテキストでしか実行できないと思っていました。なので、テストの時とかにはprivateメソッドをテストせずに、そのメソッドを使っているメソッドのテストで済ませていました。また、irbとか、script/console使う…

grepの正規表現

mac

エスケープしないではまった。 $ ls study.rb use_private_method.rb$ ls | grep '^(s|u)' grepの結果は空。エスケープが必要。 $ ls | grep '^\(s\|u\)' study.rb use_private_method.rb 追記 メタ文字は全てエスケープするのかと思ったら違った。例えば、…

効率良く勉強するには

ふと思ったのでメモしておきます。現代のように、学ぶ分野が多い時代では、必要なものをできるだけ効率良く学ぶことが大切だなと思っています。 最近目にした記事では、Flash界のプログラマ「新藤愛大」さんが以下のように言ってました。 New Generation Chr…

この誤訳は誤解を招く気がする

【YAPC::Asia 2008】オブジェクト指向を学ぶときこそPerlを学んで欲しい:CodeZine オブジェクト指向を学ぶ際にもPerlはおすすめだという。「オブジェクトとは、『自分が何を知っているか知っているデータ』と考えると、一番わかりやすい」 ん?何を知ってい…

日記のタイトル変えた

@luke_silvia.diaryから、Slow Danceへ。一番好きなドラマのタイトルより拝借。 一度しかない人生 ならば、好きなことやって、好きな人と一緒にいたい 人生という大空を、ワシとかタカみたいに 漂うようにゆっくりと、そう、踊るように飛んでいたい だから …

type_castに気がつかなかった。User.new(:school_id => @school)はだめなのね

とんでもない見落としをしていた。こんなテストコード書いてた。 fixtures :pay_types def test_record o = Order.new(:pay_type_id => pay_types(:one)) assert_equal o.pay_type, pay_types(:one) ... end このテストは通りますが、やってはいけない書き方…

railsのテストのuse_instantiated_fixturesはあまり良くないと思った

最近になって昔書いたrailsのコードを読むと、名前が悪いと思うところが多い。例えば。 blog_controller.rb class BlogController < ApplicationController def blog_comments end end とか、blogに対するコメントであることは、コントローラがBlogControlle…