Kirikaの非人間的生活 このページをアンテナに追加 RSSフィード

2012-05-07

[]一眼デビュー 23:11

 以前から使っていたEXILIM EX-Z40が、手持ちの携帯すら画質面で劣るようになってきたので、前々から欲しかった一眼に手を出してみることにしました。全くの初心者なので、あまり専門的なことは分かりませんが、選ぶ指標になれば。

 友人がキヤノンニコンの一眼レフを先に購入していたので、触らせてもらったのですが、自分は重い一眼レフを持って出かける姿を想像出来なかったので、前々から気になっていたOLYMPUS PENを購入することにしました。

 一眼を持つと結局レンズカメラバッグ、その他アクセサリも持ち歩くことになるのですが、このサイズなら、あまり気にはならないレベル。重量はニコンD7000比較して、およそ半分。レンズを2,3本持って比較すると、約1kg弱の差になるのではないかと思います

 画質面では本格的な一眼レフには劣るらしいのですが、元々コンデジから上がる人に取ってみれば入りやすい機種だと思います

 レンズについては殆ど知識がなかったので、人のレビューを見ながら以下の2本を購入。

OLYMPUS 単焦点レンズ M.ZUIKO DIGITAL ED 12mm F2.0

OLYMPUS 単焦点レンズ M.ZUIKO DIGITAL ED 12mm F2.0

OLYMPUS PEN レンズ M.ZUIKO DIGITAL ED 40-150mm F4.0-5.6 SLV

OLYMPUS PEN レンズ M.ZUIKO DIGITAL ED 40-150mm F4.0-5.6 SLV

 元々レンズキットで14-42mm F3.6-5.6がついていたので、広角単焦点レンズと望遠ズームレンズを1本ずつ購入しました。

広角単焦点レンズ(被写体10cmぐらいの位置から撮影

f:id:Kirika:20120507224517j:image

望遠ズームレンズ(被写体1.5mぐらいの位置から撮影

f:id:Kirika:20120507223625j:image

 結局何を撮りたいかというのが重要なのですが、同じような写真でもレンズを変えると随分表現できることが変わるのが一眼の面白いところではないかと思います

 レンズの良し悪しについては焦点距離とか、F値とか、ボディとの相性とか色々あるみたいなのですが、自分初心者なので、あまり多くは語らず、解説サイトで調べてもらえると助かります

【参考】

 http://www.coneco.net/hand/camera/slr.html

 望遠レンズといえば、こっちも気になっていたのですが、レビューのところに「野鳥を撮るのにオススメです!」と書かれていて、自分の用途にはあまり合っていなかったので、上の40-150mmにしました。もっとも40-150mmですら、今のところあまり出番がないですが…。

 ただ、こっちのレンズだと、一昨日のスーパームーンももっと大きく撮れたに違いない。

f:id:Kirika:20120507225926j:image

 次は金環日食の撮影にチャレンジしようかな、と思いつつも減光フィルタが高いのでちょっと躊躇しています

  • その他

 レンズ買ったら、レンズプロテクターを買うことと解説サイトにもよく書かれていて、嫁のお父さんからも強く勧められたので、レンズプロテクターも買いました。3個で約5000円ぐらい。

Kenko レンズフィルター PRO1D プロテクター (W) 46mm レンズ保護用 324653

Kenko レンズフィルター PRO1D プロテクター (W) 46mm レンズ保護用 324653

 SDカードEye-Fiにチャレンジしてみよう、と思って試してみました。

 確かに転送は楽ですが、ちょっと遅いし、電池も食うので普通SDカードでも良かったかも。

 ただ、撮ったその場でスマートフォン転送できたり、無線LANから撮影地点を記録してくれたりできるので、もう少し面白い使い方がありそう。しばらくは色々試してみようと思います

アイファイジャパン Eye-Fi Pro X2 8GB EFJ-PR-8G

アイファイジャパン Eye-Fi Pro X2 8GB EFJ-PR-8G

 他にもレンズケースやカメラケースなどを入れると、ちょっとばかりお金を使いすぎてしまった感じですが、新しい趣味の初期投資だと思って、色々楽しみたいと思います

2012-03-20

[]クラス変数の甘い罠

 最近クラス変数を使ったプログラムで大きくハマったのでメモ

 クラス変数にアクセスする方法としては、@@の修飾子を使ったアクセス方法とclass_variable_set, class_variable_getを使ったアクセスがあるのだが、この2つのアクセス意味微妙に異なることを最近まで知らずに、大きくハマってしまった。

 下記のプログラムでは、クラス内でクラス変数にアクセスするものと、モジュール内でクラス変数にアクセスするものを用意して、クラスからモジュールをincludeするようなプログラムを書く。

 module C 
   def self.included(mod) 
     mod.class_eval do 
       @@c = 5 
       class_variable_set(:"@@cc", 6) 
     end 
   end 
 end 
  
 class A 
   include C 
   @@a = 1 
   class_variable_set(:"@@aa", 2) 
 end 
  
 p A.class_variables 
 p C.class_variables 

 この時の実行結果は以下のようになる。

[:@@cc, :@@a, :@@aa]
[:@@c]

 これはclass_variable_setによるアクセスは呼び出されたレシーバのクラスに紐付くのに対して、@@によるアクセス記述されたクラス・モジュールに紐付くからだと思われる。

 つまり、A.class_eval{ @@c }はNameErrorとなってしまう。

 しかも、上記の挙動は1.9.2のものだが、ruby 1.8.7ではまた違う挙動になることが分かった。こっちの場合は、更に良く分からない……。

["@@cc", "@@aa", "@@a", "@@c"]
["@@c"]

 有効な解決策としては、クラス変数を使わず、クラスコンテキストに紐付くクラスインスタンス変数を使うのが一般的には良いとされている。プログラム上パッと見分けがつく、クラス変数の方が扱いやすいんだけど、どうにかならないものか……。

非人間?非人間? 2012/04/27 04:11 知りたいです。

2012-02-15

[]Ruby本を書きました 03:07

 去年の6月8月頃に書いていたRuby本がようやく販売されることになりました。

 自分は6章担当で添付ライブラリ周りのことについて書いています。

2012-02-03

[]FlashBuilder 4.5 22:35

 久々にFlashBuilderを触ってみたらAndroidアプリiPhoneアプリも作れるようになっていたので、手元のFlexBuilder3をアップデートすることにしました。

 

 過去日記を見なおしてみると、Flexを始めたのは今から2年半程前。仕事Flexを使う機会があり、おもしろかったのでこれからFlexを本格的に勉強していこうと思った矢先にRubyな部署に異動することになり、結局ちょっとFlexアプリを作っただけで、結局その後、ほとんど使わなくなってしまっていたのでした。

 

 明日は、久々にFlash Builderと戯れようかと思います。

 

Adobe Flash Builder 4.5 Standard Windows/Macintosh版

Adobe Flash Builder 4.5 Standard Windows/Macintosh版

2012-01-02

[]趣味が高じて、ドミニオン箱を作った その3 06:53

 その1 http://d.hatena.ne.jp/Kirika/20111231

 その2 http://d.hatena.ne.jp/Kirika/20120101

 その3 http://d.hatena.ne.jp/Kirika/20120102

 

続きを読む

masaeomonmasaeomon 2012/01/02 08:59 既存製品でもない、オーダーメイドでもない物を作るのは楽しそうですねー。
そこまで労力を注ぎ込めるくらいにドミニオンに嵌ってるとは・・・。
感服です。

KirikaKirika 2012/01/02 15:59 ドミニオンは好きなんだけど、どっちかというとドミニオンはきっかけにしか過ぎなくて、無ければ作るっていう文化が好きだったりするんですよね。

もちろんドミニオンはとても面白いので、雅右エ門にも是非紹介したいですw